Subtract Only Overlapping Portions of Meshes Background

I am trying to model a very simple, two piece necklace. The "plate" is a simple mesh with roughly half of it cut away. The "text" is two letters in cursive. Ideally, the plate and the text are to be combined in a way such that the part of the plate that is filled in will have the first letter cut out of it, and the part of the plate with empty space will have the second letter floating in it.

Here are the plate and the text, side by side. .

I have been able to use Boolean Operations to extract the difference between these two meshes, satisfying the left hand hand side of the necklace (the cutout part).

However, to see the effects of the cutout, I have to either remove the text or move the text mesh away (thus revealing the cutout but moving the "l" away from its desired position).

Question

Is there a way to perform some kind of difference operation / combination of operations where the "m" would be cutout of the plate while the "l" is left in place?

Thankyou for your time and effort.

I'll let DrRiisTab answer the double boolean method, however I will demonstrate how to do this from the Knife Project method, as it will ultimately get you there, and you will be able to fall back to it, if for some reason the boolean operations don't quite work out for you. As time allows, I will circle back and edit this answer to give you the textual step by steps. Until then you should be able to follow the Screencast Keys with success.

Note: right at the transition, you will have a open mesh, that you may want to close up. I would recommend W >> E(Bridge Edge Loops), see related link if you need help with the nature of Bridge Edgeloops


How can I interpolate between two different animations? In the NLA Editor:

See how there is a slight positional change when going from Idle to StandingAttack? Is it possible to somehow merge these two animations together so going from Idle to StandingAttack is one single, fluid motion?

The brutal answer is to animate a transition between the two different strips.

First consider how much of the end of the first strip and the beginning of the second strip you want to preserve.  If you want to shave some frames off of one or the other you can do that by adjusting the parameters of the strips (which does not affect the original actions, it just changes how much of that action is incorporated into your animation).

Then create a new strip that bridges the frames between the end of the first strip and the beginning of the second and populate it with keyframes that animate the figure how you want it to move.

One workflow for this process would be

create keyframe from position (or whatever) to begin a new primary action at the frame where the transitional animation will begin.
Push that new action down into the NLA track using the vv icon.
Alter the End Frame of the new strip to be the end of the transitional animation.
Create a new NLA track ( Add>Add Tracks )
Use Edit>Track Ordering>Down to move that track below the existing track.
Use Edit>Move Strips Down to move the brand new strip into the new lower NLA track.
Scrub the time line to the frame from the second (old) strip to pick up the position from that strip
With the new strip selected, Tab to begin editing its action.
Insert a new keyframe using the value we got from the second strip
select the first strip and change its Extrapolation from Hold to Nothing
Alternatively, move the NLA track with the new strip to the top of the tracks and make sure its Extrapolation is Nothing

I created an animated gif that is too large to put on stackexchange:

https://drive.google.com/open?id=0B2Wy3tK1vORHc1FCZEFPYWtkZzQ

Now since I was just dealing with the location of a single cube this process was relatively easy.  Since you are dealing with an armature's animation and your animation consists of a large number of fcurves for the orientation of many bones, steps 1 and 9 will have to be repeated for every bone that has a keyframe.  Do not repeat steps 2-8.  Use the single new strip to contain all of the keyframes for all the bones of the transitional animation.


How to setup a shortcut for UV Editor's selection modes? I would imagine it would be something like this, but this, and similar, does not work.

Your in the wrong area. 2DView is general navigation for flat area types.

The UV/Image editor shortcuts are under Image -> UV Editor

Also for the value you will need to make it a string by using quotes.


How can change Rotation values without rotating I have a 3D model and it have rotation values like -76 , 80 , 90. I want to rotation values 0,0,0 but without rotating only must values changing. It is possible ?

Yes, Please make sure you are in Object mode
Hit Ctrl + A and select Rotation form pop up menu

As shown step by step below:

All zeros

Best of luck :)


How can I make elbows and knees on this without distorting the texture? This is my model:

(source: ezimba.com)
It has two triangular vertices on the front of the arm.

(source: ezimba.com)
How can I change the number of vertices to allocate for the texture without distorting it?
My .blend file.

First of all you have to transform the tris in quads, or you'll not be able to make loopcuts.

Than make loopcuts in the elbow position with Ctrl+R

What is important is to check the Correct UVs option in the command option panel. This will prevent distortion while working with the new edgeloops.

Same thing when you slide them


How do I combine two texture maps into one model? I have two sides of a roman coin modelled using agisoft photoscan, joined together using blender (photoscan failed to model the whole coin so I thought I might be able to use blender to do that). I can see my coin with both textures on in texture paint mode but when I export the model I can't find the texture map? Is there a way to combine two texture maps into one and have it exported together with the model? Ultimately, I just want to upload the full coin into sketchfab for viewing.

Would anyone be able to help? I do not have a lot of experience using Blender. Thank you in advance! :)

When exporting, textures aren't necessarily saved in the same directory as the model. To find out where the texture is saved for an .obj, open the .mtl file:

If you don't see a .mtl file in the same directory as the .obj, it may not have been written. To ensure an .mtl is written, select "Write Materils" in the file window when exporting.

If you'd like the textures and model together in one file, bake the textures to the vertex colours and export as .ply:


i am using sculpt mode in blender but when i use draw format in it it uses draw from both sides of the plane how can i draw it from one side? As  my draw format of Sculpt Mode is working in dual form, please recommend a solution. I want to create something on only one side of my object.

Try this option, if I understood the problem ...


half transparent material when import xps file I imported xps files and some of them have backface culling like issue.

https://imgur.com/a/kUhF8Pk

even resetting to default material didn't work

I also tried
1. turn on and off backface culling option
2. flip normals
3. recalculate normals
4. change render engine

Thank you.

Did you check your alpha settings in the Material Settings? Depending on what kind of Alpha behaviour your Eevee Shader should have you need to change it.
To reset it to default it needs to be at "Opaque" then it will draw as a solid.


Problem with Bevel modifier I just started to learn Blender and met a problem when using Bevel modifier when creating a cogwheel. Most edges where processed fine, but a few of them got errors:

I have checked all the normals, they are correct. Here is the model without the modifier:

It seems ok, but I worry about black color of the edge exactly where the bevel makes mistakes

Thanks to hint from 4-K, I indeed found out that the problem was because of duplicates. To check it, I just moved single vertices in edit mode.

To remove them I did the following:

Open the edit mode for vertices.
Select all the vertices using A key.
Open special menu using W key.
Click "Remove Doubles".

Then Blender said that there were 8 redundant vertices, and I got correctly working bevel modifier.


Why multiple blender animations are not showing up in unity when imported I have followed numerous online tutorials and no matter how many times I watch/mimic exactly what they are doing, I still end up with ONE animation that plays everything at once. I cannot figure it out. Basically I just have two buttons and I would like them to be able to be pressed separately. I have created a left and right armature to control the left and right buttons, but no matter how many times I link/relink the animations or double check that only one animation is linked per armature, they still both press at the same time. A little insight on this would be greatly appreciated. Here is a dropbox link to the blend, I just want it fixed and to know what I am doing wrong. So lost right now.

Watched this tutorial. Seemed great, but doesn't seem to help me out any.

This is what the import looks like. As you can see, only the "RightButtonAction" animation.

I don't have unity to check but I see a difference that may help.

The right armature has keyframes on the bone (done in pose mode)

The left armature has keyframes on the armature itself (done in object mode)

It may be that unity doesn't support object animation on armatures which are expected to be animated in pose mode.


Copying Vertex Normals I have a mesh that needs to be split up for game design purposes (so that parts of the model can be swapped out with clothing slots) - but, naturally, splitting the mesh causes seams around the edges of each body part where the vertex normals don't align.

I know it's possible to bake this into a normal map, but the results I'm getting when I try that seem imperfect (it seems the game engine is interpreting the normal map slightly differently to Blender - marginally different Phong interpolation, normal map interpretations, or perhaps I'm just not very good at merging this into the existing normal maps for the base model).

I'm wondering if (and if so, how) I could instead copy across the vertex normals from a merged master mesh (or get the normals to retain their orientation when split) in order to fix this at the mesh level, with the matching vertices on the seams on both parts sharing the same normal.

You can use for this task Data Transform Modifier.

You will need to have both meshes in the exact same place.

To the mesh with holes add Data Transfer Modifier, select original mesh as a source, check Face Corner Data and Custom Normals and select Nearest Corner Of Nearest Face.

You will be also prompted to enable AutoSmooth, of course do this in mesh Data tab.


STL Object Splitting I have an object in STL format that I have imported into the Blender.
The Object is made of up several parts but in the editor mode it shows up as one set of polygons.

I have managed to use the Linked option in the Select menu to only have the desired parts in edit mode.

How can I make this a separate object from the original STL object ?

I just want to add different colors and textures to different parts of my object. But as it is Blender sees everything as one object .

I have attached an image where you can see the orange area are the linked parts in edit mode that I wish to separate from the original Green colored areas so that I can give them a different texture and color.

Many thanks.

You can do this automatically by:

Select your mesh
Enter edit mode
Select All
Press P then choose Separate by loose parts

If you want to separate the selected parts then:

Select your mesh
Enter edit mode
Select the part of mesh you want to separate from the mesh
Press P then choose Separate by Selection


How to make car AI in my game? I am making a racing game and I got a question. I want to make AI of simple street drivers(not opponents, but just simple pople). I want to know, how to make that AI that follows its path... Could you give me image or video tutorial?

You can make AI drivers follow a path very easily. First, add an always sensor. Enable Positive triggering (pulse mode). connect that to an And controller. Then add a Steering actuator. (connect that to the And controller) change the Steering actuator's Behavior from Seek to Path Following. Then add a a plane, extrude it to whatever shape you want, then change the Physics type from Static to Navigation Mesh. Add an object to be used as the end destination. Your navigation mesh must connect from your AI driver's starting point to the ending point. Select your AI driver, and put the name of your Navigation Mesh in the input field entitled navigation mesh. then put your ending destination object's name in the input field for Target Object. if you did this correctly, your AI driver will follow the navigation mesh On The Shortest Route Possible to reach the end point. It is important to note two things. First, the navigation mesh is invisible and has no collision with anything else. Secondly, Because the AI driver will follow the path on the shortest route possible, the thinner the path, the better. Notice the path the object will take in the following pictures

From those two pictures, you can conclude that a wide path does not work as expected.

AI Driver's logic setup


Changing colors for BGE I want my games that have function that can changes the character colors.I have try this a few times.I can make it changes colors in the menu but the colors doesnt change when I click start button. Can any body help me please.

There's two ways to change object colors in real time: through Object Color material's option, or through material node's Hue/Saturation (available in realtime only in UPBGE).

Object Color

This one is pretty simple:

Enable the Object Color checkbox on the desired material.
Change the Object Color in realtime by animating it.

Example file:

Hue/Saturation Node

This one is a bit more complex, but a lot more powerful and with better results. Remember this one ONLY is possible in realtime on UPBGE.

Go to Node Editor and enable the node compositing for the desired material.
Add an Hue/Saturation node between the Material node and the Output node.
Separate the RGB colors of the object and set the hue value to the red value.
Animate the red color on Object Color to change the hue in realtime.

Example file:


Image doesnt render on animation I'm working with images. The print below is my blender work in viewport shading and the image appears being well.

When i use eevee to render my animation, the image disappear and i don't know why.

While it isn’t entirely clear in your description, my guess is that your image is a reference image or a background image. These images are used to assist with modeling in the viewport and are not part of the final render.

If this is the case, there are a few ways to put an image in your scene. First, you can put an image on a plane using the import images as planes add on, and position the plane where you want it. Or you can use compositing.

Hope this helps!


Texturing is not rendering in blender internal I have a question about the rendered image.
No matter what I do like changing the mapping into UV Maps, the texture of a material (Using image as texture), the color won't change like what I wanted. It can be shown using AltZ (textured solid) but with the blender rendering, it won't show the color. Just white and all.
If I choose OpenGL render image, then the texture is shown (colorful). Can anyone help me? Using OpenGL render Using Blender Render.

Here is the file if you are interested:

You say you are using Blender render, but your file is set to Cycles render. Your Node tree is wrong, not using the texture image and plugging a Normal coordinate from Texture Coordinate node to Normal of Diffuse shader node.

I added a frame to show yours and then corrected it by using a texture Coordinate node to plug the UV coordinate to the Image Texture node mentioning my own image(yours was not packed into file before upload) and then that Image texture is plugged into the Color socket of the Diffuse shader node.

If you want to use Blender Render then you will need to turn off 'Use Nodes' and add the image through the Properties editor texture panel.


Why does Network Render require separate Master and Client roles? As far as I understand it, this is how the Network Render addon works:

The Client is the computer with the file to render. It connects to the master, which sends out the file and sends back the rendered images.
The Slaves are the computers with the processing power. They connect to the master, receive and render the file, and send back the rendered images.
The Master functions as a server. It listens for jobs and slaves, and passes images and files back and forth between clients and slaves.

It seems that the master is merely acting as a middleman. Another way to do it would be like this:

The Master is the computer with the file to render. It listens for slaves, sends them the file, and receives the rendered images.
The Slaves are the computers with the processing power. They connect to the master, receive and render the file, and send back the rendered images.

The second solution can be accomplished by running two copies of Blender one the same machine, with one copy as a master and one copy as a client. However, this is somewhat unintuitive, and seems to serve no purpose – it's merely adding an extra link in the network chain, albeit to localhost.

Why is the system designed as it is? Is there anything preventing it from simply using two modes? Are there any advantages to the three-mode system?

While anyone can make use of network rendering, the main target is for small studios. Which would be the reason this design choice was made.

Imagine a studio with 10 artists, you setup a master and several slaves for the render farm. Each artist is then a client that sends render jobs to the farm, the master keeps track of all these jobs and which slaves are working on each task giving one central point to monitor all work being done by the farm. When the artists go home they can add their machine as a slave so it can keep working through the night. In the morning they can stop it as a slave and get back to their own work.

If each artist was also a master then they would all be fighting to get the slaves to do their work for them.

For a single artist this can be excessive or awkward but is really only a minor issue.


Script - How to disable the cursor? How to disable the cursor.
I'm using this script that disables the course view more as I can click the menus even without viewing the cursor.

import bge
from bge import render

def main():

    cont = bge.logic.getCurrentController()
    own = cont.owner

    bge.render.showMouse(False)

main()

Your code hides the cursor. Nothing more nothing less. It just contains quite a lot of unnecessary "decoration".

This is the core of the code:

import bge
bge.render.showMouse(False)

As it says it hides the cursor.

It does not make your game ignore the mouse input. You didn't mentioned how your game deals with mouse input. Therefore you get a very generic answer:

let your logic ignore the mouse input

When you provide more details you might get a more specific answer that fits your current situation.

Recommendation

  ... the cursor to be disabled to prevent the game from clicking other menu buttons ...

I suggest you disable "clicking". There are many options to do so:

remove the clickable object (when you need clicking again - add another clickable object)
add a sensor that indicate if clicking is active or not e.g. via property

switch states to enable/disable clicking


How to create golf ball with dips in each dips? What is the fastest way to create a dipped golf ball ? What I call dipped golf ball is a golf ball with three dips in each dip.

I followed this tutorial in order to create a golf ball but I can't repeat the operation in each dip.

EDIT: to be clear, this is what I call a dip:

When you click the faces and press I key and nothing happens reason

Individual options is off

To ON u have to press again I key

And with the faces selected S to Scale

A small preview of the ball


Render very dim 2.81 and 2.83.5 The emission shaders in the view port cycles render look the way I want them but when I try to bake textures or render, the shaders are very dim. I can see that the emission is there for the light from the right and also the filament when I render near the bulb, but it's extremely dim. The model is to scale, so it's not a problem caused by over sizing. I have tried adjusting the render exposure which does not help. The light source is a world hdri image shining through a space to the right of the lamp and then the lamp light is from a filament-shaped mesh inside a lightbulb mesh. There are no problems with rendered objects in the scene being out of place or in front of the light, but for some reason the light is very dim. I have no idea how to change this so that it matches the 3D view port cycles render. Any guesses at my problem are appreciated.

Resolved:  I had a sphere that I was using to map different parts of the hdri on that I completely forgot about and was outside all my collections. I'm not sure why it also made the lightbulb dim at the same time... You would think that it would only make the hdri dim. I have never done that to myself before. here is a pic of the render now working.


Boolean modifier: Carve vs BMesh solver What is the difference between the solver for the Boolean operator.
It is obvious that Carve and BMesh give different result, but I'm unclear on when I should use which one?

The documentation says: 'TODO' which isn't all too helpful.

Can anyone shed any light on their specifics and appropriate use-cases?

Carve booleans are used in Blender for a long time. This library has it's own limitations and cases when it will fail and produce incorrect results. It is also very slow.

Bmesh booleans is the new implementation aiming at being a faster solver (really shows on high-dense geometries). So far it also has limitations, but devs are working on it to resolve any bugs. You can trace the progress here:

BMesh booleans (track todo's)

Bmesh might handle some cases better than Carve and vice-versa. It depends on the geometry and those cases are hard to generalize. Bmesh should be faster than Carve. You should avoid non-manifold geometry for both.

In time Bmesh booleans might (hopefully will) fully replace Carve booleans.


Combine Filmic Blender and "Standard" Film Emulation Is it possible to combine the very helpful filmic-blender Color Management with the default Blender Color Management? It helps a lot to light the scenes with the filmic contrast settings, but when it comes to artistic composition and you want to use the benefits of using both troy_s's Settings and the default film emulation, you have to stop your work, close blender, replace the ocio files, restart blender and so on.

Is there a better way to work this out? Is it maybe possible to use the film emulation settings as compositing nodes, similar to a filter in PS or Gimp?

I hope my question is not too stupid. Maybe there is a more elegant workflow to use both, the filmic-blender function and the default film emulation.

but when it comes to artistic composition and you want to use the benefits of using both troy_s's Settings and the default film emulation

I am going to guess that you mean the existing looks. I would advise against them, simply because they are not reliably actually delivering film emulation. That is, the data they were sourced from was actual data, however the way in which they are applied is incorrect. They are effectively random Instagram filters with no meaning. If you mean the ridiculous "Film" transform, it is utterly broken with a horrible label.

That sums up to both groups of transforms as effectively being technically meaningless, and as a result would conflict with the goals and technical output of the filmic-blender set.

  you have to stop your work, close blender, replace the ocio files, restart blender and so on.

While true that a restart is required due to how Blender was designed when OCIO was added, it should be pointed out that Blender will respect the OCIO environment variable. Example:

export OCIO=/path/to/config.OCIO

While it is still a pinch point, this technique might make remote rendering etc. easier for some.

  Is there a better way to work this out? Is it maybe possible to use the film emulation settings as compositing nodes, similar to a filter in PS or Gimp?

GIMP is broken in many horrible ways that I won't go into, and will remain that way into the foreseeable future. No it is not feasible nor doable without many contortions.

Photoshop as well, while not completely broken as GIMP is, is also strictly a display referred imaging application and makes these sorts of transforms challenging at the base level. It can read some LUT formats, but it is likely complex to list the events here.

What exactly are you hoping for out of the "Film Emulation" set and I can take a look at it.

Again though, I am reluctant to include random knob twiddling in the set, as I am already faced with two design directions (Views vs Looks) that pull against each other.


Can't get my texture to show up in 3D view I can make blender 2.79 sit up and beg but I'm coming up to speed on 2.91 and the learning curve is... significant. Today's problem:
I have a model with a UV diffuse texture and I can't get the texture to show up in 3D view. It's just black.

3D view is showing materials, render pass "Diffuse Color". This is working for other meshes in scene.
Mesh has a "Principled BDSF" shader with "CGX" and "Christiansen/Burley"
Shader has my texture as the base color
Texture file shows correctly in the UV editor. UV shows up correctly in Edit mode.
Switching the texture to one which is showing up correctly on another mesh has no effect. This mesh still shows up as black.

I've checked the shader in the materials panel and also in the shader editor. It looks right, and it looks the same as the other meshes that are working.
Texture does show if I switch the 3D view to "render" but that's slow and I have another problem which I think this problem is causing, so I have to solve it. (When I bake the texture from this model to another, it shows up black.)
I've run out of things to try. Any ideas?
Screenshot showing the model selected, some other models in the same scene showing correctly, the image that should be shown, and the materials panel.

In hopes this can help not just you but also people finding this thread in future, here's some things to check to better understand the problem:

disconnect the image texture from the shader and manually set the base color to see if it's a texture issue at all (in OP's case it isn't)
change the background color (World Properties tab ) to see if the issue is black color of the model or transparency:

As for the solutions:

in viewport shading settings try deselecting Scene World or selecting Scene Lights:

in Material Properties tab make sure Blending Mode is Opaque:

in Shader Editor make sure the Material Output is set to All:


How can I set the number of samples per View Layer? In 2.79 I used to create several Render Layers in order to optimize rendering time. I sometimes use a sphere with an emission shader to simulate the sky. It doesn't require many samples to be rendered accurately. So having a sky rendered with a minimal number of samples and the rest with bigger samples numbers was quite efficient. And as compositing is powerful in blender; all was kind of easy.

In 2.80 I can group objects in collections make several "View Layers" and use "Holdout" to achieve the same thing for compositing. But I cannot find any individual View Layers setting for samples. I have one setting and it seems to be global.

In other words I'm looking for a "per View Layer Sample setting". What I would like to achieve is to render my "sky View Layer" at 8 samples (as an example) and the other View Layers at 640 samples.

I can't find anything on the matter to my despair.

Edit:

The suggestion to use >Scene>ViewLayerXXX>Override>Sample doesn't seems to work. I tried different values than the global one (=23 samples) for each ViewLayer and it end up rendering with the global setting. Both on Linux and Windows10 version (x64 portable packages)

This may suggest that >Scene>Render>Sampling>Layer Samples=Use isn't related to ViewLayer, though it could be appropriate considering the 2.79 -> 2.80 context.

The setting is still there - but it is in a different location. You now need to look to the Override panel where you'll find the Material override as well as the Samples override.


How to join more bones in a armature together I'm tryng to rig a face. I would like to join/parent more bones together,but I'm not able to do it. I've already tried using the approach explained here :

Join bones in a armature?

but it didn't work for me...check the attached picture,please. In the red circles you see the bones that I want to be attach together. The armature is the one provided by the Rigify Addon PitchiPoy Version,that I found here :

http://pitchipoy.tv/?p=2026

problem is that when I parent one side of the bone,the other side is disconnected from the rest of the bones and sometimes one bone is placed in the wrong place...

The connected bones are a Parent/child relationship: a Parent can have lots of childrens but a child can have only one parent: from the tip of a bone you can extrude (or connect) more than one bone, but you can't connect two or more bones to the base of another bone (it would have more than one parent).

Usually a complex facial rig is made of shapekeys; each shape key can be controlled by one or more bones using drivers: so you will have a rig made of deforming bones (the classic way) and non deforming bones (to drive shape keys).

Don't be afraid of drivers: they look more complicated than they are, and they're very very useful.


Desaturated red when rendered The scene only consists of a red texture mapped on a plane. No compositing enabled. Filmic color management with basic settings is enabled. Rendered with Cycles. No matter what color I set in the world, the red stays desaturated. Even in the material preview its not accurate. Why is that?

Also with emission shader instead of principled it looks different.

The red your colour combination is describing is the correct intention when rendered. The square is the incorrect result when considered in a physically plausible rendering scenario. Specifically, it is "correct" at only one possible intensity, which has no real bearing in a scene referred physically plausible rendering scenario.

A quick and simple test of this concept would be to keep increasing the emission of your original colour. You'll find that it skews to become a purely saturated REC.709 colour if you sample the output values, as opposed to the original intended colour ratio.

Principled shaders use, among many of the options, albedo values that represent the amount of reflection of a given channel for each of the default REC.709 three lights. It is also mixed in with other complex algorithms to yield the result. EG: The roughness / glossiness / fresnel is reflecting some of the source light itself, or other environment things.

With an emission, it is a little trickier. Your value is projected directly out. At risk of repeating some of the other answers on this site:

You cannot represent a colour that is both saturated and intense.

We are bound by the limits of the display. If we think about a heavily saturated REC.709 red such as [0.1 0.000000001, 0.0000003] we can see that we will "run out of room to express that colour" very quickly. Eventually the red channel will hit the maximum of the REC.709 display, and at that point, we can no longer "hold" the original colour intention.

So what you are looking at when you turn colour management off or use an inappropriate camera rendering transform is objectively wrong in all cases; *it simply isn't the colour represented by the original set of REC.709 ratios. Calling it "desaturated" is also a bit of a misnomer; it is a different colour entirely, and one that is based off of the original intention of the REC.709 colour triplets.

Andrew Price did a very good demonstration of this complexity in one of his videos. It is worth focusing on to begin to grasp the differences between a display referred imaging application and a scene referred rendering scenario.

Further reading which dives more deeply into how colours are encoded in an additive three light RGB model in relation to rendering can be found here.


Curve path on sphere I have a sphere with mapped imaged of the earth.  I want to show a tiny sphere following the path along from one point to another like and airplane. I did this already representing a ship on a flat map.  I used a sphere on a bezier curve with an array modifier.

I used front view to ensure that the curve and the sphere were above the level of the plane/map.  However, with the sphere/globe, I cannot get the curve to the top.  It goes through the middle or behind the sphere.  I tried everything I could think of (I am very new to this so everything is not much) and I searched to see if someone else asked the same question but was unable to find what I needed.

Can anyone help straighten me out?  Thank you so much.

This is the file that I created using the map and bezier curve with modifiers

This is the globe that I want to add a similar path to

You can try doing this:

Add the curve
Switch to edit mode and  subdivide the curve 4-5 times (press w to subdivide)
Add shrinkwrap modifier to the curve. Accept the default setting and as target set the sphere. Apply the modifier.
Now add the small sphere, with the array modifier and then the curve modifier with the settings you want (as done in the other blend file).

I am attaching the example blend.


Need help with hardsurface modeling Please excuse me for this is my first time on stack exchange and also my second time asking for help on any type of forum, so please bear with me.

In the picture below (Sorry got this image a while back and cant remember the artist name) highlighted by the red circle, is how can I make that curve then dip? Sorry I dont really know how to explain this type of problem. Also how would I make the grip rounded at the same time while making the rest area rigid

In the pink circle, How would I make that edge overlay like the artist has done in their render?

Sorry if this is hard to understand as I am still fairly new to blender and 3d modeling its self but know the basics to some extent.

I've tried your shape and I could get a rather satisfying result beginning with a boolean between a basic mesh and a torus, then join some vertices, etc... (everything mirrored fo course). Maybe it will help to show you my topology?


Constrain the movement of rigid bodies to two axes Is there a way to have an object, a ball for example, fall down and bounce up, using rigid body dynamics, but with its movement locked to two axes? So basically that would make for a 2 dimensional simulation.

I tried using a generic rigid body constraint but that doesn't seem to do anything when I lock a single axis. Now I'm faking it by putting the ball between four planes, in a box basically. Although there should be a better way to achieve this.

Use a copy location constraint on the ball to some other objects x, y coordinate.

Ball locked to bounce on plane origin (0, 0, 0)


How to UV-Map a complex plane? I'm having trouble adding texture to a complex plane object, where can I place the seams so that the UV-Map doesn't appear very distorted and overlapped.

Here is the file

In your case, I would separate the pillars from the rest of the mesh, if they are buildings. Otherwise, they are okay.

There are lots of techniques for unwrapping, but here are a few things to keep in mind.

You can use more than one UV map on an object. For example, you could "project from view, bounds" for the top of the mesh, and use a texture for the ground surface, then unwrap the sides of the pillar on a different map, and use a different texture for that.
Smart UV unwrap usually does a pretty good job, and you can base your unwrap on that if you want.
It is not always necessary to unwrap an object, if you want it to be textured. Your best and simplest bet may be to use generated coordinates with box projection.
You usually want to mark seams on sharp angles, and places that are hard to see, like the bottom of your pillars.

I noticed you are using "Blender Render", not Cycles. Are you sure that is what you want to do? From my knowledge, texturing can be easier in Cycles and many of the tips I suggested only work with Cycles nodes, as far as I know. I don't know very much about Blender render though.

Just some tips, I hope they help. Here is an example of using box projection on your model.


Motion tracking a shot where no tracking point is in frame throughout the video I’m trying to motion track a shot where the position it ends on is totally different from the starting position. In other words there are no tracking points that stay throughout the whole video.

How can I set up a tracking scene for the whole video instead of just part of it?

There is no problem in this situation.  All you need to do:

is in solve settings set keyframe A and keyframe B where you have enough motion and more then 8 point are the same.  So it can be not the start and end frame.
And also you need to track points from start and end (and maybe in middle) - your goal is to make shure that every frame have 8 or more enabled tracking points. They may be different, but due to the fact that new markers pick up motion, tracking will continue


How this scaling is done I am following this tutorial on character modelling but I am stuck at 2:43 how he scale it on y axis.

But when I scale the same edges my edges become straight unlike his moving inside. How he is doing that scaling ?

Very simple, press s to engage scaling mode and then press y to choose the y axis, when you move your mouse it will only scale on the y axis. You can do this with x and z also! Make sure with that character, you choose both the back and front or else if you choose one edge only, it will straighten or curve it depending on how you scale it!


Accessing the new rotation caused by "Track To" constraint So after searching for quite a while how to have my camera focus some specific object while the camera moves through space I found the very easy solution of the "Track To" object constraint.

This constraint does the job just fine, but now I wanted to extract the "new" rotation of the camera after being moved and still focusing the target and stumbled upon the problem.

After being moved, the tracking camera object's rotation isn't updated. Is there a way to access thew new rotation due to the "Track To" constraint?

I did not add a minimal example as it's less about a specific problem or a blend file and more about the nature of the Track To constraint. I did search the constraint's features, but none seem to give the actual rotation.
I would prefer to access the rotation through the Python API but if you point me to where it's in the GUI, I'm sure I can figure out the rest on my own.

Thanks in advance for any help!

ObjectMatrixWorld.to_euler()

Proof using the console:

>>> C.active_object.matrix_world.to_euler()
Euler((1.5707963705062866, -0.0, 0.0), 'XYZ')
>>> import math
>>> math.degrees(1.5707963705062866)
90.00000250447813

Further reading: Incorrect matrix_world after transformation
API link: https://docs.blender.org/api/current/mathutils.html#mathutils.Matrix
Custom panel example: https://blender.stackexchange.com/a/66941/31447


Proper Vandal's Script I have previously asked a question on how to have a bullet hit the center of the screen, and I received a .blend. It confused me a little bit, as it included python and I am not familiar with python. The code reads:

import bge

controllor = bge.logic.getCurrentController()
scene = bge.logic.getCurrentScene()

target = scene.objects['target']
ray = controllor.sensors['Ray']

if (ray.hitObject and not 'bullet' in ray.hitObject):
    target.worldPosition = ray.hitPosition

Does this mean the bullet has to always be called "bullet," I have multiple weapons, and multiple bullet shapes, speeds, damages, etc. Would I need to duplicate this script for every bullet type? Would I add commas to the script and show other bullet names? How would I let this script work for all my weapons?

"bullet" is a property that you should put on all your projectiles, that way your weapons will not track to the projectiles being added. all of your projectiles should have this property, only because the weapons behave very odd when they track to the bullets being fired. "target" is the name of the object that that the guns track to.

It essentially works like this:

The object "camera" sends out a ray from the ray sensor. if the ray collides with anything that does not have the property named "bullet", the object "target" will snap to the position where the ray collided.
And because your guns are always tracking to the object "target" it will appear, and function as if the guns are always pointing to the center of the screen, wherever the object "camera" is looking.


Draw a 2d box using Bgl in viewport I have been trying read up a lot on opengl drawing using python and have been trying to create a script which display a text and a 2d shape on the viewport (a rectangle or square). From reading the blender docs I could only find little to no information about it and only got me to display text. The 2d shape drawing is still out of my knowledge. In this code I'm trying to draw a text and a draw a 2d quad in a modal operator but unfortunately the quad doesn't show up but the text is working properly.
How do I draw a 2d shape in a modal operator using bgl ?
import bpy
import blf
import bgl

def draw_textandbox(self, context):

    font_id = 0
    x_offset = 0
    y_offset = 0

    #The Text-------------------------
    bgl.glColor4f(1,1,1,0.8)
    blf.position(font_id, 80, 500, 0)
    blf.size(font_id, 27, 70)
    blf.draw(font_id, "LEVELS:" )

    #The Box, This is the part i wanted to work but unfortunately it doesnt
    bgl.glColor4f(1,0,0,0.8)
    bgl.glBegin(bgl.GL_QUADS)

    bgl.glVertex2f(200, 400)
    bgl.glEnd()

It's a quadrilateral, you need to define 4 verts.

Test method, x and y are pixel coordinates of bottom left corner of rectangle, h and w the height and width (in pixels) respectively.

def draw_box(self, x, y, w, h, color=(0.0, 0.0, 0.0, 1.0)):
    #bgl.glDepthRange (0.1, 1.0)
    bgl.glColor4f(*color)
    bgl.glBegin(bgl.GL_QUADS)

    bgl.glVertex2f(x + w, y + h)
    bgl.glVertex2f(x, y + h)
    bgl.glVertex2f(x, y)
    bgl.glVertex2f(x + w, y)
    bgl.glEnd()

Run-able Example


Create a distorted checker texture So how could I make a checker texture distorted like most other blender textures in the material nodes category?

Well the only inputs that can affect distortion on the Checker texture is the Vector input and the Scale input. You can plug the colour output of any other texture node into either of these 2 inputs to distort the checkered effect quite dramatically.

Solution 1

Solution 2 - Distortion created by mixing Texture Coord and Noise texture with more subtle effect.

Please note the Subtract node is optional and is used if the texture doesn't reach the edge of the object. It is used to offset the texture so that it fills all surfaces of the object.

Credit for this technique goes to Bartek Skorupa in his Manipulate texture coordinates like a boss presentation.


Why don't static objects detect collisions with other static objects? I have a static bullet with the collision bounds set to a cube. I also have a static target with the collision bounds set to cube.
my bullet has the following logic setup:
my target has this logic setup:

Both have very basic logic, and it works if I set my bullet to rigid body or dynamic.
however, if I set my bullet to static, when I start the game engine, the bullet passes through the target and out the other side with the target remaining in place. Why is it that static objects can't detect collisions with other static objects?

It is that way by design - most likely for performance. See the Static Physics Object page.

Static objects in the Blender Game Engine do not automatically react to physics, including gravity and collisions. Even if hit by the force of a speeding 18-wheeler truck, it will remain unresponsive in terms of location, rotation, or deformation.
It will, however, give collision reactions. Objects will bounce off of Static Objects, and rotational inertia will transfer to objects capable of rotating (that is, Rigid Body Objects will spin in response, though Dynamic Objects will not).


How can I increase the space between letters in a text object? If I just make a space with the space key it will add too much space not equal like the other letters spaces between each other. But without a space the Y and the T seems like they are glued together.

And if I make one space with the space key then the space is not equal to the other spaces between the letters:

And it's only with the last Y letter.
I tried to move the text a bit with the arrow keys like in the solution but then in the render windows CTRL + F12 the text is now too big :

In edit mode navigate text cursor before the last letter Y. Then hold Alt and use arrow keys to move all text after cursor to the position, that you want.


Continuous Looping animation - Differing rotational speeds Just trying to do my first animation and am struggling to make it loop seamlessly. I think the differing rotational speeds of the 2 objects are the thing to overcome but I'm not sure how.  I basically want the earth to do one revolution to the teapot's 2 orbits around the earth.

Can anyone have a look at this  and advise me?

Thanks in advance.

Driver Based approach.

For the planet I have added a driver to its z rotation.

 pi * frame / 40

where frame is known to the driver namespace as the current frame. The rotation is 0 degrees at frame 0 and 360 degrees (2pi radians) at frame 80.

A satellite object and an orbit circle is added. A follow path constraint, with follow curve and fixed position.

The driver is added to the offset.

(frame / 40) % 1.0

At frame 0 and frame 40 will be at 0 and 1 offset (same position) respectively.  The % is python modulus, ie the remainder when divided by one.  Related

Ok so now have a planet that revolves once in 80 frames and a satellite that orbits every 40 frames.

To loop the animation, set 1 and 80 as start and end frames.


Some walls appear too bright while others appear fine Some walls in my blender project are too bright and others appear just fine. Here is a picture:

Link to .blend file removed.

I also forgot to say that I'm using the Blender Internal Rendering Engine.

The .blend will be removed from mediafire when the problem is solved.

Examine your Lights for position and direction and specular value.  If you use a Sun Lamp and point it you can selectively illuminate a wall.  If you are using specular light direction and viewing angle must be considered.
Colors.  Make sure the walls share a material.  The materials would have a number 2 or greater if it is shared.
Examine thes normals of the wall.  Edit Mode. Key N. Mesh Display. Normals Click plane Face Icon.
More Drastic.  Create archive of file. Delete all lights.  Add back one by one to see if the asymmetry persists. Two antiparallel sunlights should achive symmetrical lighting.


Distort plane by multiple curves Not sure if this is a good way to go about things; so any alternative approaches are welcome too.

I would like to distort a plane using multiple curves

So the below plane would be bent "into" each of the curves in the image.

Thanks,
Brent

It's possible, but as Duarte said in his comment it may be painful and requires some experimenting.

3 important things that you have to do:

subdivide your plane several times (being in Edit Mode press W-->Subdivide)
make sure the plane and both curves have the origin points placed in the same position
apply the transformations for all the objects (being in Object Mode press Ctrl+A-->Apply Rot&Scale)

Now select the plane and give it two Curve modifiers (each one should have a different curve set as a target). Dissable the second modifier (eye icon). Check which deformation axis fits the first one. Fit the plane to the curve. Now enable the second one and do the same step as with the first one.


Particle>Hair>Collection>Position? Hi I'm new to blender so any help would be appreciated.Thanks in advance.
Thanks to this tutorial >> https://www.youtube.com/watch?v=35bbyAJodEQ&t=975s
I'm trying to put splash pngs on the ground but I can't find how to fix the position of PNGs
Horizontal black line is the ground and orange rectangles are the splash PNGs.
I want grab those rectangles to the upwards
I've been trying this by Particles>Hair>Collection>Instance Collection

Go to the object(s) in the collection. Go to edit mode (for each one if you have more objects) select the bottom two vertices, then hit SHIFT + S and choose Cursor to selected. Then go out of edit mode, hit CTRL + SHIFT + ALT + C (yes all at once) and choose origin to 3D cursor. Now the objects should be positioned on top of the plane in your particle system.


How to not select objects behind main camera with script in Python? With python, I search to select objects in the field of view of the main camera. I found this great script by ideasman42.

It's half perfect. I don't understand why the script also selects objects behind the main camera. I need help please: How to not select objects behind main camera?

Add a plane on perspective camera looking forward.

As a quick work around is to add a plane looking forward on a perspective camera, by adding this else clause circa line 32 of original code.

if not is_persp:
    # add a 5th plane to ignore objects behind the view
    n = normal(frame[0], frame[1], frame[2])
    d = -n.dot(origin)
    planes.append((n, d))
else:
    n = (matrix * Vector((0, 0, -1)) - origin).normalized()
    d = 0
    planes.append((n, d))

A cameras line of view is its negative local Z axis. All above does is adds a plane that has a global normal looking in the same direction.

Image shows plane with normal, the Z axis pointing in direction of camera's -Z axis.


Flat vs smooth shading in photo-realism and glossy shaders I understand flat shading is a big no-no for parts of the geometry that curve, so transition between face do not show. I also understand the difference in the viewport: flat shading gives a single color to a whole face whereas smooth shading interpolates across a single face or many faces depending on lighting. But when it comes to parts of the geometry that ARE actually flat (e.g. table top) and have a cycles shader on them (vs the single viewport color), I find it really difficult to tell that the best option is (or at least why). See the comparison in my current project (low sampling):

The area circled in pink must be smooth: it is curvy and otherwise faces will show. However, area in green and blue have a completely flat geometry. The green area seems more realistic when flat shaded (ignoring the noise due to low sampling), which makes sense, but the blue area looks better smooth, for a reason I can't put my finger on. I know that there are never any 100% true flat surfaces in reality, but surely everything cannot be smooth shaded, because of what can be seen in the green area (makes a rectangular prism look like a cylinder). And the blue area is just fine smooth shaded, and the angle is 90d too! Why is that?

The answer given by @R.M is the way to go to achieve a photo-realistic result, but it requires to modify your mesh.
If you can't afford to slightly change your geometry, another solution exists: auto-smoothing.

Set your whole mesh as smooth shaded and go to the properties panel.
Under the category object data / normals you will find the option Auto Smooth. Turn it on and tweak the angle to your liking. This will automatically set the faces above this angle threshold as flat and the others as smooth.

Here is a simple example with a cylinder:

Quick render with smooth shading, notice the unwanted behaviour near the top and bottom faces.

Quick render with auto smooth activated. The top and bottom faces are flat shaded while the other are smoothed.


Rounded corners - but not as you know them - messing up the mesh for sub-division surface (Piano key) I'm trying to model a black organ or piano key. It's basically a long cuboid with some non-square angles (which shouldn't make much difference). It has rounded corners on the front and will have slight rounding on the edges. The front corner rounds are approximately spherical, but the adjacent edges to these rounds are not rounded to the same extent, so the rounding "fades out" into the edges, but in a circular curve. I don't know what this is called and I cannot find any other examples.
Forming the rounds is easy enough - I've tried two methods - but both create problems when applying a subsurf modifier. The mesh ends up either with triangles, or with non-planar quads. I can't work out how to do it without triangles by using the first method, and I don't think it's possible to get non-flat quads using the second. When using the subsurf modifier, I get ripples/'stretches' - I believe this is a result of triangles in the first case and I can only assume it is due to non-planar quads in the second.
For the first method, I created the base cube, then created an identical copy of it. I then made and positioned an appropriately-sized sphere partly within it, boolean-subtracted the sphere and then deleted all but the top front corner. I then over-sized this slightly and boolean-subtracted it from the actual base cube.
For the second method, I knifed quarter-circular curves on the three faces of the corner, then deleted all the corner mesh and joined up some of the vertices, split the remaining middle hexagon into quads and then created faces.
I've been on this for many evenings and can't work out another method that works.
Please note the loop cuts that I will also need to make in order for the subsurf modifier to create flat faces almost up to the edges, but with a nice round on them. I suspect these loop cuts somehow need to be integrated into the corner, though I'm not sure how, and nor am I sure whether the loop cuts can easily be created after forming the mesh for the corners.
I'm quite new to blender, so you may need to go into some extra detail for me. Thank you!

In my opinion you can keep ngons and tris as long as it doesn't create any bad pinching or artifacts, but if you want to keep quads only, given that a triangle can be cut this way:

you can end up with this topology, which seems to work fine:


Baking PBR Metalness maps 2.8 It seems that blender still does not support Metalness baking in 2.8. This is essential to asset designers, will there be support for full PBR map baking anytime soon? and are there any Free programs or add ons that will allow me to bake out a full set of PBR textures specifically the Metalness map for a mesh?

UPDATED

Partially true, it is somehow not very straight forward or obvious, but here is a work around:

remove - disable all of your lights from your scene (as you do for the rest of your bakes if you dont want to affect the baked textures)
Bake Glossy (only Direct Enabled)

As has been mentioned in the comments it seems that there is no color bleeding on the faces, but instead if any face is occluded will be affected by shadows (which is not wanted of course) as it happens on my example (see bellow)

So far I didnt find a proper way to get rid of it, in fact what I had to do was to remove the plane in order to get the appropriate result, which is a bad thing.

Nevertheless, this should do the job for now ;)


How to get a head to track an empty I've been working on this robot character and I'm trying to animate so that all the body parts float, similar to that of rayman.

The problem I'm having is I can't get the floating head to track an empty, it comes up with a red box when i try.

How can I rig up this figure properly and get it to move around like it is floating?

Blend file here for reference:
https://www.dropbox.com/sh/h0gc9837wnutcoc/AACIO3YAgyFSY7MviS15yyI1a?dl=0

Any help would be greatly appreciated

The following should work:

Add the empty to your scene and position it in front of the head, then select your head object and apply rotation by pressing CTRL+A and select "rotation" from the list:

Now with your head still selected, go to the constraints panel and add a "Track To" constraint, and in the Target field select the Empty you want the head to follow:

Note: You may have to change the axis in the Track To constraint, depending on which way your head is looking. Judging by your screenshot, I suspect it will be something like -Y


What's the point in modelling the base mesh? On a thread, I saw someone mentioning that sculpting leads to triangle faces which I myself saw happened to me lately but I find myself sculpting for the final touches even after modelling it 60 percent. Is there a point in modelling at all if I can just sculpt the entire thing from start to get the same result (I really don't wanna model the entire ting from start to final product) ?

This is my personal view, based on my own experience, so some others may see things differently: Sculpting from scratch is possible, but works best with purely organic forms which don't have a lot of lengthy or technical structural features. If they do have these, then it can be expedient, I believe, to begin with a modeling process instead of a sculpting process. You can use both processes, of course, and alternate between them. It can sometimes be efficient to begin with a modeling process and move over to a sculpting one, once the overall structure is in place, and you now want to create finer details. You can also get a lot of good use out of booleans when sculpting because the resulting topology issues aren't yet a concern. Also, bear in mind that sculpting only leads to triangle faces when Dyntopo is enabled. If disabled, sculpting brushes only push vertices around, but don't actually change the topology, which is one possible approach that might be more compatible with a workflow that switches back and forth between modeling and sculpting. So don't discount the use of both methods. I would never want to suggest that one of these methods is always preferable to the other.


Blender 2.8 - Object/Mesh Dimensions perplexity - Help please Beginner here & also the first time searching for help here

I'm modeling a Sword for a Melee Slasher Game &
without an offical SDK(soon), i'm only able to exchange existing Models.

This means i've to keep/use the exact Scales/Dimensions of an existing Sword in the Game, because of the same Hitboxes they've to use etc.

So i converted the UE4 File into .fbx and imported it into Blender
Scale/Dimensions are this:

Then i build my own Sword in the same Project, to adjust and keep the Dimensions to the Original Sword i'm trying to replace later.

As a Beginner, i once made the mistake and couldnt merge by distance as expected and made my Sword something like 20x times bigger in all directions to merge by distance to get the result i wanted.

Now i cant rescale my Sword-Mesh properly & i'm searching for ages for a solution on the web.
This is how it looks, when i'm just typing in the Dimensions of the Original:

(Unmarked Sword-Mesh=Original / Marked Sword-Mesh=My Model)

(The Dimensions dont fit to my 20x statement anymore, because i already tried many rescalings)

And this is, how it approximately should look like:

I dont want to rebuild the whole Sword, even though it could help me to get a better workflow and so on.., but for now i want a solution to this problem,
because i could run into this later again.
Could somebody give me a Step-by-Step Guide, how to fix that?

Your scale values are locked

Click locks to unlock.
Then scale your model to match reference sword. Scale values may not be 1. You can apply scale (Ctrl + a) to make scale values 1.

Or else switch to edit mode, select all vertex and perform the scaling. Doing so won't alter your model scale values


How to create an engine glow effect for spaceships in cycles? I want to create some kind of lighting effect for the engines but I quite new to lighting in general. To be honest, I'm used to sticking a single point lamp in.

From the tutorials I've seen, none of them are for cycles and focus on lighting a whole object anyway, not particular faces of it.
The engines I want to add the effect to are the 3 on each wing and the 2 in the middle.

I tried following this (How to create a fire/light effect in a spaceship engine) previously but none of it is making too much sense.

The first method shown was using volumetric materials. I've never heard of that before while working in Blender but I thought I myswell try it still but the whole method itself was just too complicated. I just didn't understand half of what it said.

With the composition method, I used the same nodes (with same values) as in http://i.stack.imgur.com/tzaT8.jpg yet I didn't notice any change in my render whatsoever. I guess those effects were supposed to effect the picture as a whole? I don't have any experience with either nodes or composition previously before this.

There could be several ways to do this.

If you don't want to gent into full rendering just switch to Blender Internal rendering and create either a shadeless material or an emitting material and assign it to parts of your mesh. It wot actually emit light that can cast shadows on other objects but it will quickly simulate the effect.

You could also add some sort of "geometry plumes" if you want actual jet plumes coming out.

If you plan on using cycles or do real rendering add self illumination to the geometry to really light up the scene

Any further effects could be achieved through compositing or post production easily and non destructively


How to center object in global coordinate system? I'd like to locate a object at (0,0,0) in the global coordinate system, but the object has its own coordinate system, such that bpy.context.object.location = (0,0,0) does not work:

How can I determine the offset to move the object to the global point of origin (0,0,0)?

Using the ideas of the proposed solution, this snippet does the offset calculation:

bpy.context.scene.update()

# determine minima of the object
min_x = min_y = min_z = 999999.0
for vertex in self.blender_object.data.vertices:
        # object vertices are in object space, translate to world space
        v_world = self.blender_object.matrix_world * Vector((vertex.co[0], vertex.co[1], vertex.co[2]))

        if v_world[0] < min_x:
            min_x = v_world[0]

        if v_world[1] < min_y:
            min_y = v_world[1]

        if v_world[2] < min_z:
            min_z = v_world[2]

# convert to world coordinates again
size = self.blender_object.matrix_world * self.blender_object.dimensions

offset = Vector((min_x +  size.x/2, min_y - size.y/2, min_z))

self.blender_object.location = self.blender_object.location - offset


How do i model this plastic handle? Another question from a sad rookie:
I managed to properly model this 5 liter bottle (Thanks for the amazing guidance from a user in my previous question) and now i need a cap and a handle for the bottle. The cap is pretty easy to model but this plastic handle is a different story. I don't even know where to start — it is such a complicated object. I was thinking about modeling it with proportional editing — no luck so far... Any tips and tricks for this kind of work?

This is how I would do it:

Create a bezier curve for the in the shape of the handle's profile. Life is easier if you put the object's origin at one end.

Create another curve in the shape of the handle.  To simplify things, I left the origin at the World Center and used a mirror modifier.

With the handle shape selected, go into the Curve properties, Geometry section and create a bevel, using the profile curve as the bevel object.

That should give you the basic geometry.  You could convert to mesh, add a solidify modifier and make any tweaks you wanted from there.


Rotation around one axis (Mechanical) I am completely new to Blender and I have trouble solving a rather trivial problem.

I have a model of a machine which parts can only rotate around a given axis.

For example: Imagine a tank with its turret. The platform of the turret can only rotate in a circle around the y-axis (height axis). I wanted to archive this with a simple cylinder and a rotating plate on top.

I watched tutorials on rigging but using armature seemed the wrong move since it mainly bends instead of rotating the object. Is there a way to force the armature bone to only be able to rotate? If thats possible I could assign every part of the machine one bone with fixed axis rotation and a fixed offset to the next part of the machine.

Which technique should be used to archive the given task?

You can add a Copy Rotation constraint to them pointed to one Empty, then just rotate the empty on that axis by pressing R+Z.

Now when you rotate the empty all the other objects follow that rotation.


Blender Output Options I'm new to blender and have just built my first 3D model. I'm wondering though if there is any way to create a properly rendered output of the 3D model in a standalone file which another user could open on their computer and have the ability to move the camera (zoom, pan, rotate etc) around? Or even if not standalone just a program that creates the rendered model and allows the user to have full camera control after the object has been rendered (rather than just getting a video/image output of the model).

Unless you create a specific setup using the Game Engine where the camera has controls for this, it is not possible to do so out of the box with Blender. Also, in my opinion, it is not entirely worth the trouble doing this as there are better ways to go about it. From experience, such a setup can quickly get clunky as there are performance issues across platforms and other things you might need to take into consideration.

I would instead recommend going with a browser solution. By doing this, you only need export once to some supported mesh format such as .fbx or .obj and there are very little to no dependencies (game engine standalones tend to be a bit large), the user just needs to have a modern web browser.

See this answer and there is also p3d.in (I highly recommend this site) and Sketchfab. Example of a model on p3d.in. It also supports textures and several other rendering options.


New edge does not split face I subdivided a face. I then connected the newly added vertex to an existing vertex by selecting both vertices and pressing F
The now newly created edge crosses an existing face, but the face is not partitioned by the new edge (as can be seen in the screenshot below). So, I obviously did something wrong.

So, my question is: how do I split the existing face in two right where the edge is?
P.S.
I'm reaaly new to blender so I don't know the correct terminology to search for; I hope this question is not answered here already.

By selecting the vertices and pressing F you are simply creating a new edge. The faces connected to the vertices are not changed, this behaviour correct.

In this position, delete the problematic face.Select all the vertices and/or edges, which need to be fill and press
F to fill them with new faces.

Alternatively, before creating the edge which intersects the face, press K to cut the face with the Knife Tool. The knife tool can snap to the vertices along the faces' edge.


Play Animation key not working My play animation key isn't working, by that I mean its not playing the animation, but if I use the mouse to go through the animation frame by frame, then it works.

https://www.youtube.com/watch?v=6_642qpJ2pY&feature=youtu.be

In the Render Settings set the End Frame to the last frame of the animation. Both numbers are 0 right now.


Match exact color between Node and what is being rendered You know how you get a color without any shading when plugging in a color output into a shader socket? Is there a way to make sure that exact color is being rendered?
I'm working with a strict color scheme and want to match it exactly.
I'd really prefer it to work with EEVEE since it has the Shading2RGB node.

Emission shader with strength of 1 should output the exact color you connect to the color input. Thought volumetrics would affect the resulting color ("overlaying" over it).


How to: set the "world" environment colour to white I Just ticked the "World Background" box and now everything shows up. in the third picture, i loaded factory settings and now everything is ok. but if i restore the program i will loose all my configurations. I will try to export them, reinstall blender and load them again.as you can see in the second picture once again the world environment is completely black. nodes are shown. thanks!
Tnanks so much for your help in advance.

Click the "Use nodes" just above the color input. It will replace that simple color input to some nodes, giving you access to the color and strength of the environment. Make sure the color is pure white, and the strength at least at 1.

If not enough, then it might be some other issue(s). The two I can think of right now:

Ray visibility: in the World's settings there is a Ray Visibility panel, make sure everything's checked:

Color Management: Go to the Scene tab, Color management panel, make sure you have nothing fancy:

If it doesn't solve your issue, then a deeper digging may be required, and you should provide your .blend file.


height map for normal input sharp edges So I have generated this simple height map to test my add on:

That's the node setup and the result that I am having in Blender:

What is happening here (basically, that's a theory, I did not analyze the actual pixel values programmatically): Blender Bump node is interpreting each slightest variation in the pixel value (say, 0.985 white and 0.99 white) as variation in height. What you have as a result are the ugly cutoffs. By the way, a similar question with the same problem, unsolved: height map brings weird result

Now, if I do converting in CrazyBump, I have the opportunity to ignore small details, and, if I convert with CrazyBump, the map is displayed correctly in blender. By their nature, any height map, even 16K will not be absolutely smooth because the set of possible heights is a set of discrete values, it will never be smooth. The task of an algo would be to produce smooth normals from this. And this is what Bump node obviously does not do. Any suggestions? (using other software does not work, I want to achieve it specifically in the node editor of Blender, for any BW map)

and just to prove the point: if I twick the small details all the way up in CrazyBump, I will get essentially what the BumpNode in Blender is doing: overexaggerating non-significant value variations:

short answer: as @cegaton has pointed out, save your image with 16 bits depth. If you are baking like me, this has to be done before bake, because resaving later does not generate information lost while baking.
Go to 'Save as' dialog, there in the lower left corner choose 16 bits depth.

A (not so) technical explanation: if you are not familiar, depth is the number of bits used to store the pixel color. With 8 bits, you store 2^8 = 256 color values at maximum, with 16 bits that's 2^16 = 65536 possible colors. What was happening in my case is the following: for the different height values in the geometry that I was baking, an approximation was generated to store the height. In other words, for heights x-0.01, x, x+0.01s, it would simply put x, because it has no bits to store all the three. Hence the flat areas in your image, where the color gets 'simplified'. For my 8 bits image, I did for learning purposes:

len(set(bpy.data.images['My8BitImg.png'].pixels))

This has returned 256, while

len(set(bpy.data.images['My16BitImg.png'].pixels))

has returned 42891 in my case.


Bumpiness of grassy meadow I am doing this tutorial of Blender Guru on making grass. Around 20:00 min he shows his render:

When I look at my render the meadow of Blender Guru is more "bumpy". As far as I know I have the same settings in my blend file (attached). Why is there a difference in "bumpiness" ?

You can download the Blend file here. For some reason (?) the file is close to 150MB and cannot be uploaded to Blend Exchange

Just increase the strength of the displace modifiers.

The displace modifier works by using the brightness of the texture to displace the vertices of a mesh on a particular axis.In this case the bright areas of the texture will displace upwards while the dark ones will push vertices down.

It is possible that the contrast and brightness settings used on your texture don't exactly match those of the so called "tutorial".


How can I make a good looking candle flame effect to be used in Unreal Engine 4 Pretty much the title. I want to have a candle effect I can use in unreal engine 4 that I can stick onto this candle mesh I've made. What would the best way to do it be?:

As it seems to be an asset with little significance for details, I'd suggest using a textured plane set as billboard (i.e. always facing the camera).
You can either draw the texture with a few frames of animation or animate the top vertices of the plane, so you get a little bit of flicker. Don't forget to use transparency with your texture.

Obviously, the texture should be set for "emission".


Armature/Bone Heat Failed I have a model which have meshes that are not aligned at x axis. When I try to use automatic weight for connecting bones to meshes, I get "Bone heat weighting: failed to find solution for one or more bones" error. If I align bones to x axis, automatic heat weighting works but it is not suitable for my model.

I deleted all double vertices. And there are no open surface. Do you have any suggestion?

I would reccommend a few things:

Start with the bird in an easy rest position:
Right now you have it set so that the wings are in an up position. This can complicate rigging and could result in artifacts when the wings are in the down position.
If automatic weights do not work, you may need to weight paint manually: Automatic weights are designed to be a time saver, but may not work in all instances. It may become necessary for you to paint the weights manually

You may want to watch a few rigging tutorials and try to apply those concepts to this project, as I think there is no one right answer, but rather a set of toolsets that can be applied to each situation depending on the conditions.


Adding Other types of Custom Properties I'm starting to use the amazing, yet simple to use Blender Drivers:

I'm looking for a way to add other Types of Custom Properties than the default floats.

For instance: Color, Vector, String, Boolean or Integer.

From what I've seen it seems to rely on Python.

AFAIK you can set up all but boolean by using that type in the property value field.  Eg type in integer 1 and you will notice the slider moves by integers, even if min and max are displayed as reals.

For vector floats, typing in (1.0, 0.0, 0.0, 0.0) gives a list usable for rgba values.

>>> C.scene['prop']
<bpy id property array [4]>

>>> C.object.color = C.scene['prop']

>>> [c for c in C.scene['prop']]
[1.0, 0.0, 0.0, 1.0]

To define them with a script is pretty simple too

import bpy
context = bpy.context
scene = context.scene
scene["someprop"] = False

To get a little more into it, the _RNA_UI is where custom properties keep their data, min, max, default, description

import bpy

context = bpy.context
obj = context.object

rna_ui = obj.get('_RNA_UI')
if rna_ui is None:
    obj['_RNA_UI'] = {}
    rna_ui = obj['_RNA_UI']

obj["prop"] = (1.0, 0.0, 0.0, 1.0)
obj["bool"] = 0

rna_ui["bool"] = {"description":"Bool",
                  "default": True,
                  "min":0,
                  "max":1,
                  "soft_min":0,
                  "soft_max":1}

rna_ui["prop"] = {"description": "Color Prop",
                  "default": (1.0, 0.0, 0.0, 0.0),
                  "min": 0.0,
                  "max": 1.0,
                  "soft_min":0.0,
                  "soft_max":1.0,
                  }

You can add these to your own layout

import bpy
from bpy.props import FloatVectorProperty, BoolProperty

class CarPanel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "Car Details"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "object"

    @classmethod
    def poll(cls, context):
        return context.object.get("Capot", False)

    def draw(self, context):
        layout = self.layout

        car = context.object
        layout.prop(car, '["Capot"]')
        #bools don't show well (1 or 0 integer)
        layout.prop(car, "switch")
        layout.prop(car, '["bool"]')
        col = layout.column()
        col.prop(car, '["prop"]')
        # car color property
        row = layout.row()
        row.prop(car, "car_color")
        # object color rgba
        row = layout.row()
        row.prop(car, "color")

def register():
    # define a registered property (available for all Object types size=4 gives rgba)
    bpy.types.Object.car_color = FloatVectorProperty(subtype='COLOR', size=3)
    bpy.types.Object.switch = BoolProperty()
    bpy.utils.register_class(CarPanel)

def unregister():
    bpy.utils.unregister_class(CarPanel)

if __name__ == "__main__":
    register()


Layers function Blender 2.8 missing Where is the layers button/function that was in 2.79? I have not been able to find the layers function.

Layers are now called "Collections". You can find them in the right sidebar.

Here you can find more informations: https://docs.blender.org/manual/en/latest/scene_layout/collections/collections.html


Make animation run only once in bge i want to make a animation play one time and don't play again.
How i do that?

I'm using logic bricks.

Let the message set a property to value 1. Then add a property sensor: If property = 1 --> play action.

OR

Let the message set the state with the "State" actuator. In the another state, play the action triggered by an always sensor.

It will never play again ;)

I see you wrote "Vanish". If you want that the object disappears, use the "Invisibility"-Actuator instead of an action actuator and turn "Visible" off.


transfer same rotation in graph editor and 3d view When I change the rotation of a certain bone (e.g. the bone of an upper-arm) in 3d view on only one axis (e.g. ' X '), all three curves in the graph editor are automatically changed when I set a keyframe and not only one curve.

Therefore, changing the rotation in the graph editor by changing the keyframes would be easier than to work in 3d view where all 3 axes are automatically changed. But since I work with Quaternion I would like to avoid using the graph editor to adjust the rotation of a bone because the W rotation wouldn't be automatically adjusted.

Is there a way to have the same effect when changing the rotation of one axis in 3d view as it is in the graph editor?

I think you are referring to inserting a keyframe for a single channel. Of course with quaternions the minimum number of axis are two (because how quaternions works)


System crashed but no autosave file found I had been working on a Blender file for about an hour when my whole system just crashed and powered itself off (using Ubuntu 13.10, and I had many applications open).

The /tmp directory where the autosave file is typically found had no blender files in it.

I just opened Blender again and confirmed that the autosave feature is working properly according to my settings (saving 2734.blend every 3 minutes).

So why is there no autosave file?  The /tmp directory had other files in it, so I don't think that Ubuntu crashing caused the file to be deleted.

It seems /tmp is cleared on startup in ubuntu by default, so
unfortunately if you had to reboot your machine everything in /tmp was erased.
The other files you saw in /tmp were probably created on startup.

Blender has some other backup systems (see this post), but if you did not make any manual saves I'm afraid there is nothing to be done.

Autosaving to the hard drive:

You could change the directory blender uses to store temporary backups to a location on your hard drive by changing the Temp location in CtrlAltU> User preferences > File:

Note that this setting controls the location of everything blender puts in /tmp by default, not just the autosave files.


Why do textures stick around in the editor? UV unwrapping a mesh with different object using some image textures has some issues. Specifically, in this case, I have created a table and UV unwrapped the main part(the one that is active below):

Even when I tab out of edit mode and select a different part of the mesh the texture sticks around in the editor:

As you can see, a different object is selected, the UV slot is empty BUT the texture stays. If I UV unwrap it anyway, the texture is automatically applied to the mesh portions as so:

If I hit the new button:

Blender only has options for generated textures:

And if I hit the cross button, there is no user for the texture:

And therefore, I cannot unwrap.

I haven't had much experience with UV unwrapping. What is this problem? Why does this arise? Is there a way to refresh the UV editor? How can I fix this?

To get rid of unused textures, you have to save and then reload your file.

Either use "File - Open Recent - " or hit Shift+Ctrl+O and then hit Enter, since your latest save is usually in the first place of the list.

If you want to get rid of a texture despite having it assigned, press Shift and hit the X button beside the texture's name in the UV/image editor Texture dropdown.

Besides that, textures are kept around on purpose. This comes in handy when you are optimizing your workflow. And you are certainly able to unwrap a model without any texture at all.


How to import ".off" object file using python code I have installed import_off addon from this github repo. This addon provide import functionality of the ".off" file in blender using the GUI. But there is no way I can import ".off" file using python.

Please tell if there is any way I can import .off files using python, since I intend to work on many 3D models and using GUI is not possible on all of them.

You are under a misapprehension that you can not use the import OFF addon you posted.

Get the name of the operator by mousing over the import menu bpy.ops.import_mesh.off(...)

Typing the operator in the python console and using autocomplete CrtlSpace exposes the parameters (Same as those in the UI).

bpy.ops.import_mesh.off(filepath="", filter_glob="*.off", axis_forward='Y', axis_up='Z')
>>> bpy.ops.import_mesh.off(

Simply pass the filepath of an OFF file to the operator in your own code.

Eg: to import with default settings.

filepath = "some/path/to/file.off"
bpy.ops.import_mesh.off(filepath)

This can be done for pretty much all import / export addons.


Vertex colors loose color data Vertex color data seems to be distorted when used in material nodes, does anybody has similar issues? Looks like Blender modifies them for Cycles somehow. I am using VC not for coloring but for hinting shader about material properties at specific faces and need exact RGB values from Attribute node.

This happens with "shade" colors only, not with "pure" colors

Exact case:

When i am using pure colors in vertex color editor ( full red/green/blue/white) and read them via Attribute node in material - everything is fine, i get the same RGB values. So in case of (1, 1, 1), (0, 0, 0) color data is not lost.
But when i assign colors like (0.5, 0.5, 0.5) - "Attribute node" returns halved values, (0.21, 0.21, 0.21) for pure gray, for example.

In other words colors in Vertex color editor and "Attribute node" are not the same, there is a nonlinear mismatch. How this can be fixed? How real RGB, unaltered values of vertex color data can be read in material node?

For now, i manually reajdust values with pow(channel, 0.45188), which maps 0.5 in vertex color editor to 0.5 in Attribute node, but... that`s weird. Any help really appreciated.

Vertex Colors are held in 8-bit sRGB format rather than 'raw' (linear) RGB. Therefore, what actually appears to be 0.5 in sRGB space actually refers to a different 'raw' value - hence the need to convert. See How to convert image pixel values from 8bit to 32bit properly? - answered.. but why byte image buffer is stored with non-linear color values? for some related discussion and links.


Cycles Render CPU Usage Low with Dual Xeon low CPU usage on Dual Xeon (128GB RAM) when rendering "blenderman" using command line and Cycles on Ubuntu and Win10. Using latest 2.8 build.

Single i7 3rd Gen gets upto 100% using GUI and CMD on Windows 10...

GUI and CMD on i7 and Win 10 using "blender -b Blenderman.blend -f 2"

CMD on Dual Xeon on Win10 "blender -b Blenderman.blend -f 2"

CMD on Dual Xeon on Ubuntu..."blender -b Blenderman.blend -f 2"

What gives?

Your threads exceed the tiles number (cool!).

You can't render a tile with more then one hyper core thread. Change the tiles size

See this, I got 512x512 tile size with Full HD size rendering, there are 8 tiles been rendering, with 100% CPU in i7-4770k(4C8T).

But with 1024x1024 tiles, there are only 4 tiles to render. So 4 Thread are used with 70% CPU load(Hpyer thread)


What is the relationship between UV image and material texture? I am struggling to understand perhaps a very simple concept in Blender. There are materials which might have some diffuse coloring and a texture image, and there are also UV maps with their own images. Both can be applied to meshes or faces, but it seems that if a face has UV map then the material's texture is ignored and an image for UV map is picked.

If so, what is the use for a texture in a material if it is replaced by UV map's image?

EDIT:
I've added some images to clarify the issue I have.

Case 1: a basic plane with material which has a texture, and no UV map. Diffuse color is applied, but material's texture is not.

Case 2: like above, but with reduced intensity of texture.

Case 3: Added UVmap and added image to the UVmap. Now I have texture, but not the diffuse color, and if UVmap was a different image, it would be picked regardless of texture set in the material.

So if I have UVmap image, what is the material texture for?

The material and its texture are what's used when you render the image. Anything else, like being able to see an image you have loaded into the Image-Editor in the 3D view are for when you want to preview your texture, maybe to see if the UVs are ok.

It makes sense to be able to have a material set up with textures, but then also be able to view a single texture loaded from the Image-Editor to view the texture on its own. Otherwise, if you had a complex material with multiple textures, there would be no easy way to view a single texture on the model for inspection without removing some textures from the material.

What you show in your screenshots are 'Texture' shading mode:

Texture mode is for viewing textures, it loads in whatever image is in the Image-Editor.

If you change to 'Material' mode (shown in the list of viewport modes in that screenshot) you will see the material and any texture it may have (make sure you have a lamp to illuminate the object, otherwise it will appear black).

To summarise:

Texture mode is for seeing how an individual texture looks on your model, so you know if you have to make adjustments, if it doesn't look right.
The material and its textures will be used when you render your image (F12)
Materials are for the final look, 'Texture' viewport mode is for viewing a single texture.

As you can see from that screenshot, there are different viewport shading modes for different tasks. More information on these different modes and what they are suited to is in the Blender Manual, here.


How to hide reference images in different orthographics? I have two background images, one for viewing at the front and one for viewing at the side.

I've changed some of the image settings so that you can only see them in orthographic view but the problem with that is when I am viewing the model from the front I can see the black outline from the side image Empty object cutting down the middle (you can see I have these lines highlighted orange in the below images)

Is there a way to hide these when viewing from the other angle? It's a bit tedious to manually hide/unhide the image when I switch views.

Just move images from center at 1m or what offset would you prefer X and Y axis it's would't be harm for modeling process.Hope it will help you.
Also make separate scene collection and move all references to there as you do so turn on in filter outliner tab with arrow and then next to collection unpin arrow (or next to each image).It will protect you from accidentally move image while modeling.
Sorry for bad English.


How to snap and align an object to the 3d cursors position and rotation? How to snap and align an object to the 3d cursors position and rotation? I’m pretty sure I have done this before and it was straight forward. but I can’t get this to work now at all. Via the shift - S menu I can snap the poistion, but none of the commans affect the rotation.

The align tools don’t seem to want to play nice with the 3d cursor at all.

any suggestions?

Snap position to cursor will be find in the shift+s menu. To copy the cursor's rotation go to Object>Transform>Align to Transform Orientation and select Cursor in the pop-up menu.


Scaling gone a stray? So I scaled the top part like so.

Now all of the sudden whenever I try to scale it does this.

It seems like scaling it is just moving it now, also when I hit "S" to scale and then type in 0 it just shoots to the bottom of the mesh.

Please help me brothers.

Probably your scale center is the 3D cursor.

Scaling and other operations are dependent to the center of it.

You can change that from the options shown in the picture below.

For what you want, probably "median point" is the good choice.


Shade Smooth vs. edges Here is a strange thing:
it's a polyhedron and it's shade is flat:

i want to smoothen it's faces, so i use "Shade Smooth":

weird things happend with edges - no good.
Than i separate polyhedron's faces:

and here it is - result that i want. Than i join back polyhedron's faces:

and it's edges don't retein their previous "weird" state, they stay the way that i want them to be.
Why is it happens, and is there a shorter way to get result that i want?

By splitting and re-joining the faces, you're creating double edges.
That improves shading on sharp edges (since the edges are no longer continuous).

You can achieve the same by adding the Edge Split Modifier.

Or by selecting all vertices and using Edge > Split


Loop multiple objects along the same path What I want to do is to have multiple identical cubes all following the same (non-circular) path, each with a different starting offset. And when one cube reaches the end, it teleports back to the start and continues along that path again. I want to do this without having to manually animate everything.

I tried to do what they suggested here: How may I create a continuously looping animation? by animating the evaluation time on the path and making that cyclic, but that doesn't seem to work for multiple objects.

What I want to happen (using multiple paths to do this, want to use a single path):

What happens when I use a single path and set the offset values on the cubes:

Using Drivers and Follow Path constraint.

Drive the offset of the constraint from 0 to 1 using Fixed Position.

Hard coded 250 as the path length in frames. The driver method has two parameters, the current frame (scene.frame_current is known to the driver namespace as frame) and the offset at frame 0.

import bpy

path_length = 250 # path length in frames

def offset(frame, start=0):
    # start position at frame 1
    f = round(frame + start * path_length)
    return (f % path_length) / path_length

bpy.app.driver_namespace["offset"] = offset

Sample file and image with Cube (offset 0), Cube.001 (0.2) and Cube.002 (0.4).


How to prevent triangulation of models when importing models from sketchup to blender? I want to import Sketchup models in blender. For that, I tried exporting models form sketchup in various formats using the built in exporter in Sketchup followed by import in blender. The model looked fine in Sketchup but when I imported it in blender using "Import Model", the model's body mesh gets triangulated. This is making the model useless for me as it is very hard to work with in blender. Especially circular parts gets triangulated to a number of portions and are very hard to scale/ rotate etc.
Please suggest how should I import/export the model correctly.

In sketchup

In Blender

I tried the procedure above for

Collada
obj
3dS Max

The model looks same with all formats.

Link to sketchup model: http://sketchup.google.com/3dwarehouse/details?mid=a91cb0fd50d4b2cc5599acd1021b314d&prevstart=0

You can't (at least - not the way you want)

SketchUp very cleverly abstracts away the underlying geometry by rendering all connected faces on the same plane as one surface (unless you tell it not to). With this visual abstraction SketchUp allows surfaces to have gaps.

Blender's geometry model, known as BMesh, treats surfaces differently, it has a model of Tris, Quads and Ngons. BMesh does not allow holes in an Ngon (by design). By extension of this fact, you won't have exactly the same representation in Blender as you would in SketchUp for the same model. Blender won't magically abstract connected faces on the same plane into surfaces the way SketchUp does.

The loaded geometry will be correct, but in edit mode you will see the real geometry the way it exists in the .dae.

Blender is designed to let you edit the underlying geometry. it is a true polygon modeller. Ngon support with BMesh is a relatively recent development -- before that it was quads and tris only.

What you could do is:

enter Edit Mode for each object
select all
Delete -> Limited Dissolve

You will get a mesh that is perhaps more convenient.

Another option is to press Alt+J in edit mode, wich will transform all the triangles into quads.


Best way to send network requests from timer modal I'm working on an addon that has a polling loop (using a timer modal) that needs to send a network request on every iteration (once a minute):

class PollingLoopOperator(bpy.types.Operator):
    """Polling loop"""
    bl_idname = "wm.modal_polling_loop"
    bl_label = "Polling Loop"

    _timer = None

    def modal(self, context, event):
        if event.type == 'TIMER':
            # Run network polling request

        return {'PASS_THROUGH'}

    def execute(self, context):
        wm = context.window_manager
        # Run every minute
        self._timer = wm.event_timer_add(60, context.window)
        wm.modal_handler_add(self)
        return {'RUNNING_MODAL'}

At first I was thinking of just using the requests library, but then I realized that wouldn't work because it's blocking, and sending a blocking network request every minute would be terrible from a UX perspective. I can't use another thread because Blender is not thread safe. So far I've thought of the fallowing possible solutions, but they don't seem that great:

Use multiprocessing to run the request in another process, I could still use the requests library, but it would have the added overhead of an additional process
Use asyncio.open_connection, seems like maybe the best solution so far
Keep a non blocking socket open and push data from the server, the polling loop just checks to see if the socket has any data. This is a pretty low level option and would require manual ssl handling and building a custom protocol. Plus, it would be harder to build the backend for. But it would have a few major benefits:

The polling loop could run much more frequently then 1 minute because all it would do is check to see if there is any data in the socket
Less overhead because there is only a single socket connection opened

Which of these would be the best solution? Or, is there an even better solution I haven't thought of?

I ended up doing the same thing as the Blender Cloud Addon and run a requests call in a threading executor:

import asyncio
import requests
import functools

async def do_request():
    partial = functools.partial(requests.get, 'http://example.com')
    loop = asyncio.get_event_loop()
    response = await loop.run_in_executor(None, partial)
    print(response)

if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(do_request())


What version of OpenGL does Blender use? I know that Blender makes extremely heavy use of OpenGL.  What version of OpenGL does Blender use, and how difficult would it be to port it over to OpenGL ES?

Blender requires OpenGL 3.3, however we may take advantage of newer OpenGL versions too.

So while Blender depends on 3.3, it may use newer features when available and fail gracefully if they are not (as opposed to crashing or not starting at all).

Note that some features are user preferences too since we can't always rely on asking the driver if a certain feature works well or not (drivers don't always give us reliable information).

See: https://www.blender.org/download/requirements/


Is there a way to interpolate animations with arcs? Whenever you animate with key frames, even though the speed can vary, it's always only a straight line, so the end result usually looks jagged in some way. Is there a way to make an animation keyframe from point A to point B make the shape of some kind of subtle arc rather than just a straight line?

Use the Graph Editor to edit the animation curves. This will allow you to have full control over the shape of the animation. In the graph editor you can select a specific channel (such as the Z Location) and can then add keyframes by way of the Key/Insert Keyframe menu (or I shortcut) and these can be manipulated by grabbing and rotating the bezier handles (assuming it's set to Bezier - the default interpolation mode).

Once you've adjusted the curve it is useful to use the Motion Paths panel to visualise the new path (as in LeoNas's answer).