Change value of material emission strength from Python console or script I need to programatically modify the value of Material > Surface(Emission) > Strength

When I change this value manually the output is: bpy.context.space_data.context = 'DATA'
bpy.data.node_groups["Shader Nodetree"].nodes["Emission"].inputs[1].default_value = 1.2

But this command produces an error on the console:

>>> bpy.data.node_groups["Shader Nodetree"].nodes["Emission"].inputs[1].default_value = 2
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
KeyError: 'bpy_prop_collection[key]: key "Shader Nodetree" not found'

I also tried accessing a surface attribute of the material but this doesn't work either:

>>> bpy.data.materials['light_emit.002'].surface
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
AttributeError: 'Material' object has no attribute 'surface'

Besides, where can I find the api reference to try solve these problems by myself in the future?

Found a solution:

bpy.data.materials['material_name'].node_tree.nodes["Emission"].inputs[1].default_value = 3 #or any other value

Thanks to this reference


Problem mixing 2 transparent shaders as two different layers I’m trying to create a sun disk with a halo in the same shader. However, mixing the two shaders has been a failure. At the edge of the sun disk, where the opacity decreases gradually, we can see the background behind the sun halo in red. Yet, that part of the halo at that position is completely opaque. I know the cause of the problem, but I don’t figure out a solution to replace any transparent value from the sun disk by the value of the halo. It appears that blending the two shaders that way takes a part of the opacity from the sun disk and blends it with the background instead of replacing it with the other shader.
Here’s the shader below for the problematic version.

Here are two renders. The first one is the problematic version with the shader mentioned above. The second version is the desired result. I can get the desired result if I create two planes close to each other. I have to use the halo shader alone on the plane behind and the sun disk shader alone on the plane at the front.
The goal is to reproduce the same blending process with opacity, but in the same shader (or material).
I placed a checker board behind the sun in the render test to clarify the problem at the edge of the sun disk.
Problematic version:

Desired result:

How would you mix the two shaders in one material to achieve the result of the second screenshot? In other words, to replicate the same result as the blend result of two planes with transparency.

You have to delete the last mix shader node and one of the transparent shader node, and feed that input with the output of the other shader, so that when the top "layer" is transparent you'll see the bottom "layer", and when also the bottom layer is transparent you'll see the background checker.


Render Freestyle strokes behind objects with alpha transparency? I'm trying to make a wall disappear. Does freestyle support alpha? I mean there is an alpha for strokes but all it does is making my lines disappear but I still can't see strokes behind the wall

And here is the blend file: http://www.pasteall.org/blend/29200

Yes, you can do this easily from the Freestyle settings. Blender/Freestyle gives you a lot of control. The parameter you want to change is QI Range. This specifies a range of face occlusion to render strokes for. So if you have a cube like in the example below you would set the range Start at 1, and End at 1 or higher and that would render strokes for the edges of the back of the cube.

However if you had a second cube behind your first one, a range of Start:1~End:1 will cause the second cube not to have strokes rendered in the areas which are occluded by the foreground cube. Here is an example:

And if we up the values to Start:2~End:2 the foreground cube's back edges are not rendered but the front edges of the background cube are:

Here is your scene rendered with values of Start:1~End:100 and Alpha set to 0.5 for the occluded stroke set:

Here is the .blend: http://www.pasteall.org/blend/31648

And finally, here is the section of the Blender manual which explains this if you want to read further: https://www.blender.org/manual/render/freestyle/parameter_editor/line_set.html


Converting a masked 2d grayscale image to an object I want to achieve the following:

At the moment I can do it, by using Shapeway's 2D to 3D image converter, download the result as X3DB, then use NetFabb Basic to convert it to STL, which I can then import to Blender. This process although works, I would like to do the whole process using Blender in order to not rely on web tools and to have more control on the result.

I've been trying to mix landscape topography with extruded curves the following ways:

Option A.

Create an SVG outline of the image
Import the SVG, and convert it to a mesh
Use the displacement modifier to modify the mesh using the original grayscale image

Option B.

Create an SVG outline of the image
Import the SVG, and convert it to a mesh
Create a plane, use subdivide to add more vertices
Do a boolean cut to change the shape of the plane to the outline of the image
Add a displacement modifier to modify the resulting mesh

In neither case did I get anything useful, the usual results are:

A mesh with tons of huge spikes (which of course doesn't resemble what I want)
A mesh with only a few spikes (which still doens't look anything like what I want)
The mesh dissappears completely
Blender crashes

Any ideas?

Edit:

I already have the SVG version of the outline. I can also generate an SVG version of the grayscale image as well, but I don't think that's necessary. I'm using Illustrator btw.
I don't need an automated way (yet, hopefully I can script it once I know how to do it manually), my problem is that I can't even get the mesh created manually in any way.
As this is for 3D printing both the outline and the topology are important (the depths of the ridges are not always equal everywhere. Also a generic solution would help me in generating other types of pendants and would also allow me to add smaller details).

Here is the end result I would like to accomplish from another angle for reference (this is based on the mesh generated by the shapeways' tool, and it also contains a mirroring):

I used your image as height map and got this result:

Work in progress:

Take a plane and scale it up, subdivide it ~1000 times.
Add a displacement modifier with the image as texture.
To smooth out the result, add a subdivision surface modifier before and after the displacement modifier.
Apply the modifiers.
Go into edit mode (be careful with your modifiers, the first time Blender crashed at this step due to too many polygons) and select all the mesh. Go to "smooth vertex" and smooth it a lot (5 times with factor 1 on the screenshot; should have been more)
Add a decimate modifier to remove unnecessary geometry. Remove vertices based on the angle with the "planar" mode. I had to first decimate it with "collapse" because planar decimation takes a lot more of time to calculate. Ratio 0.1 and 6° angle limit worked well.
Go into edit mode again, select all vertices on the bottom with height 0 and delete them.


Remove ridges from hemisphere in half circle ngon that appear with the Subdivision surface modifier I am in the process of modeling the front of a helicopter and I am having some difficulty in getting the nose of the model to behave the way I'd like it to when applying the Subdivision surface modifier. I have found this post regarding the issue, however the solutions do not work as I have only modeled one half of the helicopter and I am using the Mirror modifier to duplicate the mesh across the X axis. The ngon that is the nose is not a circle but rather a half circle. If I create an additional edge loop and move it closer to the center, the issue is still present and makes the tip of the nose into a point after enabling the subdivision surface modifier.

Here is the model in edit mode without the subdivision surface modifier:

And here is the model with the subdivision surface modifier enabled (problen circled in red):

If I enable "Adjust cage edit to modifier result", you can see that the first edge loop is in a very shallow v pattern:

If I add in a second edge loop that is closer to the center as suggested in the post linked above, the ridged mesh topography is still present, it's just confined to a smaller area and is more pronounced the higher the Subdivision surface level is raised:

By shading the faces smooth rather that flat, the ridges are no longer visible, however, I do not wish to use smooth shading as it does not fit the scene stylistically (think like the game SUPERHOT). Is it possible to remove the ridges that the Subdivision surface modifier creates without applying the Mirror modifier and manually adjusting the mesh topography?

UPDATE:

Because the shape is not a true half circle, but rather a half elipse, when attempting to convert the single center vertex to edge loop vertices on the same coordinate, they do not scale properly, Here is the result of performing the suggested answer from Shady Puck (with the "Adjust cage edit to modifier result" turned on in edit mode for clarity):

You just need to remove the single vertex, then extrude the inner rings until you can fill the final loop with an ngon. If it's small enough, the ngon should look okay.


Grouping in an empty object I can group several objects using Ctrl+P.
However, the "main" object is the last selected object.
I find this a bit distracting.
Is there a way to group my objects in an empty object?

I would like to be able to parent my objects like this:

I was not really able to do that, so I added a plane as the main-object.
Is there a way to do that without having to add an additional, superflouos element?

I think I found the solution myself. In this case it would be smarter to use Groups.


Render Preview is Black but export / render is fine I added a video as texture and the video was not playing even though everything was correct, after a few tries I got into another (way worst) problem. When I render in the work-space (Shift + Z) everything is pure black, but if I render (f12) it renders well. I already deleted the video from the blender file in case it was causing a bug but still everything black. I am using Cycles. I tried with Blender render and everything was fine.

I've discovered the issue. If someone is facing the same problem, I solved by pressing the pause button at the bottom right of the 3d view window, it only appears when on render preview (shift + z)


how to model plane with a lot of vertices What is the fastest and most useful way of modeling a street with cad layer with a lot of vertices that are not symmetrical on both sides?

LoopTools add-on has a few operators that you might find useful, particularly bridge or loft:

Above you can see how I make sure all curves have the same number of vertices - had to subdivide one curve and remove 2 excess vertices, then Relax it to make it smooth and equalize Space between vertices for the best effect of the Loft.


How to distribute / align objects in a line or grid with even spacing? Very often, when importing multiple objects from an asset kit they are all centered in a scene and need to be manually distributed, so it is easier to work with them.
I was trying to find an option for this in blender, but couldn't get close to any good solution. Hence wanted to ask here if it is possible to somehow select all of these objects and automatically distribute them in a line (say on x axis) or even better some sort of grid (rows and columns) with even spacing?
For example, how to get from this (multiple objects centered together)

To this, objects evenly distributed in a grid (or line). I did this manually, but ideally this should be automatic?

There's an ol'-school method to distribute your objects on a grid made for the purpose, here with 'Faces Only' deleted:

Add  or link your assets to a collection.
Give your display grid a particle system, set to emit [ its vertex-count ] particles, all at frame 1. Non-random, from vertices, particles with a long life.
Particle Physics : 'None'.
In the system's 'Render' panel, set to render the collection, scale 1, no randomness
In the (collection-context) 'Collection' panel, check 'Object Scale' and 'Use Count', with default (1-per-item) setting.

In the grid's modifier stack, you can convert the particles to real instances.


Modeling a curve edge of a plane I'm new to blender and trying to model the blade of my helicopter and can't figure out how to make an edge curved (for the red tip and selected edge). The object is a plane, with one loop cut. I attempted making a bevel Ctrl B, but nothing happens (A dotted line appears attached to the cursor, moving does nothing, left-clicking does nothing).  also I cant add a curve modifier, just says its disabled. What is the correct way to model this?

The curve modifier is not aimed for this. And Bevel tool doesn't work like this, either. The best way to control planar curvature is by using curves, which may not well benefit topology, however.

I recommend to use Subsurf modifier + edge creases. Add some loop cuts first, then with a few tweaks on the vertex position (G) and adjust crease weight (ShiftE) on some edges, you can make whatever you want with nice topology. I'm sure you also want to bend it later, so topology is important to consider in advance.


Will my geometry make for a good baking? So I have this model of a dome that I created and I'm quite happy with it (not to say that it has no default but at my level I consider it quite enjoyable).

The only drawback is it's way too high poly for a game (~400k polygons) so I made a low poly version (~4k polygons) and now I'd like to bake a normal map.

Problem is: I know the baking will take a long time so I'd like to be confident enough in my models that when the baking is done, I can have as few problems as possible (not sure the expression is right: english is not my mother tongue). I am quite confident in a lot of parts but the one that really scares me are the tiles. Can anybody tell me if the way I made the tile part of the low poly model will give a good result when baking ? I've never tried this kind of geometry and my experience with baking is quite limited so any advice or suggestion would be much appreciated

Here's what the high poly tiles look like

And here's what the low poly model's tile part geometry looks like

Thanks a lot

OK so following Leander's advice I did a baking with low res and low samples and weirdly enough, it actually gives a better result without the little steps so I completely removed them (and lost almost 4oo polygons in the process, yay). Thanks for the advice, I'm closing the subject


Orientation towards an other object with Animation Nodes I've tried to follow the tutorial wrote by Ed Tate in this topic : How to create a 3D virus envelope like this in image below?

But I can't achieve to have a correct rotation of the lipids :

The lipids are (theoretically) supposed to point to the center of the ico sphere. And it seems that they don't want to do it.

I don't really find what I'm doing wrong so if someone knows what is my mistake, I would be glad to learn which one it is.

.blend :

You can use the outer icosphere's vertex normals, same as you have used their vertex locations, to make the lipids face the center. Simply replace the node connection to the loops normal list output from the current vector list to the vertex normals provided by the object mesh data node.

If you want to reverse the direction you can do this in the direction to rotation node you've already added:


How to catch backslash keypress? I want make actions on key press in UV Editor Blender, how to catch this event?

There is an addon tutorial that covers keymaps.

# store keymaps here to access after registration
addon_keymaps = []

def register():

    # handle the keymap
    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name='Object Mode', space_type='EMPTY')

    kmi = km.keymap_items.new(ObjectCursorArray.bl_idname, 'SPACE', 'PRESS', ctrl=True, shift=True)
    kmi.properties.total = 4

    addon_keymaps.append((km, kmi))

def unregister():

    # handle the keymap
    for km, kmi in addon_keymaps:
        km.keymap_items.remove(kmi)
    addon_keymaps.clear()

There are several addons that can be viewed as examples as well.

Material Utils is one of them -

kc = bpy.context.window_manager.keyconfigs.addon
if kc:
    km = kc.keymaps.new(name="3D View", space_type="VIEW_3D")
    kmi = km.keymap_items.new('wm.call_menu', 'Q', 'PRESS')
    kmi.properties.name = "VIEW3D_MT_master_material"


How to get Cloth to ignore collisions with specific vertex groups? I've got a thick cloth simulation, with a cage  that is simulated, then solidified, and my original model (With armature deformation) is mesh-deformed to the simulated cloth.
This works perfectly, but I need the simulated cloth to avoid colliding with the legs of the character, but if I add a collision modifier/physics to the original model, the simulated cloth collides with the jacket that's copying its deformation, so it goes haywire!

Here's the base pose:

Here's what it looks like with the simulation running:

And here's the clipping that I'm trying to get rid of:

Can I choose to ignore certain vertex groups in cloth collisions, between objects?

Instead of trying to selectively ignore vertices, just add some collision objects that follow the legs. Create some super simple ellipsoid colliders that are parented to his thighs, knees, and/or calves and make them more-or-less the same size as the legs.

Bob's your uncle.


Trails Behind Projectiles How would I add comic-like trails to projectiles, such as arrows? I have an example from YouTube, but the effect is done in another software.

https://www.youtube.com/watch?v=K4lmGGSsFYg

The effect occurs around 27 seconds, where an arrow is shot and there is a blue trail behind it.

You have to use a particle system inside a particle system.
Just add the particle system you want to appear on the object you use for the first system, tweak the time and that should do it.


How do you animate the Inception spinning top? I modeled and textured the Inception spinning top totem .

now I need to animate it like here:

https://youtu.be/XQPy88-E2zo?t=3m22s

I not only need to rotate it around Z but I need it to wooble.
Perfect would be a loop.
What would be the best way to do this ?

I have created a simple example for you.

First, the origin of the object must be at the tip of the totem.

In Edit mode, select the vertex end of the tip and press Shift+S to move the 3D cursor there.

Next, switch to Object mode and press Ctrl+Shift+Alt+C to move the origin to the 3D cursor.

You are now set up for origin.

Second, you need to edit the animation.

Notice the shape of the curve in the graph editor in GIF which I attached.

The Z axis, which is the rotation axis of the totem, is animated by linear interpolation.

Then apply a sine wave key animation that fades out to the X or Y axis.

I hope this helps.


Problem with Fluids Tespassing Obstacles (bottles, cauldrons) I have problems with physics.

I modeled a bottle and I duplicated part of the bottle for the liquid. The liquid has a face on top so it is closed. The bottle is open on top.

I added a cube for the Domain which covers the entire object and the bottle's animation.

Set the bottle as Fluid/Obstacle and selected Shell as Volume Initialization (with Volume it does not work) and had a modifier of thickness 0.1.

Set the fluid as fluid and Volume as Volume Initialization.

And when I bake this is what happens: the Domain, already as a fluid, trespasses the bottle and, later, it does not drop from the bottle.

EDIT: I made a new bottle to try thickness and increase resolution to 150 (also tried 300 but the result was the same quality as for 150). And now, with this new bottle I can't get a glass material for it.

Here you are the Blender file

Thank you in advance for your help.

Your resolution is too low. Try setting it to at least 150 but preferably more.

Yes, this will mean longer simulation times, but that's the catch with all simulations!

The resolution determines the size of the grid elements used by the simulation engine: your elements are so big (you can see the big blocks in your screenshots) that the walls are too thin for the fluid to notice, and that the hole is too narrow for the fluid to pass through!

Edit (after seeing your file): how to fix the obstacle

I forgot about this! Your obstacle should be solid in the Mesh data: this means that your flask must have the solidify modifier applied, not in the stack! I suggest doing this:

Set up (as you've done) the bottle, with the animation data and everything.
Duplicate the bottle. The original bottle will be use for rendering, the copy ONLY for simulation.
On the original bottle, remove Fluid physics, and remove the solidify modifier
On the new copied bottle, use a negative value for the solidify thickness (worked for me with -0.14) and apply the solidify modifier.
You can restrict the bottle visibility, and also you should remove it from the render layers

Run the simulation.
Restrict also the normal visibility ("eye" icon) of the duplicated bottle
Take care of the appearance of the "rendered" original bottle. For example a solidify with thickness = -0.07 works well.

PS: As regards your glass material: I've created a question & answer here: My glass material isn't transparent


Wrap text around a Circle without deforming it. (numbers on clock) Currently I'm creating a pocketwatch, but im having a difficulty in spacing out the text evenly, as can see here:

If I tried to space it out by scaling with x, this happens:

Is there any way I could evenly space out the text without deforming the text or adding spaces for every text?

On the surface, and for most text the Text On Curve option would work great. The clockface however is the one example where the positions of the Numerals are more important than the perfect spacing between them.

See here in green the marks where the midpoint of these Numerals would need to be to make the clock look as expected, but automated Justify  or setting the Spacing of the Word will result in an indiscriminate offset (shown by the red markers).

You can tweak the individual spaces between consecutive characters, even between a space character and a letter. This is called Kerning and it can be positive or negative. The keyboard command is Alt + Left / Right.

The technique is as follows: You place the text in edit mode while it is on the Curve, then navigate with left / right to the spaces between the Numerals, then to increase spacing you do Alt+Right, and decrease space Alt+Left.

In the End it may look something like this. (which I still think looks wonky)

Consider using a background image to help decide where on the perimeter to place these numerals. It's not trivial to get comfortable spacing (but you can copy from the masters).

Problems with this method

I still have issues with this because the Curve is also applied between individual characters of the Numeral. You may or may not have an issue with that, but many clocks don't use that kind of Text On Curve aligning.

What I would do.

I'd do it with Sverchok (full disclosure, I coded some of Sverchok and wrote the Typography / Type Draw node):

For the Sverchok file here's a .blend of that node setup.

or

Add a Circle of the desired size. (with 12 vertices)
Add One Text Object
Give the Text Object the Center Align
Make the Circle the parent of the Text Object
Set Duplication in the Circle to Vertices and tick the Rotation box

You might get something like this:

with the Parent object (Circle) selected, press ctrl + shift + A to make the Duplicates Real.

Still with the Parent Object (Circle) selected press U to get the Make Single User menu , choose Objects & Data from this list. Now you can edit the Numerals individually :)


Mesh shrinks when trying to bend after rigging? I am a beginner at Blender and was following a tutorial that showed how to create a character with a rig and animate it. However, I have come across a problem I can't seem to fix. When I bend the arm for a running pose, the mesh at the elbow looses its volume. I have posted a screenshot below to show the problem.

Blend File: https://www.dropbox.com/s/kui3d18refgecde/charbendingsolutiontry.blend?dl=0

You have to play with weight paint to find the right weight.

When your intention is a like organic mesh, you have to make it as square as possible. this will make the deformations look smoother.

See the image below.


How does the bend tool work? How does the bend tool (⇧ ShiftW) work? I couldn't find any mention of it in the wiki or in the new documentation.

When I tried to use it, I failed:

It seems to use 3D cursor position, as well as the angle and distance from the mouse cursor.

What do the Radius and Bend Angle do? How do they affect the result?

What is an example use-case of this tool in action?

The Bend Tool rotates around the 3D cursor and bends the selected parts of a mesh toward the mouse cursor position.

The tool is explained in this video.

Start position (white cross indicates position of mouse cursor)

End position and effect:

For predictable results use the bend tool in the orthographic modes.

Start position with 3D cursor at center:

Similar result:

Related:

Which tool allows bending a mesh?


Origin point different in editmode / objectmode Edited due to comment by Serge L.

I'm following a tutorial to make a worm shaft - https://www.youtube.com/watch?v=OVTOSOKpx6I

In objectmode my object has it's origin set to the 3D cursor, which is 30cm to left on the x axis. If I rotate on Y, it rotates around the 3D cursor point - which is what I expect/want.

When switching to editmode however, a 3D manipulator jumps into the object like this...

So if I try to rotate the mesh on Y, it just rotates around on it's own axis, instead of using the origin from the object/3D cursor.

If I search Manipulator 3D - I can turn it off, but the object still ignores the origin set for the object, and rotates around its own center.

As said in the comments by Serge L and Mr Zak, if you want the vertices to rotate around the origin in edit mode, you have to set the cursor to the origin (Shift+S cursor to selected, if the object is selected) and then set the cursor as pivot point, so that every rotation and scaling will use the cursor location as pivot point.

Turning on or off the manipulators is only a visual utility, which doesn't affect the rotation behaviours.

The logic behind this is the fact that the default pivot point is the median point: in object mode you have only one object selected so the median point (pivot point) is the object origin. In edit mode you select all vertices of the mesh, and the middle point will be a location which will have the average coordinates of all vertices, and this (often empty) location will act as pivot point.


Force Logs to appear in Info View when chaining operator calls Use case : Attempting to create a Logger Utility Operator to allow logging to the Info View.

If I have an operator and call it via the UI, using the report() function, the output will appear in the Info View.

When I create another operator to call the first, the report() function doesn't output to the Info View.

Is there anyway to have this work with or an alternative method to report?

I have included sample code.
- A base operator that calls report() with a provided logging level and message.
- A Forwarding operator which calls the base operator.
- UI panel in the scene tab, allow execution of the the two operators.

'''Test Info reporting'''

import bpy
from bpy.props import StringProperty, IntProperty

class LoggingOperator(bpy.types.Operator):
    """Log a message to the Info View"""
    bl_idname = "info.log"
    bl_label = "Direct Log message -> Info View"
    bl_options = {'INTERNAL'}

    lookup = ['DEBUG', 'INFO', 'WARNING', 'ERROR']
    level = bpy.props.IntProperty(name="Level", default=1)
    message = bpy.props.StringProperty(name="Message", default="Reporting : Base message")

    def execute(self, context):
        print("Base operator called")
        log = {self.lookup[self.level]}
        self.report(log, self.message)
        return {'FINISHED'}

class ForwardLoggingOperator(bpy.types.Operator):
    """Call an operator that logs stuff"""
    bl_idname = "info.log_1"
    bl_label = "Indirect Log > Calls Operator"
    bl_options = {'INTERNAL'}

    def execute(self, context):
        print("Forwarding Operator called")
        bpy.ops.info.log(level=1, message="Forward : Redirected message")
        return {'FINISHED'}

class ScenePanel(bpy.types.Panel):
    bl_label = "Test Scene Panel"

    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "scene"

    @classmethod
    def poll(cls, context):
        return True

    def draw(self, context):
        layout = self.layout
        row = layout.column()
        row.operator("info.log")
        row.operator("info.log_1")

bpy.utils.register_class(LoggingOperator)
bpy.utils.register_class(ForwardLoggingOperator)
bpy.utils.register_class(ScenePanel)

You may want to fake the report banner by creating your own and appending it to the Info_header, while having a timer operator manage it ( show and hide, set the message ) as in the following example :

import bpy
from bpy.props import StringProperty, IntProperty

#properties to pass and store the message
bpy.types.Scene.message = bpy.props.StringProperty()
bpy.types.Scene.icon    = bpy.props.StringProperty()

#fake report banner
def report(self, context):
    self.layout.label(text=context.scene.message, icon=context.scene.icon, icon_value=0)

#timer modal operator
class LoggingOperator(bpy.types.Operator):
    """Log a message to the Info View"""
    bl_idname = "info.log"
    bl_label = "Direct Log message -> Info View"

    _timer = None
    lookup = ['DEBUG', 'INFO', 'WARNING', 'ERROR']
    level = bpy.props.IntProperty(name="Level", default=1)
    message = bpy.props.StringProperty(name="Message", default="Reporting : Base message")

    def modal(self, context, event):
        if event.type == 'TIMER':
            self.cancel(context)
            return {'FINISHED'}
        return {'PASS_THROUGH'}

    def execute(self, context):
        wm = context.window_manager
        self._timer = wm.event_timer_add(2, context.window)
        wm.modal_handler_add(self)

        context.scene.icon = self.lookup[self.level]
        context.scene.message = self.message
        bpy.types.INFO_HT_header.append(report)
        bpy.ops.wm.redraw_timer(type='DRAW_WIN_SWAP', iterations=1) #force UI redraw
        return {'RUNNING_MODAL'}

    def cancel(self, context):
        wm = context.window_manager
        wm.event_timer_remove(self._timer)
        bpy.types.INFO_HT_header.remove(report)
        bpy.ops.wm.redraw_timer(type='DRAW_WIN_SWAP', iterations=1) #force UI redraw

class ForwardLoggingOperator(bpy.types.Operator):
    """Call an operator that logs stuff"""
    bl_idname = "info.log_1"
    bl_label = "Indirect Log > Calls Operator"
    bl_options = {'INTERNAL'}

    def execute(self, context):
        print("Forwarding Operator called")
        bpy.ops.info.log(level=1, message="Forward : Redirected message")
        print(context.active_operator )
        return {'FINISHED'}

class ScenePanel(bpy.types.Panel):
    bl_label = "Test Scene Panel"

    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "scene"

    @classmethod
    def poll(cls, context):
        return True

    def draw(self, context):
        layout = self.layout
        row = layout.column()
        layout.template_reports_banner()
        row.operator("info.log")
        row.operator("info.log_1")

bpy.utils.register_class(LoggingOperator)
bpy.utils.register_class(ForwardLoggingOperator)
bpy.utils.register_class(ScenePanel)


volume scatter is overexposing my scene i tried to add the volume scatter to my scene which looks like this

when i render it without the volume scatter i get this view

but as soon as i activate the world node and volume scatter i get this result, an extremely over exposed image

and those are my world settings

I reduced the Density to 0.001 and it got way better, but i still don't know why ?

Think of Volume scatter like smoke or dust (or murky water). If it gets too dense then you can't see through it.

Here's the same scene with different density values.

The effects of volume scattering will be more pronounced in objects that are further away, so the distance from the camera to the objects is also a factor to be considered.

Lights might not be seem bright when having to travel through volume scattering, so be prepared to use very large values for their intensity.

All lights on your scene will bounce on the volume. If you have any lights close to the camera those will tend to wash away anything else in the image (as when you drive through fog where the car lights will bounce right back):

the same scene, but with a light behind the camera:

There is no "right" or "magic" number that will work for each and evry scene, you'll have to find the one that gets you closer to what you are after...

Other considerations:

Rendering scenes with volume scattering will always result in noisier images. You'll have to increase the number of samples, which will have an impact on rendering time as well. You'll see more fireflies, created by the indirect bounces, to control use clamp indirect (a value of 3.00 is a good start point).  On the light paths bring up the bounces for volume. A smaller step size for Heterogenous volume sample helps a lot (but will increase rendering time as well).


Refresh Viewer Node's image data when pass index of ID Mask node has changed in python I followed the answer of this question in order to get a bounding box of visible area of an object in a rendered image. Since I have multiple objects that I add in the scene dynamically through script, and assign each of them a different pass_index, I use the following function (again, adapted from here) to get the bounding box of each object:

def getVisibleBoundingBox(objectPassIndex):

    S = bpy.context.scene
    width  = int( S.render.resolution_x * S.render.resolution_percentage / 100 )
    height = int( S.render.resolution_y * S.render.resolution_percentage / 100 )
    depth  = 4
    #set the index to the object's pass index
    bpy.context.scene.node_tree.nodes['ID Mask'].index = objectPassIndex

    #render.render is very slow, try to find alternative to update the Viewer Node
    #bpy.ops.render.render()

    pixels = np.array( bpy.data.images['Viewer Node'].pixels[:] ).reshape( [height, width, depth] )
    # Keep only one value for each pixel (white pixels have 1 in all RGBA channels anyway), thus converting the image to black and white
    pixels = np.array( [ [ pixel[0] for pixel in row ] for row in pixels ] )

    bbox = np.argwhere( pixels )
    (ystart, xstart), (ystop, xstop) = bbox.min(0), bbox.max(0) + 1
    return xstart, xstop, height - ystart, height - ystop

The problem is that the Viewer Node image data does not update when I change the index of the ID Mask node with:

 bpy.context.scene.node_tree.nodes['ID Mask'].index = objectPassIndex

and it contains stale data from another object's pass index, so I get the same result all the time for different objectPassIndex when I try to take the pixels with:

pixels = np.array( [ [ pixel[0] for pixel in row ] for row in pixels ] )

This is not the case if I change the pass index in the GUI, where the Viewer node updates immediately. A workaround I found is to call bpy.ops.render.render() after changing the index and before taking the pixels, however, this operation is very slow and therefore not applicable for my use case. I also tried calling bpy.data.images['Viewer Node'].reload() without success.

So, the question is, is there a faster way to refresh the data of the Viewer node?

If not, another alternative that might work for me is to get a combined image containing in each pixel the pass_index of the particular object. I noticed that this image can be generated in the GUI by rendering and selecting the pass to IndexOB (image attached). But I do not know if it is possible to change the pass to IndexOB from python and grab the rendered image.

So the alternative question is if there is a way to get access to the pixels of this image in python?

The answer to this question is the answer to the alternative question: "How to get the image where all pixel values are set to the pass_index of the particular object". Instead of using "ID Mask" node, the IndexOB output of "Render Layers" node can be connected directly to the Image input of "Viewer" node. Then the function can be modified like this to get the bounding box for particular objectPassIndex:

def getVisibleBoundingBox(objectPassIndex):

    S = bpy.context.scene
    width  = int( S.render.resolution_x * S.render.resolution_percentage / 100 )
    height = int( S.render.resolution_y * S.render.resolution_percentage / 100 )
    depth  = 4

    pixels = np.array( bpy.data.images['Viewer Node'].pixels[:] ).reshape( [height, width, depth] )
    # Keep only one value for each pixel (white pixels have 1 in all RGBA channels anyway), thus converting the image to black and white
    pixels = np.array( [ [ pixel[0] for pixel in row ] for row in pixels ] )

    bbox = np.argwhere( pixels == objectPassIndex )
    (ystart, xstart), (ystop, xstop) = bbox.min(0), bbox.max(0) + 1
    return xstart, xstop, height - ystart, height - ystop


Mask image loaded in UV Editing window doesn't show up under Gaussian Blur modifier mask source in Video Editing tab Basically the title. I've been loosely following a YouTube tutorial where the mask was created within Blender if it makes a difference. The mask was created in a separate image editing program and is a PNG image. Here's the UV Editing window if it helps:
And here's what I see when trying to use it as a mask:

Any help on how to get this mask image to show up in my modifiers pane would be greatly appreciated!

You have opened the UV editor window

Open image editor window, shortcut Shift + F10
At around top there should be written something View(next to Image Editor button), click it and change it to Mask
You can then create a mask by clicking +     New button.


Animation plays too slow for 24 fps I'm not sure why the left one plays too slow compare to the right, both are 24fps. (clip)

Maybe you can check what's going on, you can download it here.

If a model or its animation is too complex (usually too many vertices, subdivisions or moving parts), the computer struggles to show you the changes in real time. Although its 24fps, your computer is only able to process a fraction of those frames in that second. So instead of showing 24 frames in one second, it takes more time, say 5 seconds, to show you the same 24 frames.And this makes it look slow.In your case left is more complex mesh+animation than the right. You can see this from the fps number in your viewport (marked in red boxes).

Inorder to reduce the burden on the computer and show you a much better representation of your animation, you can do the following.

1) Disable the subdivisions for viewport. This reduces the burden on the computer as it doesn't have to show you all the extra smoothing geometry in viewport. You can do this  by disabling the eye icon in modifiers.

2) In the timeline, change the sync mode to 'frame dropping'. When you do this, instead of computing 24 frames each second, the computer might skip frames if it needs to but shows you a smoother animation.

This is just to help you see the animation better or realtime in viewport. While rendering, you still get the 24 frames.


new object or more geometry for detail? So when modeling, sometimes I add so many random edge loops to tighten up subdivision that the topology just ends up looking ugly. These random edge loops come from creating detail (such as a fin on a dolphin or a wing on a plane). What is the recommended way to deal with things like this? Is it better to simply add more edge loops/geometry to fit this extra detail in? Or is it better to create a brand new object/mesh/shape and append that to the current geometry?

This is really a personal preference thing. I personally dislike appending objects because it often ruins the loops of the mesh. The ugliness of the mesh is fixable by point manipulation. you can drag the points to move them into places that look better. another thing that might help with that is the "adjust cage to modifier result" Basically it makes the lines appear as if they are actually on the subdivided mesh, making point manipulation a lot easier to visualize. I used this when making a face model, it saved me a ton of time.


How to turn curve into mesh? I created a "path" curve and add geometry using "Bevel object". How to turn this object into a simple mesh?

I found it!

AltC Mesh from Curve/Meta/Surf/Text


Blending bone weights This question is related with another one, posted few days ago, dealing with Shoulder deformation.

As the gif shows, to create a natural rotation of the upper arm the twisting has to be distributed in the upper arm and not only in the shoulder joint.
My doubt deals with this sentence: I clearly understand the logic behind, but I can't realize it in blender. I'm trying to find information about "blending bone weights" but until now I haven't found anything.

Each bone in an armature deforms only a part of the mesh - so each vertex of the mesh has to know how much each bone influences it. They are just vertex groups with the names of the bones, but are called bone weights because of what they represent:

They are created automatically when binding (Set Parent CtrlP) the mesh to the armature with automatic bone weights:

The vertex groups will be generated only for bones that have Deform enabled in their properties. If you later add bones to the armature you can re-generate the groups again with binding the mesh again with the same parenting action.

But usually you can get better deformation if you edit the weights manually. That's done in Weight Paint mode. You can view the bone weights and paint them with brushes - and thus control precisely what and how each bone deforms:

You can select them from the vertex groups list or better select some bone in pose mode, then shift-select the mesh and go into Weight Paint mode. You will see the weight group for that bone. You can also move, rotate and scale the bone with G,R and S keys to see how it deforms while you are painting. You can also select a different bone without leaving Weight Paint mode with ctrl-selecting another bone.

There are also tools to specifically help with weight-painting under the Weight tools in the Tool Shelf.

The Weight Gradient tool is very good for making linear weigh transitions - to linearly blend the influence between two bones, something that will make nice weights for the twisting if you wouldn't be happy with the automatic weights.


3D manipulators unselectable while "Lock to Cursor" is turned on. After updating to 2.79 my 3D manipulators started to behave weirdly. I'm not able to select them, because pivot appears in the clicked position. Only when I turn "Lock to Cursor" off, manipulators seem to work again.

When I start a new project (without even rotating the view), 3D manipulators with "Lock to Cursor" enabled are selectable, but they bevahe oddly, like rotating in wrong direction etc.

Before 2.79 I was able to operate manipulators with "Lock to Curosr" turned on without any trouble. Now I can't work fast because I must switch "Lock to Cursor" again and again just to move around my project.

Can somebody help me, please?

I contacted Blender team and was notified that a fix was found :
https://developer.blender.org/T53850

Hope this help =)


How do I use emission, without my object's shape getting lost in the emission? Not sure if that was the best way to describe it, but I am trying to use emission on a certain object shape but I still want to be able to see the objects shape. I am assuming because the emission is all the same brightness and color, that this is why I can't see the objects shape.
Is there a certain node set up or process I can do besides manually changing several planes to a different emission or material?

You could try with Ambient Occlusion and a color ramp.


Avoid rendering hidden objects (blender 2.8) Is there a way to stop blender from rendering hidden objects (that do not show in the rendered view)?

In the Outliner you can toggle visibility and renderability of objects.
Click on the funnel icon on the top right and enable different filters.
The Eye icon determines visibility in the 3d viewport.
The Monitor icon disables the object in all viewports.
The Camera icon determines if the object is rendered or not.

Read: https://docs.blender.org/manual/en/latest/editors/outliner/interface.html

Alternatively
The visibility of an object can also be set in the Visibility controls Object Properties.


How to get "Add Modifiers" panel as enum value? I need all modifiers list as my custom enum value,
i only know to write this by hand, here for example:
tp_mod = bpy.props.EnumProperty(
    name= "Slect by type",
    items=(
        ('SUBSURF', "Subdivision", ""),
        ('BEVEL', "Bevel", ""),
        ('MIRROR', "Mirror", ""),
        #AND SO ON..
        ),
    default='SUBSURF'
    )

is there anyway the best way to get all modifier as a enum value?
in other word how to make "Add Modifiers" panel as template for enum ?

All available via blenders rna.
The type property of the modifier is an enum, can look up its definition via blenders "rna" system on the class, in this case bpy.types.Modifier.bl_rna
import bpy
from bpy.types import Modifier

for item in Modifier.bl_rna.properties['type'].enum_items:
    print(item.identifier, item.name, item.description, item.icon)

output.
DATA_TRANSFER Data Transfer Transfer several types of data (vertex groups, UV maps, vertex colors, custom normals) from one mesh to another MOD_DATA_TRANSFER
MESH_CACHE Mesh Cache Deform the mesh using an external frame-by-frame vertex transform cache MOD_MESHDEFORM
MESH_SEQUENCE_CACHE Mesh Sequence Cache Deform the mesh or curve using an external mesh cache in Alembic format MOD_MESHDEFORM
NORMAL_EDIT Normal Edit Modify the direction of the surface normals MOD_NORMALEDIT
WEIGHTED_NORMAL Weighted Normal Modify the direction of the surface normals using a weighting method MOD_NORMALEDIT
UV_PROJECT UV Project Project the UV map coordinates from the negative Z axis of another object MOD_UVPROJECT
UV_WARP UV Warp Transform the UV map using the difference between two objects MOD_UVPROJECT
VERTEX_WEIGHT_EDIT Vertex Weight Edit Modify of the weights of a vertex group MOD_VERTEX_WEIGHT
VERTEX_WEIGHT_MIX Vertex Weight Mix Mix the weights of two vertex groups MOD_VERTEX_WEIGHT
VERTEX_WEIGHT_PROXIMITY Vertex Weight Proximity Set the vertex group weights based on the distance to another target object MOD_VERTEX_WEIGHT
ARRAY Array Create copies of the shape with offsets MOD_ARRAY
BEVEL Bevel Generate sloped corners by adding geometry to the mesh's edges or vertices MOD_BEVEL
BOOLEAN Boolean Use another shape to cut, combine or perform a difference operation MOD_BOOLEAN
BUILD Build Cause the faces of the mesh object to appear or disappear one after the other over time MOD_BUILD
DECIMATE Decimate Reduce the geometry density MOD_DECIM

etc, etc

Example of using math node type enum to create operator. How to get custom menu items show up in the search bar?


Changing value of shapekeys keyblocks with a specific name for all objects inside a Blender collection This is my code right now:

import bpy

for k in bpy.data.shape_keys.keys() :
    bpy.data.shape_keys[k].key_blocks["Opened"].value = 0

It change the value of all shapekeys keyblocks with the name "Opened" to 0. I do that because I model a bag and I want 2 versions of it, opened and closed, for rendering. The problem is the I don't want to change the shapekeys in other scenes, and with this current code that's what's happening. I need a way to access shape_keys keyblocks that are only applied to the objects in the collection of my choice. How may I do that?

Get the collection by its name and loop over mesh objects (or others that have shape keys) in it to reach their shape keys.

import bpy

collection_name = "Collection"

collection = bpy.data.collections.get( collection_name )

if collection:
    for obj in [o for o in collection.objects if o.type == 'MESH']:
        key_block = obj.data.shape_keys.key_blocks.get( "Opened" )
        if key_block:
            key_block.value = 0


How to render a mesh transparent with a color on its edges only, with nodes? I would like to have my object transparent, with a color only on the edges, would someone know how to do this? I am starting with the nodes, if anyone can help with some guidelines I would really appreciate ;-)

EDIT:

I was looking for something like the hand in Kinectimals :

Thanks

EDIT:

Here's an example using layer weight/fresnel to control the transparency:

So how does it work?

The Fresnel value on the Layer Weight controls the mix of emission and transparency.

But you can see right through the mesh at the back side of the object. So you need to limit the rendering to only the part of the geometry first seen by the camera, and make the back faces transparent. That's what the Light path node and Transparent depth is for.


Saving GIMP's Alpha Color values in Blender In Blender when rendering with Transparent background and saving transparency with .png file, is it possible to save the png with GIMP's option:

Save color values from transparent pixels ?

How to achieve Alpha 1 transparency with Blender compositor?

PNG is an unassociated alpha image format, while Blender, as any other 3D renderer produce associated (often called premultiplied) alpha images.
To produce an unassociated alpha image using the compositor, you have to "pre-divide" the alpha channel and connect the unassociated RGB to the composite output and the alpha socket of the same node.
You can unassociate the alpha channel using an Alpha convert node (using the "premul to straight" mode) or just divide the rendered image by its alpha with a mix node (divide mode).

That's the correct way to save unassociated from Blender if it has to be predivided manually for any reason, otherwise Blender does the predivision automatically when PNG is selected as output (and in that case it's not necessary to manually connect alpha to the output).

PNG will always save the RGB information of transparent pixels because it is an unassociated alpha format.
However, producing an unassociated alpha image from an associated image is a destructive process, because it has to be divided (and alpha zero pixels are discarded).
Saving an associated image as PNG is not allowed by the format, so it's important to keep in mind that any hack used to produce a PNG as described by the OP will produce an invalid image that is likely to produce edge artifacts when composited.

It is strongly advised to respect the alpha association dictated by the format and avoid this kind of hacks if PNG has to be used.


Cycles Bake yeilding bizarre textures and wrong colors- any ideas? I've created a building for export and use in a game engine. Here's a picture of the building in the Materials Viewer of the Viewport.  This is what I'd like it to look like once I've successfully baked the textures.

I am baking the textures into a single image file by UV Unwrapping the model, creating a new texure, and placing the image texture in each material node. Picture is below (new image texture connected to final UV map is at the top of the node viewer):

After Diffuse Baking (I'm not needing shadows and I'll do the Normal map later), I'm left with this texture:

I know it's hard to tell how bad this looks, so here's an idea of what this looks like once it's pasted on the exported object. By clicking on different faces, I can see in the UV Editor how many spots aren't rendering in the correct color (the green windows for example, largely come out tan on the baked texture.  Many faces of the red-roofed staircase on the end have a combination of red and tan textures on it).

I am rather new to Blender, but I don't even know where to start with troubleshooting this.  What am I doing wrong? I would be glad to upload the .blend file if someone can provide instructions. Thanks!

You've probably moved on by now, but for anyone with the same question, I had a similar issue just yesterday. I never quite figured out why exactly it was happening, but I eventually got the problem to go away by cleaning up my mesh. This included

adding and connecting some vertices to break up some large planes getting stretched at weird angles
dissolving unnecessary edges and vertices
deleting entire planes that were not going to be visible in the render
separating a part that I had awkwardly extruded and probably had some weird relationships with other vertices.


No flame in Blender Render I am creating a simple animation with flame. I followed a tutorial and flame appears in viewport but is not present when creating an animation or image. I am using Blender Render (not Cycles and GPU which seems to be a common problem). What seems to be my issue?

The problem is with mapping the domain materials textures, this is how it should be:

Set both your Smoke and Fire textures like this. The domain object is Cube.003 and not Icosphere and the mapping is Generated.


Is there a way to make layers for textures? I want to make hair for my cuboid character, I will be making multiple of these cuboid character and I would like to be able to reuse the hair as it would be a bit of a hassle to have it to redraw it every time or have to crop it out every time I make new hair.

Final & Overview:

If you want to have an easy process you should have proper UV Mapping for your object and two textures.

Cuboid texture - It could be anything you want.

Hair texture - Should be painted on transparent background.

When you have both of them you can Mix them trough Inverted Alpha Channel from your Hair texture.

Blend file:

Edit:

To switch between textures in Texture Paint mode go to Slots tab and select desired texture. Always save them after painting and don't forget to save image file (or pack it) in UV Image Editor.


How to add skytexture to viewport background? I have a skytexture set up. How do I make this the viewport background?

I use Blender 2.72 and cycles.

As of 2.73, you can do this by enabling World Background in 3D view > Properties panel (N) > Display:


Unexpected rotation when exporting .fbx for Unity I have had no problems exporting .fbx files for Unity except recently some of my .fbx started to rotate the mesh. The asset is correctly oriented, but the mesh is rotated 90 degrees. Is there an explanation and fix for why this happens sometimes, and works properly otherwise?

That is because Blender uses +Z as a up direction whiles Unity uses +Y (most other 3D packages do so). So when exporting your file make sure you have pressed:

PS: I am not sure about the forward, you might have to try both -Z and +Z as I am not sure of Unity.


Shade Smooth and Auto-Smooth problem when combining objects So I'm making a catapult and I need all the parts of the arm joined together so when I animate it, they all move together.

The problem is when I join up the parts of the basket and arms in the front together, the shading gets messed up because the arms are shaded smooth with auto-smoothing and the chain link has been shaded smooth without auto-smoothing isn't. Refer to images below.

How do I make it so that both the chain and the arms retain their individual smoothing settings or combine them in such a way that both look good?

Solution 01
Smooth/flat shading is applied per face, not per object.
So just change it for individual faces of your mesh.

Here is an example of a chain.
It's one object, consisting of multiple meshes, like in your case.

Select only one mesh.
Click a face and then Select->Select Linked->Linked

Apply shading only to these faces.
Mesh->Shading->Smooth faces

You're done.
Different parts of your object are now shaded differently.

Solution 02
Play with the Auto-smooth angle.
Auto-smooth is applied per the whole object, but you can adjust what edges are considered smooth.

Solution 02.1
(thanks to Robin Betts)
Mark some edges as sharp.
They will then be shaded flat, no matter what the angle is.
Edge->Mark Sharp.


Chain of Hinges Physics I am trying to model a series of meshes that are connected by hinge points. The idea is that, with some sort of sideways force applied to the first mesh in the chain, the other meshes in the chain will move around and swing on their hinges. Kind of like a toy wooden snake:

The closest I have gotten so far is by placing cubes underneath the location of each hinge point, setting them as 'Passive', and then using them as the hinge for the meshes on each side of the hinge. However this limits the movement of all of the middle meshes a lot (because they are locked by a hinge on each side) and only the first and last meshes move how I want.

Basically I need a method so that the hinge joints can swing about while also causing their own rotations. Does anyone have any advice?

I have failed to give the rigid body enough accuracy for this kind of shape :

So the idea was to use an intermediate simple object : a cube.

The chain is composed with constraints and parenting.

The parenting :

Each element of the chain is parented to a cube and each empty is parented to the previous (to the right) cube.

Constraints :

Each empty is a hinge constraint connecting the previous and next cube. Don't forget to orientate each empty with the Z along the rotation axis.


Unwanted Lines when rendering using GPU and OpenCL (RX 580) I'm new to blender and have been studying and starting with low poly modeling. Recently I changed my GPU from a GTX 960 to an RX 580. I uninstalled the drivers and installed new ones using DDU.

Problem: Rendering using OpenCL produces these unwanted lines. The attached image is a product of CPU + GPU render then the GPU only render, respectively. When I render using only the CPU the results are as expected, no unwanted black vertical lines, using only the GPU adds more lines on the image.

Any help is appreciated, thank you!

Seems to be a bug in version 2.83.

https://developer.blender.org/T77095


How to Fix Weird Crease in Character Model I've been working on this character for many hours, but just noticed there's a weird crease down her back. I've subdivided far too much to be able to just grab the edges and shrink it, does anyone know how I would fix this? I'm very new to blender, but I tried sculpting, and I can't really get rid of it without wrecking the surroundings.
As you can see in the picture, there's also some weirdness on the upper back and the butt I'd like to fix as well, but then again the character will not be naked so the butt's a nonfactor haha.

Some vertices of your mesh are going over the Y axis. Just a bit, but enough to cause a crease.

Select your whole edge
Scale it to 0 along the X axis (so it's flat)
Move it precisely to the Y axis.

(This is the fast solution, you can of course move the vertices one by one.)


Manipulating attributes of NurbsPath I am trying to manipulate the property bevel_factor_start of a NURBS Curve. The following Python code works as expected.

bpy.data.curves['NurbsPath'].bevel_factor_start = .5

Is there a AN node that can be used to set this property?

Thanks!

I found the Curve Object Output node has several hidden inputs including Bevel Start and Bevel End. Nice Work!


UV map / model turned black on saving - how to recover? In the middle of touching up a new texture, I pressed save and suddenly my textures all turned black on the model and UV texture - just vanished.

I tried reopening the file in another instance of Blender, I tried to CtrlZ too and it just did this weird patchy thing on my texture.

How do I recover it and what did I do wrong?

This is a known limitation, currently images are not saved with the rest of the .blend file. This means that reloading the .blend or even undoing in some modes will cause unsaved changes to textures to be lost (Global undo works by reloading an older version of the .blend).
To save your images, press F3 to save it to your hard drive, and AltS to save changes to an existing image on your hard drive. Or press Image editor > Header > Image > Pack to embed it in the .blend, and press Pack again to save changes to an embedded file:

You can tell when your image has unsaved changes because there is a asterisk after the image menu in the header:

As GiantCowFilms mentioned, there is a patch which adds autosave functionality for images. It has not currently been decided whether it should be included or not:

Note, I'd like to have some better way to do this then simply adding another option, it seems a but weak and doesn't really fit into painting workflow.
But doing this by default is a bit risky too.


Issue with Subdivide in 2.5 Having to use 2.5 for reasons I won't go into, I'm having an issue with subdivide affecting other unselected faces.  I wasn't having this issue before so I'm not sure what caused it to pop up.  Image:

I only want to subdivide the selected surface, not the others.  I'm not sure why it's cutting them into triangles, either.  Any tips?

2.5 can't handle N-gons

Subdividing a single face implies that each edge of its boundary is getting new edges and vertices too. This means that the faces in the neighborhood are increasing their edge count.

If the subdivision process brings the faces to have a number of edges, like in your case, greater than 4, you are creating an ngon.

N-gons has been supported only since 2.63 (see Release notes).
 Before that version only quads and triangles were handled. That's why you see the subdivision.


Scripting help for Audio Visualizer Tutorial So I was watching a tutorial and following along with how to make this audio visualizer:
http://cgcookie.com/archive/building-an-audio-visualizer-in-python/

This is what the portion of the script in the video that I am having problems with looks like. It's on line 32:

This is my entire script so far (Up to the point in the video shown in the picture):

import bpy

rows = 5
columns = 5

r = 0
c = 0

for i in range(0, rows*columns):
    if c == columns:
        r += 1
        c = 0

bpy.ops.mesh.primitive_cube_add(location =(r*2, c*2, 0))
bpy.context.scene.cursor_location = bpy.context.active_object.location
bpy.context.scene.cursor_location.z -= 1
bpy.ops.object.origin_set(type='ORIGIN_CURSOR')
####
bpy.context.active_object.scale.x = 0.5
bpy.context.active_object.scale.y = 0.5
bpy.context.active_object.scale.z = 5
bpy.ops.object.transform_apply(scale=True)

bpy.ops.anim.keyframe_insert_menu(type ='Scaling')
bpy.context.active_object.animation_data.action.fcurves[0],lock = true
bpy.context.active_object.animation_data.action.fcurves[1],lock = true

bpy.context.area.type = 'GRAPH_EDITOR'

step = 20000/ (rows*columns)
bpy.ops.graph.sound_bake(filepath="/Users/USER/Desktop/14 Federation.m4a", low=i*step, high=i*step + step)

bpy.context.active_object.animation_data.action.fcurves[2],lock = true

c += 1

I can see that in the video the part with step = 20000 and the part with bpy.ops.graph.sound_bake(...) are on the same line, but when I do that, it gives me syntax errors.

As of now, this script tells me that it has failed and then tells me to look in the python console. In addition, it only creates one of the cubes that the script is supposed to make a 5x5 grid of. It also unlocks all of the scale parameters and changes nothing for the graph editor for the one cube that it creates.

Strangely enough, removing the entire portion starting with bpy.context.area.type = 'GRAPH_EDITOR' to bpy.context.active_object.animation_data... causes the full grid of 25 cubes to appear.

It is only creating one cube because your for loop is wrong.  In python the indentation is very important.  Note that in the code below, all functions for object creation have been indented to become part of the for loop, so that it is run 25 times, rather than once.

for i in range(0, rows*columns):
    if c == columns:
        r += 1
        c = 0

    bpy.ops.mesh.primitive_cube_add(location =(r*2, c*2, 0))
    c += 1
    bpy.context.scene.cursor_location = bpy.context.active_object.location
    bpy.context.scene.cursor_location.z -= 1
    bpy.ops.object.origin_set(type='ORIGIN_CURSOR')
####
    bpy.context.active_object.scale.x = 0.5
    bpy.context.active_object.scale.y = 0.5
    bpy.context.active_object.scale.z = 5
    bpy.ops.object.transform_apply(scale=True)

    bpy.ops.anim.keyframe_insert_menu(type ='Scaling')
    bpy.context.active_object.animation_data.action.fcurves[0].lock = True
    bpy.context.active_object.animation_data.action.fcurves[1].lock = True

The other errors were since you used bpy.context.active_object.animation_data.action.fcurves[0],lock = True instead of bpy.context.active_object.animation_data.action.fcurves[0].lock = True.  That should be it, just pay very close attention to detail when copying code.  It's helpful if you can find tutorials that include working code, and then modify it yourself, that way you know what changes break it.


How to create a semi transparent plastic shader? I'd like to create a semi transparent plastic cycles material to match the material from this reference:

My current node setup

First rendering

Any suggestion or help on that topic, what's missing and what I should add to get that plastic material look is appreciated. Thanks.

There are elements of Refraction, Glossy, and Subsurface scattering in there so how about something like this :

This produces the following :

Vary the Mix factors, roughness and Subsurface scale to get the desired effect. Don't forget to have something in the scene to reflect/refract - eg, world environment texture and/or patterned surface, and suitable lighting, etc. Also, bevel any edges and ensure to add thickness.


Create missing point of a rectangle from right-angled triangle Assume you have 3 connected vertices, which form a right-angled triangle. Is there any easy way to fill in the 4th point to make it a square? I usually copy the corresponding coordinates, when the triangle is axis aligned. But that is a rather slow workflow.

Edit mode script.

Select face in face select mode and run script.
Finds longest edge (hypotenuse) doesn't test for right angle.
Creates a new vertex at location of other vert.
Rotates it 180 degrees about the hypotenuse.
Creates a new face from new vert and hypotenuse edge.
Uncomment (remove #) from #bmesh.ops.dissolve_edges(bm,
edges=[le]) to dissolve the hypotenuse edge, if you want the
resultant quad.

import bpy
import bmesh
from mathutils import Matrix
from math import pi

context = bpy.context
ob = context.edit_object
me = ob.data

bm = bmesh.from_edit_mesh(me)

f = bm.select_history.active
if isinstance(f, bmesh.types.BMFace) and len(f.verts) == 3:
    # longest edge
    le = sorted(f.edges, key=lambda e: e.calc_length()).pop()
    v = (set(f.verts) - set(le.verts)).pop()
    nv = bm.verts.new(v.co)
    bmesh.ops.rotate(bm,
            cent=le.verts[0].co,
            matrix=Matrix.Rotation(pi, 3, le.verts[0].co - le.verts[1].co),
            verts = [nv],
            )
    bm.faces.new([nv] + le.verts[:]).select = True
    #bmesh.ops.dissolve_edges(bm, edges=[le])
    bm.normal_update()
    bmesh.update_edit_mesh(me)


How to fix an animation project from overuse of particles I am working on an animation and I have a scene where I needed to have one character blow snow at another character.  I tried using a particle system to do this, but I  made so many them blender became unresponsive.
I managed to deal with it at first, and when I was done with the work for a while I closed the animation and quit blender.  However, now when I try to open it it won't respond at all. How do i fix this?
I tried using the recover button but unfortunately it saved the blend file that was broken.

I'm not sure about it, but is your cache file still in place
(can you move it somewhere else), maybe computer has a problem loading a huge cache file.

Another way of rescuing might be to create a new blend and import stuff from the other blend file that you like to rescue, if the file is really broken I'm afraid there are not many options left.


Exporting obj file with separate parts I'm using Blender to create a four-room Basement set for use in DAZ Studio. I have the basic architecture finished: floor, walls, ceiling, and stairwell. In DAZ Studio, I need to import this as a Figure with each object as a separate bone, so users can hide parts of the set while setting up scenes. Here is a screenshot of my Blender scene:

Alas, when I export this as an obj file and import it in DAZ Studio -- that is, adding the obj file as geometry to the DAZ Figure Setup window -- the set came in as a single object with no component parts that I could set as bones. How do I export an obj file with component parts that I can set as bones in DAZ Studio?

Thank you :-)

UPDATE: I realized that I had assigned each object to a group (in the Properties>Object panel) but not to a vertex group (in the Properties>Data panel). So I deleted the groups and assigned each object to its own vertex group. But when I exported as an obj and imported in DAZ Studio - again, adding geometry in the DAZ Figure Setup window - the entire set still came through as a single object with no component parts that I could set as bones.

UPDATE 2: The problem was my Blender export settings. A DAZ forum user suggested these settings -- where (+) means checked and (-) means unchecked -- and they worked:

Forward (Z Forward), Up (Y Up), Selection Only (-), Animation (-), Apply Modifiers (+), Include Edges (-), Smooth Groups (-), Bitflag Smooth Groups (-), Write Normals (-), Include UVs (+), Write Materials (+), Triangulate Faces (-), Write Nurbs (-), Polygroups (-), Objects as OBJ Objects (-), Objects as OBJ Groups (+), Material Groups (-), Keep Vertex Order (-), Scale (100.00), Path Mode (Auto).

CORRECTED FIX: The problem was my Blender export settings. To ensure DAZ gets the normals correct on all faces, you need these settings: where (+) means checked and (-) means unchecked -- and they worked:

Forward (Z Forward), Up (Y Up), Selection Only (-), Animation (-), Apply Modifiers (+), Include Edges (+), Smooth Groups (-), Bitflag Smooth Groups (-), Write Normals (+), Include UVs (+), Write Materials (+), Triangulate Faces (-), Write Nurbs (-), Polygroups (-), Objects as OBJ Objects (-), Objects as OBJ Groups (+), Material Groups (-), Keep Vertex Order (-), Scale (100.00), Path Mode (Auto).


How to specify tmp directory for rendering I tried to make animation rendering and saw in console
Saved: 'C:\tmp\0001.png'
 Time: 00:01.15 (Saving: 00:00.31)

Saved: 'C:\tmp\0002.png'
 Time: 00:01.00 (Saving: 00:00.31)

Saved: 'C:\tmp\0003.png'
 Time: 00:01.00 (Saving: 00:00.30)

and so on.
But I have SSD on C and don't wan't to exploit it hard. How to specify different drive for saving frames during rendering?
Neither TMP or TEMP system variable work. Reasonable fields from this dialog also ignored

In the Preferences dialog you can set the default directory for new scenes.
The actually used output directory can be changed in the Output Properties:


How do I hide irelevant game logic? Unfortunately, I'm a pretty sloppy organizer when it comes to blender. This leaves me with a bunch of "spaghetti" logic all over the place. Is there a way to hide the logic that I'm not using? I tried plain ol' H and that didn't do it.

Another easy thing you can do to temporarily simplify your logic editor is unchecking the Link check box

This logic mess may seem a bit overwhelming

Simply un-checking the Link box can Significantly simplify your workspace, at least long enough to figure out what you were trying to do.

 When you have wires connecting bricks across multiple objects, and especially when you have scroll bars and hundreds of wires between your bricks, you can sometimes forget what you were trying to do before you find the right sensor or actuator.


Python: What if no active_object? I have a problem to define my script if no active object is exisiting in the current scene. My approach is if no active object is existing then another definition should be happen. Python console says "no active object, no attributes at all".
Please, can somebody help me?
import bpy

act_obj = bpy.context.active_object

for sel_obj in bpy.context.selected_objects:
   if act_obj.name in sel_obj.name:
       ob1_act = bpy.context.scene.cursor
   else:
       ob1_act = act_obj

bpy.ops.object.empty_add(type='PLAIN_AXES', location=ob1_act.location)

Ok, got it! (sorry, couldn't post a comment since i haven't got an account)
This works what I searched for.
try:
   posemp = bpy.context.active_object.location
except:
   posemp = bpy.context.scene.cursor.location

bpy.ops.object.empty_add(type='PLAIN_AXES', location=posemp)


How to speed up the OpenGL (viewport) rendering? I made an animation in Cycles (about 1 minute long) using viewport render option (Render-->OpenGL Render Animation). There were some simple objects like hearts (with basic diffuse colour) and planes with a photo textures. It rendered in about 8 minutes.

Then I simplifed the scene: reduced the vertex count, and enabled the simplify option. The rendertime was about 2 minutes this time.

My goal is to render the animation in about 1 minute. Do you know any tricks to reduce the rendertime a bit more? Are there some settings I missed?

Firstly I would like to state that OpenGL viewport rendering has nothing to do with Cycles rendering.

Speed of OpenGL viewport rendering depends heavily on your GPU and in some cases (particle/physics/modifier heavy scenes) also on your CPU. There are certain borders that GPU can't get across whatever the setting may be.

Here are two solutions that might help you though, altough I am not certain what kind of result are you looking for. Both are diminishing the actual result but the speedup is considerable in certain situations.

Disabling the Anti-Aliasing would improve the speed of the OpenGL rendering greatly.

You may also think about using Bounding boxes only, if you are trying camera movement or animating a lot of objects and you want to see how their general location and rotation change over time.


When import OBJ the edge becomes 'strong' when I import OBJ file. The edge becomes 'strong'.
some edges are good, but most of them are like this in picture.

These light blue edges are marked sharp.

It means they will be sharp when you Shade Smooth the object and Auto Smooth the Normals

You can remove them by selecting them, pressing Right mouse button and selecting Clear Sharp


Can I assign the vertices created by the solidify modifier to a new vertex group? I've got a mesh with lots of faces which I'd like to solidify. After making it solid, I'd then like to simplify one side (via the decimate modifier) to reduce the polygon count while leaving the other side untouched. I thought one way of doing this would be to assign the new vertices generated by the solidify to a vertex group, then apply the decimate to that group. Is this possible?

You can use a workaround to select them all at once.
If the modifier isn't applied
Assign generated faces to new material and select by material
Create one more material for your object, you may leave its default settings
as they aren't important. The only thing which may be changed is the name of the material so you are able to find it quickly (and you should keep in mind that this material must be used only for this purpose in order this trick to work).
Then, in the options of the Solidify Modifier find Material Index Offset which lets you assign a material to faces generated by modifier. Set it to the value of the material you just created. From the wiki:

Material Index Offset
Choose a different material to use for the new geometry; this is applied as an offset from the original material of the face from which it was solidified.

After the modifier is applied, you are left only to select one of the faces generated by modifier, and click Shift+G > Material. All the vertices with the same material will be selected and you can add them to vertex group.
If the modifier is already applied
It should help selecting all the loops around rims and using Select > Select Loop-Inner Region:


How do I use the Curve Profile > Helix (3D) I'm trying to use a Curve which is under the submenu Curve Profiles > Helix (3D). Is anyone familiar with how to use this? I can't find much about it.
I am trying to create a spiralling helix curve of climbing leaves, as you can see in this picture:

In my setup there is a base set of 8 leaves on the lower right. These are joined to make one base object. This object has an array modifier that uses Object Offset with an Empty to control the rotation of each iteration of the Array. As you can see there is also a curve modifier using the Helix object to create the helixical path of the array iterations.
With the Helix(3D) curve profile, I can't see a way to tell it to make more than one twist of the Helix. Only Height and Width dimensions.

How can I increase the twists in the Helix to 2 or 3 such that the leaf array will keep following the curve. When it reaches the top it stops following the curve and reiterates in a straight line, like this:

The iterations stop curving at the end of the Helix curve. I have tried adding an Array modifer to the curve as well, but the next iterations don't join up. If I convert the curve to a mesh I cannot use the Curve Modifier with it, nor can I merge the two end vertices. This would also result in an imperfect helix most likely.
How do I generate more twists in the Helix(3d) Curve profile?
Or any other methods you might use to achieve the same result?
Thank you!

It is indeed a bit strange that one can't enter a number of twists or revolutions in the Curve Profiles menu. There are workarounds:
Method 1:
Simply duplicate the curve in Edit Mode, move it along the z axis (where the distance is the height of the curve) and delete the bottom vertex of the top curve. Then select the vertices you want to bridge and press F.

Method 2:
Turn your curve into a mesh (Alt + C by default, and choose Mesh from Curve/Meta/Surf/Text) so you can more easily make certain changes. Apply a Array modifier (with the Merge box checked) for instance.

Then after the changes are made to the mesh, turn the object back into a curve. (Alt + C again, and choose Curve from Mesh/Text)

But it might be a different kind of curve now. We can fix that by setting the spline type.
You can do this by pressing the search hotkey (usually F3 or Spacebar) and search for the command "Set Spline Type", and choose for instance Bezier.

Lastly you could select all vertices and change the Handle Type, for instance to Aligned. Now you can have the same kind of curve you started out with, only (most probably) with more vertices than before.

If the curve is a Bezier and you want to reduce the number of vertices in the curve, you can do Decimate Curve and enter a value between 0 and 1.


Using morph sliders in Blender I have a character made of multiple meshes ( body, eyes, tongue, teeth). How can I make them all interact with the morphs that are on the body mesh ?
Ex:
1) I have a morph that will make my character taller but when I use it the eyes, teeth and tongue don't move and end up where the neck is.
2) I have a morph that will make the eyes bigger but when I use id the opening for the eyes get bigger but the eyes them self remain the same size
3) I open the mouth but the 2 meshes that make the teeth don't open.

Thank you

For shape keys, what you do is what you will get.

The only option is to join all the parts together before doing the morphing.

You will control the morphing using proportional editing


Can I set the rendered viewport to be a lower resolution on a high resolution monitor? Is it possible to "scale down" the rendered viewport when using a high resolution monitor without adjusting the viewport frame size? It's a bit overkill and time consuming to have the viewport render in a higher resolution than the final render.

Not at the moment I'm afraid. Until recently such high resolution screens were uncommon, and it was rarely a problem.

With the advent of high DPI displays, UHD resolutions and 5K monitors the resulting pixel dimensions of a viewport are becoming a more common issue for live rendered preview, since it requires a lot of resources to render at such potentially high resolutions.

There are plans to support this in the future, and upcoming versions of Blender 2.8 already address the issue.

As stated in the wiki release notes page, introduced by commit 66c1b23aa10d there is now a viewport performance setting called Pixel Size which allows setting a scaling factor for the rendered viewport previews to a different resolution, to keep responsiveness at acceptable levels.

For the time being, in stable version of Blender the only workarounds are to either use Render Border to render a subsection of the canvas; or when inside a camera view, zoom it out in the 3D view, so the effective camera frame is smaller on screen resulting in less area to render.


Make render preview faster Is their a way to make a render preview in the viewport shading faster in cycles? I only know about reducing the samples to make it faster.

Of course at the cost of quality whatever it might be,i often find myself noticing problems in my animation too late, after rendering since i can't preview the animation fast enough before rendering...(i tried to make a smaller preview render of a whole aimation before the real render but it does not help me much)

You can use ctrl-b to draw a rendering box, so that you preview doesn't have to draw the whole view.

You can enable Simplify in properties/scene, which will allow you to create separate settings for subdivision for preview, or to create a hard limit on light bounces so that they'll (as in this pic) just skip to AO (white world) after 2 bounces instead of doing more.

And of course, you can do any of the things that you do to keep renders fast.  I avoid shaders I know run slow (volume scatter, glass, SSS) mostly because of their effect on my preview.


Follow crop an object in VSE Since i am a noob video shooter, i'm require to edit those video to "highlight" the person that i actually want to record (the person is too small compare to the image) to do that, i should do a cropping right? but the problem is the video it self actually a bit shaky so i cannot crop the whole thing in one go. I am thinking to implement feature tracking to track the person and link it to cropping mechanism so it will be a steady-focused video, is it can be done?
Thank you.

you can stabilize with tracking you're video in blender.  Here is a youtube tutorial for that:https://www.youtube.com/watch?v=nU8zqn091rM


Rigging an Umbrella and Weight Paint I have been trying to weight paint an umbrella to rig bones. However, I haven't been able to resolve the edges furthest away from the bones. They overlap when the umbrella is near closing. I have looked at this post for rigging an umbrella including the weight paint and I have tried to replicate it but I have not been successful. Would be really happy to hear suggestions of how to properly rig an umbrella and/or assign vertex weight paint colors.

link to my rig file: rig file link

Here are screenshots of my current weight painting vertex weights as they are in the screenshots above.

and here are working vertex colors from the link. Although, the umbrella I am working is upside down in normal open position, I don't understand why it doesn't work

I figured it out. The initial mesh cannot be subdivided more than the number of bone ribs. Each vertex should be mapped to a bone. Watching this tutorial on rigging an umbrella in 3ds Max gave me the answer.

I had basically overcomplicated the problem by subdivisions assigned with weights in between the two ribs.

In other words, I have 6 ribs for the umbrella, with 4 bones along the umbrella mesh. Each bone gets mapped to a vertex.


Tree branches pointing downwards Sapling Addon I am trying to make random tree shapes using sapling addon, i found that the default tree generation is generating branches pointing upward directions as shown in pic.

I want these branches to point randomly upwards and downwards side of the tree. Is it possible using sapling addons or if not, Kindly advise me the other way out. because in real world all the branches of the tree are not in the same direction

I tried in branch splitting -> angel rotation , but could not able to succeed. Please help me how can i achieve this..??

Thanks

Try adjusting the settings in the fifth box of the Branch Growth tab (third row, first column) and the last box.


Trying to use Boolean (difference) Modifier on a ring design and its not working correctly? Okay so I followed this  you tube video to make this ring and they way it is done on the video isn't working for me, I am not sure what the problem is. I have tried everything I found on the internet,!
advice from author

activating the 3D print tool addon and running the  solid to check for problems,
which it is saying I have some non manifold edges,!
 which are there bc those sides do not have faces because I used a mirror modifier on x and y to complete my basic shape, but I don't know how that could be the problem with the boolean because that is how its done on the video and it works??  I have done everything i can think of, even rearranging the modifiers,results from the video
I have checked all the normals
I'm out of things to try, please help?

Boolean operations sometimes fail when vertices between the two objects line up exactly.
You can work around this by moving one of the objects a very small amount.

Example .blend

Also see “Cannot execute boolean operation” when subtracting several spheres and cylinders from cube


Editing a mesh in proportional mode from script I'm trying to set the location of vertices in a mesh from a python script. No problems setting the location, however I'd like connected vertices within a certain range to also move proportionally.

I only need to move vertices in the positive Z direction. The mesh is a just an evenly subdivided XY plane (eg. a grid of vertices).

This screenshot shows a normal proportional edit on the left, size 0.25, and the script result on the right:

Here's the code I've tried so far.  It runs, but has no proportional effect on the connected vertices (just the selected random vertex):

bpy.context.scene.tool_settings.proportional_edit="CONNECTED"
bpy.context.scene.tool_settings.use_proportional_edit_objects = True
bpy.context.scene.tool_settings.proportional_size=50

# Set the Z coordinate of 10 random vertices in the plane

for v in range(10):
    SetVertexGlobal("WaterPlane",random.randint(0,289),[None,None,1.25])

bpy.context.scene.tool_settings.use_proportional_edit_objects = False
bpy.context.scene.tool_settings.proportional_edit="DISABLED"

The SetVertexGlobal function is defined as:

def SetVertexGlobal(objectName,vertexIndex, targetLocation):
    obj  = bpy.data.objects[objectName]
    mesh = obj.data
    vert = mesh.vertices[vertexIndex]
    mat_world = obj.matrix_world

    pos_world = mat_world * vert.co

    if targetLocation[0] is not None:
        pos_world.x =targetLocation[0]

    if targetLocation[1] is not None:
        pos_world.y =targetLocation[1]

    if targetLocation[2] is not None:
        pos_world.z =targetLocation[2]

    vert.co = mat_world.inverted() * pos_world

As you can see from your result,  simply adjusting the vertex location via script will not invoke proportional editing.  The translate.transform operator has all the settings you need.

Here is a test script to add 10 random bumps to a grid already in edit mode.

import bpy
import bmesh
from random import randint

context = bpy.context

bm = bmesh.from_edit_mesh(context.edit_object.data)
# deselect all
for v in bm.verts:
    v.select = False

for i in range(10):
    transform = (0, 0, 1)
    v = bm.verts[randint(0, len(bm.verts) - 1)]
    v.select = True
    bpy.ops.transform.translate(value=transform,
                            constraint_axis=(False, False, False),
                            constraint_orientation='GLOBAL',
                            mirror=False,
                            proportional='CONNECTED',
                            proportional_edit_falloff='SMOOTH',
                            proportional_size=1)
    v.select = False

Adjust accordingly into methods etc to suit your requirements. Being an operator it needs to have context,  To "dimple" multiple objects

for obj in multiple_objects:
    scene.objects.active = obj  # make context
    bpy.ops.object.mode_set(mode='EDIT')
    #dimple(...)
    bpy.ops.object.mode_set(mode='OBJECT')


Texture Painting not working I am just trying to start painting on my Characters Texture, but when I try to paint, nothing ever happens.

See the image below for my Set Up:

When I draw on either the left or right hand side, it should add color to the texture, but it won't.

Any Ideas why?

You need a light in scene to see the texture, or go to the material and set it to 'shadeless'. I usually set up lights in a sphere around the object and then hide them so that my object is well lit.


Subdivision surface modifier unexpected result I have applied Subdivision surface modifier to my mesh, and almost everything works fine, except for the place where I have marked in the picture. why doesn't it follow a smoother, more uniform path?
Thank you.
Without modifiers:

With Subdivision Surface modifier:

I found out the problem: I had some extra faces "inside the mesh" where they shouldn't have been, erased them and now everything looks fine.


Mesh always faces User Perspective when added Whenever I try adding a new object in my scene, it always starts off facing towards the user perspective. How can I make it so that it's aligned to the grid (like the default cube) rather than my view without rotating the object?

Here is a cube that I just added using Shift-A. Unlike the default cube, it faces where my view port is pointing.

Vs. Default cube orientation

You can adjust it in the Preferences>>Editing>>Objects.

Or instantly at the lower left corner of the 3D View when you add new models. As Gorgious said in the comment section.


Spot light not working in render or the game engine When I render it the light doesn't appear.
In more detail, the Spot kind light does not appear in rendered or in the game-engine. I do have GLSL shading activated.
By the way this worked perfectly in 2.65 but it won't work now even if I re-download 2.65.

Spotlight only works well in the game engine when the draw mode is set to 'GLSL'. You can change that setting in the attribute editor.


Vertices not selectable Blender 2.81 - I downloaded a model from Thingiverse, and when I went to edit it, this is shown:

Why is there a "shell" around it all?

I tried:

Clear Seam
Clear Sharp
Clear Freestyle Edge
Flat Faces

I don't know what to do about it.

You have a subdivision surface modifier enabled. These modifiers are helpful since they are procedural, meaning that you can easily undo, clear, or modify what came before them.

Subdivision surface is helpful since it allows you to get smoother, and higher resolution meshes (the solid mesh shown below) from a lower resolution source mesh (the transparent wireframe mesh). That lower resolution source mesh also makes it easier to make edits, though there are some cases where that isn't helpful and you have to apply the subsurf modifier.

If you don't want to view the subdivide surface modifier while in edit mode, you can disable the button shown in the screenshot below. If you need direct access to specific vertices, edges or faces that were created by the subsurf modifier, apply the modifier. Keep in mind that if you apply the modifier, you won't be able to undo that step once you go beyond the max undo steps.


Depth of field in EEVEE not focusing on selected object, works fine in cycles I can't wrap my head around this. For some reason, no matter how much I try, I can't get the depth of field setting to do anything but make my entire shot blurry. My goal here is to have the F/C in focus and everything behind out of focus. When I switch to cycles, it works perfectly!

Here are some screenshots:

Cycles, works as wanted:

Eevee, not working:

I currently have it just clicked to focus on the F through the camera menu, but I did also earlier set up an empty and connect it to my camera as explained in this video:https://cgboost.com/blender-2-8-eevee-autofocus-fun/ for autofocus based off what the empty's point was projected at. That also wasn't working though. It does work perfectly for him though, so I'm thinking it's a user error but I can't figure out where I went wrong ha.

Here is the .blend file:

Any ideas?

This is a mix of unwanted settings and a precision issue. First, as p2or already pointed out in the comments, there is a max size setting in the Depth Of Field area of the render settings in Eevee:

This size defines the maximum size of the bokeh shape. Effectively that means it can limit the amount of blur that is added to the rendering in Eevee. Your setting was around 4.3, which was a bit on the low side. Raising it to 10 already gives more visible DOF blur. The default is even 100.

Second, when setting a Focus object, keep in mind that the Origin of that object is used for calculating the DOF distance. On your letter F, the origin is somewhat inside the geometry:

Now, Cycles is very precise when tracing the scene, while Eevee takes its shortcuts. As a result, in Cycles the F looks ok (when in fact it is also a little blurry), while in Eevee it quickly drops out of focus. For your scene to keep the letter F in focus, it is necessary to set the focal point exactly on the front face of the F. I did this here using an empty:

The resulting image will then be like this:

Move the empty slightly forward and backwards, and you will see the blurred region flicker and jump. The result will still not be the latest and greatest, as there is that light wrap effect on the now in focus letter. Testing further, I noticed that this might be an inaccuracy of the blur calculation again. It kind of wraps into the edge area of the Alpha channel. If you turn on Transparent in the film settings and render, the image looks like this:

But in the Alpha channel, now we see that strange post processing blur. Look at the edges of the F:

That edge blur is what makes the F look blurry, even though it is in focus. So unfortunately, I believe for the scene you're working on, Eevee might not be sufficient for a final render in the end. One thing you could consider is rendering without blur in Eevee, and applying the DOF in post using the Z-Depth pass.

This would be the node setup required (remember to turn off Depth of Field in the Camera before rendering):

And this is the resulting image:

This gives you post-pro DOF adjustment ability as a bonus.


Apply new rotation and location to entire Animation I have a zombie model that I already animated and it's crawling.
However it's crawling in wrong direction - when I import it to Unity I can see that I am off the proper rotation by 180 degrees, this could have been prevented if I checked before animating.

I also didn't move the zombie along the Z axis to the floor, so it's in mid air.

What I would like to do now is fix this by applying that 180 degrees rotation and new position to the whole animation.

Take a look at this comparison:

What I managed to do is to select all bones at the first frame and just rotate it, then import this into Unity. It works fine, but as soon as I play the animation inside blender it gets reset and all messed up (the animation rotates and moves back), so is there a proper way to do this?

To rotate any animation that is stuck on an axis like this one, remove rotation on all axes for your root bone, then rotate that root bone in position in which you want your model to be.


Outliner filter or sort by object type? Is there anyway to filter by object types not separated by layers? For example, i have an imported scene with many cameras, and I would like to see all cameras in now list.

In 3d View select 1 object of your desired type (Camera, Light, Mesh etc.)
Go to the Outliner and select Same Types from the dropdown menu

This will display all objects in your scene based on the current selection. E.g. When a camera is selected, the outliner will display all available cameras in your scene:


Control emission shader's falloff using an RGB curve I have an image light whom I wish to rapidly decay. So I'm trying to mess with it using the curves like on the screenshot I posted. I'm trying with the curve here but to no avail. Could someone guide me towards my goal; to have a light with rapid decay rate?

Overview:

I've used default Cylinder with two materials.

First assigned to the top face it's an Emission shader.

Second assigned to the rest of the Cylinder - Holdout to prevent light from 'spreading', Transparent to be invisible and those mixed by Light Path > Is Camera Ray to show us only Transparency.