How can I make a looping animation when dealing with random particles? I have created some sparks by following this video tutorial.

However, I would now like to create a smooth looping animation.

I have already altered the start frame for the particle emitter to a decent sized -ve (approx. 80 from memory) so that I'm not starting on frame 1 with zero/minimal particles.

I suspect that some way of seeding the random number will be involved, but I am at a loss how to do that and whatever else would be needed.

Faking a Looping Particle System

One possibility is to have your particle system use many particles moving very quickly, render it, and then cut off the beginning of the rendered animation in a video editing app. Here is an example:

In this short looping video clip, the starting position of the particles does not match the ending position, so it's not a perfect loop, but by having lots of particles moving quickly, the viewer is much less likely to notice this break in the continuity.

Then again, my computer is very slow, so it's possible the poor quality of playback I get hides the break in continuity -- maybe on a faster computer, it'd be too obvious, I don't know.


Is it possible to reduce video light flicker with Bender? This is more of a compositor question. I have a video that I filmed (actually, it's stop-motion), but it has lots of light flicker (and I mean lots. Every frame is brighter or darker than the other). Is it possible to reduce this light flicker using Blender? I know there are other programs to do this with, like VitrualDub or AfterEffects, but I was wondering if I could use my favorite program (Blender, ;) ) to do it too.

Thanks in advance!

You could normalize the brightness and dark values then retarget them but the gama value would be almost impossible to determine of the image is being over exposed. Deflicker is non trivial and requires inter frame access which blenders nodes don't have.


Animations not working after renaming vertex groups? I've renamed my vertex groups in my rig and my object after unparenting them, and I've reparented them. The rig works, but my animations don't work anymore. How can I fix this? Thanks!

Channels

An action consists of several named channels.

Each channel is assigned to a named bone. The channels are grouped by bone name for easier identification.

When you have a different armature you get different assignements.

If you rename a bone Blender automatically changes the assignment and the group for you.

But it can do that only on known actions. That means it does this on assigned actions only. There can be only one assigned -> so it renames the current one only.

If you assign an action (via ActionEditor) that belongs to an armature with bones of different names, the channels lose the bone assignment:

This action will not play with this armature as there is no bone to play the channel.

You can rename such unassigned channels. Be aware this removes the previous assignment.

Vertex Groups

You can assign vertices to bones by assigning them a vertex group with the name that matches the bone name.

When the bone gets animated the animation engine considers the vertices that are part of the matching vertex group.

When you rename vertex groups you need to rename the according bones too. Otherwise the animation can't be matched. Blender will not automatically rename the bones. Re-parenting to the armature will (dependent on the options) result in vertex groups that match the bone names. But these are not the vertex groups you just renamed.

Conclusion

When you rename bones, ensure to rename the channels and the vertex
groups too.
When you rename vertex groups ensure to rename bones and
channels too.

I hope it helps


Crazy rotation bone problem im rigging a leg using Inverse Kinematics, i put on the controller bone in the feet and the pole bone in the knee, but when i move the leg to much to the top the upper leg bone goes crazy and twist the whole leg, the only bone moving like crazy is the upper one, how can i fix that?
i put some pictures and the Blender File if it helps

https://www.mediafire.com/?viz059q15ofn5dd

The knee is pointing towards the pole target as set in the IK constraint. You need to lift the pole target higher than the knee when you raise the foot.


How Can I Quickly Create Embossed Text in the Style of a Label Maker Some background:

I'm working on a big project, modelling a car, and I'm currently creating the cockpit
The car is a race-car, and the instruments and switches on the dashboard are all labeled blue and white embossed labels, a picture for reference:

What I need Help With

I need help finding a quick and resource friendly way to create all of the labels

I'd like the textures on a flat object that looks like it has texture using normal maps

My Current Workflow

Create text, convert to a mesh, planar dissolve unnecessary vertices, extrude the text, bevel the edges, joining it with a plane, use some mask tools to add dust and damage, the bake the diffuse, normal, and roughness maps to a flat plane.

Currently I feel like there should be a simpler way to do this, specifically the baking. If I only had to do this for one object it wouldn't be that big of a deal, but there are like 25 labels on this dashboard, all with different text.

If you don't need extra geometry, just use an image as a bump map to fake the relief. This will allow you to keep the vertex count low, as all you need is a simple plane.

Or you can use the image as displacement if you need real geometry.

Note that, in order to get good results, you need a lot of subdivisions.
Of course you will need the correct dymo font to create the texture:
https://www.fonts4free.net/dymo-font.html#:~:text=Dymo's%20embossing%20font%20is%20now,Type%20Studio%2C%20exclusively%20for%20Dymo.&text=Dymo%20font%20contains%20230%20defined%20characters%20and%20116%20unique%20glyphs.


Measure Tool Data from Python How can I access the measurements displayed with the Measure Tool in Blender 2.80 from Python?  I'm not seeing it anywhere in the documentation, hoping I'm just blind.  Thanks.

All credit for this answer goes to the discussion here.

The data is stored in the grease pencil annotations:

bpy.data.grease_pencils["Annotations"].layers['RulerData3D']

Specifically, to get a list of all length measurements currently in the scene:

lengths = list((s.points[0].co - s.points[-1].co).length for s in bpy.data.grease_pencils["Annotations"].layers['RulerData3D'].frames[0].strokes)


Can't make object invisible in render (Blender 2.8) No matter what I do, objects are allways visible in render (Cycles).
I have tried:
Object > Visibility > Show in Renders (off)
Object > Visibility > Ray Visibility > Camera (off)

In viewport it works and becomes invisible, but it allways shows up in renders...

Thanks

Filter button;

What you need is hidden there. Blender restricts to one by default, yet you have an option of six.

The Filter button typically sits at the top right of the Outliner, and looks like a kitchen funnel. It will bring up a menu of filter options, and if you mouse over each of the first six, you will know which button does what. You want 'Globally disable in renders' (The sony camera icon).


(Clean) weight paint black colour For over half a year, this problem has kept me from progressing by any means. I just found out why weight painting wouldn't affect certain parts of my model. I would keep acting as if certain parts are all read with no gradient. It is this black section that is apparently called zero something. It's the black streak and in order to remove it's affects, you need to reduce the limit to zero. I did, and it was still there.

Limit is on the bottom left.

This is the result of the black streak.

So I decided to paint over the black streak.

Didn't fix anything. If not made it worse.

I can't do anything with my models. They all suffer from this problem, and no matter how many times I re-rig, this never goes away. Same problem happens with rigify.

does ANYONE have a solution?

Using 2.7

To download the .blend. Let me know if it doesn't work.
http://www.megafileupload.com/en/file/558769/RiggingProblem-blend.html

Three things about the .blend.

1: Deleted most of the model, except for the problem area.

2: I saved it so that once it opens, all you need to do is press R to rotate the selected    head in order to see the issue.

3: The download button on the link makes you wait 15 seconds before being able to click it.

Thank You!

You have Restrict enabled in the options tab(not 100% sure on this since I don't have a .blend). Restrict disables weight painting on vertices that are not in the current vertex group. To fix this, simply un-check restrict.

The black is a display of the non weighted vertices. to disable this, set Show Zero Weights to None.


Reversing a 3d model I want to know how to reverse a 3d model,for example some guys develop scripts and tools to extract 3d models from video games and then convert them to obj and stuff.I have no knowledge in these things apart from making edits using blender.
So i wanna know where do i start to learn 3d model reversing.

Your question is a bit broad. You would need to know the file format, and create an importer for this format in Blender. As an example: Starting with a documentation of the .mx format I created a script to import the models of an old game called forsaken. The source and links to the documentation are linked here:

Is there a way to import .mx or .mxa files?


I want to export vertex data of a simple object which include normal and color data as well as vertices coordinates as text file I want to export vertex data of a simple objects which include normal and color information as well as vertices coordinates as text file. Similar to following example. Is it possible?

Vertex(
x: -1.0 ,
y: 1.0,
z: 1.0,
r: 1.0,
g: 0.0,
b: 0.0,
a: 1.0,
s: 0.25,
t: 0.25,
nX: 0.0,
nY: 0.0,
nZ: 1.0
)

You could use Python for exporting the exact format you asked for.
(what are a, s, and t though ?)
(I guess a is for alpha, but I don't think VertexColor data has an alpha channel. For s and t, I dont't know. Your question is not clear on these points).

If you accept other similar format, then you can export as PLY :

Don't forget to activate "Vertex Color" :

You get such a file :

The header explains the structure:
The orange line tells you you'll first have 1966 lines desribing the vertices (what you want) with columns described in yellow.

The pink tells you that you will have 500 faces with the property in blue. You didn't ask for it though. But it seems you cannot bypass them at export time.


Need an advise how to join two subsurf meshes I need a best practice advice on the following.

I want to join two meshes which are both in one object. The three claws are seperate and I want to join them to the wrist.

I have done this before by deleting the faces on the ends of the wrist stump and the finger stumps, then bridge looped them. But there is often a problem with the number of edges not matching for each mesh. I.e. wrist has 4 edges and the fingers have 6 or more.

What is best practise to accomplish this and creating good topology for deformation?

Select the object you want to join. Select the other. Then type Ctrl J.

If the two are the same object. Edit mode: select the vertices you want to join. Type W then Merge.

I hope this helps


Shading tab seems incomplete (Blender 2.8) I am running blender 2.8 and am in the shading tab. On the tutorials I've seen on YouTube, the background in the top 3d viewport is a shade of light gray and there always seems to be a second texture circle next to the white one.
As is seen in the image, my background is black and I only have one of the circles. Why is this happening?

Thanks
EDIT: Here's the file

PS. There are no nodes in the image because I have the camera selected, once I select the cube I get the default ones.

Go to the shading menu, you probably have the scene World Checkbox selected
If that's not the case, share your file to take a look at it


Cycles nodes: is there a way to find coordinates change, derivative, direction? I want to get a unique random value for every face using direction of mesh coordinates. Like a derivative, position change, a unit vector based on current face's vertices. (I guess, something similar to dFdx() in OpenGL.)

I tried to find the answer on Google, but got no results, though as a software developer I think this function isn't difficult to create. Maybe some Blender experts here know the solution?

Not strictly an answer to your question, but..

To get a random value per face to be read by Cycles, you could use an adaptation
of Chebhou's answer to this question.

Run this script on the active object:

import bpy
import random

obj = bpy.context.object
obj_data = obj.data
group_name = 'face_ID'

#check for existing group with the same name
if None == obj_data.vertex_colors.get(group_name):
    obj_data.vertex_colors.new(name=group_name)
color_map =  obj_data.vertex_colors[group_name]

for poly in obj_data.polygons:
    rnd=random.random()
    color = (rnd, rnd, rnd,0)
    for loop_ind in poly.loop_indices:
        color_map.data[loop_ind].color = color

and then use the Cycles 'Attribute' node to retrieve the generated vertex color layer by name:

result of this example on a subdivided plane:

I've moved the randomization into the script - I was having trouble getting a good pseudo-random number out of  a 0.0-1.0 input range using nodes. If nobody points out something obvious in a comment, I'll post that as another question.


How do i select multiple object Using Python Script? I want to select Cube.001,Cube.002,Cube.003,Cube.004 at the same time.
trying this script

bpy.data.objects["Cube.001","Cube.002","Cube.003","Cube.004"].select_set(state=True)

But is not working. What should i do to select this four objects ?

If you want to select all objects at once, then use: bpy.ops.object.select_all(action='SELECT') (select_all operator). In case you want to only select a subset of objects you have to iterate through the list of scene objects (bpy.context.scene.objects) or through the list of objects in the blend-file:

Blender 2.7x

# Deselect all objects
bpy.ops.object.select_all(action='DESELECT')

for o in bpy.data.objects:
    # Check for given object names
    if o.name in ("Cube.026","Cube.027","Cube.028"):
        o.select = True

Blender 2.8x

# Deselect all objects
bpy.ops.object.select_all(action='DESELECT')

for o in bpy.data.objects:
    # Check for given object names
    if o.name in ("Cube.026","Cube.027","Cube.028"):
        o.select_set(True)


Help me make a waterfall It has been 3 days now, countless YT tutorials, new and old, searchign on Blender Stackexchange and I just can't make it work.

Additional info: I understand the basic concpets and the objects needed for a fluid simulation to be successful.

I have carved out the environment with sculpting on a Plane where the water should be, and my next step would have been adding the water. As I am a beginner I think I tried everything with the Fluid simulation, it works fine when I start from scratch on a clean Blender, but for the life of me I cannot figure out how to make it work in the this case. Please give me pointers on how to make this happen, cuz I'm starting to lose my mind :D

Thank you!

PS in the meantim I am tryign to figure out how to add the .blend file :D

https://drive.google.com/file/d/1eX-lgrwlHWk5Zotr76cX3adGtFFshJdq/view?usp=sharing

For a fluid simulator like the one you want to create you need:

emitter: the mesh where water comes from (choose flow > liquid & inflow)
effector > collision: the mesh that will act as the collision terrain
domain: it's the area where the simulation should run. Emitter and Effector should be inside the domain

The core steps to create the simulation are:

Put all the stuff in place
select the Domain and press the CACHE button
play the animation and check if everything is ok
select the domain, goto Mesh, select it and CACHE MESH
check result and goto 1 to fix settings if you are not happy with the result
apply shader and similar...

here's what I have to share:

here's the source file of my simulation (you need to cache):
https://pasteall.org/blend/5ff62299dac24ba7adec6d04e350173c


How can I fill a cylinder cap? Dumb question. I can't figure out how to make a mesh (quads or triangles like a pie) automatically so to this flat face so I can then pull the center to round it out (like half a sphere would look). I don't want to bevel it. Isn't there like some Hot Key combo that does this?

Triangles

As @ideasman42 points out in this answer, you can press:

  F, ⎇ AltP

  F (creates a face)
  ⎇ AltP (poke face, creating a triangle fan)

Quads

As @David said in this answer, you can use grid fill by:

Using ⎇ Alt +  Right Click, to select the edges
Pressing Ctrl + F and then selecting Grid Fill (can be done by pressing G after the previous combination)


Apply transformations after animation I've created a wall with the extras Wall Factory add-on. My intentions are to just break that wall into small pieces, and for it I use the Cell Fracture add-on.
What I'd like to achieve is just create the cells, break the object and when I find a suitable spot for me, apply all the animation so it's static and applied to the mesh now (like, even though I move through frames, they will stay the same so I can proceed to apply different animations to different objects).
Steps I've followed:

Create wall with Wall Factory
Apply Cell Fracture
Select all pieces and add "Rigid body: Active" (Object > Rigid Body > Add Active)
Put some objects in the scene, and add "Rigid body: Passive" to them (Object > Rigid Body > Add Passive)
Press Space key and, when I find it ok, press again to pause animation

The issue is I cannot even move any piece (part of the broken wall) because it won't respond to movement, so I cannot make little adjustments or use them as boolean or whatever, and if I apply transformations (Ctrl+A) all of the pieces then are moved and spread everywhere across the viewport (sometimes), and even in this state they still go back to their original position if I slide the timeline frame.
I've tried to apply transformations before and after the animation takes place, but I cannot seem to find a way to achieve the pieces to make their final position a static one, so no matter what further modifications are done in the timeline, they will mantain their transforms in place.
Thank you.

It seems that applying this solution will work. However, I had to make a global collection for all my pieces (as I had multiple separated walls breaking), so I could make Select Objects from all the pieces and could remove Rigid Body (Object > Rigid Body > Remove) from all at once. Otherwise, only one of the walls would remain and the others would disappear (I don't know if this is an expected behavior).
To sum up:

Select all your pieces in the desired frame (I've done so by grouping them all in a collection, and then Right Click > Select objects)
Press Ctrl + A+ and select Visual transform
With all the pieces still selected, go to Object > Rigid Body > Remove

Now pieces can be moved and no matter what frame you go back to, they will remain the same without alterations.


Node compositing - How to switch colours in frames I wish to switch colours of fonts & strokes in random frames and I wish to learn this for my future projects like motion graphics.

You can keyframe any color. Just move to the time where you want the change to happen, hover over the color field and hit I. It'll get a yellow outline. You can keyframe almost anything in Blender. Not everything, but close. (Remember to set a key frame on frame 1 so the original color is kept.)

The only other thing you need to do is to go into the Graph Editor and set the interpolation to constant. That will make sure the color will stay the same until the next key frame. Otherwise the colors will slowly blend into each other.

Just select the node with the keyframed color and the curves will show up in the Graph Editor. There you can select constant interpolation with T, SHIFT-E or the menu (Channel >> Extrapolation Mode)


How to refresh applied fonts? I'm creating a font ad-hoc and modifying It as I need time to time..

Any way to reload the font file linked to the *.blend file so all text objects are immediately refreshed?

Now I need to reload the font file for every text object at every modification...

Is there maybe a way to apply the font to a material via nodes? (or something like [maybe a script?])

Through the interface there is currently no way to replace the file for an existing font (ideally this would be supported),however from Python you can do this.

eg, run this script:

import bpy
bpy.context.object.data.font.filepath = '//some_font.ttf'

However in 2.76 there is a bug where this won't update immediately (just fixed).

So you have to do...

import bpy
bpy.context.object.data.font.filepath = '//some_font.ttf'
bpy.context.object.data.update_tag()

You could set the file-path to its self to force reloading too.


Need help exporting rendered animation in video format I am using blender to create a YouTube intro. I am using blender 2.77a and have already rendered my 600 frame animation. How can I export my rendered animation in a video format so I can add it to my YouTube videos

You need to choose video format in Output settings and then render Animation. You have variety of options for video such as bitrate, codec etc.


Dynamic Paint; invisible object is acting as brush anyhow I model a concrete structure in which water is rising and falling and would like to create wet walls using dynamic paint (Blender 2.81). Rising and falling water are modelled by two (or more) meshes whose visibility is animated (e.g. one on - the other off, under "Object properties - Visibility"). The "water" objects are defined simultaneously as brush, the concrete parts as canvas. The problem is, that all brush objects act as brush when baking, even the non-visible ones.
Is there any trick to convince Blender that only visible objects should act as a brush while invisible ones shouldn't?

EDIT: There is a workaround by replacing disappearing of an object by sudden movement out of sight and vice-versa while the object stays visible all the time.

There are a few ways to do this, but both require new properties to be animated in sync with when you are animating the object's visibility.

The first way is to animate the visibility options on the Dynamic Paint modifier (on the brush object):

You can do this either by right-clicking on the icon and choosing 'Insert keyframe' or by pressing I when the cursor is over the icon. Note: You have to keyframe both the 'Show Viewport' (screen icon) and 'Show Render' (camera icon) settings to get this to work. Animate these values to be on when the object is visible and off when it isn't.

The second method is to animate the 'Alpha' value on the brush object to be '0' when you want it to have no effect and '1' when you do:

You may also have to animate the 'Wetness' value, depending on your setup.

Note that you should be able to copy your existing keyframes onto these properties by using the 'Dope Sheet' editor (but you must add at least one keyframe to these properties before they will appear in the Dope Sheet) by using the Key> Copy Keyframes and Key> Paste Keyframes menu options.


Why isn't Face Sets painting all the faces under the brush in Sculpt Mode? In Sculpt Mode, when using Face Sets Brush on the mesh, the mask does not apply correctly to all faces below the brush. Some faces are ignored. This happens with any new object that I create.
I already tried to reset the presets of this brush, but it still fails. Is there an option that I accidentally checked that creates this problem?

Ok I got it. In Brush options of the header bar it is necessary to UNCHECK the Face Sets and Face Sets Boundary checkboxes. It is also recommended to have a not too high Strenght if you want to smooth the Face Sets (when holding Shift with the brush).


Boolean difference modifier creating artefacts I am trying to make hollow cube something like this:

I am new to blender but I would have thought that this should be straightforward. I made a cube, and then a longer cuboid which I inserted in the middle and then used the Boolean difference modifier. I changed the orientation of the cuboid twice more to make the other two 'holes' through the object.

Since the operation seemed to go smoothly, I was surprised to see that the holes didn't cut right through the cube, and that in wireframe mode some artefacts were created:

I tried making both objects solid (using the solidify modifier with default settings), but even after making the first Boolean difference operation I can see an unexpected triangle in the model:

Could someone please advise me on what I'm doing wrong?

I am aware that for a simple model like this I could assemble it from cuboids, rather than using a difference operation. However, I would like to be eventually use the techniques to make more complex models for instance a hollow Dodecahedron. Therefore I keen to establish the correct way of making these hollow type models.

I am tempted to try making a new face for each side of the cube and extruding it inwards but I don't know how I would handle getting the inwards extrusions to join up with each other.

Option A subdivide all faces of a cube, select the middle edges then bevel them. Either extrude the large faces inwards, or erase them and use a Solidify Modifier. If the former don't forget to remove doubles.

Option B Just select all fates then use Inset > Individual Faces then *Extrude > Region (Vertex Normals).

Also works in icospheres. If self intersections are not a concern you can use a Solidify Modifier replacing the last extrude step.

Alternatively you can use a Wireframe modifier, for a slightly different geometry.


How do i change the size of the box for my collision bounds? My object always falls through the floor at the end of the box that shows the collision bounds. How can I adjust the size of it?

Try changing the drop down menu labeled Box under the collision bounds panel to Convex Hull, or Triangle Mesh if the first doesn't work. Also, if it is still falling through the floor, try upping the substeps from 1 to 5 under Properties Editor>World>Physics>Physics Steps:>Substeps. If none of this helps, or if it does and you want to learn more, Blender Cookie has some good game engine tips at https://www.youtube.com/watch?v=QY7iJmqsJf8

Hope this helps and happy Blending!


How to change color along a curve? I have a curve, which has been made visible by using a circle as a bevel object. I would like the color to change along the length of the curve. In other words, the curve will start red, and then change to blue towards the end.

I have figured out how to make the color change as a function of a coordinate (in this case the x-coordinate), but I cannot figure out how to get the coordinate along the length of the curve so that I can pass it to the ColorRamp.

Any ideas?

The trick is to enable UV mapping on the curve and then use UV as the input texture coordinate. Then use can use the mapping node to rotate the default UV positioning to get the gradient to run along the length of the curve. Please note I had to adjust the X/Y scale factor to get the whole gradient to show on the curve.


Can the Properties Shelf be re-merged in 2.8? In Blender 2.8 the Properties Shelf seems to have been split into four different shelves by default, called Item, Tool, Edit, and View.

Is there any way to merge these back together so that you can just hit N to access them? Currently N only opens the most recent shelf you've used, and you have to physically click open a different one if you want it.

The properties shelves can't be re-merged in Blender 2.8, but you can retain specific elements from each shelf by Shift + Left-Clicking on them and pinning them. The pinned elements will be retained through toggling the whole Properties Shelf with N.


Why are my textures pink? Basically, I applied my textures by taking each individual object, unwrapping it in the uv editor, then opening up an image in the uv editor and it would apply the texture in the 3D editor. However, when I render my project none of the textures appear and everything looks odd. I don't know how to set up the images properly with the bee.

For example, here's the uv layout image for the bee's Cube.001:

How do I get that applied properly to the Cube.001 in my project?

Here is the file for reference

Everything appears purple if the images aren't there and I don't know how to fix that either.

Pink means the image for the texture is missing. Make sure the image queenBee1.png is where blender thinks it is (which is in a directory called queenbee next to the .blend).
Unfortunately the textures are not included in the .blend by default (you must pack them), so if there are problems beyond this I can't tell what they are.
To pack all external textures, press Pack into .blend in Info > Header > File > External data.
I noticed that you changed the info panel (at the top of the window be default) into an image editor. You can change it back by clicking on the icon on the left and selecting Info:

There is also a operator in the External data submenu called Report missing files which will help you find what files are missing (if any).

If you have the image location right but it's still saying can't load image in Textures > Image and not appearing, some other common issues are:

If the location was set incorrectly but has since been corrected, try reloading it by pressing the arrows icon:

Make sure the texture is enabled:

Make sure the texture is allowed to influence the color of the material in Textures > Influence:

The reason everything looks odd is because the body mesh is duplicated, resulting in overlapping faces and z-fighting. If you select what appears to be the main body and press G to move it you'll see that there are actually two:

To fix it, just delete one of them. Note that one of the duplicates does not have UV selected for the mapping coordinates, so if you delete the other one make sure to set the coordinates to UV in Textures > Mapping:


my model doesn't move from the origin, or moves or rotates ONCE and then returns to the origin I exported my scene with a simple plane and a animated mesh into 2.73 from 2.66a and now the mesh doesn't move from the origin, it looks like if it wants to move or rotate but it remains in  the origin, or if it moves when i press another key to rotate or move, the model returns into origin. Please help

Here is the blend file:

http://www.pasteall.org/blend/33673

Perhaps this could work:

How do you import a rigged character from one blender file to another?

Now i am trying to clear parent between armature and mesh nd rig again. Actually the walking animation was easy to reproduce and not very accurate. hmmmm

Problem solved!! I linked model and armature from 2.66a, applied proxy (Ctrl+Alt+P) and rigged and animated again the mesh. All worked fine!!


How do you model a ground plane to match the height of a premade object? I'm working on a minigolf course modeling project and have created a sample hole for testing purposes. Right now, the only ground  that I have is a flat plane on the axis.

The hole varies in height at some places, so the ground plane does not meet it except for the very bottom portion. How can I model the plane such that it matches the height of the hole?

just subdivide your plane and in edit mode activate proportional editing then just drag the vertices or faces to whatever height you want then in object mode shade it smooth for nicer look. Look at some modeling tutorials online it will help you a lot.


How do I mirror an object using the mirror modifier? How can I mirror a cylinder using the Mirror Modifier in order to get two cylinders?

I want to edit one of the cylinders and get the same result on the mirrored one.

You have to position your 3D Cursor away from the cylinder, then press Shift+Ctrl+Alt+C and choose the 3rd option- Origin to 3D Cursor. Next add a Mirror Modifier and choose the axis. Remember that the mirrored object appears on the same opposite distance from the origin, that's why you have to put your origin away from the Cylinder center, otherwise you will not be able to see any change, as your mirrored object will appear in the same position as your mesh.


Is it possible to add fake user to animation actions after saving model without having done so? I have just made a model of a humanoid character with an animation timeline. Its just come to my attention that I should have assigned a 'fake user' to the idle animation by pressing 'F' in the dopesheet. Unfortunately I've already assigned a animation timeline to the model, including the idle pose and run cycle. Is there any way i can assign the fake user now that i've already saved my progress without doing this?

Yes, you can still bring this back as long as you haven't closed Blender. If you did close Blender, you can only bring it back if there was an item that's using the datablock containing that Action. The whole reason for giving a datablock a fake user is to stop Blender from cleaning it out along will all the other un-needed items when you close it. I suspect it to be a resource thing.

In the Dope Sheet window, switch the mode from 'Dope Sheet' over to 'Action Editor'. There should be a dropdown next to the Key menu option at the bottom of the Dope Sheet Window that lets you do this.

Further down the menus at the bottom of the Dope Sheet Window, there should be an Action Selector. The look of this selector changes a bit based on whether or not an Action is currently selected. Either way, there will be a dropdown button with an image of three diamonds forming an upside-down triangle. If no action is currently selected, there will be a button that lets you create a new action. If an action is selected, there will be a text box with the Action's name, followed by the fake user button, create new action (based on current action) button, and de-select action (un-link datablock) button. Use that drop-down to select the Action you want to add a fake user to.

Once the Action is selected, you can add (or remove) the fake user.


2.8 Rigid Body settings and how to use? Thanks in advance for any help on this.  Just playing around with Rigid Body behavior based off/extended from this tutorial, https://www.youtube.com/watch?v=-4uFt0m5I-U

I keep tweaking and tweaking the Rigid Body properties of the 'earths' and the sandbox and just can't seem to get them right, I assume because I really don't understand what each control does.

I want to simply drop these 'earths' into the sandbox and have them bounce around a bit, roll around a little and settle into the low spots, in a natural looking way, perhaps what you would expect if god were playing marbles with planets.

But they either immediately explode outward in all directions too quickly escaping the sandbox OR they descend very slowly and settle too quickly.  I've made my test blend smaller and simpler for faster bakes and retries but the iterative process of struggling to find the right settings is time consuming and frustrating.  I assume that if I understand the Rigid Body Controls better I can make better decisions -but how to learn them?
I think that Friction and Bounciness are probably obvious and while I think I understand margin, I suspect I don't.  I keep playing with Friction, Bounciness, Margin, Damping Translation and Rotation, mostly on the earths but also on the sandbox but I just never can get what I am trying for.

In this case I am not looking for help on the right settings, I am looking for help to understand the settings so I can reduce the amount of experimentation/iterations required to find settings I am happy with and when parts of the sim start working as desired I will understand what to change next and what to leave alone.  Right now it's all just a crap shoot.

Start Image
 -

Initial separation

Sandbox Physics

I just tried something similar and it worked OK, I'm guessing your spheres are too close / touching on the initial frame. This will upset things.
Here's my result-
https://www.dropbox.com/s/cdtnwukjwakg6kc/RigidSpheres.mp4?dl=0

And here's the scene-
https://www.dropbox.com/s/aw6pmq5tmis0kee/RigidSpheres.blend?dl=0

If you move my spheres so they're touching/intersecting they repel each other as they start to fall.

Cheers
Mark


Black screen following me whenever I zoom out in blender Whenever I zoom out there would be a black screen constantly following me.  The more it zooms out the more I cant see my model

The clipping settings that ETHAN DAY mentioned in the comment are in the Sidebar of the Viewport. Just press place the mouse cursor in the viewport and press N to open the sidebar. Then choose the View tab. There you can adjust the clipping settings of the viewport.

Keep in mind that the camera (that is used to render the final image) has also clipping settings. You will find them in the Camera Properties (green camera tab on the options panel/right side).


How can I open or import FLT (OpenFlight) files in Blender (mac)? What the headline says - how to open/view .flt (OpenFlight) in Blender 2.79?

In Blender version 2.42a - 2.46 there is an option to load OpenFlight FLT files. In later versions this addon has been removed (most likely due to the lack of support by the community).

Best way currently is to download blender version 2.46 and import the FLT file (File → Import → OpenFlight(.flt)). Save the blend file and open this blend file with the blender version of your liking.

Second option is to find a developer who will migrate and maintain the OpenFlight plugin.

More information of the plugin can be found at https://wiki.blender.org/index.php/Extensions:2.4/Py/Scripts/Import/Openflight_flt


Saving objects' coordinates as RGBA I need to save multiple objects' location in XYZ as RGBA data on an image. The colors should match that of blender in metric, so if I move the object up 105.4 centimeters in blender, the color should be 1.054. Just like shown here. And even go in the negatives, like the blue.

Furthermore I need to save their rotation in quaternions as RGBA as well, different image though.
I've found this script, but it doesn't do exactly as I need, could it be rewritten, or how would I go about it?
Since I also need the data from multiple objects, saved in a string of pixels.
https://github.com/JoshRBogart/unreal_tools?files=1
For a visual representation of what I need to do, I need to place these track elements (shown in green outline) in a shape to form the belt for a tracked machine. Each pixel corresponds to one element and it's position/rotation. So the number of pixels should match the number of objects.

The rest will then be handled by the shader in the game.
I've included an original file from the game, if it helps.
https://www.dropbox.com/s/amvvysvzrba3w9f/trackArray.rar?dl=0
Thanks.

If I understand correctly you would basically do
def locations_to_image(objects, image_name='Locations'):
    im = bpy.data.images.new(image_name, len(objects), 1)
    i = 0
    for ob in objects:
        im.pixels[i:i+3] = xyz_to_rgb(ob.matrix_world.translation)
        i += 4
    return im

def xyz_to_rgb(xyz):
    # Replace with however you want locations encoded.
    # This is just an example.
    bb_max = 50  # bounding box size
    return [(v + bb_max)/(2*bb_max) for v in xyz]

Edit to match your specifications.
PS. RGBA components are always in the range [0,1], so you'll need to encode them somehow.


How to animate A curve segment? How can I animate the position of a Bézier curve segment as shown in the images below?

You can 'Hook' the control point of the curve by pressing Ctrl+H while in edit mode, with the point of the curve you want to move selected and choosing 'Hook to new object'. Adding the hook via this shortcut is just a quick way of setting up the hook modifier, which will be present on the curve after the shortcut is pressed.

This will create an 'Empty' object which can be animated. The control point of the curve will be parented to the position of the empty and will follow the empty wherever you animate it to.


Export custom mtl file So far I've made a few models in blender. When I exported my textured model before, the mtl file always looked like this:

newmtl None
Ns 0
Ka 0.000000 0.000000 0.000000
Kd 0.8 0.8 0.8
Ks 0.8 0.8 0.8
d 1
illum 2
map_Kd F:\images\leather.bmp

But when I export a mtl file now it looks like:

newmtl Material
Ns 96.078431
Ka 0.000000 0.000000 0.000000
Kd 0.640000 0.640000 0.640000
Ks 0.500000 0.500000 0.500000
Ni 1.000000
d 1.000000
illum 2
map_Kd F:\images\dice0.bmp

As you can see, Ni parameter appears in my second example. Because I've written a custom obj file loader in C++, I only need 7 parameters and not 8.

Is there a way to solve this easily?

Ni (optical_density)

The code lives in scripts/addons/io_scene_obj/export.obj (line 92+ ). You could comment out these lines:

if hasattr(mat, "raytrace_transparency") and hasattr(mat.raytrace_transparency, "ior"):
    fw('Ni %.6f\n' % mat.raytrace_transparency.ior)  # Refraction index
else:
    fw('Ni %.6f\n' % 1.0)

The .obj exporter will automatically add the Ni as soon as you assign any material to the object.

Could be worth updating your C++ obj file loader, at least to ignore the Ni command if material is set, because it is a valid part of the .mtl specs


Are there any non-standard meta objects available? I recently started playing with Meta objects again after all these years of using Blender and largely ignoring them. However, I find the available types to be extremely limited.

Are there any others available as addons, similar to how there are addons that add various mesh primitives?

No, and adding new meta-ball types to the existing system can't be done using python/addons.

(unless you count composing shapes from many metaballs).


How to know what is new in the daily releases? I see that https://builder.blender.org/download/ shows a new version almost every day.
But I can't see what was changed since the last version.
How can I know it?

You can check the Developers website, or you can subscribe to Bf-committers mailing list.


How to Show Thumbnails in Video Sequence Editor strips? Is there a way to show thumbnails in Video Sequence Editor strips?
If not, is this a feature we can request for a future version of blender?
Here is a thread that discusses this idea, but it doesn't look like it made it into blender 2.8+
https://devtalk.blender.org/t/vse-strip-previews/5854

Thanks

No one is working on it, so it'll only be implemented if someone picks it up and do the work: https://developer.blender.org/D5908


Missing UV display panel While using UV Editing I wanted to use stretch found in the display menu but it is not there.

In the UV editor use the N key to open the UV Properties panel then you will find the Stretching option in the View tab > Display > Overlays > Stretching.


Applying animated compositor to pre-rendered animation frames I'm trying to figure out a good workflow for setting up the compositor for animations.
When I make still images, I render at high-quality first, then touch things up with the compositor. With this workflow, the time-hungry stuff (i.e. the rendering) happens at the beginning, then I tweak the dials in the compositor at the end until it looks good.
For animations, it seems that the compositor should be set up and finalized at render-time, when the series of stills are saved out.
I'd like to adapt my still-image workflow to developing animations. I can imagine saving out the raw animation renders first (takes a long time), then filter all of the frames through the composite nodes at the end (relatively quick).
The compositing and the rendering should probably happen in the same .blend file, because it would nice to use the animation drivers for compositing values.
Is there a nice way to achieve this?

There doesn't need to be a big change, the compositor can read a sequence of images just as easily as a single image.

I would recommend saving your render files as openexr multilayer. The files are larger but they can include all render layers and output sockets that you normally use in the compositor. If you specify a full filename remember to add some #'s to get a frame number included.

After saving your animation frames, create a new scene and in the compositor start with an Input->Image node and open all of your images. This leaves you with one scene to do the heavy rendering and one for only compositing and it's all in the one blend file. As the same nodes will apply to the entire sequence you may want to create several scenes for compositing to get different effects in different shots of your animation.


Looking for simple skin node setup Blender beginner here. I've been trying to find a simple node setup for human skin -- specifically, skin generated from MakeHuman. Almost all setups I could find on the web were either outdated, or quite complex, involving dozens of nodes and numerous textures (bump, displacement, etc.) in addition to the diffuse texture.

The (obviously basic) setup I have right now is this:

So, my question is: What can I do to improve the above setup, without using additional textures (which I don't have), and without too much additional complexity? Note that photorealism is not required at all; I'm only looking for slight and simple improvements over my current setup.

Update: Here's what my character currently looks like:

The skin already looks good enough for my purposes, but it still looks kind of... flat??

With makehuman textures, you can simply use the principled node and feed the image texture to color and subsurface scattering inputs.

To provide bump detail, duplicate the texture with Ctrl+Shift+D (this keeps it connected to the mapping node), and add a color ramp to create a greyscale image to feed into a bump node.

An example of a simple setup could be something like the following:

Click to enlarge

This produced the following result from a makehuman export:


bone spine004 cannot connect chain bone position is disjoint. incorrect armature for type chain_rigs Using rigify when generating the rig I get this error message Does someone know how I can fix this I don´t want to start it all over :_C

This worked for me...
I went to Bone Properties for Spine004.
'Inherit Rotation' was checked,  I unchecked it.
...no more Error


Blender camera problems I am trying to render my model but the camera kinda shoots into the model. When I press Ctrl+Alt+0 to bring up the camera view mode it makes my model so large instead of showing the view from the camera.

I'm very new to blender this is my first  project.

Thank you

I'm guessing that the issue you have is clipping.

You can change that in the Camera a properties:

Set it to something low this will allow your camera to get closer to your model.


Texture appears differently across surfaces of a complex object? I am currently using a UV Map node and a Mapping node to control the texture over a complex object.

Weirdly, the texture appears dramatically differently across the object. Specifically, on some surfaces, texture looks just right, whereas on some other surfaces, the texture suddenly becomes barely visible, as shown below.

Here is my model.

How may I make the texture look the same everywhere?

P.S.: Since (1) I am building an automatic pipeline, (2) the object is very complicated in geometry, and (3) it's not necessary to have a specific texture, it's not feasible to specify a UV map, so I am looking for an "automatic" solution like Generated Coordinates.

Automatic UV coordinates will yield relatively uniform and consisten texture densities across your mesh, with little effort too, at the expense of control and flexibility.

They will inevitably produce distortions of parts of the mesh, since they are blindly projected from a predefined point, without any regard for mesh topology or shape. They should however maintain an overall constant density distortions aside.

If you wish to have better results at the expense of a lot more manual work you should go with the proper texturing workfow and use actual UV Coordinates by unwrapping your mesh.

This is a manual process, and the texture density will only be as uniform as your UV map quality and unwrapping skills will dictate.

I was able to achieve relatively good UV quality from the U > Unwrap > Follow Active Quads > Even option, with a fresh UV layer, on part of your mesh.

It yielded a relatively good and even quads grid. This is how a good UV map would look.

Again I can't stress enough that by default there is absolutely no obligation that your UVs will be uniform under any circumstances, you have to manually make them uniform by eyeballing and visually scaling every UV island so it matches your desired density.


Why does my object dissapear when i press 'only render'? I'm making an scene with some trees that are a particle system, i have plenty of planes with that particle system, but the last three planes i created for the scene, using the same particle system, doesn't appear at all, only on Wire-frame Mode, but disappear on 'texture' and 'material 'mode, and also in the render or 'only render' mode on Cycles.

What can i do in order to fix this and make my trees rendereable?
(the ones from the left photo are only a photo reference)

You also need to create NEW particle names at SCENE LEVEL (patticle modifier +) and at OBJECT level (name of the particle system to identify parameters). Go to those duplicated planes which are not rendering. Hit the "+" sign so they will be named with a new name. Use that same name and number to name the object properties in particle name as well (+).


How to use an object as a mask? I have a 4 point plane (quadratic) that I would like to use as a mask when rendering.I need this so the mask will be transformed correctly when I move the camera. This plane is covering the area I would like to mask.

I was thinking to maybe render a mask scene and feed that into the final scene as a mask. But since Blender now has masks, it would be easier if we could convert a mesh into a mask.

**EDIT
I'm using Blender 2.68a with Cycles.

You can do this using the Object ID and a ID mask node.

Select the object you want to use as a mask, and under the object tab in the properties set the Pass Index unequal 0 (I used 1, but if you have more then one mask give each one a different number)

Now, head over to the RenderLayers tab and check the Object ID pass

Re-render your image and head over to the node editor. There attach a ID Mask node to the IndexOB socket. Use the node's output as a factor for a mix node (See screenshot)

Here I used a test image, but you can use one from any source you want.


How do I move the fingers? I'm so new with Blender. How can I move the fingers ? Because when I'm trying to move only one finger,every finger moves.

https://imgur.com/dHXLiPP

It looks like a weight paint issue, like if every bone controls all the finger. Check this quick tutorial (youtube) to see how weight painting works and try to fix it by yourself.


I have all of my models-- how do I bring them into blender? I am 100% new to animation. I work for a company, and have been asked to try and learn animation for training purposes. All we need is very simple animations. We do have very good looking 3D models of workers, our machines, and possibly the environment they work in as well. I just need to figure out how to pull them all together and start learning the animation part.

Is there any videos you guys know of that could help me out here? I appreciate it.

***NOTE: I am not interested in learning to make these models at this point. I would love to know how, but I want to try and learn how to animate these models as fast as possible to start pushing out new training material. Maybe one day if I get the time, I will try and learn the modeling side. I am having to work all overtime to learn this part, so right now I do not want to take on more than I have to.

Welcome!

As I get you correctly, you won't need to care about modeling and you will get a complete model with texture, normal/ambient occlusion map and so forth.

To check what task will still be up to you, you might check for common workflows:

What is the workflow to create animation in Blender?
Unfortunately, it is quite a bit more than "just animating".

Since I am also a beginner in Blender, I can't speak from much personal experience. Here I have put together some (free) tutorials that have helped me to make my first steps. (There are thousand of other really good tutorials out there on Youtube, just search for them! Also Blender.org, Udemy and other pages have good, but often paid tutorials)

(!) You might still get your hands on some tutorials on basic modeling to deal with most likely upcoming problems!
For example:

Blender - https://www.blender.org/support/tutorials/
Blenderguru - https://www.youtube.com/watch?v=VT5oZndzj68&list=PLjEaoINr3zgHs8uzT3yqe4iHGfkCmMJ0P

Rigging:
Most possibly your task starts with rigging your models for animation. It essentially adds controls to your objects for animation, and defines what and how something moves or deforms.
For a perfect start into rigging go trough this series:

Terumag - https://www.youtube.com/watch?v=3J-XN38EnhQ&list=PLE211C8C41F1AFBAB

Animation:
Here you get a brief introduction into the concept of manually animating simple models.

Thilakanathan Studios - https://www.youtube.com/watch?v=7ZkdR1L91Ik

(?) Dynamics & Simulation:
A start in rigid body simulations/animations as if you might want to make simple physic animations.

Jeremy Jones - https://www.youtube.com/watch?v=sNhN3X3MvD4

And always work with reference material for your animation!

Tip: If you need study material for movement of living beings, just search for "Muybridge" on Google Pictures!

(?) Lighting, Rendering & Compositing
I don't know if you want to render your animations in blender or bake & export them to other software, say a game engine. As I never used blender to render my animations, I do not have any repository of tutorials on that. But you might just check the Youtube Channels I mentioned as well as the following and might find some good tutorials for your needs:

CG Geek - https://www.youtube.com/user/Blenderfan93/
Gleb Alexandrov - https://www.youtube.com/user/GlebAlexandrov/
AgenZasBrothers - https://www.youtube.com/user/AgenZasBrothers

3D Animation with Blender a complex topic and I hope, with this videos, you can get hold on a path for your journey.


Strange bug with the Subdivision Surface Modifier I just started using Blender yesterday. I'm trying to create a shotgun model but I've encountered a strange bug (I think) with the Subdivision Surface modifier.

Why is this happening? I've tried deleting faces and edges and putting them back but nothing seems to get rid of these pinches.

Check for faces inside the mesh. These are referred to as interior faces and they mess things up in ways similar to what's going on in your model.

One way to find them is:

Go to Edit Mode (Tab)
Make sure to deselect everything (A key)
Open the Select menu (bottom of the 3D Viewport window)
Choose Select All by Trait > Interior Faces

If anything ends up selected, hit X or Delete.

If that doesn't work, you'll have to hunt it down by hand. To do that:

Enter Edit Mode
Turn off your Subdiv modifier (eye icon in the modifier pane),
Delete a face near the problem area,
Rotate your view around and peek inside.

If you see an interior face, select and delete. And when you're done, of course, replace the face you deleted.


Scale a ring curve while maintaining the ring width I have these two circle curves in 2D mode. If we scale this object from it's center, it will shrink the the width of the ring.

Is there any way to rig this to make the ring smaller while maintaining the ring width?

I figured it out.

Go to edit-mode, select the outer edge of the ring and make a hook.
Select the inner edge of the ring and make another hook.
Go to object-mode and select the empty for the inner hook. Make driver for scale x, y and z.
Open Drivers editor and edit the existing variable (or make a new one if it doesn't exist).
Change the driver variable type to Transform Channel.
Select outer empty as object.
Change type to X Scale
Change space to World Space.
If you want to maintain 0.1 tickness then in the expression type "var-0.1" without the quotes for the expression.
Hide the inner empty.

Now if you scale using the outer empty, the ring should keep it's thickness.

Here is the example scene:


Delete part of an imported obj model in Blender? I've made a model in Magicavoxel and exported it in obj format. I then import it to Blender to change pivot point. My problem is that i have to export it from Blender in two parts. My question is how do i delete a part of an obj import?

Is the meshed separated in group for OBJ file?

Try to use Split by Group in importing OBJ file:

In that way, the object can be imported separately if the OBJ use group for objects.

Just delete the object by X

If the Object is still joined

Enter edit mode and deselect all vertices alt+A, and hover on the main structure and press L for linked mesh. Revert your selected by Ctrl+I and delete those vertices.


Does Blender have a software-limited amount of RAM it can use? The other way to ask this question is, are Blender's memory limitations solely hardware related? Or, is there a point at which Blender will either crash or fail to use additional memory, even though there is more memory still available on the machine?

Speculation isn't useful, but anecdotal evidence is, i.e. "I have 64GB of RAM and Blender has used all of it." Or "I have 64GB of RAM and Blender crashed trying to render a scene that required 16GB."

Even more useful than that is a software engineer's answer about how Blender actually works (not should work, not if it was coded the way I'd code it; what it actually does).

What is memory management (from http://www.tutorialspoint.com/):

  Memory management is the functionality of an operating system which handles or manages primary memory. Memory management keeps track of each and every memory location either it is allocated to some process or it is free. It checks how much memory is to be allocated to processes. It decides which process will get memory at what time. It tracks whenever some memory gets freed or unallocated and correspondingly it updates the status.

There is no software cap. There can't be - it would have to be coded in for it to be. Blender will use all your RAM up to 16TB (64bit). Its up to the OS to provide the memory for blender.

If you have a page file it starts at around 2 GB or 4 GB and windows expands the page file when needed. However, they might not be as fast as Blender requests more memory. If this happens, Windows does not allow Blender to get more RAM and causes an out of memory exception which crashes Blender.

At that point the page file gets bigger and in second run of Blender its very likely everything will run/render without problems.

If your OS fails to allocate some memory for Blender fast enough, Blender will crash.


rendering volume the right way? So I am rendering some abstracts and I have never really rendered a scene with volume and I am noticing how much noise it can create. I have searched around but can't seem to find a smooth setup for how to render this locally with cycles.

Here is an image rendered at 1920x1080 with 300 samples

Here is that same image at 2880x1620 with 600 samples

So there is still a ton of noise and very little improvement even though the render time went up from 3 minutes to 15 minutes per frame...

It makes me think that when rendering volume I need specific settings for my tile size, denoiser, volumetrics, AO, etc ...

If anyone has any pointers it would be deeply appreciated.

Thank you all !!!

I don’t know much about volume rendering but you can check out https://youtu.be/kYv3ZIlb_sU this guys videos about nebulae and volume rendering with eevee (actually pretty good).


Cannot set dimensions I can't set dimensions, looked really easy according to questions answered more than one year ago but I swear I am doing my best and have come up stumped. batFINGER gave me some pointers and I tried them but honestly I cannot see where I am going wrong.
On my menu there is nothing about setting dimensions (see drop down and also workspace on the right). Just scaling.

As @Markus von Broady pointed out, editing an objects dimensions is available in the N-Panel (hit n key) but not in edit mode, you need to be in object mode.

Changing any of the dimensions will also change the scale, so be sure to apply scale if you're doing any deformations, physics, etc.
There are other ways to get accurate dimensions while modeling in edit mode but that's for another question :)


How do you rig a character made out of linked parts? I've modeled a character that I want to rig. Various parts of the character are mirrored (e.g. left and right arms), so I want to at least partially link them to make iterating on the model easier (that is, to make sure that modifying one modifies the other: vertex data, modifiers, materials, etc).

If I try using instancing to do the linking (that is, grouping one arm together, and making the other arm an instance of that group), any pose change applies to both arms.

If I try sharing the mesh datablock only, the problem remains the same, as the vertex groups (which define which bones have influence on the mesh) are shared.

Is there no way to avoid duplicating the two similar objects?

You should be able to use the mirror modifier here.

It has an option for mirroring vertex weights.

It uses the standard mirroring name convention (like bones, so it works fine with rigging). Basically if a vertex has weight 0.6 in group.L, its mirrored copy will instead have a weight of 0.6 in group.R. By creating empty groups for the mirrored side it is quite easy to rig one side and have it cleanly mirrored.


Subsurf ruining seemingly clean topology? Here’s the mesh.

Here’s it with subsurf.

So, why is this happening? I went out of my way to manually join the mesh as to create quads. Sure, it’s a funny shape. I can see how the right angle kind of looks whack, but conceptually, it’s all quads, right? I want to know the technical reason it’s not smoothing this over if possible and means to achieve this if this is not the correct way to go about it.

Note that:

1) I deleted the inside faces
2) I merged by distance

Thank you,

John

You need to add some "loop cuts" and slide them close to the edges where your mesh is joined. You may also have some z-fighting going on. Meaning faces that are occupying the same space.


How do I know if I have a selected keyframe using python? I'm looking for something similar to this, or other:

len(bpy.context.selected_objects)

It seems there is no direct way to get a list of the selected key frames but you can loop through them and check point by point:

for one object and current action :

import bpy

obj = bpy.context.object
action = obj.animation_data.action

for fcurve in action.fcurves :
    for p in fcurve.keyframe_points :
        print(p.co[0], p.select_control_point )

more detailed :

import bpy

obj = bpy.context.object             #active object
action = obj.animation_data.action   #current action

print(action.name)
for g in action.groups :
    print("",g.name)
    for channel in g.channels :   # channel is fcurve
        print("  %s[%s] :"%(g.name,channel.array_index))
        for p in channel.keyframe_points :
            print("    is selected at frame %d %s"%(p.co[0], p.select_control_point ))

for the whole scene you cane use :

for action in bpy.data.animation_data.actions :

for the action editor or dopesheet :

import bpy

for area in bpy.context.screen.areas:  #loop through areas
    if area.type == 'DOPESHEET_EDITOR':   #find the dopesheet
        dopesheet = area.spaces[0]
        print(dopesheet.type)
        action = dopesheet.action
        for fcurve in action.fcurves :
            for p in fcurve.keyframe_points :
                print(p.[0],p.select_control_point)


Why does Blender Game Engine sometimes not render texture? In Blender 2.79 RC1, I have several scenes. With viewport set to show texture, I start the game in standalone player. If I start the game from certain scenes, it shows textures as expected. If I start the game from one scene in particular, however, it loads as if in solid mode. Why does this vary from scene to scene? Are there any other settings relevant to how BGE renders scenes?

Thank you!

It looks like I had set the scene that was loading differently to use GLSL shading instead of Multitexture shading.


Missing msvcr120.dll during installation I'm new to Blender and having trouble installing  it.
It looks like I'm missing "MSVCR120.dll". I've looked on the Blender site and found only closed jobs for this error.  I saw that in the .zip file from the download page it has it included but it still pops the error when trying to start Blender.

Could anyone help and tell me when MSVCR120.dll needs to be installed?

Error from win7 x6424gb ddr3 1600, amd fx8350, twin gtx750TI

  Problem Event Name:   APPCRASH
  Application Name: blender-app.exe
  Application Version:  2.7.3.0
  Application Timestamp:    54beacf4
  Fault Module Name:    MSVCR120.dll
  Fault Module Version: 12.0.21005.1
  Fault Module Timestamp:   524f83ff
  Exception Code:   c000001d
  Exception Offset: 0000000000092bc3
  OS Version:   6.1.7600.2.0.0.256.1
  Locale ID:    1033
  Additional Information 1: 9c5b
  Additional Information 2: 9c5b99d1538af1465d6588ee6e30c6d2
  Additional Information 3: 16bd
  Additional Information 4: 16bd3220bb13198108855400ad31c1a0

Are you using Windows 7 sp1?
The links below are from posts I found with similar errors in different apps.

Using the Microsoft C Runtime with User-Mode Drivers and Desktop ...
https://msdn.microsoft.com/en-us/library/windows/hardware/dn448963%28v=vs.85%29.aspx

http://answers.microsoft.com/en-us/windows/forum/windows_8-hardware/missing-msvcr120ddll/28b03b3b-1d15-4e47-ba31-8ace6920b9ba

Installing the run-time and/or making sure you have the latest Windows Updates might help you.


Shortcut key for smooth shading In edit mode I can press W to bring up the specials menu, then D to shade smooth. Is there any shortcut key for shade smooth in object mode? I know I can assign a key, but wanted to know if there already is one in blender.

No. There is not.

There are two good places to look for shortcuts. The Space menu, and the user preferences.

If there were shortcuts, they would show up there:


Insert keyframe for active material slot with python I am trying to create an animation with python.

For this I want to keyframe the material slot. So I tried:

matFocus = bpy.data.materials.new(name="matFocus")
activeObject.material_slots[0].material=matFocus
activeObject.keyframe_insert(data_path="material_slots[0].material")

If I execute this, I get:

TypeError: bpy_struct.keyframe_insert() property "material_slots[0].material" not animatable

Background is:
I have a scenery with many objects that all share the same material.
My animation should highlight (via color) a sequence of objects one after another. So my approach was to assign a "focus-material" to each of them one by one and to keyframe this.

Is there a solution to this?

If you cannot keyframe the property from UI, you cannot from python either.

The solution is to have a material assigned to all the object behaving in such a way that its color is not constant but dynamic based on something else. It can be:

vertex colors
place in UV space
object index pass
... (with drivers almost anything, but they don't update always nicely)

Let's use the object index pass, because it is just a single property you can animate, it is unique to each object and you have access to it from the material nodes:

Now if you change it for single object the material on that object will behave differently:

activeObject.pass_index = 1
activeObject.keyframe_insert("pass_index")

For Blender Internal the node setup is very similar (switch the material into node material):

There is also another solution available - you can set unique color for every object that is multiplied with the material (to get exactly the color have white material):

You set the color in python this way:

activeObject.color = (1.0, 0.0, 0.0, 1.0)   #RGBA red


how to create a single-direction IK leg with a direction controller? One of the things i'd like to do is create an IK that only bends forward and backward on a single local axis. At the top, I want a control to change the direction of that axis.

so the ik goes only forward and back, no sideways movement. And I control which direction forward is.

I can't get this to work with Limit Location or constraint combination I've tried so far. It messes with the overall direction control or the placement of the foot after the chain :(

I'm rigging a robot, and due to the (very specific) placement of his parts, his legs only bend one way, with a rotater cup as a hip socket. I can't quite figure out how to do this. Any help would be much appreciated!!

Thank you in advance,

Allen

In order to get it to work, the leg IK target bone  has a child of constraint to the rotater. The foot has an IK as well with a length of 1, and its target is parented to the leg IK.

Pretty tricky.


How to connect uv map in shader editor How can I connect the uv map node with the bsdf principled node?

Use the Texture Coordinates Node and select UV and plug that to the Vector input of your texture. Then plug in the color output of the texture to the socket where you need the texture on the Principled BSDF node (most likely in the Base Color input, but you don't specify the use of the texture in the question).

Alternatively use Input UV map node.


Is this actually a dependency cycle? I am using an armature with the following setup:

-A bone chain that is attached to a Curve with SplineIK constraint

-A free-floating bone that a curve point is attached to with the Hook Modifier.

My console is getting spammed with Dependency Cycle Detected errors. It says the curve is dependent on the Armature through the hook modifier, and the armature depends on the curve through the spline IK.

At the object level, it does look like a dependency cycle. But none of the bones in the splineIK chain are effected by the hook bone, so on the bone level there doesn't seem to be any dependency cycle.

However, I do seem to get behavior where if I move my Hook bone around, the splineIK chain moves with it. But when I reset the hook bone with alt+G, the splineIK chain does not update until I start another transform. This is a typical symptom of a dependency cycle.

What can I do about this? Do I have to have my hook bone be a separate armature?

This is one of the key reasons for the dependency graph rewrite, the old blender dependency graph treats an armature as a single node in the graph, dependent on everything any of the bones are dependent on.

The new depsgraph, which is still a bit of a work in progress, should fix this.
It can be enabled by passing --enable-new-depsgraph when launching blender, and may help.

For more info see:

https://code.blender.org/2015/02/blender-dependency-graph-branch-for-users/
https://code.blender.org/2015/03/more-dependency-graph-tricks/

A separate armature would fix this for now as well.


Why are material animations not responding? First of all, I don't even know where the keyframes go when I press I over the material. I assumed it was on the current selected animation, but when I play it, the color does not change. Does anyone know what I am doing wrong?

First, change the options in the tab, Material - Options - Object
Color and deactivate Use Mist.
Then, go to Timeline and place your marker in FRAME 1, go back to
the Object tab change the Object - Options - Object Color tab (you
will cmbios).
Change color or alpha according to your needs and insert a KEYFRAME
(place the mouse over the LMB level controls and select insert 1
keyframe).
Now, go to Timeline and place the marker in the frame you need in
this case, use FRAME 2.
Return to the Object tab and see options color object, again you
have the color or transparency adjustment you need and insert a new
keyframe.

Now try placing the mouse in Timeline or give play to your animation, it should work correctly.

  Follow the gif that I made this complete step by step:


Boolean Intersect - Cannot execute boolean operation This is my first project using Blender, so it could just be a rookie error.

I'm trying to extract a specific part of a city model using Boolean Intersect, with a cuboid, however I keep getting the same error of "Cannot execute boolean operation".

Unfortunately I'm unable to share the Blend file as it contains the model.

Try this:

1) In edit mode select all and remove doubles (W -> remove doubles ) when recalculate normals (Ctrl+N )

2) If it doesn't help, try newer version of Blender. It has a new Boolean solver "B-mesh" that can work with more complex geometry.

3) Check your model with 3D-printing toolbox add-on: Checks -> Solid must output 0 manifold edges.

If it's not so, you can select all bad edges by pressing button here in edit mode:


Why is the array modifier scaling my object? I'm trying to practice using the array modifier by creating a ring and having a series of gems that wrap around the surface. I created an empty in the centre of the ring that would serve as a pivot point, but when I clicked object offset (which I assume is the correct thing to do?) it created copies that became progressively more massive. What have I done incorrectly?

Your object and your empty have different scale values. Hover over your object's scale values and press CTRLC, then select the empty, hover over its X scale value and hit CTRLV. Repeat for Y and Z (provided your object is uniformly scaled).

Alternatively: Select your empty, then shift-select your object, rightclick on the scale values and say: copy to selected.

Any differences of rotation, location or scale between the two objects get multiplied for each new copy. That can be pretty powerful.

Two array modifiers on top of each other. The empties just differ a bit in scale, rotation and location.


Blender 2.8 Custom Start Window (Ctrl + u) Not working Ctrl + U worked in 2.79 for me, but in 2.8 it doesn't seem to work. Even if I press ctrl + u after deleting the starting cube, the next time I open Blender it's still there. Is there another way to do this now?

Thank you so much for your time!

You will have to do this through the menu.

To save the default scene use File > Save Startup file.

Many shortcuts have changed in 2.8. There is no default shortcut for that operation any more. Ctrl+Alt+U doesn't work any more.


Changing the shape of a Nurbs Path that's already animated I don't think I asked my question to its fullest earlier.
I have a NurbsPath animation. The tube NurbsPath shape wraps around the cylinder.
Is there a way to alter the shape of this object (NurbsPath) to where it's not a tube shape, but instead a block shape? Without losing my rigged animation?
I have tried numerous options, some recommended on BSE, but nothing works. I could be doing it incorrectly.
A suggestion posted earlier was to do the following (that did not work):

Change the profile of the generated mesh by giving another Curve object as the Bevel object
Add a Bezier Circle and adjust the points to create the shape you want, then set the Bevel settings

The issue I see so far is that the NurbsPath has already been converted/created/and cannot be edited in its shape from anything I've tried.
UPDATE -- I figured it out, and it was quite easy - all I had to do was delete the Subdivision Surface Modifier.

The answer was simple and I just didn't see it -
Delete the Subdivision Surface Modifier.


How to create a curved surface from a sharp edge? Sorry for the basic question, but I have been working on this all morning and can get a basic curve but I keep falling short of what I really want.

I am in the process of making a urban street model (square sections), the first section went very quickly, just a street plane, 20x20cm curb, a sidewalk raised 20cm off the street.

When I moved on to the intersection section, street with 4 round corners with the curb then the sidewalk and be precise enough to have it tile up against the plain street section, I just ran into my modeling limitations.

1st I tried a Bezier Curve, a 20x20x20cm box with array and curve modifiers. I could only get it to work if I did it in the center of a new scene with a fixed count (fit curve did not work). If I applied the modifiers there was all this extra geometry and ending did not seem precise.

2nd I scrapped the curb and just extruded a vertex and used the spin tool for the curve, this worked but now I need to work the curb into the texture of the sidewalk. This worked and not sure if i'm just making things more complex then then need to be.

I wanted a 90 degree curve that fits in a 2mx2m square, one curve that is the 20cmx20cm curb and another right behind it that is the sidewalk.

It is a bit difficult to visualize exactly what you actually want based on your wording of the problem but If I understand the problem correctly, what you want is a curved surface. You can achieve this by just bevelling a sharp edge,

You can take a sharp corner that connects at a 90° angle…

…and then bevel the edge using Ctrl + B and increase the segments to round it into a curved surface.


How to animate with random values in Freestyle Lines I want to animate the Dashed line with random values. How to do it? Any methods?
Thank You

The stroke and gap lengths can be keyframed. If you, for example, set keyframes at the beginning and end of the animation range, at value 1 for them all, then, in the graph editor, you can give their f-curves a Noise modifier:

I think you're still limited to a (spatially) repeating cycle of 3 dash-and-gap pairs, but it might still do?


Backside of Mesh Invisible Started about 2 weeks ago with 3D modeling and just finished creating this spartan styled helmet for my characters in Unity. When imported and looking at the face of the helmet, you can see the sky from the backside of the helmet, making the helmet look like it has a hole on the backside. I took pictures of both to show there is no hole on the backside and to show the sky coming through the mask. If any additional information is needed to help answer the question, let me know.

Game engines are real-time engines.  And culling the backside of a polygon helps the engine to render things faster.  There are no settings in Blender you can turn on or off to control how it is displayed in a game engine.  You have to either "solidify" your model in Blender, or find out how to show models double-sided in those game engines.


How to add header and space choice combobox to a custom made space? I followed the tutorial for making a custom space in C code, from the tutorial in this question Creating own editor type.

I succeeded but it seems that it has no header and no combo box with the list of other spaces. If I try to run template scripts to create panels and switch the bl_space_type to the name of my editor the script runs with no errors but the controls don't show up.
So I am interested in how to insert header, combo box and generally make it work like other spaces with the Python API.
A python based solution is preferable but, at this point, I would welcome any.

I am not sure how much of this is necessary but I did some intuitive edits on the code and it works, if anyone can explain exactly why I would be most grateful.

Go to the /home/user/blender-git/build_linux/bin/2.79/scripts/startup/bl_ui(respective to your system) folder where all the other editor *.py startup files are copy space_info.py, rename it to space_yourspace.py.

In the same folder find the __init__.py open it and add space_yourspace to the constant _modules, this will make blender run said module on startup, so be sure to edit the file before starting it up.

Now open up space_yourspace.py and delete everything from         INFO_MT_editor_menus.draw_collapsible(context, layout) down to, but not including classes = (.

Now in the classes tuple delete everything except INFO_HT_header, be sure to leave one comma after INFO_HT_header so it remains a tuple and not just a pair of parenthesis. Rename INFO_HT_header to YOURSPACE_OT_header in the tuple.

Go back to the remaining class and rename it also to YOURSPACE_OT_header.Inside the class change the value of static variable bl_space_type to 'YOURSPACE_EDITOR'.
After this, you can start Blender and in the header of yourspace you will have the said combo box.


Color difference between 2 objects in Object Mode/Solid View Blender 2.79
Two objects with identical material settings and no texture.
Viewed in Object Mode/Solid View the one on the left has a dark, bluish tint. The two look identical in other views and render with identical colors. But why the different colors in Solid View?  A minor but nagging and annoying nuisance. Much thanks from a newbie.

The left object doesn´t have average normals. I can see it because on the bottom there's a black face and there's a different color on the object.
Enter edit mode. Select all faces, press CTRL+N to average normals. Your object is now of the same color than the right one.


Publishing an addon to Blenders main branch I wrote an import/export script for a 3D model format some time ago and would now like to have it added to my portfolio by somehow putting it into Blenders main branch (make it somewhat official and credible).

Is there some group i need to post my addon to for review? How is that process going?

I believe your goal would be to make your addon a contrib.

This can be achieved at https://developer.blender.org/.
Here, your addon will undergo two types of reviews; function and source code.

For the function review, read : https://wiki.blender.org/index.php/Dev:Doc/Process/Addons .

For the source code review, read : https://wiki.blender.org/index.php/Dev:Doc/Tools/Code_Review .


3D objects in tracker scene slide off position I have a video footage shot on an iPhone 8, that I want to track and use in Blender (to add objects etc.). I added a couple markers and these track pretty well, I can get a fairly low solve error (under 0.3).
The problem is that the ground plane keeps slipping off from its original position in the 3D scene. I tried a couple different camera settings (settings only sensor width, both width and focal length, various refine options), but the result is never satisfactory. Since this is the first time I am trying tracking, I might be missing something here. Another problem might be that the video is actually shot in portrait not landscape.
I uploaded both the project file and image sequence compiled into an archive here https://drive.google.com/file/d/1hn30fjg09rlZt3wLz0bfsWwe_oraut1q/view?usp=sharing. It is unfortunately quiet large because of the png images.

The most common error is this: the shot has no parallax. Meaning that the camera is stationary, it is just rotating, but with no displacecement.

Shots like those cannot be solved with the default solver, but need to be solved as tripod. Read:
How can I get better results when doing camera motion tracking?
A few words of advise: track objects at the point where there is more contrast, like the window on the back, don't track the middle where all of the pixels have almost the same value, track a sharp edge or features that show distinct characteristics.

In this case the tracking is accurate and the tripod solution is as good as it is going to get, but know this: you will never get 3D reconstruction out of a tripod solve. You will only get a camera movement that resembles that of the original camera. Without parallax there is no way to estimate depth, meaning how far away objects are from the camera. The tracker for the window across the freeway will end up at the same distance from the camera as the trackers for objects in the foreground.
The tracking points are projected into a sphere around the camera, there is no distance information. So in this case you need to be vary careful in setting the lens parameters correctly and try to match the scale of the 3d models to that of the real world. Grab the camera and try to move it so that it is at the height of the real camera, and for the actual distance try to create some geometry that matches the dimensions of real objects. Then you might need to adjust the size of the camera to match the geometry to the objects in the scene. In other words you are up for a lot of work and lots of guessing. There are no automatic tools for accurate solving without proper depth estimation.
As an alternative, try using single image in fspy and determine the camera lens, height and scale there, and use those parameters for the tracked camera.


How to keep one object on certain view mode? I'm trying to keep my reference image that I important as a plane in Material mode while I can still adjust the object I'm modeling by switching between Wireframe and Solid (by using Z). Every time I hit Z the reference image goes to wireframe/solid. How do I go about this? Google is yielding no results, or I just don't know the proper terms to use for searches. I am using Blender Cycles.

In the object properties there is an option called maximum draw type. Set this to wire. It will display the object as wire like the wire view mode, although a handful of things are different regarding selection in edit mode and such.

If you want to select the object like in wireframe mode as well, you can turn off limit selection to visible:


What is the best way to join two sculpted objects? I have just finished a sculpt of my first head and neck in Blender which I did as two separate objects to be able to reposition at will.  As you can see in the wireframed pic the neck has quite some excess and unwanted mesh which I would like to eliminate to improve on the overall poly count.

Which would be the best way to proceed to join the two sculpted objects and eliminate the excess mesh?

I tried deleting the excess vertices in the neck's mesh and then simply join the two objects.  Once joined the deleted part was not visible at all. However, with this method I cannot smooth the line between the neck and head. Keep in mind that I plan to simply paint the objects with marble texture and the main aim is to finally 3d print the face.

Why did I get this result when I did a Boolean Operation on the Neck and chose the head as the second object?
The unwanted mesh on the neck was cut off as I wanted but the rest of the mesh resulted in a lot of disturbance.

You should be able to do this with the Boolean modifier. Add a Boolean modifier to one of the objects you want to join, and set the operation to union. This will join the two meshes into non-overlapping meshes. You can then join the mesh without overlapping, disconnected vertices.


Blender Retopo Nightmare This is driving me crazy. I've been doing retopology for a model but anything near this bottom pinch turns all jagged and rough. I can't figure out how to fix this issue. I've tried changing the normals but it doesn't help. Any help would be appreciated.

Maybe you should make concentric circles with some successive extrusions (E) and scales (S), and the more the circle is central the more you scale it on the Z axis (S Z), and you should even scale the last ones at zero (S Z 0)


Unlink object after using Ctrl + L Blender 2.8

I linked some lights' "Object Data" using Ctrl + L so I could adjust their brightness etc. equally.

I'd now like to "Unlink" some of the lights.

How can I do this?

In 2.7, press U (Make Single User) > Object & Data.

In 2.8, bottom bar menu > Object > Relations > Make Single User > Object & Data.


Smoke coming out black It DOES create smoke but the smoke is pitch black

i have tried everything, searched everywhere but cannot find a solution! i need white smoke

anyone know of a solution or have had the same problem?

Rendered in Cycles in 2.71.5 using CPU

Make sure you have light in your scene, and that the number of volume bounces is greater than 0.

Also try reducing the amount of absorption or eliminating the absorption entirely. Density*40 will pretty much make the absorption node give solid black unless you have very thin smoke to begin with.


How to make the film transparent for other render passes? I have a scene to be rendered with Cycles with multiple passes like AO, diffuse dir-indir, normals etc.

Now the problem arises over here that I'm getting only the beauty render (i.e. the combined final render) with alpha/transparency, but I want all of my render passes to be transparent where there's no background.

Rendered passes should be treated as RGB and added/multiplied together (passes are light emissions from each component, therefor they have to be added together, with a few exceptions that require multiplication, like color and AO passes).

Up to that point, it's better to leave alpha alone, as you're dealing with the emissive aspect of the image.

Once you have your plate emissions composited properly, it's time to take care of the occlusion (provided by the alpha channel).

Blender has a handy node for that: The Set Alpha node. Just plug the result of the combined passes to the first socket (Image), then plug the rendered alpha channel to the second socket (Alpha).

The result will be a properly associated alpha image, with all the passes combined.

DON'T DISSOCIATE ALPHA using an Alpha Convert node! You want to keep it associated, so you can composite your image over a background using a Alpha Over node straight away.


How can I reload a UI operator instead of creating a copy of it when I run a script? I set up an operator script where I move the active object 5 units in the x axis every time I click on the operator. However, every time I click "Run Script", a new operator is made to be clicked on instead of updating the first one. What code can I write to only have one operator copy that I can update over time?

Here's my code:

import bpy
from bpy.types import Operator
from bpy.props import FloatVectorProperty, FloatProperty

class TestClass(Operator):
    '''Test Class'''
    bl_description = "test description"
    bl_idname = "object.test"
    bl_label = "Test Label"
    bl_options = {"REGISTER", "UNDO"}

    def execute(self,context):
        context.active_object.location.x += 5
        return {"FINISHED"}

    @classmethod
    def poll(cls, context):
        ob = context.active_object
        return ob is not None and ob.mode == 'OBJECT'

def add_it(self, context):
    self.layout.operator(
    operator = TestClass.bl_idname,
    text = TestClass.__doc__,
    icon = "QUESTION")

def register():
    bpy.utils.register_module(__name__)
    bpy.types.INFO_MT_add.append(add_it)

def unregister():
    bpy.utils.unregister_module(__name__)

if __name__ == "__main__":
    register()

When you add or alter something in your adddons register() function you also need to undo that change in unregister(). For your menu item that means adding bpy.types.INFO_MT_add.remove(add_it)

The other issue you have is running the script in blender's text editor. When you do this the code after if __name__ == "__main__": will be run, if you want to test your addon like this then add an unregister() call before the register() call. You will want to put the unregister in a try block to catch unregistering before the first register.

Blender's addons are sometimes easier to test if you save the file in your addons folder and disable/enable the addon from the preferences.


How to supress bpy render messages in terminal output? Using the Blender Python Module bpy the rendering process bpy.ops.render.render(write_still=True) is quite verbose:

Fra:2 Mem:14.35M (0.00M, Peak 14.50M) | Preparing Scene data
Fra:2 Mem:19.00M (0.00M, Peak 19.01M) | Preparing Scene data
...
Fra:2 Mem:15.00M (0.00M, Peak 33.27M) Sce: Scene Ve:21001 Fa:41576 La:1
Saved: /path/to/output.png Time: 00:00.60 (Saving: 00:00.06)

I can't make use of the proposed solution to omit the script output, because the Blender renderings are embedded in a larger python project using import bpy API rather than calling a python script file.

I tried to suppress the output using a python standard method presented here, but no success.

Is there any way to reduce the verbosity of Blender renderings when using bpy module?

The following output redirection proposed here does work:

# redirect output to log file
logfile = 'blender_render.log'
open(logfile, 'a').close()
old = os.dup(1)
sys.stdout.flush()
os.close(1)
os.open(logfile, os.O_WRONLY)

# do the rendering
bpy.ops.render.render(write_still=True)

# disable output redirection
os.close(1)
os.dup(old)
os.close(old)


Blender Python: Convert Enum Flags into String? It seems difficult to find any information about enum-flag usage and workflow. I'm familiar with bitflags and related operations, but the blender/python specifics are fun to figure out.

Is there any clever (or possibly obvious in my case) mechanism to convert enum flags into a string? It is primarily for debugging, but user friendly would be a plus.

The way enum properties are defined in Blender makes me wonder if the flags are not already defined as a string in some way.

Edit:
For example, my flags are defined like this:

FBXG_Mode=[
            # mode flags
            ('GA', "Asset", "...", 1),
            ('LP', "Low", "...", 2),
            ('HP', "High", "...", 4),

            # system flags
            ('EXCLUDE',"","",8),
            ('RENAMED',"","",16),
            ('DELETE',"","",32),
            ]

And it seems we can check for flags using strings like this..

if 'GA' in MyFlags:

By the way, how exactly does this work? Does the environment process this correctly because it associates the MyFlags variable with the FBXG_Mode list?

I'm very new to Python, so I have a couple questions if anyone knows the answers:

What tells the environment the attribute order of my FBXG_Mode list? Eg, how does it know that I placed the flag names into the second column/entry? Is this just hard-coded somewhere in the Blender or Python environment? Where would I find documentation about this? I'm not sure what this is called.
How do I access an element of FBXG_Mode in a way that allows me to access the name, description, value, etc? Would it be FBXG_Mode[0][1]? I'm looking for something more like FBXG_Mode['GA'].Description, or at least FBXG_Mode['GA'][2]. I would like to avoid the hard-coded indices if possible.
Is it possible to access the strings and/or properties of the FBXG_Mode list using only the MyFlagsvariable after it is assigned or associated with it? Does a flags variable have any type of association after it is assigned, or is the association only available during the assignment?
Is there any quick/automatic way to extract the toggled flags of a variable in string form, such as for printing text? This seems like something a generic function could be written to do, so I'm wondering if one already exists? Especially since Blender can generate UI controls basically the same way.

Thanks for any help!

It is sometime later after posting this question, and I have learned a lot about how Blender properties work. Here are the nuts and bolts that should answer my older question. Below, instance represents a scene element or property group, and Prop represents any property defined for the instance.

All Blender properties are stored in memory as two different value types - complex and basic. Some properties (like int) are the same type, but are still stored in two locations. Some others (like enum flags) are stored as very different types in each location.
Using syntax instance.Prop (same as getattr(instance,"Prop") or setattr(instance,"Prop",*)) reads and/or writes the property using the complex value types.
Using syntax instance["Prop"] reads and/or writes the property using basic value types.
Assigning either version of the two property value types will instantly and automatically update the other version to the same value of its respective type. You can literally assign a set of strings to the complex version of an enum flags property and, on the very next line, read the basic version of it to convert complex -> basic. Or do the opposite to convert the other way.
Be careful when reading the basic version of any property (syntax instance["Prop"]). It will not be generated for a specific instance (eg, property group) until the property is assigned for the first time (either type version). You can check to see if the basic version of a property has been generated by using if "Prop" in instance: or if "Prop" in instance.keys():. You can also use instance.get("Prop",DEFAULT_BASIC_VALUE) to safely request the basic version without knowing if it has been assigned yet.
The basic version of an enum flags property (instance["MyFlags"]) is stored as an int, which represents all of the binary flag values ORed together. The complex version of an enum flags property (instance.MyFlags) is represented as a set of strings, where each string represents the bit or mask you assigned to it.
To convert an enum flags property into a string, you can literally just convert the complex value into a string: str( instance.MyFlags )


How to make an "old glass" material in cycles? I'm asking about the glass found in old windows. It is not just dirty, scratched, or with varied roughness, but it has irregular imperfections in the glass that make all sorts of distortions. Both when looking through the glass (like in the image below), but also and to a greater extent when looking at the reflections.

Image by TTaylor on wikimedia commons

Image by Stanzilla on wikimedia commons

Take a look at the pictures on this site or this page to get more of an idea what I'm talking about in the glass.

So how do I make this type of glass in a cycles material?

for this kind of things you will want to use either a normal map (using the normal map node under Add node>vector>normal map) or a bump map (using the bump node found under Add node>vector>bump) and feed the normal output into the normal input of your refraction or glass shader

Here is an example setup:

And the results this gives:

If you make a proper texture to acomodate for the distortion you are looking for then you should be able to get identical results to the images you provided.

If you decide to use normal maps then you will need to use this fix: www.youtube.com/watch?v=jlOtXtQSxd0