how to set white or black background of textures transparent I have a muzzle flash texture I want to use for my game. But they all have black or white background. It doesn't look natural on shooting and I want to remove the background.

This is the texture I had in mind

Alphas are far more nuanced than people would typically know, or choose to acknowledge.

An associated alpha image is effectively a record of emission (RGB pixels) and occlusion (the alpha channel). If we view such an encoded image without alpha, it would appear as nothing more than the image composited against black.

If we apply this logic to your question, we can see that we have the emission recorded fine. We simply don't have the occlusion. In short, with a composited on black image, we are already halfway there. The second half would be via a generation of the alpha channel.

There are two manners to generate alpha, and given that this is a fire-like explosion, it is a perfect example.

When captured in an image, fire has both occluded areas, where particulate and such occlude a given ratio of a pixel's window. That is, we could consider a pixel grid as being a wire screen, and the unknown geometry that lands across any particular grid as being the occlusion ratio. Where there is solid geometry occluding the pixel grid, we set the alpha to 100%. Where there is zero occlusion, the alpha is set to 0%.

But what about fire and the atmospheric glowing emission that isn't occluding at all? That would be 0% alpha and any nonzero RGB value.

So in your above image, you have two ways to set alpha:

You could simply use a math node to deduce the maximum value in the RGB triplet, and use that as your Set Alpha factor. After doing so, your image would be 100% correct when using associated alpha overs (aka the horrible term premultiplied).
If you used a more nuanced approach, such as converting to BW via the node, you would end up with an alpha channel that would represent averaged luminance, which will result in pixels whose alpha is lower than the RGB values. When using a proper alpha over instruction, the fire would occlude the degree of alpha and emit the remainder.

The following demonstrates such a node tree that covers both versions, the upper being the alpha that will embody a glowing bit of emission and some occlusion, with the lower being a more "vanilla" alpha where the max(RGB) represents the amount of knockout:

And the result, in animated form to demonstrate differences:

If you try either of these techniques, you will likely find that the latter has a more nuanced look because it is closer to a physical reality within the confines of our image manipulation models.

Always remember, there is only one true alpha, and it is the one that can represent both occlusion and emission. It is not unassociated (aka the awful terms straight, key, etc.)

Hope this helps...

PS: This is why frequently element plates will always be shot against black, not white. If it isn't going to be keyed, black is the ideal background.


Fluid simulation pours into the cup in a box shape and won't spill I was working with the fluid simulator in Blender, and I wanted to make an animation where water flows into a cup and spills out. When I bake the fluid it pours into the cup in a box shape, even if the bounds are the same shape of the cup. The other problem is that the fluid won't spill out when the cup is knocked over.

Is there a way to fix either of these problems?

Setting your cup to obstacle (as mentioned in the comment above) should fix the problem of the cup bounds being square. The main thing you would want to fix, though, would be the size of your fluid domain. It will not affect the fluid, but will simulate the bounds of where the fluid will go. A smaller domain will give the waters smaller boundaries. Also, if you are using a rigid body for the cup, it will not simulate well with the fluid.


Strange size when creating a cube using bpy.ops.mesh.primitive_cube_add Just starting with scripting in Blender, and the simplest thing seems to not work as I would expect.
I copied the code that creates the standard cube and repeated it, with a z scale factor of 4. I expected this to create a "tall cube" (cuboid) that's 4 times taller than the standard cube, but that's not the case. If the standard cube is 2m x 2m x 2m, the other one is 1m x 1m x 4m (half of what I would expect).
Furthermore, the Item's transform panel says the dimensions are 1x1x4 and the scale is (1,1,1).
Any tips on understanding how that works? The API documentation is really minimal.
Here's a screenshot of the result:
Also, here's the code:
import bpy

bpy.context.area.type = 'VIEW_3D'
bpy.ops.view3d.snap_cursor_to_center()

# Create the default cube
bpy.ops.mesh.primitive_cube_add(size=2, enter_editmode=False,
    align='WORLD', location=(0, 0, 0), scale=(1, 1, 1))
bpy.context.object.name = 'Standard'

# Like above with z-scale=4.
bpy.ops.mesh.primitive_cube_add(size=2, enter_editmode=False,
    align='WORLD', location=(4, 0, 0), scale=(1, 1, 4))
bpy.context.object.name = 'Tall'

bpy.context.area.type = 'TEXT_EDITOR'

My suggestion is don't use it.
Can see reason for confusion, have personally never used the scale value in the operator, (fortunately because yeah it's bloody confusing) Speculate there could be some legacy nature about it.
Crunch any operator into the python console   auto complete Tab  will show defaults of an operator
>>> bpy.ops.mesh.pri<Tab>mitive_cu<Tab>be_add(
primitive_cube_add()
bpy.ops.mesh.primitive_cube_add(
        size=2,
        calc_uvs=True,
        enter_editmode=False,
        align='WORLD',
        location=(0, 0, 0),
        rotation=(0, 0, 0),
        scale=(0, 0, 0))

Construct a cube mesh

There is no need to pass any default to an operator.
One would suggest the default for scale should really be (1, 1, 1), notice too how scale is not used in the operators panel

Let's run some tests to see what we get for different size scale combos...
import bpy

tests = (
    (0, (1, 1, 1)),
    (1, (0, 0, 0)),
    (1, (1, 1, 1)),
    (1, (2, 2, 2)),
    (2, (1, 1, 1)),
    (2, (2, 2, 2)),
    (1, (1, 1, 4)),
    (2, (1, 1, 4)),
    (2, (2, 2, 8)),
    )

x = 0
for i, (size, scale) in enumerate(tests):
    # Create the default cube
    bpy.ops.mesh.primitive_cube_add(
        size=size,
        scale=scale,
        location = (x, 0, 0),
        )
    cube = bpy.context.object
    cube.name = f"Test{i}_{size}_{scale}"
    print(size, scale, cube.dimensions[:])
    x += cube.dimensions.x

and OMG or WTF the Results.
0 (1, 1, 1) (1.0, 1.0, 1.0)
1 (0, 0, 0) (0.0, 0.0, 0.0)
1 (1, 1, 1) (1.0, 1.0, 1.0)
1 (2, 2, 2) (1.0, 1.0, 1.0)
2 (1, 1, 1) (2.0, 2.0, 2.0)
2 (2, 2, 2) (2.0, 2.0, 2.0)
1 (1, 1, 4) (0.5, 0.5, 2.0)
2 (1, 1, 4) (1.0, 1.0, 4.0)
2 (2, 2, 8) (2.0, 2.0, 8.0)

size 0 has dimensions, scale 0 doesn't ... same results for.. are you still confused?
In the end comes down to don't use it.
Matrices
Onto the soapbox and suggest the use of matrices. If we wish to apply a scale of (1, 1, 4) to the default cube of known dimension (2, 2, 2) can
from mathutils import Matrix
S = Matrix.Diagonal((1, 1, 4)).to_4x4()
cube.data.transform(S)
cube.data.update() # see result in viewport.

or equivalently can create matrix via
S = Matrix.Diagonal((1, 1, 4, 1))
Sz = Matrix.Scale(4, 4, 'Z')
Sz = Matrix.Scale(4, 4, (0, 0, 1))

Matrices can also be used when creating bmesh primitives as demonstrated in How to create cylinder with varying radius at different height


How to render video to plane/face-of-mesh in evee Let's take the generic example of the preloaded cube, how do I apply video to each of the faces? I prefer the non-node method of doing this.

As well explain how to display it in the 3d viewport if it won't automatically.

Prepare your mesh UV map as for a simple image texture.

Use a material (say 'principled BSDF) and set is color input to 'image texture'.

Choose the video you want from the disk.

In the movie part, set the wanted option (start frame, frames, etc.).

Turn on viewport shading, and play the animation.


Sides and volume of object not rendered through glass I have been trying to render a simple glass of milk. Yet parts of the milk is not rendering.

Help would be greatly appreciated.

This partially looks like a Z-Fighting problem.

Try scaling up your Milk Mesh to where its perimeter edges are in the middle of the glass' inner and outer walls and try again.

To do this:

Select your Milk Mesh.
S.
Shift + Z
Move your mouse until it is lined up >> LMB.

Also, if this is still not working altogether after that:

Select your Milk Mesh.
Go into edit mode (TAB to toggle).
A to select all.
Ctrl + N to recalculate the normals.

Go back into Object mode (TAB to toggle).

Now try rendering again. If it is still not working then hopefully we can get you to post your .blend file

After taking a look at your blend file, here is what I did to get the following results:

1. I applied your Boolean Modifier.

2. I did the scaling step listed above.

3. I modified your glass material to that shown in the result image.

4. I added a Sun Lamp with a Strength of 5.0 (Using Nodes).


How Do I Bring Up The Same Properties Menu As In This Video? I am trying to bring up the same menu that is brought up by F6 in this video. But when I press F6 nothing comes up, what do I do?
My Blender version is 2.77.

The author of the video is adjusting the parameters of a newly added object.

In 3d view, add a new object and press F6. But there is a catch: if you do anything else other than press F6 after creating it, you don't get the window.

Many tutorials I've seen over the years teach you to do this through tool shelf, which isn't visible in that video.


How to optimize render settings to speed up renders of black and white moire patterns in 4k? I'm using Blender 2.79b on a laptop with i7-4700 4 core processor with 16GB of RAM with on-board graphics. I'm trying to optimize my render animations to render out in 4k. I don't have a GPU on my laptop. Can someone recommend some render settings that will speed up the render process? The image is black and white. I'm animating different moire test patterns.

Here's a YouTube link to the current animation done in a 480X480 resolution:
https://youtu.be/mVC4ieiLDUw

I know the render settings for 4k (see image below) the issue I have is speed and how can I increase it by turning certain render options off.

I've also included the blend file:

Since it's basically a Black and White animation I'm open to use any render engine, which ever render engine will speed things up.

I turned off Freestyle rendering, raytracing, textures, FSAA (full sample AA), set all materials to shadeless. And finally I set rendering Tile Size to 1024px.


xnormal weird normal map bake, substance and handplane baked flawlessly can someone possibly explain why this is happening, this was from a model I baked in XNormal, I don't really understand why its having this effect. I tested bakes in Substance and HandPlane; both gave me okay results. While XNormal gave me this. If only I knew what caused this it'd be easier to fix.

I recently found a forum post about it, but no real answers were given.

I checked my smoothing groups and my cage; it was perfect or okay. Given that it baked perfectly in Substance and HandPlane It should of worked in XNormal. Previously a similar effect appeared in substance yet XNormal baked it perfectly.

The effect is random to me and I have no Idea what causes it. Could any of you shed some light on this?

Thank you, in advance.

I found that .OBJ have less problems than .FBX when it came to XNormal bakes, so I opted out for OBJ to FBX convertion on final output.


What does Lightmap Pack's "Pack Quality" option do? What does the "Pack Quality" option do in the Lightmap Pack settings box? The option's tooltip says Pre Packing before the complex boxpack.

Packing quality controls how efficiently laid out the UV islands are on the texture.

A low pack quality means there is more texture space wasted (but faster unwrap), a higher value means the UV islands are better optimized to use the entire texture, at the expense of unwrapping time.


Using Walk Navigation like Unity and Unreal I'm using Blender 2.8 and wanted to change some settings on the viewport navigation.
I always wanted some way to navigate in the 3D world like we can with Unreal and Unity. In this new version, I could changed the Walk Navigation mode shortcut to activate when I'm pressing the RMB. (You can do that by going to Veiw >> Navigation, Right clicking on Walk Navigatio >> Add Shortcut, and pressing the RMB)

That works extremly well, but when releasing the RMB, you lose the movement and the camera resets to where it was before. I can press the LMB, so it stays at the same place, but it's anoying to do that all the time. I think that happens just like you cancel an action clicking the RMB.

So, is there a way to cancel the canceling of camera movement by pressing the RMB? Or, is there any other better way to move the camera like that?

Thanks.

I'm not sure about 2.8 but in 2.79 you can activate it by pressing Shift + F this way you'll be able to fly around using W, A, S, D, E(Up), Q(Down); You can also activate gravity by pressing TAB.

Edit: you can also use the Mouse Wheel to change the speed of the movement, Up/Forward to increase, and Down/Backward to decrease it.

after you're done:
 LMB to stay in the same place or RMB to return to the original place.

I hope this solves your problem :)


What does the force field flow setting do? What does the force field flow setting do? How is it typically used?

Please provide examples.

The manual says

  Flow Convert effector force into air flow velocity.

A quick test shows that it slows down the movement of particles but does not attract or repell them:

So my interpretation is it adds air resistance.


Deform a flat shape while retaining the original mesh I'm unfamiliar with 3d models but I may consider using one for some real-life crafts.

What I'd like to do is have a flat shape (let's say a star) that I can apply transformations to (like a fold or ripple). In addition, I'd like to be able to view and modify the original flat star and also see the resulting folded or rippled version. As if I'm applying a 3d transformations layer to an editable flat element.

By doing this I can see a simulation of a real life paper cutout folded up but export the desired flat shape.

What process would you use to accomplish this? Is there other software better suited for something like this?

Yes, this is possible:

For manual control:

Rigging (use bones to bend and fold the shape)
Shape key (manually make some edits - while keeping the base shape) - the shapes can be mixed together and their influences animated.
Check on other deform modifiers too, shrink-wrap. lattice... all of them really, could come in handy for deforming a flat shape.

For effects:

Wave modifier
Warp modifier
Displace (consider using texture to displace, it can be animated too).
Physics: (also worth looking into)

Soft body
Cloth

Note, vertex groups can be used to influence many of the distortion methods described above.

This question is quite general (thats OK), but means my answer is generalized too.


The mirrored half can still be manipulated When I mirror an object, the mirrored half still has vertices and doesn't move with the other half.

That's what it's supposed to be like, right?

Welp, this is what happens when I try it.

What should I do?
Seriously, this is actually really important to me.

looks like you applied the modifier. Now your mesh is one. Select all the verts on the left side, delete them, than add the mirror modifier again


Is there a way to remove all colliders at once? I have a large scene made in Blender, where many of the objects have mesh colliders. However, mesh colliders are a bit inefficient compared to using primitives. I would like to get rid of all mesh colliders, so that when I export to a game engine I can manually approximate the collisions using primitives such as cubes, added in-engine.

Is there a way to remove all colliders at once? If not, how do I remove colliders from specific objects? I don't see anything enabled in the "Physics Properties", but the objects still have colliders when imported into a game engine. I'm using Blender 2.83 and Godot 3.2.2 (both are betas).

This script removes all colliders from the active view layer :

import bpy

for obj in bpy.context.view_layer.objects:
    if obj.rigid_body:
        bpy.context.view_layer.objects.active = obj
        bpy.ops.rigidbody.object_remove()

How to run a script


How to gradually blend two materials together? I have a simple stick whose one end has material A and the other one has material B assigned to its faces. How do I blend these materials gradually, instead of a hard line, so that I can control the location and smoothness of the blend?
I have found many solutions for older Blender versions but not for 2.8 and Eevee.

There may be another way but here is one. Let say you have 2 materials that you want to keep separate. If you want to mix them, you need to create a third material. To keep your 2 materials somehow linked to the third, here is what you could do:
Here is your material 1:

Select the chain of nodes before Material Output and press CtrlG to group them. Press Tab to exit the group (CtrlAltG if you ever want to ungroup). Do the same thing for the second material.

Now create your third material, press ShiftA > Group and load the 2 groups you've created. Plug them into a Mix Shader:

To create a transition between group 1 and 2, plug this node chain into the factor of the Mix Shader: (Input) Texture Coordinate > (Vector) Mapping > (Converter) Separate XYZ > (Texture) Gradient > (Converter) ColorRamp. You can control the transition with the needles of the ColorRamp.

Of course you could create the transition with an Image Texture instead of this node chain.
Now if you ever need to change material 1 or material 2 you can open the group in material 1 or material 2 or material 3 and the change will be taken into account into the other materials that have the same group.


Is it possible to refresh strips in the VSE I have been using an external editor to cut between image sequences created with Blender, but decided to move to the VSE for efficiency.

With the externa editor (Kdenlive), when I made changes to an image sequences, it automatically updated it, or, failing that, there was an update command.

However, with the VSE, the only way I could find to update a strip was to delete it, add it again an recrop it.

Is there an easier way?

Select the strip and press Alt+R to reload, or Shift+Alt+R to reload and adjust length.


Is there a better way to move around and view a big scene? My problem is that I have a huge scene with meshes and (let's say) I see this scene for the first time. I do not know it, I want to look around. I can use the controls like
MMB  plus look around, ⇧ Shift + RMB  (but scene is too huge for this).
Then I select some objects on the hierarchy and press numpad . (but as I said: I do not know the scene and/or the object names can look like all the same as well), what will take me there.
I know, I can use the fly camera mode, but that is well... kinda hard to use, for me at least. Is there a better way to move around? Like in a game: WASD + mouse look? (I do not want to move my camera, my goal is to move my editing area to a specific position / angle)

Since 2.70 there is a walk mode (like a game). Press Shift F to enter walk mode. Then use either WASD or the arrow keys to walk and the mouse to look around.

To speed up walk mode.

during walk mode you can point the mouse cross hairs at any object and press space to teleport there. (I find it really neat)
holding shift will speed up any of the movements.
NumPad + or Mouse-Wheel up to increase the movement speed for that one time, when you exit walk mode the speed goes back to what it is set at (see next point). There is no feed back to changing the speed, just hold the button for a bit. Likewise NumPad - and Mouse-Wheel scrolling down will decrease the speed.
If you want to make any lasting speed changes you can go the the user preferences, on the input tab down on the left is a section for the walk mode entitled View Navigation. Change the Walk Speed, also the Speed Factor is how much holding shift or alt will change the speed.

If you want to zoom right in on any object or objects with NumPad . you can select the objects in the 3D view, you do not have to select them in the Outliner.


Best way to tackle black dot eyes? so I've been having difficulty figuring out how to get the eyes the way I want to move.

So I got the eyes to look this way with a Shrinkwrap modifier, which is the look that I want. However the issue that I am having the most difficulty is rigging it to move the way I want.

Is there a way to move the bones so that the eyes do NOT go inside the head when moving them? Also I would like to have preset sliders to switch between emotions if possible.

Please let me know if anyone needs any clarifying questions. Thank you.

(Also, here's a video in Maya of what I am trying to achieve if it helps.)

I would recommend Blender rigging tutorials by "Level Pixel Level" on YouTube. He's the one who made it clear to me that there can be several layers of rigs to create the motion and control that you desire. A basic layered rig setup would be:

Mesh object - gets deformed by the deform rig.
Deform rig - armature that does the mesh deforming. Sometimes very complex and it needs to be controlled by the:
Control rig - armature that is meant to be used by animators. As simple as possible.

In your case, I imagine that your deform rig bones need a limit. You might even build a control rig bone or two if you want to make controlling the deform bones easier, but first things first.

Limits can be set for bones in many different ways including:

Placing bones in key areas, sizes, rotations
Parent and child relationships
Bone constraints (which are NOT the same as regular constraints. Set these in bone pose mode or bone edit mode.)
Drivers
Layering one rig on other rigs for multiple driver and constraint functionality. Advanced riggers love building these. It scares some of us. The reward is a flexible rig that is easy for animators.

Some bone constraints you may want to try:

Shrinkwrap - Target Normal Project - On Surface - Align Axis to Normal (Personally, I think you might be able to do what you want with this one alone.)
Limit Distance>Clamp Region Outside
Limit Rotation
Limit Location

The principles that really help are keeping it as simple as possible, and finding the right mix that works for your particular situation. I stacked a few modifiers like so to push my shrink-wrapped pupil above the sphere. Plus I would only need to rig a few points on a 2D cirlce instead of a 3D shape. The Solidify modifier makes it 3D for me after the fact:

You can also make your bones rotate from the center of the head so they are less likely to push the eye under:

Update Thanks for the blend. I did some adjustments to the left eye and have uploaded the file here. Changes list:

Turned off Shrinkwrap modifier for the eye mesh. I don't think you need it at all! Moved eye mesh closer to head in Edit Mode and reshaped it smoother with proportional edit. (it had a dent up top). Smoothed vertices by selecting all and Alt+O a few times. Topology that is smooth and clean makes for better deform animation.
Adjusted eye bone positions by adding shrinkwrap bone modifier to them all and then Pose mode: Ctrl+A "Apply Pose as Rest Pose". This fixed the ugly eye mesh deformations due to the new bone shrinkwrap positions. Use the Shrinkwrap settings in the screenshot below to get the bones to point according to the head mesh normals. Also, see below how to easily copy a bone constraint to multiple bones:

An easy way to add the same kind of bone modifier to other bones is to set the first bone modifier, then in Pose Mode select all bones you want to paste it to, and finally select the bone that has the modifier you want to copy and press F3 "Pose: Copy Constraints to Selected Bones".
Made a bone in center of eye as a parent controller for looking around. It is also shrinkwrapped so you can move the eye around the entire head without it going through the mesh:


Physics issue - spheres are floating above the floor Is there any physics expert who can have a look to my file please?
I created a scene with a slide were at the end some spheres / balls jump out.
But the balls don't touch the ground ...
The collision shape of the ground is set to Mesh / Final so what could be the problem? That's for your help in advance!

https://wetransfer.com/downloads/09d218ce2728918e10d9b7871044bdc520200228192244/41885b9cab282bc663d24428a650844a20200228192244/3b8281

In the floor Rigid Body / Sensitivity, lower Margin.

For optimization purposes, it would be a good idea to replace the floor mesh by an invisible plane, with a collision shape set to Box. (And set the shape of the balls to Sphere instead of Mesh)


How to access coordinates of Bezier curve control point handles? There are many examples of how to get the Control Points of a Bezier curve from Python.  (For example, with a 2D bezier curve 'b'):

for ctrlPtIndex in range(0, numCtrlPts):
    print("ptX:", b.data.splines[0].bezier_points[ctrlPtIndex].co[0])
    print("ptY:", b.data.splines[0].bezier_points[ctrlPtIndex].co[1])

Is it possible to access the handle coordinates for each of these control points from bpy (python)?

I know that the handle-types can be changed for each control point in bpy, but can't find how to access the handle coordinates.  These are plain curves created in Blender, they aren't connected to any armatures.

Thanks,
Jon

Here is a Python function to print X, Y, Z values of the points given a curve object reference parameter.
(based on the answer linked in the comment)

import mathutils.geometry

# The parameters can be found by taking the coordinate and
# right handle of a point, and the coordinate and
# left handle of the next point in the Bezier points array.
# For cyclic curves the last point and the first point in the array
# form an extra segment.

def printInterpolatedCurveSegmentPoints(existingCurveObj):

    spline = existingCurveObj.data.splines[0]
    numSegments = len(spline.bezier_points)
    assert(numSegments >= 2)

    r = spline.resolution_u
    if spline.use_cyclic_u:
        numSegments += 1

    points = []
    for i in range(numSegments):
        nextIdx = (i + 1) % numSegments

        knot1 = spline.bezier_points[i].co
        handle1 = spline.bezier_points[i].handle_right
        handle2 = spline.bezier_points[nextIdx].handle_left
        knot2 = spline.bezier_points[nextIdx].co

        _points = mathutils.geometry.interpolate_bezier(knot1, handle1, handle2, knot2, r)
        points.extend(_points)

    assert('3D' == existingCurveObj.data.dimensions)
    for pointVec in points:
        print("Point X:", pointVec[0])
        print("Point Y:", pointVec[1])
        print("Point Z:", pointVec[2])
        print()


Adding Random Noise to Rendered Images I know that in Cycles we can have as much noise as we want, but it's not the right type of noise.  I'm inserting an object into a video taken with a DSLR.  The video has some ISO noise in it and it makes the object that I rendered stand out.

I tried using my photo editor but it doesn't use a random seed for the noise so it's always the same pattern.  Does Blender have a way to do this in the compositor (preferably not Python)?  This would also be nice for adding realism to scenes.

I prefer the term Camera "Sensor noise" in this case. ISO (or gain) is just one of the many factors that might contribute to noise in images generated on a camera, and will be very different on different cameras.

Now on to your question.

Use a texture node with a noise texture in the compositor and mix that with your rendered image using a multiply node. That would give you control over the type of noise and its size, brightness and contrast. To animate the noise pattern you can animate the distortion values and/or the offset coordinates.

Sadly, Blender's compositor does not have a way to do buffered playback in real time, and you would need such a thing to be able to see the noise patterns moving from frame to frame and get a seamless integration. To do this in a more sophisticated and precise way you should also consider using other compositing apps like Fusion or Natron, those have built in tools to create different kinds of noise and to create random seeds for it.


Fibonacci point on a sphere I am trying to create Fibonacci-like points on a sphere, but I am not sure how I would go about doing so.

Each vertex is not necessarily at the same "height" as all the other vertices. Assuming no vertices are placed at the very top center of the sphere, the highest vertex is placed on a point of the sphere, and then the 2nd highest vertex is placed 137.5 degrees (the Golden Angle) away from it. The 3rd highest vertex is placed 137.5 degrees from the 2nd highest, the 4th highest vertex is placed 137.5 degrees from the 3rd highest, and so on.

Is there a way to do this on a sphere without having to put in each vertex manually?

Scripting solution.

The parametric equations and code can be found here http://blog.marmakoide.org/?p=1

Used the points generated to create a point cloud mesh with vert normals pointing out, and a dupli vert object to display.

I couldn't work out the vert order to skin this properly, it  appears to follow a fibonacci like sequence with the vert order.

Here a 512 point with a cone and plane dupli, and a 32 pointer with a cube dupli.

import numpy
n = 512
golden_angle = numpy.pi * (3 - numpy.sqrt(5))
theta = golden_angle * numpy.arange(n)
z = numpy.linspace(1 - 1.0 / n, 1.0 / n - 1, n)
#z = numpy.zeros(n)
radius = numpy.sqrt(1 - z * z)

points = numpy.zeros((n, 3))
points[:,0] = radius * numpy.cos(theta)
points[:,1] = radius * numpy.sin(theta)
points[:,2] = z

import bpy
import bmesh
from math import radians
context = bpy.context
scene = context.scene

bm = bmesh.new()

meshdata = bpy.data.meshes.new("goldie")
verts = [bm.verts.new(p) for p in points]
"make vert normals point out"
for v in verts:
    v.normal = -v.co.normalized()
#bmesh.ops.convex_hull(bm, input=verts)
bm.to_mesh(meshdata)
goldie = bpy.data.objects.new("goldie", meshdata)
scene.objects.link(goldie)
scene.objects.active = goldie
goldie.select = True
#make a dupe
bpy.ops.mesh.primitive_cone_add(location=(0,0,0))
plane = scene.objects.active
#plane.hide = True
plane.scale *= 32 / n
plane.rotation_euler = (radians(90), 0, 0)
bpy.ops.object.transform_apply(scale=True, rotation=True)
plane.parent = goldie
goldie.dupli_type = 'VERTS'
goldie.use_dupli_vertices_rotation = True

From a previous Loxodrome post

The vert order makes it easier to skin.  Change values for spirals, revs and ang to create differing meshes.

Skinned loxodromes using varying parameters.

import bpy

from mathutils import Vector
from math import radians, sin, cos, tan, sqrt, floor

context = bpy.context

def loxodrome_points(spirals, revs, angle_step=10):
    a = 1 / spirals
    degs = floor(360 * revs / 2)
    segs = [radians(d) for d in range(-degs, degs, angle_step)]
    points = []
    for t in segs:
        den = sqrt(1 + a * a * t * t)
        x = cos(t) / den
        y = sin(t) / den
        z = - a * t / den
        l = Vector((x, y, z))
        points.append(l)
    return points

ang = 20
spirals = 16
revs = 100
points = loxodrome_points(spirals, revs, angle_step=ang)
# quick n dirty
lazy = 360 // ang

import bmesh
bm = bmesh.new()

loxodata = bpy.data.meshes.new("loxo")
verts = [bm.verts.new(p) for p in points]
faces = [[i, i+1, i+lazy, i+lazy-1] for i in range(len(points)-lazy-1)]
for f in faces:
    bm.faces.new([verts[i] for i in f])
bm.to_mesh(loxodata)
loxodrome = bpy.data.objects.new("Loxodrome", loxodata)
context.scene.objects.link(loxodrome)


How to select inner bone first? I would like to be able to select inner bone first just by clicking on it rather than clicking on the outer bone then re clicking on the inner bone. That would speed up my work tremendously. How can I do that? There is an option which I need to "check" to enable this kind of selecting?

You can click on the circle of the head of the inner bone.


How to resume a render that got interrupted? I was rendering a video and my computer turned off because of electricity problem. Is there any way I can resume the render from where I left off, without having to start all over again?

If you were rendering out frames as individual images, then you should be able to just set the "begin" frame to the last rendered frame, and go from there.

If you were rendering to a video file, then no... there is no way to you probably can't get all that work back. The file that got created (if it got created at all) is probably corrupt and unrecoverable. It's possible that the video file will still open in the VSE, and just have an unexpected end, or be shorter than it should be. I've never been able to, but IF you can open it, you can determine the end frame, render the remaining animation (to images), and stitch the two animations together after the fact. Furthermore, rendering the partial video file to individual frames might make that stitching process easier, but it will be critical to get the frame rate correct, or you'll end up with odd timing issues.

This is why it's a good idea to always render to individual frames, and then use the VSE to put those frames together into a video file. Once you have the frames rendered, rendering them into a video file is a very fast process.


Eevee vs Cycles Blender 2.8 & Glossy BSDF [SOLVED - FIX IT] From this video for blender 2.7 cycles:

https://www.youtube.com/embed/BtVYCMNvykg

I made this:

In blender 2.8 with cycles, the glossy is effective.

but with eevee doesn't work. I don't know the workflow of eevee (cuz I added a lightprops cubemap to "looks like" the same effect, but is not the same like cycles) and I did found the documentation or information.

Any help?

In the Render properties at the right-hand side of the screenshot you can see the Screen Space Reflections section - enable that and you should see reflections.

Eevee works quite differently to Cycles and the more features are enabled the slower the render. Many of the options are disabled by default for efficiency and must be specifically enabled when needed.


Convert armatures to empties while retaining animation data I have a fully animated model that uses armatures. However, in order for it to be exported (using a DTS exporter in specific for Blender 2.78), I need to use armatures instead of empties.

Is there a way to turn the armatures into empties without having to reanimate everything? I've tried exporting this as a .bvh file and importing it as a .bvh with the target as "Object," but that just puts it far away and it just isn't in the right position.

If I got you correctly you may transfer the animation data from bones to empties and then bake it to keyframes.

Add an Empty in the same location as keyframed bone and give it a Copy Transforms constraint. Set the Head/Tail value to 0.500 to place it in the middle of a bone.

Select an Empty, go to the Animation bookmark of a Tool Shelf (T) and press the Bake Action button. Check all the checkboxes there and set the Object as a bake data type. Delete the bone finally.


What can I do to move a file to a new folder and leave its import image as plane intact? I'm organizing my blender files and realized when I moved a file that has an image on a plane in it, it lost access to it and the plane just shows pink. I hadn't realized the image was never made part of the blender file, it just pulls it from the original image file whenever I open it.

Now I know I'll take advantage of that in future by placing imported images in folders with their blender files so I can modify them if I want. But I'd like to change the path this file uses to find the image it is using. Otherwise I'll have to learn to use the UV/Image editor to re-apply it, which I think will take longer. I'm not into that kind of work yet.

Can I go into the file in an editor, find the path, and change it?

Alright, I found it now. I clicked on File > External Data > Find Missing files, and the File Browser opened, and I clicked the 'Find Missing Files' button on the top right. The folder open in the File Browser needs to have the image in it or it won't work. If you aren't sure where it is, you can click the top entry in the System tab at left and have it search the whole hard disk, or click the up arrow at the top of the folder and file list in the main window area until you are confident it must be somewhere in there.

The image was tinted deep magenta after I did this, but it was there. Closing the file and reopening it caused that to disappear, it was an artifact.


Blender linear RGB to sRGB conversion Does anybody knows what operation Blender does when it saves the image to .png file?

I am interested in an exact formula, it might be also the source code.
What I found in source till now is RGB->sRGB conversion code but for viewport not final rendering.

I am interesting in the subject since I wanted to render images in exr and then convert them to PNG using python script. After conversion by hand i have slight different results then Blender provides natively. I wonder where this difference come from. I need to be precise since I am going to use this data as training for neural networks so I have to be precise as possible and eliminate all possible problems beforehand.

This is the code I use for conversion in python:

def RGB2sRGB2(RGBArray):
    new_rgb = RGBArray
    higher = (new_rgb > 0.0031308)
    lower = (new_rgb <= 0.0031308)
    new_rgb[higher] = (pow(new_rgb[higher], (1.0 / 2.4))) * 1.055 - 0.055
    new_rgb[lower] = 12.92 * new_rgb[lower]
    return new_rgb

Here I post my images (native blender .png file; conversion from .exr; difference map - each blue pixel means that difference is equal 1 in range 0-255):

If you select default, the transform will be the sRGB OETF as applied via OCIO. If you select any of the other view transforms such as Filmic, it's an entirely different dynamic range and transfer function.

The discrepancies you are seeing may be a byproduct of the LUT approach, but I'm not sure.

Converting a scene referred EXR to a display referred PNG isn't quite as simple as using the sRGB OETF however, and YMMV depending on your needs.


What do I need to do to make be able to make some changes to proxied linked objects? I've added an object by linking it. I've selected it and CTRL-ALT-P to make it a proxy. I can make some changes, like overall scale and position, but can't scale just one edge-loop, for example.

Also, in the original blend, the object is shaded smooth. When linked, it's flat and I can't change that either.

What am I missing?

Linked objects can only be altered in the original file, that's the point of them being proxied.

When you Link and object (⎈ Ctrl⎇ AltO) you can make a local copy. However this won't work unless you make your Linked Group local.

When you proxy the object ⎈ Ctrl⎇ AltP from a linked group ⎈ Ctrl⎇ AltO, it simply creates a duplicate, which change the object level properties (like Transformation, Delta Transformation, etc).
The original oject is still in the Linked Group.

If you wish to change your geometry you have to make a local copy by clicking the copy number in the object data section. Editing this copy will however not change the group object.

This copy could also have simply been appended to the current file ⇧ ShiftF1.


Cut angular section (pie section) out of cylinder In general, I'm wondering how to cut a pie slice out of a cylinder. I have done an extensive search and I'm sure it's not that difficult, but I haven't managed to find anything I could apply (possibly because of my novice status in Blender.)
For the moment, my more immediate need is to cut out part of an octogonal prism. So, consider the octogon built with the following code:
import bpy

# Create a 3D octogonal prism.

myRadius = 2.0
myDepth  = 1.0

bpy.ops.mesh.primitive_cylinder_add(
        vertices = 8, radius = myRadius, depth = myDepth,
        location = ( 0, 0, 0 ) ) # location could be other, using origin for simplicity here
bpy.context.object.name  = "myOctogon"

Ultimately, what I want is to end up with is 7/8 of the original prism rotated clockwise by pi/8 so that the gap faces "northeast".
UPDATE:
I have discovered that I can do it as follows, though I don't know how to script it all:
import bpy
from math import pi

# Create a 2D octogon.

myRadius = 2.0
myDepth  = 1.0

bpy.ops.mesh.primitive_circle_add(
    vertices = 8 , radius = myRadius,
    fill_type='TRIFAN',
    location = ( 0, 0, 0 ),
    rotation = ( 0, 0, pi / 8 ) )

bpy.ops.object.editmode_toggle()

# Select the 'northeast' edge.
bpy.ops.mesh.subdivide()

# Select the new vertex, move it to ( 0, 0, 0 ).

# Select the whole 'pac man' shape, extrude to desired height.
bpy.ops.mesh.extrude_region_move( ... ) # need to work out appropriate details

Below is a quick and dirty method using a circle and solidify modifier with operators.
import bpy
from math import pi

verts_total = 8
verts_fill = 7
my_radius = 1.0
my_location = (0.0, 0.0, 0.0)
my_rotation = (0.0, 0.0, 0.0)  # use radians
my_depth = 2.0

def make_pacman(verts_total, verts_fill, my_radius, my_location, my_rotation, my_depth):
    # create a circle mesh and create triangle fan fill
    bpy.ops.mesh.primitive_circle_add(
        vertices=verts_total,
        radius=my_radius,
        fill_type='TRIFAN',
        calc_uvs=True,
        location=my_location,
        rotation=my_rotation)

    obj = bpy.context.object
    # add solidify modifier to simulate cylinder
    mod = obj.modifiers.new("SOLIDIFY", type='SOLIDIFY')
    mod.thickness = my_depth
    mod.offset = 0
    # if full cylinder then done
    if verts_total == verts_fill:
        return
    # select vertices to delete
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_all(action='DESELECT')
    bpy.ops.object.mode_set(mode='OBJECT')
    for i, vert in enumerate(obj.data.vertices):
        if i <= verts_fill:
            continue
        vert.select = True
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.delete(type='VERT')
    bpy.ops.object.mode_set(mode='OBJECT')

make_pacman(verts_total, verts_fill, my_radius, my_location, my_rotation, my_depth)


How to get more options in the Viewport shading? in another question thread i made. Another community member showed me his viewport shading window. in his window he had alot more options than mine.
His screen:

My screen:

How would i be able to get those options too?
The blender version that i am using is 2.9 by the way.

Make sure you are viewing in solid mode and go back into the menu to choose the matcap you'd like to you. You should be able to change it and see your changes clearly from there.


How to build blender with Outliner Branch (or any other branch)? I build blender with "Add OptiX device implementation to Cycles" (https://developer.blender.org/D5363). I get it, everything is fine!

But! But I want build blender with outliner branch

I'm doing build now:

 H:

 cd H:\blender-git-28\blender

 git apply D5363.diff

 make update

 make full

Further build in MVS19

A Question:

How me add "outliner branch"?

How me update my build?

Now I build update:

 H:

 cd H:\blender-git-28\blender

 git submodule update --init --recursive
 git submodule foreach --recursive git checkout master
 git submodule foreach --recursive git pull --rebase origin master

 make update

 make full

But its don't working on me (version blender on start screen Blender don't update)

In order to build the outliner branch you switch to that branch first.

git checkout soc-2019-outliner

Make sure that the branch is up-to-date:

git pull

Then you're ready to build.

make full

When you want to switch back to the master branch the command is:

git checkout master

Unfortunately you can't directly apply the OptiX patch to the outliner branch because of incompatible code changes that cause merge conflict.


How to make my logo spin showing the front side on both sides? I have got most of the steps complete but I need help with a few. I made an svg of our haunts mummy logo so the when it rotates it will be 3D. I cant figure out how to put the mummy png onto the svg object and have it rotate showing what is on the front on the backside as well. The image shown is the svg of the mummy. All i want to do is add the actual mummy logo onto this and have it rotating showing this side when it rotates to the back as well.

it seems you want to show the same image on front and back (we don't know if as in a coin, ie the same exact image on both sides, or as a photographic film, ie the backside looks reversed ).

This is also a multiple question, as different steps are needed. So I will just drive you through what you need to learn to do.

Since you import a svg you get a curve object: it must be converted to mesh object first (alt+c), then add a face. If it needs depth, you can extrude that face (and so you get two faces, one on each side).

then you must assign the image to the face(s). This can be done in a number of ways (uvmap, different materials...) and it also can depend on the rendering engine used...

Lastly you need the rotation. This is done adding a few (rotation) keyframes at different frames, enough for one full turn. by default you get an "eased" movement (starts and stops slowly) but you can later edit animation curves to make it constantly rotating, without "easing", if you wish so...

As you see, you have different (simple) tasks to learn. As there are already many answers for these tasks, look for them with the search tool...

edit: I noticed you added an example image but it seems not symmetrical, so it won't be possible to show the exact image on both sides, apparently. To explain better, I created an example with a (even more) asymmetrical mummy image and imported svg curve, like this:

here

the svg has been converted (ALTC) to mesh, and rotated 90°over X
then selecting all vertices I created a face (F).
then I extruded it over Y (EY) a bit to give it depth.
then in edit mode, ortho mode, I created a UVmap (U project from view, bounds) for the face
then I created a simple material, shadeless.
added a texture (the mummy .png) and used the UV mapping method, specifying the UVmap created at point 4. This makes the .png fit perfectly the object face.
lastly I animated a full turnaround with using keyframes, then gave linear extrapolation.

If you wish to learn, try asking here about each of the above points that you don't understand (maybe try before because it could be really simple) just by referring to manual or other examples


how to adjust 'ToolSettings.proportional_edit_falloff' in the user interface? Sorry, total newbie here. Trying to follow Blender guru's make a donut tutorial.
Trying to move just a few vertices on either side by dragging a single node.But turning on smoothing affects too large an area. There is no circle of focus for smoothing regardless of zoom position. Answers given on the video page don't have an effect. F1 help gives a error msg:
No reference available 'ToolSettings.proportional_edit_falloff', Update info in 'rna_manual_reference.py' or callback to bpy.utils.manual_map()
using blender 2.83.12 on  Mac Air, using an apple mouse (virtual buttons and wheel).
Thanks for any help in advance

Apple mouse does not have scroll wheel. virtual scrolling defaults to rotate and does not allow focus adjustment. Using 3 button mouse with wheel works fine and solves this problem.
Perhaps a developer knows a work around for the apple mouse.
Thanks to Markus von Broady for the tip.
.....
Reattached apple mouse, now the circle appears after the 'G' command. Scrolling the mouse wheel down to bring the focus into range (on screen)
was the correct action it appears. Sigh.


Complete list of facial shape keys to make? I know how to make and use shape keys, but I'm having trouble coming up with all the keys I need for a complete face rig. Is there a checklist of all the shape keys needed to make a good rig?

There is no checklist. It depends on what you do and what you need. You can rig things in different ways and may not even use shape keys at all or there can be hundreds of them. "Good" is a very abstract thing without any context. No matter what you do, the context of your situation should always dictate what you need. Just imagine how many different faces there can be in CG - aliens, animals, stylised faces, even inanimate objects can have faces in CG. Even if you are asking only about human faces they can vary greatly in detail, forms, age, artistic style and lots of other criteria and on top of that your animating needs may differ even more. There can be no checklist like you describe for all possible scenarios.


Shoulder deformations I'm trying to work out this shoulder deformation. I can't figure it out.

Is there anything wrong in my armature?
Should i add bones and keep more control of my mesh or use shape keys?
Here is my file blend.

First there should be a twist on the upper arm - so when the arm is rotated like that the twisting is distributed in the upper arm and not in the shoulder joint.

There are 3 bones in the upper arm

a control bone that the animator interacts with - the one with custom shape - goes through the whole upper arm. Has no deforms.
2 segment bones both parented to the control bone. The one closer to the shoulder has Copy Rotation turned off and a Damped Track constraint to the second segment bone

The twisting is done with blending bone weights between both segment bones.

The setup of twist is the same for FK rigs, IK rigs, and when there is FK/IK switching it's best to make it on the deform bones.

Second the motion of lifting the arm up is combined of raising the upper arm and the collar bone. The upper arm can lift about only horizontally, then the collar bone takes over and the whole shoulder raises. The lower the arm is the more the raising is done with the upper arm. As the arm goes higher, more movement is done with the collar bone. Having a smooth transition in both rotations is important for it to look natural.

CC attribution: www.sintel.org, model by Angela Guenette, rig by Nathan Vegdahl


Fading out of particles My question is not new, but I really can't get it. I watched a lot of videos with the same explanation, but it didn't work for me. I know that I'm loosing something, but I don't know what exactly.
Maybe someone can help me?

Here is my file:
https://drive.google.com/open?id=1ZsFvCpWQQ835Br-3mNrUZqDzbosKvue-

EDIT:
My nodes

This is easy to do in the material of your particle object. heres a picture of my node setup

If you want a tutorial showing how i made this, Blender Guru has a tutorial on making sparks.

hope this helps

EDIT: you can adjust the color ramp, to adjust how soon the particles fade out and how long it takes.

Here's how it works:

the particle info node takes into account the particle settings.  It then allows you to access them in the material with it's output connections.  In this example, I divided the age by the lifetime, which gives me a the age of the particle, but also takes into account how long the particle will live, so we can use that value to effect the material.  The color ramp provides the control you need to adjust how soon it fades out and how it does.  you could use this for even more complex effects, like repeated flashing if you wanted to.  the value on the left of the color ramp is the start of the particles life, while the value on the right of the color ramp is the end.  Using this as the factor between an emission node and a transparent, causes it to fade around the middle of it's lifetime, (due to the way my color ramp is set up).

you can use the same principle to change the color of the particle over lifetime, the strength of the emission over lifetime, and almost anything else.  I hope this edit has been useful, and that you can use it for more blends.


Make limb grow like tentacle i would like to make a limb grow, like tentacle, the model has already an armature.I didnt find any reference- tutorials.
Thanks in advance.

You can animate the local Y-axis of the bones (SYY).


Blender use as world editor, level editor..etc, License problem? Good day,

I just want to ask if I have to disclose my source code?

having condition of:

I use my own MODIFIED blender as world editor, level editor, game content creation.
I am not selling my own modified blender, I am the only one who will use it.
I have other game engine that will load the things I made in the blender.

Also, if the answer is YES, can I just make a plugin using python so that I can accomplish the list above and not be required to disclose my source code of my created game and my modified blender?

If you don't re-distribute the modified Blender, you can do what you like.

You can sell your own modified Blender if you like, as long as you include the source code.


How do I use Proxies in the VSE correctly? When I choose a 'Proxy Render Size' in the properties panel of the preview window then it seems that this is all I have to do in order to boost up the performance of the preview display for playing video. At least it is visible that the resolution changes to a chosen value that seems to match to the chosen proxy render size.

But I have watched a tutorial in which it is explained that I first have to make settings in the properties panel in the sequencer window under 'Proxy/Timecode' > 'Set Selected Strip Proxies'. According to the tutorial the button 'Rebuild Proxy and Timecode Indices' should be pressed then. After that the computer starts to calculate data which takes a moment. It is explained in the tutorial that only after that process is finished one should select the proxy render size in the preview window.

Now my question: What is the difference between both choosing proxy render size in the preview window directly versus making selections in the sequencer's properties first and then choosing proxy render size in the preview window and why do I have to stick to this order?

The Tutorial is 7 - Blender Video Editing (Preview Performance BOOST! [ Video Proxy ]) from Mikeycal Meyers.

This is a great question and actually has a simple answer. Both steps are equally necessary and have their respective purpose:

a) Sequencer: Generating Proxies

The first step is to generate proxies at one or more resolutions. In the sequencer, select the sequence in question, scroll down in the properties pane to the right to the Proxy / Timecode section.

Tick the box in front of the title Proxy / Timecode to enable the sequencer to use any available proxy that may exist for this clip. This doesn't do anything other than telling the sequencer "hey, if there's a proxy on disk at the resolution requested and enabled below, please use it!". At this stage no proxy resolution has been enabled, only the conceptual usage of a proxy if it was enabled on this clip (and the corresponding proxy sequence found on disk).
Ignore the next two boxes (Proxy Custom Directory and Proxy Custom File), they're there to override the default location of proxies, which is, relative to the location of the original sequence on disk, always set to BL_proxy/images/<res>, where res is the resolution of the specific proxy. Blender offers to render at 25%, 50%, 75% and 100% respectively.
The next four check-boxes enable the concrete version(s) of proxies to render as well as to use, if available. Select the resolution you wish to generate.[*]
Rendering the proxy: In the Video Sequence Editor select Strip -> Rebuild Proxy and Timecode Indices while you still have your sequence/clip selected. To the right in the menu bar of the VSE you should now see a progress indicator showing the state of the proxy generation. If you now look into the folder where you have your original sequence (or movie clip) you should see a folder called BL_proxy appear (see above).

This done, the proxy/all proxies have been generated and are activated for the sequence in its preferences. Note that you can untick the proxy check-boxes in the sequence's properties pane to disable the usage (or (re-)generation) of them temporarily - this will not delete the proxy sequence on disk.

b) Preview Window: Enabling & Choosing the Proxy to Use

With our clip now being equipped with one or more generated proxies we can ask our preview window to use a specific one and it will do so if a proxy for the given resolution exists and is activated for the clip. Note that this setting is preview-window-specific, meaning we can have more than one preview-window with them using different proxies.

To ask a preview window to use a specific proxy, go to the the Properties pane on the right hand side of it and under Proxy render size select the proxy resolution you would like to use from the clip (or any in the timeline as you scrub through). This will tell the preview window to not use the original resolution (clip/image sequence on disk) but the chosen proxy resolution that we generated for the clip.

The order in which you perform the two steps is irrelevant. However, both are necessary to have (a) and use (b) a proxy for a given sequence.

I hope this helps and clarifies how proxies work in Blender!

NB: This is valid for Blender 2.69 - some details might be different or missing in later or earlier versions. Feel free to comment and I'll update.

[*] As of Blender 2.69 there is a minor bug (for me). If I select more than one proxy here and generate them in the next step, the proxies are all rendered at the smallest of all selected resolutions. I.e. if 75 and 25 are selected and then rendered, the 75 proxy will have the physical resolution of 75% of the original image's dimensions but will be pixelated as if the 25% proxy was just upscaled to 75%.

The solution to this is to simply generate the proxies one by one. I.e. selecting only one resolution in the properties of the sequence pane in the sequence editor and then generating it helping Blender in not getting confused when having multiple resolutions selected simultaneously. Important to note here is that, once all desired proxies are generated, they all have to be enabled/ticked again to tell VSE to actually use them.


Export transformation from Blender to OpenGL I have custom exporter which exports data from blender to opengl app.

To convert meshes to opengl space I used:

global_matrix = axis_conversion(to_forward="-Z", to_up="Y").to_4x4()

Then when I export mesh I call mesh.transform(global_matrix) and vertex position is correct.

Each object I export as reference to mesh and transform matrix.
To convert transform matrix I use:

matrix_world = global_matrix * obj.matrix_world * global_matrix

If I set axis_conversion forward to Z it works (but model is not facing camera), but -Z have wrong results.

Bellow is scene in blender, there are two triangle shaped objects and three cones.

This is wrong image, triangles are placed correctly but cones are upside down (used forward_axis -Z)

This image is shows objects exported with correct positions but wrong axis (used Z instead of -Z)

How can I fix this? Why are the results wrong with -Z?

I made a mistake in my comment to your question, but here is the correct version:

Also, as you have found out yourself, it is the second global_matrix that needs to be transposed.

The correct formula is:

matrix_world = global_matrix * obj.matrix_world * global_matrix.transpose()

However this only works if global_matrix is just a rotation (which it is in your case). In general what you need to calculate is not the transpose of the matrix, but the inverse. In the case of rotation matrices the inverse is equal to the transpose.

So the general case looks like this:

matrix_world = global_matrix * obj.matrix_world * global_matrix.inverse()


Change material of object between multiple scenes I have a car model I am rendering. I have several render layers I am compositing. It is simple enough to render and output the animation, but I also need to render the same animation from two different cameras. Furthermore, I need to also render from the same two cameras but with the car being a different color.

It was easy enough to create a new scene that is linked to the other so I can have a scene for CameraA and a scene for CameraB, both with the car being the same color: Blue...

I am going to use a Python script to render all of the scenes instead of me having to hit render for each one, but I cannot figure out a good way to create the scenes for the other color of the car. If I link the scene, changing the color changes it for all scenes. If I make a full copy of the scene, I could have the color be independent, but then I have multiple copies of cameras and everything.

I wonder if there is a way to make a material color change depending on which scene is active or being rendered. Any ideas?

(I am using Cycles, if that matters.)

EDIT:
Here's a basic setup to see what I am wanting to do. If there was some sort of switch or script that would select the Blue node if rendering Scene1, the Red node in Scene2, and the Grey node for Scene3.

If you can afford to actually make a copy just of the car object, you can have two objects with the same settings but different material. For this you need to switch the material from Data to Object, otherwise it still has the same material for the same mesh.

However, if you can't copy the object you may have to do some python trickery to get it working. Below you'll find a quick test using a scene_update_pre handler function. This is called when the renderer updates each scene, so you can use it to switch colors or do anything else needed. You will have to adjust the handler according to your blend file and material setup.


Grab shader color to mix in another shader? Is it possible to grab the color of a shader, maybe by copying it's material ID or data path, and link that to a color node in another shader?

I'm working on a Cycles toon shader and I want to be able to pull in a lamp/mesh lamp color to mix with the predefined colors.

Thanks in advance for any thoughts... this is a good community.

One way is to group your colors as a node tree which can be reused in any other material:


How to simply find the code/script behind the volume scatter node so I can see the math? tl;dr I need help finding the code or OSL script for the volume scatter node. Not asking how it works, just a specific, noob-friendly instruction how to find it, or a link to it. Blender is big, and this is my first time, so...

The volume scatter node has an Anisotropy input to control the relative strength of scattering in different directions. When changed from +1 to -1 the scattering changes from more forward to more backward scattering.

It turns out there is a published excerpt from the Blender Cycles Encyclopedia that shows this - I've included two screenshots below.

The (unnormalized) distribution could be as simple as:

I(theta) ~ 1 + A * cos(theta)

where A is the Anisotropy factor, or it could be completely different.

I could build a science experiment in blender to "measure" the intensity distribution as a function of angle. I don't know if there is a "light meter" node yet, but I could do it with cameras, saving rendered images, and analyzing them with NumPy.

But I am wondering if I can just read the math somewhere? Are nodes like this written in OSL, or in C? (I learned about OSL in this helpful answer.) How would I go about finding the code for this node to find how the shape of the distribution is calculated?

@DuarteFarrajotaRamos 's comment turns out to have been a good suggestion - ask someone. I found the IRC channel on one of the linked pages, asked, and got the following link straight away. Exactly what I needed!

https://developer.blender.org/diffusion/B/browse/master/intern/cycles/kernel/closure/volume.h

note: it's the .h file that has the goodies I'm after, not the .c. Line 35 has the math (several lines shown here):

/* HENYEY-GREENSTEIN CLOSURE */

/* Given cosine between rays, return probability density that a photon bounces
 * to that direction. The g parameter controls how different it is from the
 * uniform sphere. g=0 uniform diffuse-like, g=1 close to sharp single ray. */
ccl_device float single_peaked_henyey_greenstein(float cos_theta, float g)
{
  return ((1.0f - g * g) / safe_powf(1.0f + g * g - 2.0f * g * cos_theta, 1.5f)) * (M_1_PI_F * 0.25f);
};

Below are some plots of the shape as a function of g, along with the python script to make the plots them. The Henyey-Greenstein dates back to 1941 in a paper analyzing astronomical scattering of dust. The distribution is not profoundly magic, but it has some roots in science and works nicely, with one parameter g from -1 through 0 to +1 reproducing backwards scattering to isotropic to forward scattering.

If you are interested, here are a number of links with a wide variety of depth and focus. Plots are below that.

http://www.oceanopticsbook.info/view/scattering/the_henyeygreenstein_phase_function

http://adsabs.harvard.edu/abs/1941ApJ....93...70H

http://articles.adsabs.harvard.edu/cgi-bin/nph-iarticle_query?1941ApJ....93...70H&data_type=PDF_HIGH&whole_paper=YES&type=PRINTER&filetype=.pdf

https://www.astro.umd.edu/~jph/HG_note.pdf

http://omlc.org/education/ece532/class3/hg.html

https://en.wikipedia.org/wiki/Monte_Carlo_method_for_photon_transport

http://articles.adsabs.harvard.edu/cgi-bin/nph-iarticle_query?1985A%26A...146...67H&defaultprint=YES&filetype=.pdf

https://www.cs.dartmouth.edu/~wjarosz/publications/dissertation/chapter4.pdf

http://web.cs.wpi.edu/~emmanuel/courses/cs563/S07/talks/Paulo_volumeScattering_wk10_p1.pdf

The function is already available in OSL. This should not be a surprise since it is so fundamental to rendering and scattering simulations of all varieties! This is from v1.7 of the Open Shading Language 1.7 Language Specification - which is outdated. A new and/or better link to 1.8 or whatever is newest is appreciated!

def pu(cos_theta, g):

    top = oneoverfourpi * (1. - g**2)
    bot = (1 + g**2 - 2*g*cos_theta)**1.5

    return top / bot

import numpy as np
import matplotlib.pyplot as plt

halfpi, pi, twopi, fourpi = [f*np.pi for f in [0.5, 1.0, 2.0, 4.0]]
oneoverfourpi = 1. / fourpi

degs, rads = 180/pi, pi/180

theta      = np.linspace(0, pi, 200)
cos_theta, sin_theta = np.cos(theta), np.sin(theta)

dtheta     = theta[1] - theta[0]

g          = np.arange(0.9, -1, -0.15)[:, None]

Pu         = pu(cos_theta, g)

plt.figure()
plt.subplot(3, 1, 1)
for thing in Pu:
    plt.plot(degs*theta, thing)

plt.subplot(3, 1, 2)
for gval, thing in zip(g, Pu):

    if np.abs(gval) < 1E-05:
        plt.plot(degs*theta, thing, '--k')
    else:
        plt.plot(degs*theta, thing)
plt.yscale('log')

plt.subplot(3, 1, 3)
for thing in Pu:
    plt.plot(degs*theta, twopi * sin_theta * dtheta * thing)
plt.show()


Wierd pixel issues in final render (GPU only) I recently noticed with the new Blender update to 2.90.0 these dark, vertical, one pixel wide artifacts on my final render.

It only happens with my AMD GPU:

Software version 2020.0515.1537.28108
Driver version 19.50.29.27-200515a-355311C-RadeonSoftwareAdrenalin2020
OpenGL version 26.20.11000.13587
Vulkan Driver Version 2.0.137
Windows version 10 (64 bit)

With my Intel (i7) CPU it looks like this:

With the newest version for the AMD Graphics Card 2020.0909.2058.37766 the pixel isssue is resolved.


How to initialize the Sound class in Python I am trying to set a Speaker's sound using a Python script and I was able to find that this should be done by assigning to the data.sound attribute of the Speaker object instance.

I also found that the appropriate value type for the attribute is Sound, however I have trouble instantiating it. From the documentation it looks like it has a constructor which takes an ID. When passing an empty string, I get a confusing error:

sound = pby.types.Sound('')

  TypeError: bpy_struct.new(type): type 'Sound' is not a subtype of bpy_struct

The documentation would have you believe Sound indeed is a subtype of bpy_struct, because that's what it says in the base classes line.

However, clicking further through to bpy_struct, one finds this note:

  Note that bpy.types.bpy_struct is not actually available from within Blender, it only exists for the purpose of documentation.

Blender seems to be well aware of it though as it throws an error at me for not instantiating a correct subclass of it.

What gives? How come Blender is aware of this type and how come Sound is not a proper subclass of it?

Blender very rarely (if at all) instances from class.

Rather than add a new object with  ob = bpy.types.Object("blah") the blender way is to use the new method, or for images and sounds the load method of its data collection. eg bpy.data.objects.new("name", data) or bpy.data.sounds.load(filepath)

To load a new sound

snd = bpy.data.sounds.load("/path/to/soundfile")

python console, add a speaker and add sound.

>>> D.speakers.new(
new()
BlendDataSpeakers.new(name)
Add a new speaker to the main database
>>> D.speakers.new("xxx")
bpy.data.speakers['xxx']

>>> D.speakers['xxx'].sound = D.sounds.load(
load()
BlendDataSounds.load(filepath, check_existing=False)
Add a new sound to the main database from a file
>>> D.speakers['xxx'].sound = D.sounds.load("/tmp/xxx.mp3")
>>>  speaker_obj = bpy.data.objects.new("speaker", D.speakers['xxx'])

Link to scene in 2.79 and prior

>>> C.scene.objects.link(speaker_obj)

Alternatively with the operator, Add a new speaker object to the scene

bpy.ops.object.speaker_add(view_align=False, enter_editmode=False, location=(0, 0, 0), rotation=(0, 0, 0))
speaker_obj = context.object


How Do I Use a Saved Pose at a New xyz Location? I've created a number of poses for my rigged character. These poses were created while he was at the center of the grid in the 3D viewer. When I apply a pose anywhere else, it places him back at that location. How can I use the poses I've created at any other locations than where they were created?

In most cases, your Armature object should be the root of object hierarchy. So that means it should not be parented to anything.

Also the armature object should be without any transforms - always with origin in the center.

Instead the rig should have a Root or Master bone to transform the whole rig in pose-mode. You want to make rig positioning in the scene with this bone.

This prevents numerous problems with scene management, linking, and most importantly keeps things clean for animators - they have all the key-frames under the pose. And not some under object and some under pose.

When you do not want to store the root transform of your rig inside a pose library - delete that bone from the Action which is used to store the poses - or just delete the keyframes from the poses you don't want to store the root transform in:

Should be named PoseLib by default and you will find it in Action Editor.


How did I make this soccer-ball/honeycomb shape? A while ago, I made this:

Now, I'd like to make something like it again, but I can't remember how I did it the first time.

I'm pretty sure I started with an icosphere, then maybe I used a modifier. I'm not sure how I "carved out" the spaces between each hexagon. The larger open areas I deleted manually, though.

Bevel modifier

Start by adding an Icosphere with 3 levels of subdivision
Add a Bevel modifier with Vertex Only option enabled. Now you should
have the main pattern clearly visible.

As we want to delete the inner exagon of each loop, we can take advance of the modifier to add a distinctive feature to those faces in order to select them easily: increase the number of Segments to 2.

Then, in order to make the shapes less regular, decrease the Width value to something like 0.09.

Add a second Bevel of wanted Width modifier to create a "corridor" between the "main" faces.

Apply both modifiers, enter edit mode, pick one exagonal n-gon and select similar area faces with a threshold of 0.006, invert selection and delete other faces.

Final touch with Solidify modifier.

Result:


Rotating a 90 degree joint without inflating it I created an L shaped box, and i want to animate it so that it will straighten up, similarly to a clock hands movement. I tried using an armature for this, but wherever i place it, it causes the joint to inflate. I also tried to use a hook modifier, so that some of the vertexes follow an empty's rotation - but had the same result.

You will never get a perfectly straight mesh with this approach. Even if you tweaked the vertex weights so that this case (90deg rotation) looked fine, you would see the limits of it once you start rotating it further.
You could use two different meshes instead, each bound to one bone, or even two different objects, each parented to one bone.


How to get illumination pass from a Smoke Sim with Cycles? Cycles can now render smoke and fire simulation but for compositing need, I want the illumination pass from the fire. The aim is to composite this pass with a tracked footage.

I already try with the diffuse indirect pass but there is the ground plane with it so it's hard without alpha to get a proper image.

One solution is to add a material index to your fire's material, and then, on the compositor,  you can take the Emission pass, and multiply it with the Object Index one.

Go to the Properties panel, then switch to the Materials tab, and under the Settings subsection, change the material index.

Then, still on the Properties panel, switch to the Render Layers tab, go to the Passes subsection and activate Material Index and Emission.

Then, in the compositor, multiply the output of a IDMask set to 1 and the Emission pass.


Rotate object around cursor with Python What Python command rotates an object around the 3D Cursor?

Assume you already have the Pivot Point set to 3D Cursor (although this could be done in Python also)

You can use the operator bpy.ops.transform.rotate(), but you need to override the context or else it will only rotate around the object's median point.

import bpy

def get_override(area_type, region_type):
    for area in bpy.context.screen.areas:
        if area.type == area_type:
            for region in area.regions:
                if region.type == region_type:
                    override = {'area': area, 'region': region}
                    return override
    #error message if the area or region wasn't found
    raise RuntimeError("Wasn't able to find", region_type," in area ", area_type,
                        "\n Make sure it's open while executing script.")

#we need to override the context of our operator
override = get_override( 'VIEW_3D', 'WINDOW' )
#rotate about the X-axis by 45 degrees
bpy.ops.transform.rotate(override, value=6.283/8, axis=(1,0,0))


How do I fix my smooth shaded model? How would I fix the shading under the nostrils without adding too many sub divisions? (my computer us quite old) This model will be for a game if that information helps.

press CTRL+N to recalculate the Normals. And it seems like you have subsurf modifier over Mirror modifier. Move Mirror modifier up


Rigging/ Weightpaint problem I am trying to import my model to the unreal engine, and for that I have to merge meshes. My problem is the weight paint of the "tooth" on the neck; they aren't following the neck anymore. Hope someone can help.

It looks like they're just the wrong weights- you would need it to be the same weight as the corresponding area of the neck for it to follow the bones the same way.

What I would recommend is either using the automatic weighting system for the spines if that's how you did the neck, or if the neck's weighting has been manually edited then most likely you would need to use trial and error to manually weight paint the spines on. Anybody else, correct me if I'm wrong, but I don't think there's any way to successfully transfer exact weights to something with such a different shape than the original mesh.


align reference image with orthographic camera I've got my scene set up as shown below. The camera is set to orthographic and both camera and reference are rotated to [60, 0, 45] degrees. It seems not to line up with the 3D world, however. (note how the cube's y axis is not parralel with the lines in the reference image) How do I rotate the camera and reference image to line up with my 3D grid?

Rotation values should be [54,736; 0; 45]

The provided picture is showing an Isometric Graphic.

In this particular case, by measuring the ratio between the edges,

and the projected angles of what we can imagine as perpendicular extrusion (the bridges) of a quadrangular face, we can deduce that we are in front of an Isometric axonometry with 120°, 120° 120° angle between axis.

But as I marked in bold, 60° is the projected angle, that means that is the result of the transformation of the camera and should be not used straightfoward as input for the X rotation.

Relying instead on the the math that's describing the camera orientation for such type of projection, we discover that the real X rotation is give by the formula:

X rotation = 90°-arctan(sin 45°) = 90°-35,264°= 54,736°


Only the text shows in rendered view So I've been having this problem in Blender 2.79. Every time I go to the rendered view. This happens:

When it should look like this:

Is there any way I can fix this? Thanks!

With no further information there could be two main reasons:

If the object is visible in the Viewport, but invisible in the rendered image, you've set Disable in Renders for the object.
If it's already invisible in 3D Viewport when you set the mode Viewport > Rendered (as your question sounds like), you probably disabled Camera Visibility under Properties > Object > Cycles Settings > Ray Visibility


Blender Not Responding When I Try To Move My Character When I go to start setting poses and such, it keeps saying not responding and freezes. This started when I used the particle system for the hair and it got much worse while I tried starting to move the legs and arms. I updated all my drivers and such, and it only says not responding on this character. When I move a cube, for example, it works completely fine. The rig worked fine before the particle system so I think I did something wrong. I attached the file if you would like to take a look. Thanks in advance and help asap![1]: https://www.dropbox.com/s/wsf046f23xez3s7/hairandbrows3.blend?dl=0

All right, thank you for posting your question clearly.
1) Go to the emitter settings (could it be your head or your hair scalp mesh?) and in the emitter settings turn OFF the eye icon. We want to make the hairs INVISIBLE yet, still be available.

Now, try to move your character.
If your viewport perfomance is still laggy:

2)compress every other window and leave only 1 main big 3D window to work and set it to WIREFRAME MODE. Also if your character's hair has dynamics applied, please go to cache and click on FREE ALL BAKES.

Try to move your character again. If POSE mode is still twitchy:

3) Go to the deformers tab on your character, check you only have 1 ARMATURE deformer and that it is pointing to the correct ARMATURE.

Try to go to pose mode again, If pose mode is still unavailable:

4) Check out your outliner. You probably have your armature UNSELECTABLE (which means you should turn on the pointer arrow icon ghosted, CLICK IT to make it active again).

5) You should now have your armature mode selectable, ready to go into POSE mode.

Try moving your character now.

If your character is still laggy and all of the above applied or NONE of them applied, try this:
Create a new scene. Create a plane. Create a 2 chain Bone horizontally in Y+. Parent the plane to the bone. Select the plane again, make a particle emission, change it to HAIR, make it emit 50 particles.

Exit particles (unselect all (A)) and now select bones, go to POSE mode, you should be able to move your plane with the bone deformers and your hair should follow allong.

And since that solves the question, I´d appreciate it if you vote this as the answer. Thanks.

BFCT_Schiller


Duplicate object suffix (.nnn) to be put elsewhere (prefix maybe?) The importer I do uses suffix names for import certain stuff; ie: object named "land-col" is an object with collider and "invisible_wall-colonly" is imported an invisible collider); now, my problem is when I do duplicate object blender rename them in land-col.001 and invisible_wall-colonly.001. and that .nnn broke the import feature.

So, I was wondering if I can force blender to name duplicate objects in a different way... ie; 001.wall-col or something alike?

When duplicating Cube, it will create Cube.001, there is no feature that i'm aware of to allow you to specify the desired duplicate name or convention.

It is possible to rename using the reference to the object after  duplication, because the duplicate becomes the active_object

# with one object selected.
bpy.ops.object.duplicate(linked=False, mode='DUMMY')
obj = bpy.context.scene.active_object
obj.name = desired_name

or a mass rename if that makes sense

for obj in bpy.data.objects:
    if obj.type == 'MESH':
       if '.' in obj.name:
          # assuming it only has one period in the name.
          basename, postfix = obj.name.split('.')
          obj.name = postfix + '.' + basename


Reusing animation at specific locations and timelines I made this from youtube and want to reuse it in music video. I am wondering how to stimulate as if lighting from skies, striking from controlled, yet randomized location and timing to music. I am slightly aware about KD trees acting like GPS, but never done this before. Maybe this can be used with sound spectrum as well?
Edit: No one has to watch the linked video. I am showing my results in the gif and the link is just a reference. My question is: how do I take this ani-node results and reuse it at specific time/location in another project?
I have no problem appending it another blend file, but no idea how to control it as if a timed lighting strikes throughout a scene.

I have made a loop that provides the on and off logic for the lightning. The float list provides the frame numbers for the on then the off then the on then the off etc..

For moving around the lightning I used an empty and  moved it about and inserted some key frames into the timeline. "Vector from value" node controls the amplitude of the randomnes. The "vector math multiply" node after the "vector wiggle" node makes sure the randomness only affects the x and y coordinates.

If you want to append this to another project append the bezier curve as well as the node tree and add an empty. And select them in the appropiate nodes. Chris P who did the tutorial has tutorial called "#5 - Audio + Peak-Meter - Animation Nodes in Blender 2.8 - Tutorial Series" for learning how to use audio files to alter the animation.
I have added a blendfile done in Blender 2.93 beta and animation nodes + extra nodes 2.2.2
Also you might want to append your shader tree to the file as it looks different to mine from the gif

For this blend I have disconnected the on off logic loop recconected the number of bolts node. Deleted thekeyframes for the empty.

I have added the sound spectrum node here to give you some ideas. You add your path to your mp3,wav,flac etc file via the sound input node. You may have to fiddle with the values like amplitude etc in the sound spectrum node depending on the dynamics of your music. Doc for Sound spectrum node

I've never used the sound spectrum node before, but I hope this gives you some ideas. I have just thought that you if you are doing visuals to repetitive music like house etc you can get the frames per a bar by mutiplying the bpm of your tune by the frames per second of the render then dividing by 60. Then divide by 4 to get frames per a beat.
Here is an answer to a question about the sound spectrum node that will help you familiarise yourself with it.
sound spectrum


How do I copy video strip properties? I'm editing a video made with several movie strips. I've changed the properties of one of the strips, like the blend mode, the opacity, the saturation, etc.

I want to copy those properties to the rest of the movie strips, is it possible? Or do I have to modify every strip manually?

You can just do it by

Selecting all strips.
Changing value in the active one.
Do a right click with mouse cursor over changed value.
Choose Copy to Selected item in Pop up menu.


Liquid / glass interface IOR and normals in Cycles When modelling / rendering a glass with liquid inside (in Cycles), which direction do the normals for the glass only surfaces, shared glass-liquid surfaces, and liquid only surfaces point? I have looked into this myself but seem to get conflicting answers from different sources. See here for an example.

Also, should each of the surface types mentioned above need a separate material / IOR?

Autodesk has information about these here, but I'm not sure it applies for Cycles / path tracing:
Autodesk, normals and IOR for glass-liquid interfaces

Note that Blender SE has some related questions:
How to illuminate the darkness inside glass objects in Cycles?

The answer seems to be yes. This is a fairly commonly used technique, it works with LuxRender and Yafaray as well.

Here is an example rendered in cycles with the normals and materials setup like the autodesk example:

  Air-Glass interface (IOR = $\frac{1.5}{1} = 1.5$)
  Air-Liquid interface (IOR = $\frac{1.33}{1} = 1.33$)
  Glass-Liquid interface (IOR= $\frac{1.33}{1.5} = 0.8$)

  It is evident that in the most common case of an interface with air, the IOR to use is the IOR of the media (since the IOR of air is 1.0), whereas in an interface between two different media, the situation is different.

It seems that the basic thing to keep in mind is that the interface IOR should be equal to:

$$
\frac
{\textrm{IOR of medium with normals facing }\textbf{away}}
{\textrm{IOR of medium with normals facing }\textbf{towards}}
$$

If you set up the normals the other way around, (e.g. here) it is the opposite:

$$
\frac
{\text{IOR of medium with normals facing }\textbf{towards}}
{\text{IOR of medium with normals facing }\textbf{away}}
$$

In the autodesk example, Liquid (with an IOR of 1.33) is divided by Glass (IOR of 1.5), because the normals are facing the Glass medium.

Yes, you do need to use separate materials and IOR values for each surface type.
Assign the materials to the appropriate faces:

The Air to Glass material, the Air to Liquid material, and the Glass to Liquid material:


How do I exit extrude? When Blender starts, the default cube appears in object mode. If I tab into edit mode, and right click onto the cube, and then drag - it extrudes without my pressing E or clicking on the extrude button. Also, the extrude button is hi-lighted at all times. Is this a bug, or am I doing something wrong?

When you drag with RMB, you move the selection.

Press esc to leave the mode without changes.

If you want to select without moving, you've to release the button immediatly.
If you extruded (e), you'll add new vertices.


How do I set up correctly a camera? I've a Scene bought from Internet.

This scene has cameras, but I've set up a new one from the front of the object.

The problem is that when rendering (F12) It renders from top view (there is a camara from the scene in this position).

But I needed to render from the front, from the camara named "Camara".

Before rendering I press "0" to see the Camara's perspective and it is correct, but in rendering Camara changes to another camara from the scene: Camara_4_Sc1.

I've set up my "Camara" in Scene panel: but it renders from top (from camara from scene bought in Internet)

Render from TOP (wrong): Pressing F12 changes Camara to Camara_4_Sc1

Rendering is possible only with an active camera. To do it you select it and press CTRL + Numpad 0 or use the Menu as it is in the comment to make it active.


Is there a secret setting that keeps me from painting textures I am sorry if there is already a post like this but the only things I've seen are tutorials and explanations on how to set-up the start file or something similar for texture painting.
My problem is that i can't bring it to work no matter what. I've made sure that I am on the right paint slot, UV-Map and object. It all doesn't work. The weird thing is that this only occurs on my project so I believe there is a hidden setting or something that I must've clicked by accident that keeps me from progressing further. Is there a way to reset only the project settings? Without messing with my global preferences?

I have uploaded a video on Youtube which shows what I mean.
Youtube Video

It was a really simple solution - change Blend mode of the brush to Add (in this case) instead of Color and remove texture mask with empty texture from the Texture rollout.


Corrupted? Plane with White material rendering Black in Solid view I have a collection of planes with different designs and changing their material isn't reflected in solid view in both blender internal and cycles render view. The materials I'm trying to use have been working fine for other objects.

All the planes have once been set to a pure shadeless black texture, and have had a Solidify modifier applied to them. The rendering isn't fixed after removing the modifiers. Flipping the normals doesn't have any effect.

The vertices of the planes act weird. If I add an edge, one of the triangles will be colored according to current material. If I then dissolve the new edge, it will also delete the points, even though they should be connected to the other points.

Dragging a point so the plane is self-intersecting will cause the material to display properly.

Also, the plane is rotated along the Z axis. If I Scale the plane (in object) by 1 (or anything), it will automatically align itself along the X axis (the way it previously was).

I tried to rebuild the points of the plane, and I'm not able to align/snap points to the vertices of the plane in edit or object mode. Also, I can't split the plane using the Knife tool

Currently, the only solution I have is to trace the planes.

Blender source file containing some of the planes.

The problem is you need to apply your scale transforms on the objects. The reason the faces are shading poorly is because of Z-fighting, which is occurring because your objects have zero Z scale value. Applying scale will also allow your modifiers to work.

To apply the scale, select all your objects in object mode, press Ctrl-A and Scale. Or in the viewport header, Object -> Apply -> Scale

Your scale values should now read 1.0, 1.0, 1.0.


How can I add a 2D asset as a 3D object in the shape of the png minus the alpha? I have a PNG sequence of an animated 2D character waving. I'd like to put it in my blender scene like a cardboard cut out (so the scene treats it as a 3D object with a very small amount of depth). Basically it would be like if you had a cardboard cutout that can move around and the shape of the cutout coincides with the character's body movement (basically the shape of the "cardboard cutout" would exclude the alpha of the current PNG on each frame). This means the shape of the 3D object would change every frame and match the shape of the 2D character. Is there a way to do this that wouldn't be a huge headache? Let me know if there are any clarifications you need to form a better picture of what I'm going for here. Thanks in advance!

When using the "Import Image as planes" function (Shift A in the 3D Window), there are options for using alpha, animating an image sequence and use an emitter or shadeless shader.
The 3D shape is not affected, but the result is a cardboard cutout.
The images of the sequence have to be named with the same base name and a progressive number (Object_001, Object_002, .......).
In the shader editor you will use the image texture node to set the duration and the time offset of the animation.
If combined with grease pencil objects the material has to be set as "Alpha clip" in order to work in Eevee, to avoid uncorrect Z depth.


M1911 Model material issues So from the image above(or below) you can see that the slide on my M1911 is grey while the sights and the front area of the slide are still the standard mesh white. I don't know why this is happening. The front and the sights are joined together with the slide and they've all been smart UV unwrapped. The slide has a grey color because that's the color I set for it in the nodes. But it's just the front and the sights that I'm having issues with.

It looks like you have different materials assigned, got to the materials tab in object properties to see your materials.

When in edit mode you should see options to assign selected vertices to materials, you can use this to assign everything to the correct material slot. You can also use the select options here to see which vertices are currently assigned to that material.


Can't decrease the brightness of the transparent shader effect I'm trying to make a transparent plane in blender 2.8 that works in cycles. I want to reach the same effect that I have when I set up a background image with the transparency enabled. Below you can see how I have configured the shaders :

Instead,below you can see how it should look like :

mine is too bright. I tried to change the strenght value,but I don't get the desired effect. What's wrong here ? thanks.

The following node setup still uses an emission shader, but ensures that it only affects the camera. The math node allows to control the transparency of the image. If you'd like to adjust the brightness you can add a Bright / Contrast node between the texture node and the emission shader node (Add > Color > Bright / Contrast).


Strange seams while rendering glass object a newbie question that has probably been answered before, but I couldn't find a definitive answer:

I'm trying to render a simple glass container with some dark liquid in it, but I'm getting weird "seams" on the round edge of the container in rendered image. It's as if the normals are somehow miscalculated and causing the refractions to render incorrectly. This should not be the case, as I have recalculated the normals for the outside, as you can see from the image. I used the Solidify modifier to get the container, original mesh only had single faces for all the sides (and the rounded end) minus the top face, no other modifiers used. The liquid is a separate object that I created by copying the inside of container.

So, what's causing those seams to appear and what can I do to get rid of them?

The problem, circled with red:

A view from my editor, as you can see, normals seem to be OK:

I think you simply forgot to turn on smooth shading. See these examples (looks very similar to your issue):

Flat shading

Same geometry with smooth shading (and EdgeSplit modifier)


Snapping multiple vertices but picking which one is primary I'm having trouble figuring out how to snap multiple vertices but selecting by which one the position of all of them is adjusted.

Right now I can't be precise because I'm not able to align edge to edge because of this. I'm coming from 3DS Max and that was something I was able to do by just picking which vertex is main one.

For the vertex you want to snap, in the Snap options, you have the choice between Target > Closest / Center / Median / Active. To point out the vertex you want to snap to, use your cursor.

For example Active will snap the last vertex you've selected.


Weird colors in normals map so everytime i try to bake normals i get these weired colors

Things worth mentioning

im using blender (blender cycles)
ray distance = .1

Blend file

https://drive.google.com/file/d/1h5ofCYo1R8Fzeo7yEXAsSBvmBSD0_Aqz/view?usp=sharing

If you increase the bake Ray Distance to, for example, a value of 3, it works. It looks like it's because your objects are big on the scene, if I decrease them and apply scale it will need a lower value.


Subdivision To Preserve Low Poly Style I'm working on a low poly style scene, meaning that individual triangles are intentionally visible.  I need to subdivide the scene while preserving the original geometry.

Basically, for every triangle I'd like to add 3 new vertices to create 4 triangles like this, so that it's still flat:

It may seem odd that I'm basically just increasing vertex count, but this is because I have a vertex shader that is warping the points, and I need more vertices for the effect to look nice.

I know about the 'poke face' but this does not work because I must reduce edge lengths for the effect.

Is there any built in tool I can use to accomplish my goal?
Thank you

Have you tried the Edge Split Modifier?
It does the trick for me.

This is an Ico-Sphere. I added the Edge Split Modifier to it, then I sharpened all the edges (or just the ones between which there should be no interpolation of normal values), then I added Subdivisions with Mesh > Subdivide, Slices set to 1 and Smoothness to 0, like suggested.

The UVs split as they should.


Material Preview as default viewport shading Is there a way how to set up Material Preview mode as default Viewport Shading, so that everytime I open Blender it would start with that view?

Open Blender, switch to Material preview, go in File > Defaults > Save Startup File.