How to select different objects and name them in blender 2.76b

In Blender, by default, selection is done by right clicking on an object.  (It seems weird but there are some good workflow reasons for this.)  You can change this under File > User Preferances (or Ctrl+Alt+U) > Input tab.

You can change the name of an object at the top of the Object properties tab.


Why are my sprinkles floating and not sticking to the mesh?

The problem was that the origin of your sprinkle object was very far away from the actual mesh.  That is why your sprinkles are all floating above the doughnut.
All you need to do is select your sprinkle object, right click, go to Set Origin and then click Origin to Geometry.

After that, your sprinkles should show up on the surface of your doughnut.


display object data name in the wiewport

The only solution I found is to create another propertis window with the object data tab opened.


How to render the viewport with EEVEE and the "final" render with Cycles?

The viewport is chosen automatically based on which shading mode you are in no need to do any additional setup.

For LookDev, and Rendered modes it uses EEVEE is used automaticaly, for other modes the Workbench engine is used.

To pick your current render engine used for image output go to the Properties Window > Render, tab and pick your engine from the list.


How do I draw a solid line when texture painting?

It's hard to say without seeing it, but smoothness will be based upon number of vertices and size of UV map.

So subdividing your model may help, and possibly setting shading to smooth, but more likely than not increasing the UV texture size will be your best bet.

It generally defaults to 1024x1024, but when you draw a thin line, those pixels get stretched over the surface of your model, so resolution can make a big difference.

For broad strokes, small maps are OK... but for fine details, you need more pixels.  Try 2048x2048, or possibly more, especially if your model is large, or you need even more detail.


I want to give credit to this post the answer to put the f2 add on was a bit weird but simply deleting the face only and removing doubles and after selecting the vertices and fill helped and is the solution for me.

Smooth shading is seemingly creating incorrect normals


How to select particular edges with a python script?

Armed with the extra information consider:

import bpy, bmesh

me = bpy.context.object.data

bm = bmesh.new()
bm.from_mesh(me)

EPSILON = 1.0e-5

for vert in bm.verts:
    if -EPSILON <= vert.co.x <= EPSILON:
        vert.select = True

bm.to_mesh(me)
bm.free()

Some clarification perhaps:

EPSILON represents a value that is close to 0. If you've ever inspected coordinates closely in Blender you will find a cut off point maybe at around 6 or 7 digits after the decimal where you start to encounter artefacts in the representation of that float. Because 0 and 0.0000012312423 are not the same number you can't simply do a check for equality with 0, instead you might check is the x component within EPSILON tolerance.

Here I make the significant digit 5 places after the decimal point, from practical experience i've found this to be sufficient.

>>> 1.0e-5 == 0.00001
True

The above will select just the vertices, from that point selecting the edges shouldn't be too difficult. Here's a quick implementation

import bpy, bmesh

me = bpy.context.object.data

bm = bmesh.new()
bm.from_mesh(me)

EPSILON = 1.0e-5
for vert in bm.verts:
    if -EPSILON <= vert.co.x <= EPSILON:
        vert.select = True

for edge in bm.edges:
    if edge.verts[0].select and edge.verts[1].select:
        edge.select = True

bm.to_mesh(me)
bm.free()


How do I subdivide a mesh into triangles?

Select the face and press AltP to poke faces:

From the wiki:

Poke Face, This tool fan-fills each face around a central vertex (r55833).
This can be useful as a way to triangulate ngons, or the depth value can be used to make spikes or depressions, Access from the face menu or AltP.


Look at that ! i had the exact same issue, and i found you can play with the softness of your light here...


Blue line appears on the side of liquid after render

The line is a natural glass rim reflection.
To eliminate it, you can increase Roughness and change IOR for your liquid material.
Or you can uncheck Glossy Ray Visibility for the cup object.
In both cases, the glass/coffee material won't be physically accurate anymore.


Why do i have different normal directions? (ascii stl)

It's because the vertices of the faces are listed in different orders.

The first face (red) is listed clockwise, and the second face is listed anti /counterclockwise, when viewed from this side.

The normal of a triangle can be calculated from the cross-product of two of its edges. The function is not commutative, so the order in which the edges are taken matters.

In Blender, and most other 3D applications, the vertices of a face are ordered in an anticlockwise direction, when the face is viewed with its normal towards you.

Whatever the 'Facet Normal' variable is doing.. (is it actually a scalar? 1 or -1?) it's doing the same to both facets, so does not alter the inconsistency in vertex order.

Edit: On further reading, it seems that facet_normal is intended to be a redundant, pre-calculated normal of the triangle, measured in the same space as the vertex coordinates. If not used, it's probably best set to (0,0,0).

In the example given, it's correct for the blue face but inconsistent, (actually inverted) for the red face, as defined by the order of its vertices.


Where does Blender 2.8 store theme files on Mac OS?

You can use this utility file to get the theme file

blender-build/blender/source/tools/utils/blender_theme_as_c.py

  Generates 'userdef_default_theme.c' from a 'userpref.blend' file.

  Pass your user preferenes blend file to this script to update the C source file.

  eg:

./source/tools/utils/blender_theme_as_c.py ~/.config/blender/2.80/config/userpref.blend


After 30 hours of trying, I am very happy that I made it work! Not sure whether this workaround is safe, but yet it works for Blender 2.78:

Rename blender-dir\2.78\python to something else, e.g. blender-dir\2.78\python-old
Download the embeddable zip of Python 3.5.3 from https://www.python.org/downloads/release/python-353/
Unpack its content to blender-dir\2.78\python (a new directory using the same name)
Unpack its blender-dir\2.78\python\Python35.zip to blender-dir\2.78\python\lib
Copy contents of blender-dir\2.78\python-old\lib\site-packages to  blender-dir\2.78\python\lib\site-packages except for __pycache__ directories
I am not sure yet whether any other files or directories need to be copied from python-old\lib to python\lib, if yes I will update the answer.
Find all __pycache__ directories in blender-dir\2.78\scripts\ and delete them
Copy blender-dir\2.78\python\python35.dll to blender-dir replacing the old python35.dll

So the issue is resolved by pushing in Python 3.5.3. I hope Blender will bundle it in its next release. In the meanwhile, please let me know in a comment in case anyone else encounters a similar problem :)


Ok, Everything is fine all you have to do is change the end frame to your desired value at the moment you have kept both frame start and end for particle system the same, Change that.
if you want the particles to disappear change life time.


Remap the default hotkey for inserting keyframes

You can change any Blender hotkey in the user preferences.  Just open the user prefrances menu (File > User Preferences or Ctrl+Alt+U) and go to the Input tab, then find the hotkey you want to change.


You can change the pivot point to do that.

For instance, here set it to the active element (last selected):

You can also set the 3D cursor as pivot point if you want to scale from a specific location.


Warp Modifier with Texture of your choice including sinusoidal.

There exists three or more modifiers that are relevant.

the wave modifier
the warp modifier which can take a texture such as a sine texture.
the displace modifier

Other techniques

weight painting and weight modifiers
texture to affect modifiers

Above is the warp modifier in action.  Rather plain ... no texture.

Closeup Fall Off with texture. Image Above.

Warp Modifier with Wood Sine Texture. Image above.

The warp modifier produces results similar to user gestures of

proportional editing.

The blue cube has a high vertex density.  The from and to are animated in rotation.

Results of the wave modifier. Sinusoidal influence. Image Above.


You can use the powerful Curve modifier to do this. Make a curve to use as the factor, name it something you can remember, and then select the curve you want to bend and go to modifiers and add a Curve modifier. You then will need to select the name of the curve you want to use as the factor, like this:

Now your curve should conform to the shape of the circle, however it may look a little odd:

What you need to do is select the circle and scale it to the desired size, you should end up with something like this:


How to add points to a grease pencil stroke (or make new one) with python script?

What you're looking for is the add method within the points collection.

EDITED: Fixed script to work with fresh clean files that have no grease pencil data.

import bpy, math

S  = bpy.context.scene

# Create grease pencil data if none exists
if not S.grease_pencil:
    a = [ a for a in bpy.context.screen.areas if a.type == 'VIEW_3D' ][0]
    override = {
        'scene'         : S,
        'screen'        : bpy.context.screen,
        'object'        : bpy.context.object,
        'area'          : a,
        'region'        : a.regions[0],
        'window'        : bpy.context.window,
        'active_object' : bpy.context.object
    }

    bpy.ops.gpencil.data_add( override )

gp = S.grease_pencil

# Reference grease pencil layer or create one of none exists
if gp.layers:
    gpl = gp.layers[0]
else:
    gpl = gp.layers.new('gpl', set_active = True )

# Reference active GP frame or create one of none exists
if gpl.frames:
    fr = gpl.active_frame
else:
    fr = gpl.frames.new(1)

# Create a new stroke
str = fr.strokes.new()
str.draw_mode = '3DSPACE'

# Number of stroke points
strokeLength = 500

# Add points
str.points.add(count = strokeLength )

pi, twopi = math.pi, 2*math.pi

theta = [20 * twopi * i / strokeLength for i in range(strokeLength)]

mean  = sum(theta)/float(len(theta))

theta = [th - mean for th in theta]

r = [4 - 2*math.cos(0.1*th) for th in theta]

y = [th/twopi for th in theta]
x = [a*math.cos(b) for a, b in zip(r, theta)]
z = [a*math.sin(b) for a, b in zip(r, theta)]

krazy_koil_points = list(zip(x, y, z))

points = str.points
for i, point in enumerate(points):
    points[i].co = krazy_koil_points[i]


In Edit Mode with the bone(s) selected that you've moved, go to Armature, then Symmetrize.


How to improve the contrast and colors without getting clamping?

You can use the Dodge and Burn nodes for that and they will add a glow effect too on your image.
The dodge node will brighten your image, the burn will darken it. Both have more effect on bright areas and no effect on dark areas, so to avoid clamping we will apply more dodge on the darker parts and more burn at the brighter area, then we will mix them to only have the burn from the dark value of the source image and the dodge from the bright values. If this is not clear here is a step by step.

For this example I will use this source image:

Burn node:

To apply the burn on bright areas, add a Mix node in Burn mode and plug the source image to the 3 inputs. If an area is dark the image used as a factor won't apply the burn so it won't set the value bellow 0.

Dodge node:

For the dodge add a Mix node in Dodge mode then plug the source image to the 3 inputs but this time invert the image for the factor. This is the opposite, the dodge will be mostly applied on the darker value, but at the same time it has less effect on those so you will mostly get the effect on middle gray values, you won't have any clamping.

Blending the nodes:

Now to blend the two images add a Mix node, use the original image as a factor. The first slot will be the image used for everything dark to middle gray and the second for middle gray to bright.
For the first slot connect the Burn mode, to get the slight effect he has added on the shadows, for the second the dodge.

The contrast will probably be too strong, you can add a mix node and plug the original image in the first slot and the image retouched in the second slot. Now use the factor to adjust the contrast, here it is at 0.5:


How do I start a cloth simulation after an animation?

The simulations in Blender usually all come with an option for caching, and the place to cache the cloth simulation also serves as a control from when to when the simulation will be taking place.

Here a little visual demonstration:

So to speak of the most simple solution, all you have to do is to set up the simulation and limit the start and maybe the end (means the cloth would not continue falling or folding and just stay stiff in the last calculated form) of each cloth object simulation.

Happy Blending


60°

Orthographic camera projects rays that are perpendicular to its plane. The length of a projected segment can be calculated using trigonometry.

In the first example of the figure below (left), a camera sees the segment from the top. The "projected" length of the segment is equal to its true length. The more the camera starts to face the horizon, the shorter the projection will be.

From the second example (right) we can easily figure out what is the general formula to get the length of the segment's projection upon the camera plane.

$$
P = R\cos{\theta}
$$

Where $P$ is the length of the projection, $R$ is the real length and $\theta$ is the angle.

In your case:

$$
P = \frac{R}{2}
$$

Then we can write the general equation as:

$$
\frac{R}{2} = R\cos{\theta}
$$

This holds when (one of the infinite possible solutions):

$$
\theta = \arccos{\frac{1}{2}} = 60
$$

In fact, the only combination of angles that makes a right-angled triangle whose one side length is half that of the hypotenuse is the 30-60 Triangle.

As the camera in its "angular resting" position is facing downward, the angle considered in the previous equations is the same angle you should put in the X rotation field.


Measureit Measurements Inconsistent After Export

Few things come in mind:

Set units to real world units (screenshot)
Make sure scale is equal 1 (Object -> Apply -> Scale)
Make sure your dimensions in real world units match what you'd want to print out.
After all that, double-check your scale is equal to 1, if no, apply scale again.


Blender Saves game as .blend when exporting as runtime,

You're probably exporting it wrong. Make sure you have the save as runtime addon enabled (User preferences>Addons>Game Engine). Without this you can't export as a game runtime, meaning people can't play it, like the issue you described.

Once that's done, make sure you are viewing the FIRST SCREEN you want the player to see. Splash screen, main menu, level 1, etc. When exporting, the scene you are currently viewing will be the first thing players see. Also make sure you have selected "Blender Game" under render engine options. Then you're good to export it.

NOTE: I'm on Windows, but should be the same with Linux, part from the .exe obviously.

Hope this helps.


You can do so by converting the curves to meshes (this will prevent you from making any new edit to the Bezier profile!), then joining all the meshes together.

To convert the curves, select each one, set the preferred resolutions from the Object Data (Curve) panel (these will affect how many polygons your mesh will be made of), then do Alt+C > Mesh from Curve.

Then, select all the meshes (possibly the car as the latest) and do Ctrl+J to join them.

Please note that this only assigns all the vertices/edges/faces to a single mesh object, but doesn't make smooth intersections or such.


Have you tried to select what type of keyframe you want to add? It is at the bottom just after the type of sync that you would like to keep while playing your animation.
Or if you would not want to set a specific type of keyframe, please click on the red button on the left of type of keyframe.


Shape keys & multiresolution, good or bad idea?

As you have discovered, Blender nowadays (from on 2.9 perhaps) supports combining shapekeys and multiresolution modifier. Before, modifying base mesh completely mangled multires data.


Ok, I got this. The reason was the object scale different from 1. I've applied the scale, and rotation works properly again.
Isn't this some kind of bug?


How to create a Round Edges Effect on an object?

If you create a new default UV map for an object, each quad face is given the entire UV canvas.

Disclaimer here, I think this only happens if you have first deleted every other UV map on the object, otherwise the previous UV map just gets duplicated to the new slot.  So if you are confident that you can unwrap your object again, it should be easy at this point to find or create a normal map that will give us this effect.  I just grabbed one from image search results for educational purposes.
You can create a second UV map to do a full unwrap if needed, so for argument's sake I'm using the UV Map node to draw from a specific UV map for this.

Hopefully this works for the Unity workflow, or at least gives you some ideas.


With KX_GameObject.endObject() you request the game object to be deleted.

This call does not remove the object from the scene at that time.

The object will be removed by the BGE after the actuators where executed. It takes effect within the next frame.

Imagine you put a label on the object ... "please remove" (or you put it in the trashcan). The janitor will remove it when cleaning the room.

Remark: It does not matter if you use endObject() or the EndObjectActuator. The behavior is the same.

Care the timing


Why can't I see the light source directly?

Of course there is.
To see your lights, just enable Scene lights in the Viewport Shading menu.

Point/Area/Spot lights don't have any geometry to be displayed. You'll have to use an object with the Emission shader (Mesh light) if you want the lightsource visible.

Scene Lights vs. Mesh light visibility


Why do calculated and read-out RGB-Values differ?

The values differ because the rgb-values of the color picker aren't gamma corrected.
If I correct them like answered here https://stackoverflow.com/a/17910665/3069477 the colors are matching. I still get different RGB-Values but the difference is really small (rounding error).
Resulting Screenshot:

Thanks @someonewithpc!


can i render seperate layers at seperate times?

You can control which layer(s) render(s) with the checkboxes next to the layer's names in the Properties panel > Render Layers tab. Only the layers that are checked will render. You can therefore check one layer, render it, save it, restart your computer, do the next two, and combine them all with the compositing that you probably have.


How to create a flower unfurling effect?

Create a flower petal, use the object instancer node to duplicate it and connect it to a for loop.

The key concept will be the following: Connect a Time Info into Animate Number nodes. Use this value to drive the Rotation and the Scale to make the petals flip open and "grow".
Now all object will flip open at the same time. To make them open one after each other, qdd the instance number to the Time Info.

The rest is just getting the proper timing, spacing and interpolation.

This node setup should get you started.


Can not get selection box selecting more than one object in Blender 2.8

I realized the exact same problem when using my laptop without power connected. The box selection bug happens when power is not connected and battery mode is set to "Saver" mode. When set to any other mode other than power saver, the box selection works fine. My laptop is running intel graphics HD 630/Nvidia Geforce GTX 1050.

PS. I am a beginner in Blender.


You need to switch the viewport shading to Texture, or press AltZ in 3D View.

There are generally five things that you should keep in mind to make sure bump effect can be previewed in the 3D Viewport, as shown below:

Regarding that, you just missed the 4th one. :)


The closest I came to what you probably want is this:

First, you need a new master mesh, because yours is not aligned to one of the main axis. So, create a new one. I used a simple little plane.

Now, link all meshes as you did before. And also as before, all meshes will look at the same direction as your master mesh.

Next, add an empty at the center of your Icosphere. This will be the look-at point for all meshes. So add a Track To constraint to one of them, select your empty as target, and switch To to Z and Up to X.

Last, select all your meshes with the constrainted one as active, and Object > Constraint > Conpy Constraints To Selected Objects.


Why do bones without visible weights move the mesh?

Actually blue doesn't necessarily mean zero weight. To make sure that a bone has zero influence you need to enable the Zero Weight option in the Viewport Overlays panel. The black areas mean real zero weight. Here you can see that the second bone has influence on a large part of your object.
I don't know why zero weight is not displayed by default in Weight Paint mode by the way, blue confuses people as they may think there's no influence when actually there might be.

Also note that you can make sure that a bone has no influence: select it and in the Properties panel > Bone, disable the Deform option.

The first bone's Deform option is deactivated but as it makes the others rotate, and as the others have influence on the top of the mesh, rotating the first bone will move the top of the mesh.
I guess you need to set your armature correctly, reparent the mesh to the armature, and give corrections in Weight Paint mode (most of the time parenting With Automatic Weight is not right away correct).


I'm not sure about what you mean with the random wireframe overlapping. To make this object I think you should fake the texture rather than model it, I see at least 2 ways:

With a Noise node > Height of a Bump node > Normal of a Diffuse. Here I've even mixed 2 noises in a MixRGB to give a bit more complexity. I also added a Layer Weight at the end, if necessary.

You could also create a repeatable texture from your original image. Unwrap your object, in the 3D view / Texture Paint mode, use the Stencil brush to paint on your object with your texture, and again use this with a Bump node.


How do I fix these black seams on my object?

First of all if you have holes that make those black lines, fill them by selecting everything in editmode, pressing Space and typing "Fill Holes" and Enter.

Next if you had no holes or if you successfully filled them press Space again and type "Degenerate Dissolve" and press Enter. Try to increase the Merge Distance in the Toolshelf if it does not work immediately.


Control a ColorRamp node from outside a node group

You can use drivers on the Pos value.
All you need is a driving value.

Let's make the drivers from the group input. First enter the group node, select the Group Input node. In the sidebar (open with N). In the Node tab, you can add Inputs, name them and set their default/minimum/maximum values. I added two new inputs:

Get out of the node, right click one of the value inputs and hit Copy Data Path (here the White Posisiton):

Think of the Data Path is like the url of a website or the file path of a file on your computer, but here it's for any data on Blender.

Enter the group node, right click the Pos value corresponding to the data path you previously copied (here the white Pos) and hit Add Driver:

A pop-up will show to let you set your driver. Set it as I do:

Type: Sum Values
Icon next to "var": Single Property
Prop : Material → select your material
Path : paste the Data Path copied earlier
Hit the Update Dependencies button

Note that once your driver is done, you can edit it via right click → edit.
And you can also copy-paste it from one value to another.

So if you want to create one for the black handle:
- right click the white Pos value → copy driver
- select the black handle, right click the black Pos → paste driver
- exit the node group and copy the Data path from Black Position
- enter the node group, right click the black Pos → edit driver
- paste the new data path
- hit Update Dependencies

And here's the result:


How can I set a custom projection matrix for rendering?

For orthographic rendering Blender can't take a custom projection matrix, however you can shear an orthographic projection to get the desired results.

Use an orthographic camera, with the camera set at an angle (45 degrees on the X and Z axis).
In the render settings, set the Aspect X to sqrt(2)This will give something almost exactly what you're looking for, except that its rotated 45 degrees.
To correct the rotation, use the compositors Distort -> Transform node.

Notes:

rotating the image will loose some accuracy, so you'll want to render larger, then scale down.
in the compositor you can scale down by 1/sqrt(2) to avoid loosing the corners.
Depth/Mist won't work as you might want, however its probably possible to use a gradient and offset the depth in the compositor.


How to Export the UV Map of a Cycled Hair Mesh?

u must select desired object (with a finished UV), then creat material and create image texture node in it, then in UV/Image editor creat image with resolution what you need and indicate this image in texture node, then select texture node (so that it is highlighted with a yellow frame) and in the render tab choose Bake -> BakeType: UV -> Press Bake Button


Finding the lists of connected indices associated with disjoint mesh elements

I'll give an alternative answer based on your own answer.

This slightly modified version of your script assumes the active object is appropriate for the operation. something like:

with bmesh:

import bpy
import bmesh

obj = bpy.context.active_object

bpy.ops.object.mode_set(mode='EDIT', toggle=False) # Go to edit mode
bpy.ops.mesh.select_all(action="DESELECT") # unselect everything

bm = bmesh.from_edit_mesh(obj.data) # load mesh
bm.faces.ensure_lookup_table()

loops = []
faces = bm.faces

while faces:
    faces[0].select_set(True) # select 1st face
    bpy.ops.mesh.select_linked() # select all linked faces makes a full loop
    loops.append([f.index for f in faces if f.select])
    bpy.ops.mesh.hide(unselected=False) # hide the detected loop
    faces = [f for f in bm.faces if not f.hide] # update faces

bpy.ops.mesh.reveal() # unhide all faces
print("Mesh has {} parts".format(len(loops)))

print("\nThe face lists are:")
for loop in loops:
    print(loop)

The output of the script is visisble from commandline/console

Mesh has 5 parts

The face lists are:
[0, 1, 3, 7, 8, 9, 10, 11, 27, 31, 32, 33, 34, 35, 36, 40]
[2, 24, 25, 26, 28, 29, 30, 38, 39]
[4, 17, 18, 19, 20, 21, 22, 23, 41]
[5, 6, 12, 13, 14, 15, 16, 42, 43]
[37]

This corresponds with the indices, proof using index visualizer:


OSL trace() : how is the "shade " parameter used?

As described in the OSL specification, the main purpose of the trace() function call is to be used within a shader to 'probe out' the surrounding geometry. When used in this way there is no need for the shader to perform the additional work of determining the shading of that 'hit' point - only whether there is something along that ray (and what/where it is). The default of the 'shade' parameter is 0 - ie, only determine whether geometry is 'hit', don't consider it's surface or shading. ie,

Optional parameters include:
    "mindist"  float     Minimum hit distance (default: zero)
    "maxdist"  float     Maximum hit distance (default: infinite)
    "shade"    int       Whether objects hit will be shaded (default: 0)
    "traceset" string    An optional named set of objects to ray trace (if preceded by a ‘-’ character, it means to exclude that set).

From what I gather, setting 'shade' to 1 indicates that the additional work of actually shading the hit point on the surface (eg, calculate the normal, interpolation, etc.) also takes place (taking additional processing time).

So, in summary, it's an efficiency flag - leaving as 0 provides a quick and dirty trace whereas setting to non-zero acivates the 'full' trace, including hit surface properties.

EDIT : For a related question (see https://blender.stackexchange.com/a/106832/29586) I have been trying to trace through the source code for the trace() function.

The trail seems to lead to the trace() function with the comment /* todo: options.shader support, maybe options.traceset */ which seems to confirm that the 'traceset' option is not implemented and the same function does not have any other reference to the 'shade' parameter - it would appear that the 'shader' mentioned in the comment is a typo (should be 'shade') and the 'shade' option is not implemented.


Difference Boolean modifier. How do I get it to work with my mesh?

Hi It does not work because your cube.001 topology is bad. You have two overlapped object instead one solid.


Compositing can be used to create a pixelated effect. Masks can be used to control where the pixelation occurs. The animation below shows an animated pixelated window.

Steps to create a pixelated effect in an animation in Blender 2.76 w/ Cycles.

Create the scene and lighting.
Add an object which will act as a mask for the pixelation region. Put this object on its own layer. See How to output ID masks as seperate files for compositing?
Setup render layers so the scene and the mask are generated as different layers.

Use nodes for compositing in the nodes panel.
Use the pixelation node to generate a version of the scene which is pixelated. Place an inpaint node before the pixelation node to ensure the pixelation works everywhere in the image. Use the mix node to combine the pixelated and original image where the mask is used to determine where it is pixelated. See the nodes setup below for an example.

The blend file for the animation is located here:


Instert an icon inside of an EnumProperty ? is it possible? (addon UI)

test_context: bpy.props.EnumProperty(
    name = 'Context',
    description = '',
    items = [
        ('GENERAL', 'General', '', 'BLENDER',1),
        ('FILEPATHS', 'File Paths', '', 'KEYINGSET',2)],
    default = 'GENERAL')


Bevel and subsurf are weird after inset faces. I used hardops. Simple noob question

To elaborate on Zak’s answer a little, the issue stems from these four edges at the corners of the mesh:

When you use the Bevel modifier with the Angle limit method, only sharp edges will be beveled. These four edges are certainly not sharp—the faces they’re connected to are completely flat—so they don’t get beveled at all. This produces corner geometry that looks like this:

Of particular note is the fact that this edge loop still only contains exactly four vertices:

Since the bevel didn’t actually add any additional geometry to this edge loop, subdividing it will distort it into a circle, for the same reasons that a simple four-vertex plane will approach a circle after subdivision.
One way to fix this is to set the Bevel modifier’s limit method to None. This causes all edges to be beveled, even ones that are completely flat, which adds the necessary additional geometry at the corners:

Now all the edge loops have extra vertices, reducing distortion when subdivision is applied:

Note that this only works okay because the upper rim is completely flat: if it were curved, then the additional geometry would cause pinching at the corners, and you might need to find a different approach.

As a final note, while this solution works okay for such a simple example, but in general, beveling all the edges might be too extreme. In situations where you want more control, you can use the Weight limit method and explicitly mark which edges you want to be beveled using CtrlE ▸ Edge Bevel Weight. For example, this can be used to mark everything except the corners as edges to be beveled:

With subdivision, this produces a nice, round shape:


You can change the color selector type in the user preferences.
To open user preferences, press CtrlAltU then under the System tab change the Color Picker Type. I think you may be looking for the Circle (HSL) type.


Batch rendering of 10,000 images from 10,000 obj files

This script will take all OBJ files in a certain directory, and one by one load them, render them, and remove them from the scene again.  This way you can render 10000 OBJ files without having to load them all into memory at the same time. The OBJ files do not need to be named in any special way (except ending in .obj).

import bpy
import pathlib

# Adjust this for where you have the OBJ files.
obj_root = pathlib.Path('c:/temp/obj')

# Before we start, make sure nothing is selected. The importer will select
# imported objects, which allows us to delete them after rendering.
bpy.ops.object.select_all(action='DESELECT')
render = bpy.context.scene.render

for obj_fname in obj_root.glob('*.obj'):
    bpy.ops.import_scene.obj(filepath=str(obj_fname))

    render.filepath = '//obj-%s' % obj_fname.stem
    bpy.ops.render.render(write_still=True)

    # Remember which meshes were just imported
    meshes_to_remove = []
    for ob in bpy.context.selected_objects:
        meshes_to_remove.append(ob.data)

    bpy.ops.object.delete()

    # Remove the meshes from memory too
    for mesh in meshes_to_remove:
        bpy.data.meshes.remove(mesh)

The rendered image files will have the OBJ filename in their name, so if you have cube.obj, the output file will be obj-cube.jpg (assuming you're rendering to JPEG files).

The camera and lighting is use as-is in the scene, so you can set it up beforehand and render everything with the same settings.

NOTE: since this is a synchronous script, Blender's UI will block while it's running. You may want to start Blender from a terminal (or choose Window > Toggle System Console on Windows) before you start it, to keep an eye on its progress.


Body mesh is rendering over clothes mesh when duplicating/mirroring clothes mesh

What is almost certainly happening here is that your face normals are reversed for the duplicated objects. In case you don't know, face normals are a fancy term describing the fact that all polygons, as a rule, have only one facing which the renderer recognizes, and the other facing is ignored by the renderer. The "normal" itself is an abstract line representation extending from the side of the polygon that actually gets rendered, though this representation is typically not displayed by default, meaning one could easily find themselves modeling for a very long time without even knowing about normals.
Select your problem geometry in Object Mode, then Tab into Edit Mode. Press 3 to go into Face Selection mode. Press a to select all the faces. Now press Alt + n To bring up the Normals menu, and from the list, choose Recalculate Outside. This should fix your problem.
In addition to the above, though, it might be helpful to discuss how your situation likely arose, and how to avoid it in the future:
By default, objects are created with their normals facing out, so that they will render normally. If they get turned inside out, then their normals face inside instead of out, meaning that their external facings do not render. That's probably what happened to you. This could have happened by taking your duplicated geometry and then scaling it in the X axis until its scale values became negative. That is exactly how the normals can get flipped, because scaling an object into negative coordinate space turns them inside out.
There are two simple ways to avoid this: Either 1) select your object to be copied, and put a mirror modifier on it, then apply the modifier. No normal flipping will occur (you may find that you need to create a dummy object at the worldspace origin to use as a mirror object before this will work properly). Or 2) select your object to be copied, duplicate it with Shift + d, then invert the x axis of the copy with CTRL + m, followed by pressing x to define the axis you want the copy object mirrored along.
Note that while this second method works to create a copy with proper normals, the inverted copy won't be in the correct worldspace position on the other side of the subject's body unless the copy object's pivot center was at the worldspace origin before inverting it. A simple way to deal with this is to make sure your 3D cursor is at the worldspace origin with Shift + c, and then set your Transform Pivot Point setting to 3D Cursor (menu accessible via the . key).


Making mirrored object a real object with mesh

The Mirror Modifier has a Merge option.

DO untick that! - check that the checkbox is not checked, so you have to separate objects while working with the Mirror.
Now the Magic:
After applying the Mirror modifier, you can go into edit mode and use "L" in Face select mode to "select linked".
that means you select all facees that are connected and because you dont merged before you can select both halfs of the mirror separatly.
Now pres "P" to separate selected. leave edit mode.

now you have two objects and can go one with it.


Physics: mesh moving on top of of another

If you really do not need the Physics simulation, you could use a Shrinkwrap constraint. To use a shrink wrap constraint, Add an empty, then  parent the empty to the ball (Ctrl P). Then add a Shrinkwrap constraint to the empty. Set the Shrinkwrap Target to the ground. For your case, you could set the Shrinkwrap Type to Project, then set it to -Z.

Keyframe your ball. Set the ball as a active rigid body (Add Active), in the Physics tab of the Tool Shelf. Then on your ground plane set it to a passive rigid body(Add Passive) in the Physics tab of the Tool Shelf. Play the animation from the beginning Shift Left arrowto jump to the beginning, and Alt A to play.


How to render a blender file that has a python script governing the animation

I believe there won't be any problems running your application on top of Verge3D. Since Verge is a pure JavaScript framework, you can integrate it almost everywhere.


In the Tool panel (displayed with T) > Options, you must have enabled the X-Axis Mirror option, disable it.


Blender 2.8 GUI lag when rendering (F12 & viewport render preview)

As a workaround, I am now using Blender 2.80 on a Kubuntu 18.04.3 system. The interface, while not perfect, works much smoother than on Windows (while rendering viewport view).

Since the nVidia driver doesn't get loaded on Kubuntu if the Intel GPU is selected (sudo prime-select intel), I am forced to use the nVidia GPU as primary, and so Blender uses it for both rendering of interface and rendering in Cycles. But this is still so much smoother than on Windows 10. The GUI elements react quickly to mouse interactions.


Subdivision Topology : Cut Triangle into Plane

https://topologyguides.com/ is a cool site that explores all sorts of topology issues.

First of all I'd try to align the edges of your triangle with the grid of the plane.

The rest of it depends on what the rest of your mesh needs.  If you just need a flat plane with a triangle cut out, I'd do something like this and take those extra verts straight out to the edges:

that's all quads except for the two triangles on the left and right sides.  It subdivides relatively well with just a little pinching at the corners:

if you don't want to extend all the way to the edges of the plane you can keep the edges relatively clean but close to the triangle:

:

It still subdivides ok, but a bit more pinching, and is more triangles and fewer quads:

There may be a better way, but this works for me. Definitely check out the link to the Topology Guides site, though, because it's a fantastic resource.


How to activate different tool gizmos with shortcuts?

thank you for your answer! I've found a solution
Just Right-click on the move, rotate and scale buttons, then "assign shortcut" and you add the respective command


A way to do that is using curves (that will allow to bend the cable if necessary).

The principle is to make a base shape which will be a slice of the cable. Then use this slice as bevel object on a curve. Once done, you can twist/tilt the curve extremity in order to twist the cable itself.

The base/slice shape :

It can be what you want (more or less detailed, for instance). The only constraint is we need to make it a curve object at the end, so that it can be used as bevel object for the final curve (the cable).

To do it quick :

Add a circle
Add a array modifier to the circle and choose for instance a count of 6
Add a simple deform modifier, set it to 'bend' and set the angle to 360°

Here the inner parts are a bit stretched (due to the deform modifier). You can refine that or use another approach (again it is to do it quick here).

The result of the modifiers is a mesh, and we need a curve.

So use AltC to transform it to a curve (that will apply all the modifiers and convert to curve).

Now, add a curve ShiftA then curve and bezier and set the previous object as its bevel object.

What you obtain at this step is probably to large. So scale down the bevel object and/or stretch the cable curve (in edit mode for this last, it will be better).

Now, enter edit mode for the cable curve, select one of the extremities and hit CtrlT to twist and move the mouse around :

The cable is deformed. It is because the origin point of the slice/circle is not at its center. So select it and transform its origin to its geometry :

Refine the result by changing the cable/curve resolution :

And so you obtain a bendable cable.

Note :

If you want to insert some additional control points to the cable, you will notice that the twist/tilt is not divided equally... unexpected behavior (for me)... so if this is needed, remove the twist/tilt and do the twist again ;) using proportional editing.


how do i replace the name of multiple objects in a list with names in another list?

Currently your script performs several unnecessary operations when your goal is to rename the objects.

You're creating a set of object names by using the {} syntax, which isn't necessary since the names are guaranteed to be unique.
Unless you intend to re-use the old names, it's not necessary to store them.
You likely don't need to store the new lowercase names either, if you perform your action while iterating over the objects.
Don't use a while loop when you intend to index elements. Use a for loop instead, especially if the object is iterable.
The l is a list of strings, therefore using l() would result in a TypeError, since a list can't be called. It's not a function.

The solution would be to iterate over the objects and rename them one by one.

import bpy

for obj in bpy.context.scene.objects:
    obj.name = obj.name.lower()
    # Perform additional tasks with the renamed object here

If you have to store the lowercase names in a list:

import bpy

names_lowercase = []

for obj in bpy.context.scene.objects:
    name = obj.name.lower()
    obj.name = name
    names_lowercase.append(name)


How do you keep a single object from casting a shadow?

Objects not casting shadows? easy, un-tick the shadow box.

In Cycles 2.79+, Ray Visibility was renamed to Cycles Settings.

As for the lighting, Cycles simulates the physical behaviour of light with some reasonable accuracy. All techniques used in real photography can be applied to lighting setups in cycles, The video also discusses the composite of various render passes, I think you'll find they are all possible in Blender. Be specific about what you want to know and you will get accurate answers.


How to solve joint bending with a mesh structure

You just need more geometry. Just insert more loopcuts and the deformation will be smoother.
e.g. left a cube without loopcuts and an armature.
right a cube with loopcuts and an armature.
result:


Is it possible to limit the "Cycles Shadow from Transparency" per Object?

There will be a "Transparent Shadows" option per material in version 2.68 and the latest Blender builds.
Using a Light Path node to disable transparency helps and achieves the same visual result, but it still needs to execute the shader to find out, which costs some performance.
Update:
This is now accessible in materials > settings:


Why will a background image not show up?

Background images are only visible in Camera View or in the Preset Ortho views along an axis.

Numpad 0 for camera view
Numpad 5 : shifts between ortho and perspective view
Numpad 1 : front view
Numpad 3 : right view
Numpad 7 : top view
Ctrl+Numpad 1 : back view
Ctrl+Numpad 3 : left view
Ctrl+Numpad 7 : bottom view


"Strongly reflecting" and "dark" are mutually exclusive.

However, maybe all you need to do is decrease the saturation of your material's colour. If the colour contains no red or green components, then there will be no red or green components in the reflected colours and the material will look quite dark.

For example, here are three reflective balls rendered in Cycles. From left to right, the saturation of the blue colour applied to these materials is 70%, 85% and 100%. With a lower saturation, the results look a lot more natural.


Deactivate the Mirror modifier Clipping option to prevent vertices from sticking to mirror plane, then it's possible to move them away from it even if they are already placed on it.


You understand the formatting wrong - see this with comments:

        # simple label
        layout.label(text=" Simple Row:")

        # create column to be able to merge vertically with align=true on a column
        col = layout.column(align=True)

        # create test row inside the column
        row = col.row(align=True)
        row.prop(scene, "test")
        # even if there is only 1 item in this row it needs aligning because otherwise the column align would'n work

        # create the test2 row within column and allow horizontal merge with align=true on this row
        row = col.row(align=True)
        # we don't want to put anything else on this row other than the 'split' item
        split = row.split(align=True, percentage=0.7)

        # put 2 things inside the split
        split.prop(scene, "test2")
        split.operator("render.render")

You can also make the button span across 2 rows if you order the elements in a different way:

        # simple label
        layout.label(text=" Simple Row:")

        # start with a splitted row - we dont want to split the whole layout if something
        # needs to be added after these elements
        row = layout.row(align=True)
        split = row.split(align=True, percentage=0.7)

        # put 2 columns inside the split
        colA = split.column(align=True)
        colB = split.column(align=True)

        # fill first column with props
        colA.prop(scene, "test")
        colA.prop(scene, "test2")

        # put a row into second column
        row = colB.row(align=True)
        # adjust the row's Y scale
        row.scale_y = 2
        row.operator("render.render")


Attribute error while declaring correct variables

As the error suggests, there is no lamp property in bpy.context and as you found context.active_object.data gives you the properties you are after when a lamp is selected.

Unlike a camera, there is no "active" lamp and there could be hundreds of lamps in a scene. You will most likely want to test if the active object is a lamp and display it's properties if it is.

if context.active_object.type == 'LAMP':
    lamp = context.active_object.data
    layout.prop(lamp, "type", expand=True)


Changing node structure during an animation

You could create the two node setups you need. (the two versions) and use a Mix node to mix from one setup to the other. You can keyframe the factor to do that automatically.


You can use HandBreak to transcode your footage into the needed framerate, or you could render your animation alone and edit it together in a dedicated video editor like Premier, Kdenlive, etc. Blender can be used to transcode but its not the most convenient way.


Blender won't allow me to select a single bone

After clicking your armature, change to Pose Mode or Edit Mode to select single bones. On the picture on your post, click that menu that says "Weight Paint" to choose a different mode.

Pose mode is for positioning your bones in a way that will position your mesh (or leg in this case).

Edit mode is for positioning the initial rest position of the armature.

To weight paint for a specific bone, (1) change to pose mode, (2) select the bone you want to paint for, (3) select the mesh, (4) change to weight paint mode, (5) start painting. This will only work if the mesh already has a vertex group with the same name as the bone. These groups are automatically generated if you parent the mesh to the armature and choose "With Empty Groups" or "With Automatic Weights" when parenting.

If you need more details on armatures or weight painting, I recommend a tutorial such one of these:

Wiki (skip to skinning section)
Blender Guru
YouTube


The online manual states that "In Blender 2.5, IPO Curves have been replaced by FCurves, however, editing these curves is essentially still the same."
https://www.blender.org/manual/animation/editors/graph/fcurves.html

I'll dig more for "deltas" info.
[edit] see this thread an BA it may help you: http://blenderartists.org/forum/showthread.php?219126-Move-Existing-f-Curve-to-delta-equivalent [/edit]

I discovered there is an option "Animated Transforms to Deltas" available through the space bar command search tool, it should derive by this GSoc work http://aligorith.blogspot.it/2011/05/gsoc11-greeting-goodies.html (this is what the last comment in the above cited BA thread refers to)


Cycles rendering looks strange and simplified

This looks like an accidental Layer Material override. Check if your active render layer has a material set in the data field indicated in red in this screenshot:

Such an override replaces every single material on the RenderLayer with the one selected. It's useful for adding custom AO passes, Clay Renders, or diagnostic renders.

Click the small X icon next to the material to remove the override, and you should be back to normal.

By the way: By default the viewport renderer does not take Render Layer modifications into account. That's why you get a different result between the two. You need to explicitly tell Blender to do this using this Toggle Button while a viewport render is running:


Simple fan with single bone / weight paint doesn't appear correctly while posing

If you have a vertex that is controlled by only one bone, even if the weight of this bone on this vertex is 0.01, the influence will be 100%.
Example: I have this square, the bone has a weight of 0, 0.01 and 1 on its 4 vertices:

If I move the bone, the vertices with a weight of 0.01 will move as much as the vertex that has 1, the vertex that has a weight of 0 won't move:

So if you want to vary the weight of a bone on a vertex, you necessarily need a second bone. If I create a second bone that has a weight of 0.01 on the vertex that has already a weight of 0.01 from the first bone, this second bone will share a 50% influence on this vertex.
For your object, you could create a series of bones, for example 5 bones, parent the object to the armature With Automatic Weights, then give your bones number 4, 3 and 2 a Copy Rotation constraint with bone 5 as Target, and a decreasing influence of 0.75, 0.5 and 0.25:

Here is what it gives:


NEW Xcode WWDC15 - Export from Blender - Supported formats - Alembic(.abc)

According to Ton Roosendaal, head of the Blender Foundation, Alembic plays a vital part in the current Gooseberry project pipeline. here's a related reddit discussion
Basic export of Alembic seems to work since 2013.

But then it's still to check whether the Blender-flavored .abc files play nice with XCode.

Alembic was introduced to transfer animated mesh deformations and camera translations from animation and simulation suites to rendering tools.

I overheard on twitter: Work is in progress to base many of Blenders chaching on the open source alembic library.


How to make gravity respect the scale in Scene > Units?

Under the scene settings there are also settings for the Rigid Body world. Instead of increasing the gravity, you could just increase the simulation speed there. Setting the speed to 100 will make the simulation look like the gravity was -981.0 in Blender.


How do I remove a texture node from my animation after using it

You don't have to remove texture node.
Add Mix RGB node and animate Factor from 0 to 1 affect appearance of second texture node.

For some reason, captured gif didnt recorded Factor value, but it is there :)


Rigged mesh deformed after opening blend file

As Firewill noted, it is a standard problem with python scripts. By default, Blender disables running scripts from scene, because downloaded scripts may contents malware.

So, to run this scripts you mast press "Reload trusted" in header of window, to confirm that blender may trust scripts:

If for some reason, you haven't this buttons, there is a workaround: Open User Preferences, in File tab click auto run python scripts:

In this case it is recommended to add a downloads path as Excluded.


Black Seams When Rendering Normal Maps in Cycles

It's just a problem with the aliasing, Blender can't bake with anti-aliasing, you need to bake a  very large texture and downscale after to reduce aliasing, or try your bake with xnormal or other software


In Blender 2.9+ there is an option for Auto Keyframing plane track corners.
If you press N while in the tracking scene and open the Track tab, there is a dropdown for the Plane Track which allows you to set Auto Keyframes for plane track corners.
You can make manual adjustments without having to export the trackers to empties and hook them.


Sequential channeling in Node Editor (no PBR workflow)

You can use "texture coordinate" input node and a "color ramp".
The X output is between 0 and 1. So if we split the color ramp in three constant steps at 0, 0.3333 and 0.6666 we'll have the color we want for the good disk.
For the grey part, we just compare the input value (0, 0.1, 0.2, 0.3) to X clamped into 0 and 0.3.


Blender Object keeps moving back to 0,0,0

I think you've accidentally added a keyframe. You can confirm by moving the boat (with G) and then pressing the right arrow to scroll to a different frame. If the boat snaps back to where it was before you moved it, then it's been keyframed. Applying the location will keep the boat from moving... but it won't solve the problem. If you want to move it again, you'll have to apply the location again, and so on.

If the above reveals a rogue keyframe, open the graph editor and press A to select all, then Delete to delete all the keyframes (assuming you aren't animating anything that you want to keep; otherwise, just delete the keyframes for the boat).

You can delete all the location keyframes for the boat by selecting it and then looking in 3D view > Properties panel (N in the 3D view) > Transform > Location:

If the values are highlighted green, or yellow like in the above screenshot, that means they have a keyframe. (Yellow means there is a keyframe on this frame, green means there is a keyframe on some other frame).

To delete all location keyframes on that object, right click on one of the values and select Clear Keyframes:


Render layers not appearing in the compositor

Delete the movie from the video editor and then hit F12. Then the render will be visible.


The transform displayed is the transform of the Object. This particular face has been rotated with respect to object it belongs to, in Edit Mode.

One way to  align the object to its  face, and center it:

In Edit mode, select the face, and in the Header >Transform Orientations menu, hit the little '+' to create a Custom Orientation from the face.
ShiftS > Cursor to Selected
Object Mode, Header > Options menu, check 'Origins'

ShiftS > Selected to Cursor
Header > Object > Transform > Align to Tansform Orientation.

(Uncheck the Origins option)

Now if you set the rotation to 0, the object will align to the world, and its face will follow.


How can I select a bone by name using python in blender 2.8

Find the object first (by name if you wish), then access the armature. The armature is the data of the object. It has an edit_bones property, but this property is only available in edit mode. This means we have to switch to edit mode first.

import bpy

ob = bpy.data.objects['Armature']
armature = ob.data

bpy.ops.object.mode_set(mode='EDIT')

# get specific bone name 'Bone'
myBone = armature.edit_bones['Bone']
#print the position of its head
print(myBone.head)

# loop through all bones
for bone in armature.edit_bones:
    # move its head and tail
    bone.head.x += 1.5
    bone.tail.x += 1.5

bpy.ops.object.mode_set(mode='OBJECT')


Grease pencil fill appears infront of glass, while in 3d space it is behind

Is it the same after rendering ?
What do you mean by 2 grease pencil ? are those strokes in the same object ? layer ? if not, did you try to put them in the same object and arrange the layer priority or stroke placement ?
I just Tried with a normal object with and without glass or transparent shader and it worked normally..


Is it possible to run a script from an external editor without reloading the file?

For short or non-operator-based scripts, that's as efficient as you'll get. Currently there is no faster way than AltR-AltP to reload a plain script modified in external editor.

For longer operator-based scripts, you can use the following initial steps:

Convert the script to an add-on, by adding proper bl_info dictionary and turning your main code into operators (can be made faster by using a template).
Create a symbolic link of the script or its development path to Blender's alternate script path (set through User Preferences > File > Scripts). That way, it stays registered on Blender upgrade, and your development folder stays organized.

If your OS or filesystem doesn't support symbolic link, move the script to the alternate script path and develop from there.
Register the add-on.

After that, the script can be updated just by pressing F8 Reload Scripts in Blender. Longer preparation, faster in the long run.


I have two separate objects that I'd like to use either to refer & align with, except when I enter wireframe this hides the shape I wish to refer to

found epic theme to see better:
https://blenderartists.org/t/theme-neutral-theme-for-blender-2-8/1137449

had dark image and a dark theme. oops


Straighten all bone chains in an armature

One option to do that would be to use Auto IK, which is located in 3D Viewport > Toolshelf > Options tab (use T to toggle open/close the Toolshelf). When Auto IK is turned on, you can select last bone of the chain and pull it straight to any direction you want.

Alternatively (necessary if your hair chains are directly connected to head), you could use IK Solvers. In Pose Mode, select the last bone of the chain, key Shift + I, select To New Empty, and in the Properties panel > Bone Constraints tab, set the chain length to the right amount of bones. Then, you can use the empty object created earlier to pull the chain straight.


How do you avoid dependency cycle between two soft bodies?

Just add a collision simulation to both the soft body objects, and then they both collide into each other.


How to remove all shadows, lights and gloss from render? 2.8

Since you don't add any light to your scene, the render will be dark which only light up by environment light. (It will be weird when you can see object in a place with no light at all)

If you are not going to render it, use DevLook will be a better and easier way to look the scene with the power of EEVEE. You can also use viewport render if you want to get a screenshot.

And the little sphere is preview light setting overlay:

left one: reflection map
right one: diffuse map

If you want a shadowless and reflection less render:

Try to light up your scene by environment light

And also set the shader node if you want no specular at all:


To reset the location of a moved object, press AltG.
However, if you want to move a part of an object to the objects origin, select this part in edit mode and set the Median Values in the right toolbar to 0.


You must press PgUpPgDown or use the scroll wheel during a transform action such as Translate (G), Rotate (R), or Scale (S).
During a transform operation, you can see the proportional size visualized as as a circle around the Pivot point and you can see the actual proportional size value displayed in the Header:

In the Redo panel located at the bottom of the Tool Shelf (N in the 3D view) or found by pressing F6, there is a slider to adjust the Proportional size. Note that this only applies immediately after a transform operation.


Okay, found the problem; somehow, under Duplication, I had Group chosen instead of None.

I blame the cat.


When operating Alt S, you can enable Even Thickness mode by holding Alt or pressing S once (see the tip on the 3D View header).


How to bake normal map if the models intersect?

To bake from an object with is slightly outer of your lowpoly mesh, you need to increase the ray distance option in the bake panel:

Blender bake using a ray casting. If the ray distance is 0, the ray starts from the lowpoly surface. So, if this surface is inside the highpoly mesh, the ray meets nothing.

With a higher value for the ray distance the ray starts farther to the outside of the lowpoly so that it can hit the highpoly surface.

Practically speaking you may need to tune this value (not too high, not to low) so that the ray does not hit unwanted surfaces of the highpoly mesh.


This should be rather easy.

Enable Face Snapping > Median (to snap with origin)
Check Align rotation to target
The object's Z+ axis now aligns to face normals


Transparent material showing as black when unselected

answer source

Go to the object panel in the properties and check Transparency in Display tab for all object you want to see transparent. make sure that you have the correct object selected.


Disable premultiplied alpha on the File output node

Just found a workaround.

The idea is to output to OpenEXR file format, where all channels are stored as is. Then post process it by another program to output PNG.

I've used https://github.com/Enichan/sharpexr library (MIT License) with the following C# code:

using System;
using SharpEXR;
using System.Drawing;
using System.Drawing.Imaging;
using System.Runtime.InteropServices;

namespace EXR2PNG
{
    class Program
    {
        static void Main(string[] args)
        {
            if (args.Length != 2)
            {
                Help();
                return;
            }
            var img = EXRFile.FromFile(args[0]);
            var part = img.Parts[0];
            part.OpenParallel(args[0]);

            var bmp = new Bitmap(part.DataWindow.Width, part.DataWindow.Height);
            var data = bmp.LockBits(new Rectangle(0, 0, bmp.Width, bmp.Height), ImageLockMode.WriteOnly, PixelFormat.Format32bppArgb);
            var destBytes = part.GetBytes(ImageDestFormat.BGRA8, GammaEncoding.Linear, data.Stride);
            Marshal.Copy(destBytes, 0, data.Scan0, destBytes.Length);
            bmp.UnlockBits(data);
            bmp.Save(args[1], ImageFormat.Png);
        }
        static void Help()
        {
            Console.WriteLine("Usage:\r\n\tEXP2PNG [SourceEXRFilePath] [TargetPNGFilePath");
        }
    }
}

Actually is not a solution to make it with the Blender directly, so i don't mark it as answer.

Please note, if you are going to use this code with sharpexr library, you must out OpenEXR file with RGBA, Color Depth set as Float (Half) and Codec as None, because the library doesn't support compression and seems Float (Full).

EDIT: Here is a PowerShell script to process multiple frames

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
cd c:\Projects\GinaGame\ArtWork\Images\cube

dir *.exr | ForEach-Object {c:\Projects\sharpexr\EXR2PNG\bin\Release\EXR2PNG.exe $_.Name ($_.Name+'.png')}


I'm using 2.76 And it all works just fine. Here are the steps:
You need to install the addon

Download the Add-on from the link in this page: https://github.com/Bombaba/BlenderPythonScripts/blob/master/mesh_offset_edges.py

To install the Add-on in Blender:
Press Ctrl Alt U to open the User Preferences window. Go to the Add-ons Tab and press on Install from File:

Select the file you had downloaded earlier and click on istall from file

Back on the User preferences window find the Mesh section and enable Mesh:Offset Edges by clicking on the box on the right.
To make the add-on permanent on your blender installation press the Save User Settings button.

The add-on is now available and ready for use.

Select the object you want to work on and enter edit mode (Tab)

Select the edges you want to affect and press Ctrl E. The offset Edges option should be available in the Edges Menu.

The options for the tool will be displayed on the Toolshelf (T) or by pressing F^


It depends a lot on the situation and what you're modeling.

Generally, I try to get the main shape of my model in before adding in the subserf, and then once it's to the point where I need extra geometry, or smoothing, I'll add in the subserf, and start to add in holding edges.

If an edge loop isn't adding anything, get rid of it. Every vertex should have a purpose.

If you're getting to the point where you think that it's becoming a bit too messy, it could be a good idea to retopologize your mesh to streamline the topology.


So I may have fixed my own problem. It seems that there was a duplicate edge in there that was causing it. Removed and recreated the faces and that seems to have fixed my issue.


The simplest way is to generate the UVs at the same time as you create your object. Just enable the Generate UVs box.


How to check the vertex/edge/polygon count of one or more object?

Script to print stats to system console

Script prints the stats of selected mesh object to system console.

import bpy
from bpy import context

sumfaces = []
for o in context.selected_objects:
    if o.type != 'MESH':
        continue
    me = o.data
    verts = len(me.vertices)
    edges = len(me.edges)
    faces = len(me.polygons)
    sumfaces.append(faces)
    print("%s: verts:%d edges:%d polys %d"
            % (o.name, verts, edges, faces))

print("total polys %d" % sum(sumfaces))

Sample output.

Cube: verts:8 edges:12 polys 6
Suzanne: verts:507 edges:1005 polys 500

total polys 506


Beginner question: Increasing poly density for a single side of a cube

I am glad you asked that question. I see many meshes from beginners with triangles or Ngons (polygons with more than 4 vertices) when it's not necessary. In most cases it's easy to change mesh density using only quads--once you know how.  The image below shows some examples to get you started.  Good luck.


It is important to note that booleans do not generally make clean quad-based topology. Therefore, no matter how high topology you go, you'll generally get tris and even sometimes n-gons that can destroy an otherwise passable result. Pointiness needs to rely on vertex data, and it seems that the model was nowhere near high poly enough to look clean with the pointiness node. (matching the topology density of the boolean and base model can help somewhat).

Because it's vertex based, the program can only really check if the vertex is bent, or the angle of its sides and other quads. this means the pointiness node will look up to 2 vertices away from any given point of measurement. The best way to combat this, is to make sure it always looks just as far, no matter what direction it tries. That's accomplished, normally, with retaining loops.

Your model may be high poly, but there will always be vertex-sized artifacts in the texture if you make it using vertex data on bad, or even normal but booleaned topology. you can only make them smaller.

there are only a few ways to deal with this in a boolean workflow:

brute forcing geometry density to millions of vertices.
retopology, to make proper retaining loops manually or via some remesh algorithm
wait until modeling is over, and paint the area by hand without baking textures
use a very low poly boolean object, so you barely have to work to retopologize just the area around the booleaned geometry.

The boolean workflow is nice, fast, and easy on the eyes, but when it comes to topology it's just about the most notoriously inadequate workflow. I would personally tell you to manually retopologize the part after if you absolutely must use pointiness to texture it, and if you do, you should probably use this proven topology, it's a favorite among hard surface modellers:

this is what you have, simply subdivided then booleaned

but if you just cut a low poly hole and put some nice loops around it to tell it where the curve is...

it ends up like this, with only a few polys, with the help of the subdiv modifier! (ignore the creases, I was too lazy to put retaining loops on the cube other than the hole)

buuuut I've gotta say I wouldn't suggest using pointiness other than as something to mix with a noise texture, so that I can get some nice paint chipping or grime on corners as such:


How to I make faces opaque on the inside?

You can apply solidify modifier to the walls and give the thickness as required.


Action Actuactor interrupting Motion Actuator

I guess you're using an armature rig for your character. In Blender it is possible to play different animations at the same time, if they don't requier the same bone of your armature. So for example doing an action with the arms while walking shouldn't be a problem.
Therefore you need to move one of your animations to another animation layer.

I'm not sure how you've set up your character, but I hope it helps!


No sculping when the other side is hidden

Press Alt + b while in Sculpt Mode to bring up the Region Clipping tool. A box can now be drawn to define the area you want to keep visible. Everything else will be hidden. The brush symmetry will still work on the hidden parts.

Press Alt + b again to cancel this mode. Note that it's not always easy to see where the edge of this region is, though you can get a sense of it by orbiting your view. As this tool takes a slice out of the visible area, the affected region actually exists within 3D space, meaning that if you are working up a sculpt, and happen to work your way past one of the clipped boundaries, that part of your sculpt will now fall into a masked region. If this happens, you'll simply need to reuse the tool, and define a new region.


Titan Black vs 2x970 rendering far too slow

There was a recent rendering issue with the 9xx series cards on Win10. You can find out more on the bug report page.

https://developer.blender.org/T45093

You should be able to get better performance with updated nvidia drivers for windows, and the most recent builds of blender.


The compiler the error message talks about is the gcc C compiler. Nvidia's nvcc compiler (which comiles the cuda code) does not work with gcc-4.8. I think the version you need is gcc-4.6.
I had the same problem. I had to install gcc 4.6 and then set the link gcc to gcc-4.6. It is normally set to the newest version of the compiler (gcc-4.8 in your case). There is also an answer that could help you on Ask Ubuntu.

However, as @gandalf3 mentioned in the comments to your question, this will not help you with using cycles. The compute capability of your card is just too low. It does not support certain features that cycles needs.


Yup thats what I would do. I'd apply the array modifier to your vent cutouts, then extrude them and add a boolean modifier.

1) Create the shape of your vents and apply a array modifier

2) You can adjust the distance between the shapes and add more of them here

Then just apply the array then boolean it to your vent.


Pink everything in Blender, even with all solutions i tried (searched Web for hours)

The issue comes from your shader:

Basically, you're trying to mix a transparent shader with "nothing". It's kind of trying to multiply by zero: it doesn't work well. If you set the material output to be Cycles specific while in LookDev display, it renders pink. If you go to rendered display, it will be black no matter the render engine.

So, try to add a shader into the second input of the mix shader. Or remove the mix shader completely.

If you intended to control the amount of transparency, just play with the color value:


Ok I have checked your file.. you can try doing what i did

I extruded the circle a bit and gave it a little volume..
try changing inflow velocity on x axis to 0.1m/s


How do I get Blender to export a single mesh instead of multiple meshes?

Like FFeller mentioned, select all the objects, right-click, and press Join. Make sure you shift click one of the objects so that at least one of them is selected, otherwise it is impossible to join them.
In the FBX export screen, there will also be an option to export only "Selected Objects", or just the "Active Collection".
Select the objects and collections you have to export, and tick both of those. If are still having problems, maybe export the objects as OBJ and everything else as FBX.


What I would suggest is turning the faces into quads or tris, like by poking (Ctrl+P). I don't know how exactly you want to save your original topology, but this shouldn't visibly change anything from the intended shape.

Alternatively, if you're sure nobody will ever look up the nostrils (if this is a demo render, etc) then you could just remove the faces. however, if you're planning on texturing it open holes in the geometry can cause problems for volumetric or subsurface shaders.


Screen layout with python scripting possible

No, currently the screen layout/geometry is read-only from Python's perspective.

(Can only be edited via interactive operators).

You can:

Change space types.
Change screens.
Change scenes.

But not resize spaces/regions.


The equation that describes the Y coordinate of the bending pivot could be:

Where:

R is the wanted radius (in Blender unit)
BBsize.x is the bounding box size (in Blender units) on the X axis of the undeformed object
Theta is the angle of deformation (in radians)

If I would like to know, for example, where to put the bending pivot for the default plane (BBsize.z = 2 units) bended by one radiant (57,2958°) around a  circumference with a 3 units Radius, I'll get:

3-2/1= 1 units

If I want to increase the Radius to 5, I must move the pivot point in Y =

5-2/1 = 3 units

Changing the deformation angle to 45° (0,785398 rad) would mean changing the coordinate to:

5-2/0.785398 = 2.45352038075 units

Final result for the latest set of values:

Note that, as in the provided result we are using the world origin as the ring center, we can get rid from the dipendency of R, so the location of the Bending pivot is:

5-(5-2/0.785398) = 2/0.785398 = 2.54647961925 units

Here's a file with a bunch of drivers that change the deformation angle and the bending pivot accordling to the number of elements composing the ring that you can examine:


Animations become messed up after rotating whole object. Is there an absolute (non-relative) posing mode or something?

Generally when you parent the mesh to the armature using Ctrl P the mesh object becomes child of the armature object (and vertex groups get relations with bones), so keyframing the whole armature in object mode should do what you're looking for.


How to use icon previews from bpy.data.images?

Data-blocks store their own previews, so you can access bpy.types.ImagePreview.icon_id

The icon_id can be passed to UI elements that take an icon value.

eg:

import bpy
for image in bpy.data.images:
    print(image.name, image.preview.icon_id)

This will print the id of already loaded icons.

One area I'd need to look into is how to generate icons from images. The interface does this automatically, but you may want to generate the images on demand (as far as I can see we don't have a direct API call to do this).

Heres a fully working example of using image previews in Blender's interface.

# Run this script and check the object properties.
import bpy

class ImagePreviewPanel(bpy.types.Panel):
    bl_label = "Image Icons"
    bl_idname = "OBJECT_PT_image_icons"
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "object"

    def draw(self, context):
        layout = self.layout
        for image in bpy.data.images:
            layout.label(image.name, icon_value=image.preview.icon_id)
        if not bpy.data.images:
            layout.label("No images!")

def register():
    bpy.utils.register_class(ImagePreviewPanel)

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

if __name__ == "__main__":
    register()


What does luminance have to do with the blackbody node?

Let's look at what Luminance means:

Luminance...is a measure to describe the perceived brightness of a color.
Source

Since luminance is the perceived brightness, not all hues with the same saturation will have the same luminance. The website linked above has a useful image:

From the image above, we can see that even though all of the colors have 100% saturation, their luminance varies a lot. Yellow light (2,800 K) has a luminance of 94%, while blue light (10,000 K) only has a luminance of 57%.
This becomes a problem with the Blackbody node, since its usual purpose is to provide color for Emission shaders and lamps. We don't want lights that are lit at varying temperatures to be perceived as brighter or darker than the others. We'd rather control this on our own with the Emission node.
All of the colors coming from the Blackbody node are divided by their own luminance as a kind of normalization, so that they all have the same perceived brightness.


Here's how you might do it using shape keys.

First model the fork as you would normally, but include plenty of edge loops around the handle and prongs (tines?). Save this as your base shape, create a new shape key, then enter Edit mode and deform the object manually by selecting and dragging nodes. Make sure the undeformed parts of the object are moved down by a suitable distance so that the deformation looks believable.

You can then animate between the base shape and the deformed shape key by animating the shape key's value parameter:


Using a Gradient texture you can fade the volumetric emission off however you want:

In this case, since it should fade out spherically from the center of  the ring I used a spherical gradient:

The vector input of the gradient node defines the position and size of the resulting gradient.
Since in this case we want the center of the gradient to be in the center of the ring, the Object Coordinates (0,0,0 at the object's origin) are what we want. The multiply node scales the coordinate system, which lets us control the size of the gradient.

In the image above the rays are made up of an extruded text object:

For linear gradients, you might not even need the gradient node. For example, the Generated coordinate system has 0,0,0 at one corner of the object's bounding box and 1,1,1 at the opposite corner. Using this, you could fade an object out along it's length by using one of the axis as the gradient:


Copy a mesh along an oblique direction and scale

In edit mode in one of the objects already there, select one of the already existing edges parallel to that direction, then go to the transformation orientation panel and click the + button.  This should create a custom 'Edge' transformation orientation, which you can use to arrange things as needed, in new or different objects, or with part of objects in edit mode.

To make a thinner rail panel, you could duplicate a panel, go into edit mode, select one of the vertical edges and then transform it along the Y direction of this custom Edge transform orientation - though in this case you can also do it possibly even quicker by using the Edge Slide tool (default hotkey G, then G again, when an edge is selected).  Scaling will not work here as the object is not symmetrical along that axis, and the opposite corners will distort, losing you the parallel lines.


The mist pass effectively fades out your scene the further it is from the camera (ie, the more ‘mist’ that light ray has had to travel through). The HDRI by its very nature is out at an infinite distance and, therefore, is completely obscured by the mist.


The shortest distance between two lines in Euclidean space is a linear segment, so this technique is essentially just minimizing the distance along the local Y axis by forcing the diagonal point to be perpendicular to the vertical segment by first constructing the point upon which applying that operation yields the alignment in the global basis.

Below is the series of steps.

Step 0: Identify the points you want to be aligned

Step 1: Extrude the Global-Y aligned point until it intersects with your diagonal line.

Step 2: Use one of the answers from here to move the cursor to the edge intersection How can I add vertices to intersection of two edges?

Step 2.5: You may need to enable the "add mesh: extra objects" addon on your user preferences

Step3: Create a new axis with an orthogonal basis containing the diagonal line, basically just select any two points on the diagonal line, then hit CTRL+ALT+SPACE to create an axis for that line.

Step4: Make sure your pivot is set to 3D cursor, make sure your transform orientation is the newly created axis. Select the diagonal point and hit "s" then press "Y" and then "Y" again to scale along the local Y axis you just created, and then the vertex should now be alinged both with your diagonal line as with as with the global Y of the other point.


How to transfer scale direction and magnitude of rotating object to another in world space with Animation Nodes or Sverchok

I am not sure if there is a mathematical way to describe this transformation, but the closest I can think of is the Shear transformation.

Or translation of vertices based on the distance to the line perpendicular to some vector:


Can I get a new random number per ray in the node editor?

There's enough randomness in the Position from the Geometry node. It will almost never be exactly the same for two samples, but you have to apply a hash function to convert it to a random number in the [0,1) range.

The simplest solution would be to use a Voronoi or Noise Texture node with a very large Scale.

Another solution is to make your own hash function using math nodes, replicating for example this GLSL code.


is it possible to unwrap an Icosphere in blender?

You will need to mark some seams. Ctrl + E, Mark Seam (and inversely Clear Seam)

An easy seam is one continuous seam around the sphere, which gives a good UV map when unwrapped.

Another seam type...


First, some general UV unwrapping tips

If you want to make it easy on yourself, first fix the topology of your object to be all quads that flow together.

What this means is that you want the faces of your mesh to be squares instead of triangles where possible, because the subdivision will occur smoothly and predictably, and most importantly in this case - your UV unwraps will be much more clean and manageable.

More on quad topology here.

Addressing some problems specific to your model

There is an area with bad topology - faces are overlapping. Move these edge loops:

And here are the problems with your seams:

Here is what I suggest doing instead to fix it:

How I approached this

Now that you know a better way to place your seams, I should explain that for an unwrap as simple as this, you don't even need to use seams. You can simply select the faces you want and unwrap by section. Only selected faces will be unwrapped.

Select everything except the two end caps. Then do a UV unwrap using the 'Follow Active Quads' method. This method gives very clean results on topology consisting of long spans of quads.

'Length Average' is the way to go to minimize texture distortion in this case, since it curves around corners.

In the UV/Image Editor, scale your unwrap result down to fit within the square area.

Next, select only the two end cap faces, go into top view so you're looking at them straight-on, and UV unwrap again. This time choose 'Project From View'.

Place your two unwrapped cap faces on your UV Map.

Here is the result:

If your texture looks strange on the tips you can Extrude the end caps so that the texture will be pulled in to a tiny point.

You would want to do this if you were creating a candy cane, for example:


Screen Space Reflection Flickering During Animation

This is why you should use EEVEE more as a low budget render, fast interaction before making the final render with Cycles.
EEVEE is real-time, therefore less quality. The flickering probably only gonna disappear if you turn off the screen space reflection and use raytraced reflections
You can also use later Blender releases that improve SSRF.
I've been using rasterized screen space effects elsewhere and that flickering appears constantly, so I confidently say it's inherent to kind of SS effects, so it's probably impossible to remove it completely, only to minimize by bumping EEVEE render settings.


Why does my object change it appearance when moving camera

The normals are inverted and backface culling is enabled.

Recalculate the normal by going into edit mode Tab and pressing Ctrl+N.


Use the denoising feature in Blender 2.79.
The noise might be caused by a glass material in your scene so I recommend deleting the object with the glass shader.


initial velocity for simulating planetary motion

an initial velocity in a rigid body simulation is very easy to do:

check animated checkbox and keyframe a location

keyframe another location on another later frame (distance + keyframe distance will "make" the speed

one keyframe later: disable animated checkbox and keyframe it


How do I enable a particle system for text?

You need to select a MESH object (particles do not work on curves or text).

To convert the text to a mesh, press Alt+C in Object mode, and select convert Mesh from Curve/Meta/Surf/Text

Then the options for particles will then be available in the Properties window.


How can I modify the thickness of an inset after it was done?

This is not strictly possible, however, it is practically possible using the following easy steps.

Select the inset loop using alt + right click
Press G twice to enter edge slide mode
Move your mouse to resize as desired.

Note: as with any other action, you can also pressspace and type edge slide if you don't remember the shortcut.


The Animated property of rigid bodies enables/prevents them from being simulated.

It can be keyframed as well. Start off with the animated property unchecked and key it, by hovering over the checkbox and pressing I. Then some frames later, when you wish for the simulation of the rigid body to start, set a keyframe with the animated property checked.

This can also be done with keyframes.
In this example I set LocRot keys on frame 1 and 3. Then I key the animated property to disabled on frame 2 and enabled on frame 3.

The result is a simulation starting on frame 3 with the initial velocity of frame 2.

Offset the keys as desired.


Blender sticks rendered images in /tmp on Mac and probably Linux. (I don't know about Windows.) It'll be called something like 0003.png.

You can save your rendered image somewhere by pressing F3 (Fn+F3 on a laptop) instead of trying to dig for it. This also lets you conveniently name it.


If the vertices are all one object, you could also use Dupliverts:

If the vertices are separate objects, join them with ⎈ CtrlJ
Parent the object to the vertices object.
Select the object you want to replace the vertices with and then the vertices object, then press ⎈ CtrlP> Object.

Enable Dupliverts in Properties > Object > Duplication on the vertices object:

If you want the duplicates to be on top of the vertices, make sure the object origins of both objects are in the same place. Use ⇧ ShiftS to snap the 3D cursor to an object and ⎈ Ctrl⎇ Alt⇧ ShiftC to snap the origin to the cursor.

Using dupliverts has the advantage that the object is instanced to each vertex, with in very efficient memory usage.

I just tested this by instancing a UV sphere to a > 20,000 vertex object with no trouble.


I found a way to fix it

I had to unwrap my mesh with conformal option and that's it.


Blender Imported file.OBJ I not showing up

If you expand the tree list in the upper right for that object, you can see what materials are attached to it and possibly reattach them without having to re-extract and re-import.

Depending on the size of your object, it may also be hidden by the clipping planes.  When I can't find something, I go to the menu on the right of the 3D window and change the clip to a really high number (usually 1,000,000 or so).  Since the object shows up in the list on the right, another thing you can do is select it in that list, move the mouse back to the 3D window, and hit the period key on the number pad to zoom to that object.


how to make camera look through objects from only one side?

Final result:

This is kinda same idea as @Duarte Farrajota Ramos but it is working in Cycles (viewport/camera).

Mesh:

Your mesh normals should point to the inside of the room as in the image below.

Materials:

You will need to assign different materials for floor and walls and ceiling.

Floor material. Could be anything you want.

Wall and ceiling material. Should look like this and in the place of red Diffuse you can and anything you want. Remember to check if Transparent shader color is pure white. Hex value #FFFFFF.


how to turn off x ray in particle edit mode?

I had the same problem. Just press the 'limit selection to visible' button.
In particle or edit mode, 3d view bottom left, next to the propotional editing mode.


How can I select the greater of two properties in python and send the result to a driver?

An update on script from my answer in linked question Any idea how to fit text width to screen

If scene.match_font_width is True it will resize all text in scene to match the one with greatest width.  I've put in both an update method on scene.match_font_width and a scene_update handler to make it "live" in the interface.  For most applications, I would imagine, the handler is "overkill", as you can just toggle the switch.

Using a driver approach here could result in the dreaded cyclic redundancy check, as the width of t2 is set to t1 (if bigger) that is checking to see if its bigger than t2.

import bpy
from bpy.props import BoolProperty

def set_width(scene):
    if not scene.match_font_width:
        return None

    text_objs = [o for o in scene.objects if o.type == 'FONT']
    max_width = max([o.dimensions.x for o in text_objs])
    for o in text_objs:
        o.dimensions.x = max_width
        o.scale.y = o.scale.x

    return None

def setwidth(self, context):
    return set_width(self)

bpy.types.Scene.match_font_width = BoolProperty(default=False, update=setwidth)
bpy.app.handlers.scene_update_post.clear()
bpy.app.handlers.scene_update_post.append(set_width)

if True:
    def match_textwidth(self, context):
        self.layout.prop(context.scene, "match_font_width", toggle=True)

    # for unregister method, hit F8 to clear by reloading scripts.
    #bpy.types.DATA_PT_font.remove(match_textwidth)

    bpy.types.DATA_PT_font.append(match_textwidth)

If there are some text's you want to resize and others you want left untouched, adding a custom prop to the ones to resize would be one solution

text_objs = [o for o in scene.objects
             if o.type == 'FONT'
             and "prop" in o.keys()]


I think you are looking for Depth Of Field settings. Select your camera, and enter camera perspective (Numpad 0) to see what it's doing. The options are in the camera settings. You can even pick a focus object:


It's really complicated because it involves hardware and software. But...

When your machine starts the operating system it sets one of the monitors as the main one, if you disconnect one of the monitors with your machine still on, the system still thinks the main monitor is turned on.

To avoid further problems, it is recommended not to disconnect the second monitor with your machine still connected! For this you should turn off your machine, disconnect the second monitor and then turn it on again so that the operating system recognizes the first monitor as the primary one.

Note: The final version of Blender 2.80 is still in development, many bugs can and will occur, this resolution problem may be part of that release.


I think I found my problem. It is related to the shader "volume scattering" that I put in the world settings in the "volume" if I remove this option my CPU rendering become identical to my GPU rendering. I found on several website people who say that there is a problem with the "volume scattering" and the CUDA.

https://blenderartists.org/t/cycles-gpu-renderer-cant-render-volume-scatter/647962

https://developer.blender.org/T50808

https://blenderartists.org/t/volume-scatter-with-gpu-worse-than-with-cpu-in-cycles/651603


How can I update a specific layer of a multilayer exr file?

You do need to render out a new OpenEXR file.

Bring the OpenEXR files you already rendered into the compositor using an image sequence node. Then add a file output node and set it to OpenEXR multilayer. Reroute the outputs to combine the images as needed and re-render the sequence.

The basic procedure to setup the OpenEXR layers is outlined on this post:Combining .exr files?

You might need to render out a set of dummy files to automate the rendering.
See this post:Export multi-pass .exr image sequence from cycles?


See the icon that looks like an arrow next to the eye on the outliner?

If that icon is ghosted the object cannot be selected. Click on the icon to enable it

These icons are switches:

The Eye icon is to toggle object visibility on the 3D viewport.

The Arrow Icon toggles selectability.

The Camera Icon toggles rendering.

Please take a moment to read more on the Blender Manual

https://docs.blender.org/manual/en/dev/editors/outliner.html?highlight=object%20level#toggling-object-level-restrictions


How to make fire flow from one point of an object to another

Quickest way I could work out:
Use a 'screw' modifier on a circle, with an animated angle (and an empty to rotate the circle around), then use this as the emitter. You'd probably want to put it inside your torus object and make it not render.
This works in Blender 2.81a (old smoke sim) and Mantaflow (November 26th 2019 build).
here's what it looks like- https://youtu.be/7h7JBEYuu1Q

And here's the .blend file (old 2.81a smoke sim) to pull apart- https://www.dropbox.com/s/zfctf8g5x31j9iu/FireReveal01.blend?dl=0

I tried using a simple wipe white-over-black image sequence as a UV mapped texture on the emitter/flow object, but both the old smoke sim and Mantaflow ignored it (just got a quarter of the torus on fire that didn't move) so don't waste your time with that!


This looks to me like there are double vertices in your mesh. In Edit mode, press A to select all vertices, then Ctrl + V to open the vertex special menu, and click on Remove Doubles.

It also seems like you selected a loop around the eye by choosing one vertex, and then pressing Ctrl while choosing a second. When you do this, every vertex along the shortest route between the two is also selected. I'm guessing you wanted to hit Shift but missed. It is super easy to hit something in Blender and have very unexpected and confusing results, when you are learning.


UV map either not unwrapping or is collapsing in a merge

The eyes unwraps fine, but because it has no UV seams the generic 'Unwrap' option doesn't work. Either add seams to it to use the normal 'Unwrap' option or use a different unwrapping option like 'Sphere Projection' or 'Smart UV Project.

More information about unwrapping spheres can be found here.


There is a way to do what you want. I am not sure if this is optimal but it worked for me.

Starting Blender

You can not import bpy from outside of blender (see this related question). You can, however, start Blender and pass it the .blend file with your game and a python script to execute. From the command line start

<path-to-blender>/blender <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py

Under Windows you have to use \ in the paths of course.

You can also execute this command from the follwing python script, if you want to create some data first:

import subprocess as sub

"""
create some data here and do other stuff like calling your Java application
"""
...

# execute Blender
command = r"<path-to-blender>/blender -b <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py"

p = sub.Popen(command, stdout=sub.PIPE, stderr=sub.PIPE, shell=True)
output, errors = p.communicate()
if not output == "" :
    print("\nOutput:\n\n" + output)
if not errors == "" :
    print("\nErrors:\n\n" + errors)

You can find more informationon on subprocess here.

Creating Objects

I would create the objects in a script passed to Blender, as I described above. You can also pass command line arguments to this script if necessary. Any command line argument passed after -- in the command line is treated as an argument for the script. The command line woud change to

<path-to-blender>/blender <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py -- myArg1 myArg2 myArg3 ...

Inside of Blender you can get the arguments as follows:

import sys
if (("--" in sys.argv) == False) :
    print("No arguments passed to the script.")
    return

argsStartPos = sys.argv.index("--")
arg1 = sys.argv[argsStartPos + 1]
arg2 = sys.argv[argsStartPos + 2]
arg3 = sys.argv[argsStartPos + 3]
...

# process command line arguments, create trees or what ever
...

After object creation: Start the game

I think the easiest way to achieve what you want is to set up the collision detection and player controls in the .blend file you passed to Blender. Then you just have to start the game engine's standalone player. Just add these lines to the python script that creates your scene:

import bpy

...
# create scene and stuff
...

bpy.context.scene.render.engine = 'BLENDER_GAME'
bpy.ops.wm.blenderplayer_start()

Hiding Blender

To hide the Blender window, start Blender in background mode. Just pass -b as command line argument. The full command should then be:

<path-to-blender>/blender -b <path-to-blend-file>/my_game.blend --python <path-to-script>/my_script.py -- myArg1 myArg2 myArg3 ...

Notice the -b before the .blend file.
The standalone player will still be started with a visible window.

I hope this helps :)