How does Blender handle model scale when converting OBJ to blend?

It's likely that there's a unit discrepancy between your MakeHuman export and Blender's default units, which are effectively metric (1BU = 1 meter). OBJ is just a container for sets numbers representing properties of the model, and Blender slots those in at face value unless you tell it otherwise.

If your model is exported at a height value of 184.30 cm in MakeHuman, Blender is going to input "184.3" into the model's Y dimension property, effectively making it 184.3 Blender Units (meters) tall.

To correct this on MakeHuman export, you can select "meter" in the Scale Units panel on the righthand side of the frame:

If you can't re-export the model, in the Scene panel, you can change Blender's scene scale units to centimeters (or whatever unit you exported in) before importing model to Blender:

Last, if you do not want to re-export or re-import, you can simply do a uniform scale on the model until it reaches the desired dimensions in the unit that you've picked for your scene.


How about some Particles?

Create a single Metaball.
On a separate layer create the text and convert it to mesh (AltC)

On the text object add a particle system.

Set the Physics tab to No and in the Render tab  set it to Object and choose your metaball.

Go back to the layer with the metaball and you should have your text made of metaballs.

To see a preview of the particle system press AltA

You can edit the number, size, randomnes on the particle settings, and to really have fun: enable physics and get wild...


View vertex color in edit mode instead of material color?

In Blender 2.8+, select Solid viewport shading and click the arrow button to bring up the viewport shading menu. Set Color to Vertex. Setting Lighting to Flat may also be helpful.


When I try to change the texture on a cube all of the cubes change

A material is its own data block, and a material can be applied to multiple objects.  So by modifying the material you see the effects everywhere that material is applied.
You must make a copy of the material and apply it to the object you want to change.


Is there a move topological brush in Blender?

There is not counter part to topological falloff with the sculpt tools AFAIK. There is a topological option in the move, scale, rotate tools when you enable Proportional Editing called Connected Only.

If you need to use the sculpt tools, use masking or hide parts of the mesh.


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

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

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


How to render the Trajectory of a Moving Object?

You can use dynamic paint, but as far as I know, this will alias a bit.

So I propose to use Animation Nodes instead. For 2.8 you can find an experimental version here.

The principle is to create a Bezier curve, set it to 2D, bevel it a bit and use it in Animation Nodes.

Calculation steps:

Take the moving sphere, its location and append it to the spline so that it is reinjected in the curve (bottom line of the nodes).
The used spline (top part of the nodes) is either an empty one (at frame 1, so that the curve starts to be empty) or the current spline of the curve as it is.

Few words about the cycloide itself.

If you add a simple deform (bend mode) to a subdivided segment, this will make a circle:

If we add an empty as axis origin, then moving the empty will make the obtained circle to rotate.

To make this rotation visible, add another empty (below with a sphere shape), and make the 3 first vertices of the segment parent of this empty.

Now the empty will move and rotate following the segment made circular thanks to the simple deform modifier:

The "drawing sphere above" is simply parented to this sphere empty.

(the file contains also the Dynamic Paint setting, using vertex color, it is on the hidden plane)


EDIT: This is not the right answer.

This is a common confusion that I wish Blender would clarify. Making a texture work in the viewport is not necessarily the same as making it work in the render.

The short answer is: you have to plug UV coordinates into the Vector slot of your texture node. If you have more than one UV Map, you have to do a bit of trickery (which is not at all obvious) to choose which UV map you plug in.

Documentation

To further the confusion, it's quite possible (and not terribly difficult) to make your object use a completely different image and UV map in the viewport than it does in the render.


Remove blue screen with blue object on it

Keying with a color background that is similar to the objects in the foreground is not a good idea...
Also, the background is not an uniform color, since the fabric has folds and wrinkles, so you will have to key out a large amount of different tones of blue, which will force you to use very aggressive settings for the key, which in turn will result in too much of the image being affected and degraded.
But since you voluntarily put your self on a bind and a challenge, you will have to work extra. KEY the background like you would normally, then you will need to create masks for the blue pail, and use those as core matte.

But you will notice that the key node has also taken away a lot of the blue component from the image, so the output has become useless.
You will then need to use the original image and associate the matte created by the key node and use it directly on the image with a set alpha node and an alpha convert node...

Then you will need additional masks to use as garbage matte to get rid of the dark areas (the folds on the fabric) to have a clean matte.

Then you'll realize that you need to bring back the shadow from the pail on the fabric... Getting the shadow information (and subtle gradations like reflections or transparency) would have been very easy to do with a proper flat background, but now you need to re-invent that portion of the image.
Then you'll realize that one of the other blue objects is also missing, so you need more masks...
This is way too much work for something that should have been very simple (and mostly automatic), extra work that could and should be avoided with proper preparation...

Now that you've seen the extra effort that it takes to do this, change the fabric to a color that is not present on the scene, stretch it so that it has no folds, and make a new picture and key it in a simpler and proper way... Key out that color so that you have a clear edge on the objects, enough information on the shadows and reflections and so on.
Even a black fabric would be easier to key (using a luminance key) than what what you have right now.


Eevee. Grass in the distance looks white-grey

It is a limitation on the way eevee deals with transparency.
As explained here: Cycles vs Eevee 15 limitations

Eevee’s Alpha Clip  layers materials from the front to the back, and looks nice and crisp. The trade-off here is that the material is either fully opaque or transparent, and can’t handle any blend between the two. They also tend to get more transparent as you move away from them. You can see in the example above that the tree in the back has its branches clearly showing through the leaves, even though it should be almost completely occluded


python controller module code works inside blender but not saved as game engine runitime

Monster's hint pointed me towards the real answer: Always look at the console window, when you are working with python.
(HowTo is described here: https://wiki.blender.org/index.php/User:Fade/Doc:2.6/Manual/Interface/Window_system/Console_window .) When I was using the Embedded Player in the Blender Game Properties Editor, the console printed out that it not can "import bpy".
So I realized that I only have to "import bge" and not have to "import bpy".

The second part to the answer I found in MikePan's answer in this post:
Packaging external libraries in the game engine 'Create Runtime'. I work on a Mac and I simply had to copy the python file withe code for the controller into the Content/MacOS/Resources folder of the Save As Game Engine Runtime generated app.

This question and comments are as well related to the topic: BGE: where to place external python modules when exporting for Mac OS X


Python rotate view on any given angle x , y , or z axis

Use rotation matrix

Similarly to object rotation to rotate the view from its current rotation 45 degrees about x axis

Using code from a previous answer

import bpy
from math import radians
from mathutils import Matrix
context = bpy.context

R = Matrix.Rotation(radians(45), 4, 'X')

for area in context.screen.areas:
    if area.type == 'VIEW_3D':
        space = area.spaces.active
        v3d = space.region_3d
        v3d.view_matrix = R @ v3d.view_matrix
        v3d.view_perspective = 'ORTHO'
        break

To set it to this rotation instead of transforming by set the view rotation (Quaternion)

        v3d.view_rotation = R.to_quaternion()

To set it to an Euler

from mathutils import Euler
q = Euler((radians(45), radians(45), radians(45)), 'XYZ').to_quaternion()
v3d.view_rotation = q


I got it working, finally. The comments provided above by Duarte Farrajota Ramos and Edgel3D gave me the bread crumbs I needed.

This new model contains a few parts:

Frame - Has a Limit Location constraint to keep it in place
ArmPivot - Has a Limit Location constraint to keep it in place
Arm - Has a Limit Location constraint to keep it in place, Limit Rotation to keep it from going further than the hydraulic cylinder would allow
ArmPin - Parented to Arm
ArmPin.001 - Parented to Frame
Cylinder - Has a Limit Location constraint to keep it in place, Locked Track targeted at ArmPin with To: Z and Lock: X
Ram - Has a Copy Rotation with Target: Cylinder, X, Y, and Z

Rotation of Arm causes the cylinder to track perfectly. I was able to implement this in my actual project and complete an animation that was holding me up. Huzzah!


You can use the rotation tool in the particle system. Set this to 'Velocity / Hair'. This way, the particles will always face the direction they are going.


Switch between multiple lists stored in scene

This is my current solution that seems to work? But I'm sure there is a much better way out there!? :)

def list_obj_append(Id):
    global curList
    obj_selected = [o for o in bpy.data.objects if o.select]

    curList = scn["set_1"]
    scn["set_1"] = curList

    for ob in obj_selected:
        curList.append(ob.name + suffix[Id])

    scn["set_1"] = curList
    curList = scn["set_1"]

    return curList


Re-Polygonize a tessellated / triangulated mesh?

Assuming you have no way to access the original (non-triangulated mesh), there's no way to get the exact polygons back, which may have existed at some point in some other application. But you can try several things in Blender, to get some polygons from any triangulated or tessellated model.

You can try the Limited Dissolve operator (X), which removes less important geometry using an angle to determine the importance (a subdivided plane will turn into a single quad using an minimal angle of 0.001°, since it's flat).There's also a modifier, that acts the same, but non-destructive: Decimate set to Planar.
Less automated, but potentially better results are achievable with Dissolve Edges. Switch to edge select mode, select the edges you wanna get rid of and execute the operator (X).
You can also select multiple triangles and try to join them using Make Edge/Face (F).


How to superimpose a lot of textures in one material in the BGE?

after experimenting different things, I've finally find out how to do it !
To superimpose different textures on one material, you need to go to the very end of the texture panel, in the influence tab you will find the blend option. For the background texture you let this option to "mix" and for your others textures put this option to "add" and it will mix yours textures. (you won't see it in your "texture" viewport shading but you will see it in rendering). If you let the blend option to "mix" for the others textures you need to put them under the bacground texture. This last option won't mix your textures but it will put your last textures on the previous textures. So if you want to see the background texture under the others textures, yours others textures need to have some transparent (alpha) in their images. With these two option you can change the opacity
of your textures with the difuse:color option of the influence tab.


The most important component for Blender is a good graphics card. Unfortunately, to get an even remotely decent GPU (Graphics Prcessing Unit) on a new Mac you'll be looking at $3K+, certainly not worth the money.
Macs these days come equipped with AMD cards which have sup-par support for GPU rendering. Even if you could somehow get an NVIDia card to work on your Mackintosh, Apple decided to deprecate third party toolkits on their platform, thus making CUDA unavailablke for GPU acceleration of Cycles renders.
Additionally, given that also Apple decided to deprecate support for third party graphics APIs like OpenCL and OpenGL in favor of their own Metal API you will always be looking at a feature crippled system when compared to competing platforms in terms of GPU rendering and real time drawing performance, which makes MacOS an even less of an advisable ecosystem to invest in if you are seriously looking at open source software.
For that reason, I cannot recommend a Mac for Blender.
With a gaming PC, you could buy something with very good specs for about \$1~1.5K. A laptop with specifications like Intel Core i5 for CPU and 8GB RAM would also work just fine, and you can find a laptop with an NVIDIA GTX 970 on Ebay/Craigslist for pretty cheap these days.
For the NVIDIA 10 GPU series cards a GTX 1060 would be a good entry point. NVIDIA will soon release new GPUs for their 20 series. Laptop with a 20-series GPU might be a bit expensive though, but it might be worth-it specially if you were planning to spend ~$3k for a MacBook Pro.
If you absolutely have to buy a Mac then the 15" MacBook Pro is probably the best bet. It's the only laptop in Apple's lineup with a dedicated GPU, the MacBook Air/12"/13" all use integrated graphics which is admittedly insufficient for Blender 2.8 (it's too slow).
Related

What are the limitations of Blender for Mac?
eGPU + Blender + Cycles + Mac
eGPU Vega 56 (Blackmagic) Mac + cycles problem


Is there a way to reduce the 'Power' and 'Size' of lights when scaling my scene down?

I don't think you can scale the lights with the regular "Scale" tool, but with a little script you can scale every light's energy and size using python.

import bpy

factor = 2  # Replace this by your scale factor

for obj in bpy.data.lights:
    for attr in ('energy', 'shadow_soft_size', 'size'):
    # for attr in ('energy',):  # Replace if you only want to scale the energy
    # for attr in ('shadow_soft_size', 'size'):  # Replace if you only want to scale the size
        if hasattr(obj, attr):
            setattr(obj, attr, getattr(obj, attr) * factor)

Keep in mind that light energy decreases quadratically relatively to the distance it travels, so if you scale your scene by a factor of 2, you should increase the energy by a factor of 2^2 = 4. (Or 0.25 if you scale by a factor of 0.5)

Follow this if you don't know how to run a script in Blender.


How to decrease perspective distortion of vertical lines in a camera?

Wide lenses tend to distort things a bit, it easier to make parallel lines point towards a vanishing point. Using longer lenses will help keeping parallel lines parallel. It is evident that the lens used in the original picture is longer than the one used for the reconstruction in blender.
But changing the lens is not the problem (that is very easy in blender just select the camera and change the lens), the problem is determining what lens to use, so that reconstructed geometry, matches the photo correctly.
It is not a trivial issue, or will take you a lot of trial and error to find the correct values, as the size of objects, and distance to the camera, is only valid for a single point in space, given the perspective of a particular lens.
Because of the complexity of those many different variables, it is preferable to do find the lens value and camera placement in fSpy. That is exactly what that program is designed to do. It uses the very same idea of vanishing points to calculate the lens used, and the camera placement in 3D space.
To help you better, you show a screen capture of the fspy project and how you found the lens size there. Don't be stingy with the information
How can I recreate geometry using a photograph?
How to find the best place to set up the vanishing point axes in fSpy?


Why are my model's clothes collapsing in on itself?

The simplest solution is to remove the inner faces of the clothing model, since they should never be seen when worn on a character. In game development, its in your best interest to exclude any faces of a model that will never be seen, so you don't bog down your frame rate with excess geometry.

If you absolutely must keep the inner faces of cloth on your character for whatever reason, then your issue exists in the outer vertices of the cloth having more or less influence than the inner vertices. You'll want to improve your vertex weights to accomodate the thin thickness of the cloth.


What is the shortcut for edge rotate or location in keymap list?

Just worked it out myself here, I added my own shortcut by right-clicking the function in the edge tools menu then assigning my own shortcut that way. I chose SHIFT + '<' for counter clockwise and SHIFT + '>' for clockwise.


Appended material on object doesn't render

By default, render preview uses bilt-in HDR:

If you click on use Scene World, Blender will show result similar to render one:

So, if you have not proper environment for your model, and there is nothing is reflected in it, it looks flat.

So you should set up environment texture:

You can use bilt-in HDRI images from Blender folder, or download any (for example from https://hdrihaven.com)


You have Compositing enabled (Properties Area > Output Properties (Printer Icon) > Post Processing) but your Render Layer node in the Compositor is not connected to anything:

Either just turn off Compositing or enable all the passes used for denoising (Normal, Diffuse Color) and connect them properly. Read: How to properly connect the Denoise node in Compositor?


Menus without background and user pref have parts missing

Check your blender user preferences. Under the Themes tab in the user preferences go to the User Interface settings. Then scroll down to the item that says Menu Back:, check if the Inner: color has any alpha. If that is at 0 then that is your problem.

Also If you scroll all the way down on that same page you will come to a item called Menu shadow: Check if that is above 0, and that the size is above 0px.

If these two did not help then it is a bug with your system.


Bevel and Resolution Multiple Selected Curves

Either press the Alt key while clicking a property to assign it to all selected objects; or assign the bevel object to one of the curves, then right click over the property and choose Copy to Selected option.


How do I get an object to spin properly in my animation?

More reliable way of rotating the sphere on exactly the axis and degrees you want is to select it, then press X (or Y or Z depends on what axis do you want it to rotate) then type 90 (or other number of degrees you want it to rotate). Then proceed as usual with key frames and so on.
And here is what else you can do in your particular situation.


How do I accurately make a 14 tooth gear in Blender?

Figures with a recurrent shape that pivots around a center are easily generated with the spin tool in the edit mode of the 3D viewport. However, since it seems like you might benefit from "editability" of the shape I would suggest a different approach.

Mirror a cube and model a single gear tooth.
Add an Array modifier to the object.
Set its count to 14.
Add an empty object where you want the center of the gear
Rotate this empty by 360/14 (Blender will automatically calculate the outcome of that fraction)
Set the array only to "Object Offset" and select the empty.

The result should be as follows:


Animating scale of edge loop to cover texture, not stretch

Use Edge Slide for editting - Ctrl+E > Edge Slide
In the operator panel check the Correct UVs option:

This will crop the outer ring. For the inner ring use different material

If you want this effect in an shapekeys animation it wont work since they do not affect UV coords. You would have to use a UV Project modifier for the outer rim material:

add an empty

and setup the modifier for the circle like this:

Now it should work also with shapekeys


Modify the visibility of collections locally to the viewport with python

We have been reviewing it and we have realized that the problem was in the context overwrite. Although we have already done this, we did it by selecting the wrong area

ctx_override = context.copy()
ctx_override['area'] = get_area(context, 'VIEW_3D')

The function get_area (…) returned the area of the viewport in which to make the changes, but did not select the correct viewport, since having two in the interface always takes the first one located in the vector, which was a viewport with local visibility of collections deactivated.

Now we differentiate the viewports by their width to make the changes in the correct viewport


Tiny geometrical irregulatities in model imported from Rhino

If geometry is beyond recovery, but the shape of the object remains intact (like in your case), it can sometimes work to regenerate the object using a combination of the Remesh modifier (with as many levels your machine can handle), and then using the Decimate modifier to simplify the resulting mesh.

In more detail:

The Remesh modifier will approximate your geometry by fitting it to a grid of voxels and connecting them to reform the mesh - a technique which will only approximate your geometry, but can get quite close at high resolutions. The key part here is that once "remeshed", your object will have uniform detail everywhere.
The high level of detail on the resulting mesh will then need simplification (as big flat surfaces will have been created out of many polygons instead of just one or two), which can be achieved well using techniques posted in other answers to this question: using Limited dissolve on the mesh in Edit mode, or applying a Decimate modifier (which has a few more options, but can accomplish the same result).

Note that this strategy will require you to reapply materials, remake UV maps, seams, sharp edges, etc. and is thus to be used as a last resort, or as the first step in your workflow if you are going to perform these steps afterwards.


If you want to select all the object of a same material, then it's simple:
First select an object of the desired material, then press ⇧ ShiftL → Select Linked Materials.

If it select too much compared to your needs, you can still deselect afterwards by using the border select tool wich B or the circle select with C.

If you're gonna need to select those specific objects often, it might be a good idea to turn them into a collection (or a "group if you're using Blender 2.7 and older). So that you can simply select those groups from the outliner.

Select your objects and hit ⎈ CtrlG. (For now this is buged in 2.8: the created collection isn't displayed in the outliner. That bug should be fixed in the future though.)
In 2.8, you can also open the "Move to collection" dialog by pressing M, hit "New collection", give a name to the collection and validate your choice by pressing ⏎ Enter. But it's a bit longer (but it's not bugged)


Cycles: envirement background for lighting different then render background

The easiest way is to check the Transparent setting in the Film section of the Render panel. Setup your world lighting with white lighting.

Then in Compositing you can load a still image with an image node and composite it behind your transparent render with an Alpha Over node. This way your scene will have white lighting, but your background can be a custom image.

If your background image dimensions are different than your render settings, you may need to run the image through a Scale node to get it work properly.

Option 2

The second option is to add an image plane behind your foreground elements. The trick is to use an Emission Shader for the plane material, then use an IsCameraRay Light Path to mix between the Emission Shader and an empty (ie no light data) shader socket. This lets the camera see the background, but effectively makes the plane invisible to the rest of the scene lighting.


Is it possible to change shortcuts for the add menu?

No, blender GUI  was not designed with that in mind, it's something I've tried to do for a long time.
We can only hope or ask developers to give us facilities to customize menu shortcuts.

Here are some discussions that I started on this topic:

How to customize a Menu
Ayuda con los menus ( Spanish )

Personally I think it is quite necessary because many users require this. I think we should begin to wonder where can we make requests to the developers?


That's because you have smooth normals.  Either set those faces to flat shading or enable Auto Smooth under Mesh Data.


The environment and lighting setup is very important, especially for specularly reflecting and refracting materials such as glass or water.
It looks to me like you don't have a bright enough sky. You could use a HDR sky image via the environment texture node, or the built in procedural sky texture, which can give decent results too (particularly when you don't actually see the sky directly):

For this scene I used a procedural sky texture for the background color with a strength of 4:

I also used a sun lamp to get some directional lighting (see Should I add a sun lamp when using an hdri environment?)
For the compositing setup I only used two simple glare nodes:

The de-speckle node is only to get rid of some fireflies that were appearing. Normally I'd clamp them, however in this case I wanted to leave the render un-clamped, in order to preserve any values greater than 1 for use by the glare node.

Lighting and environment aside, also ensure your glass shader is set to white. When added via the properties panel, it defaults to .8 grey, which can result in the object looking too dark.


Change saturation of rendered object without changing the background Image

You can use an ID mask to do this.

Select the object you wish to color, go into object settings and change the pass index to 1.

Now go into the layer properties menu and enable "Object index" under passes.

Hit render. Now go into the compositor and add a viewer node so you can see what you are doing. You can use the "id mask" node as a mask for the object. Here I have setup a simple node network that will achieve what you want:


How would you align something like feet?

I have just started using blending myself.

Have you tried using G (grab) and then pressing Z so you can your object and align it to the grid?

Another option you have is to drop down the Transform panel in the top right corner, by the Options drop down menu and the four different circles.
From this panel you can use the Location X Y Z values to tell Blender exactly where you want your feet to rest!

I hope this helped and good luck!


Moving arms in a specific manner with two fixed points

The way to do this is by creating two empties, one in the center of the right arm (the fixed arm) and another in between the two rigging points in the triangle, the first empty will be the controller, the upper and lower arms will inherit it's rotation using Copy Rotation Constraints.  Since the upper and lower arms are not in parallel to each other, this means that in reality, the triangle will rotate in the counter direction of the controller, in order to do this, you need to set a driver, here are the steps in detail:
Setting up Empties and Constraints
1- Make sure the upper and lower arms are parallel and horizontal (you will change this later).

2- Select the lower arm, go to Edit Mode by hitting Tab, select the face at the fixed arm side and hit Shift + S, then choose Cursor to Selected, this will position the 3D Cursor at the center of that face.

3- Press Tab to go back to Object Mode, then press Ctrl + Alt + Shift + C, choose Origing to 3D Cursor, this will set the origin of the lower arm at the end near the fixed arm.

4- Repeat steps 2 and 3 for the upper arm.

5- At this step, you should be now in Object mode, the upper arm is selected, it's origin is at the end near the fixed arm (to the right) and the 3D Cursor is at the upper arms origin, in case you accidentally moved the 3D Cursor, make sure you put it back at the origin of the upper arm (step 2), this is important for the next step.

6- Press Tab to go to Edit Mode, select all by pressing A once or twice, choose the 3D Cursor to be your pivot point (check the image below), and rotate on the global X axis by pressing R then X, move your mouse to rotate until it's in the right initial position, then confirm by left clicking your mouse, then go back to Object Mode. Make sure to set the pivot point back to Median .

7- Create an Empty, position it at the center of the fixed arm, this will be the controller, it will be good if you rename it to something meaningful like "Controller_empty" or whatever you find appropriate.

8- Select the upper arm, go to the Constraint menu in the Properties Panel, or press Ctrl + Shift + C, add Copy Rotation constraint. In the Constraint menu, choose the Controller Empty to be the target, repeat the same step for the lower arm. This will make the upper and lower arms rotate with the Controller on their origins.

9- Create another Empty, position it to be centered in between the two rig points of the triangle. Make sure it is selected, then Shift select the Controller Empty, press Ctrl + P, choose Object. This will create a Parent/Child relation with the Controller Empty as the parent.When you rotate the Controller, the second empty will rotate around it, if you try that and the rotation is weird, make sure again that the pivot point is set to Median, and not to 3D Cursor.

10- Select the triangle, create a Copy Location constraint, select the new empty to be the target, this will update the triangle's position to be where the new empty is, but it will not copy it's rotation, this is why you shouldn't use parenting for this.
Setting up a driver

11- Now all we need to do is to make the triangle rotate in the opposite direction of the Controller's rotation, for this you need to create a driver. Select the triangle, in 3D View, at your right hand, if you don't see the Properties Panel, press N to make it show, under Transform > Rotation, Right click the X axis value, and choose Add Single Driver, this will make the color of the value box turn purple (check the image below).

12- SAVE your file, I can't stress this enough, because the next step, Blender will have to reset your scene for security reasons. You need to open Graph Editor window, change the Editing Contest from F-Curve to Drivers. In Graph Editor window, on your left, you will see (X Euler Rotation) left click select it, then hovering your mouse over the Graph Editor window, press N to show the Properties panel.

13- In the Graph Editor's Properties panel, under Drivers, make sure that Type is set to Scripted Expression, Beside Expression, wright -var as the expression value, under Add Variable, make sure that var is the name of the variable, Transform Channel is selected, set the Ob/Bone to be the Controller Empty, set the Type to X Rotation, instead of the default X location, since we need the rotation of the Controller Empty, keep the Space to World Space, Save your file again before you proceed.

14- You will notice that you have an Error warning, if you look at the status bar at the top of Blender window, you will see Auto-run disabled, you have two options to choose from, Reload Trusted, or Ignore. This is not a bug, this is a procedure made by Blender to make sure that you know that the related script is trusted, in order to protect you from malware that can otherwise auto-run and harm your system if downloaded from an un-trusted site. This is why I emphasized twice that you should have your file saved before clicking Reload Trusted button, once you click it, this will reload your scene to the last save, if you didn't save, you'll have to start all over, so if you still haven't saved, do save now, then click the Reload Trusted button, confirm by clicking Revert.

15- This should be it, by creating a driver for the X rotation value of the triangle, setting the Controller Empty as the target object (Ob/Bone, I don't know why the weird label is like that, if you ask me, it should be just Target!) which Blender gives it a default name (var), and telling Blender, to use -var (minus var) for Expression value, what happens is that when you rotate the Controller Empty on it's global X (since you kept the space to World Space) this will assign it's negative value to the X rotation of the triangle, hence reverting it's rotation.

All you need to do now is to rotate the Controller Empty along it's global X axis.
Happy Blending!
Here's the .blend file:


In the export window verify the checkbox "Write materials" is checked. Also ensure you have all the textures as external files (not packed in the blend file itself).
Also ensure you have created the material. In Blender, it's possible to see a textured object in the viewport after unwrapping it, but without creating a material at all. If the material isn't created, you might see it in the viewport, but it won't be "real." =)


Deform bones configurations produces a bad deformed beak

Please check the answer found here. This will give you two options to fix this:

Modify the weight painting to tweak what parts of your mesh are
affected by each group.
Create empty vertex groups and then do
the assignment manually, this will give you a bit more control over
how your groups are created as you can see it on the fly and edit it
further.


Preferences > Interface > View Gizmos > Zoom to mouse position

You were using a newer version of the 2.8 beta than I was :)

In the latest version its Preferences > Navigation > Zoom :


When exporting a .obj or .fbx how do you keep the color/texture?

Unwrap your model, create new material and assign a jpg texture to it (or create new in in Blender's UV/Image editor and paint it in Texture Paint mode).

Export the model to FBX.
Open Roblox Studio, create MeshPart object and import the FBX using the Open Mesh File button

Texture should be assigned automatically

If you want to use simple colors instead of textures, you can use Vertex Paint mode and color your model using this method. Roblox can import vertex colors contained in your model (if not, make sure you have ticked export vertex colors in the FBX/OBJ exporter dialog in Blender).


How can I render a cubemap with Blender Internal?

Regardless of which render engine you use, the process is the same.

It has been explained well here.

Personally I find rendering a single-image equirectangular environment map to be easier, but I understand you may have specific reasons for needing a cube map.


How To Get Rotation Data Printed Every Frame

Using a frame change handler

  Application Handlers

  This module contains callback lists

Test script.  After (post) a frame change, print the local euler rotation of the cube in degrees.

import bpy
from math import degrees

def cube_rot_report(scene):
    cube = scene.objects.get("Cube")
    if cube:
        #rot = cube.matrix_world.to_euler()
        rot = cube.rotation_euler
        print([degrees(r) for r in rot])

#clear the handlers
#bpy.app.handlers.frame_change_post.clear()

bpy.app.handlers.frame_change_post.append(cube_rot_report)


How do I get the image index that matches the material texture? I see that the index order changes depending on the image name

Assuming the image of interest is on the first texture of the first material of the active object and you're using the Blender Internal (BI) render engine (not cycles):

import bpy

print( bpy.context.active_object.data.materials[0].texture_slots[0].texture.image.size[:] )


Here is what I came up with:
bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.mesh.select_mode(type="VERT")
bpy.ops.mesh.select_all(action = 'DESELECT')
bpy.ops.object.mode_set(mode = 'OBJECT')
obj.data.vertices[0].select = True
obj.data.vertices[1].select = True
bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.mesh.select_mode(type="EDGE")

#bpy.ops.mesh.edgering_select
bpy.ops.mesh.loop_multi_select(ring=True)

bpy.ops.mesh.select_nth(nth=1, skip=1)

bpy.ops.mesh.loop_multi_select(ring=False)

bpy.ops.mesh.delete_edgeloop()

It isnt very clean or "Pythonic" so any suggestions would still be appreciated!


Two things that can effect this: Either increase the image resolution upto about 5K or 6K or either try painting directly on to the mesh instaed of painting it in the image editor.


The "Random Color" already produces a color, not a random numeric value like the missing Object Info node, so I think it doesn't play well with the ColorRamp node.
If I connect the "Random Color" output of the RPR Lookup node directly to Base Color on Principled BSDF, I get random colors as expected.

If you'd like to get back the palette control that ColorRamp offers you, you can pass the output of "Random Color" into the "RGB to BW" node (found under Converter) and then pass that output into ColorRamp as shown below.


How can I turn off gamma correction in 2.79b?

It is not gamma correction that you are observing here. It is the rendering process itself.

This is fundamental part of the process and you cannot do anything about it. Color inputs describe various properties of surfaces and the rendering process attempts to calculate the colors that would be captured by a camera. An object of some specific color will have different colors on its surface depending on how it is lit, the glossiness of the surface, the angle it is viewed from and many many other factors. If you took a sample of some paint for example and you knew the matching reflectance values for the primary colors of your chosen color space and took a photograph of the sample and then viewed that photograph on your screen the color values would not match, because of shadows and highlights on the surface as well as lighting conditions. You cannot and should not try to avoid that. What you can do is try and match the color differences in relation to each other as much as it is possible (which it also actually isn't in practise, but that can be a good goal that makes sense).


how to disable lamp shape behind object with glass material? (when rendering)

I don't really know if I have understood the question properly. However, have your tried selecting "Transparent" in the Material section for the object you don't want to be seen in the rendered view?


What is the best fps to use if one plans to add music later?

If I were you I would take your song's tempo into consideration when choosing a frame rate. This is assuming you don't have tempo changes - if you do there's nothing you can really do since the frame rate must remain constant.

Here's a handy BPM / FPS calculator to help you choose the best frame rate for your song.

So for example, if your song is 120BPM and your video is 30FPS you are looking at 15 frames per beat.

Keep in mind that the song tempo should not be the only criteria to consider. You should consider how this video will be delivered as well, like is it only for YouTube, or does it need to play on some specific devices, etc. Higher frame rates are usually better, but will obviously increase file size and render time. If your tempo can fit into 30 or 24 FPS, one of these will be pretty easy to work in while being hi fidelity enough for most situations.

Finally, if you have software that will allow you to change the tempo of your song, don't rule out that option.


Eye bones are stuck on Eye Mesh when Posing other bones

Another user posted the fix on a different thread. My Armature was at the "bottom" of the list causing the deformations. Once I moved this up it resolved my issue.


Select object and move the view simultaneously

Press N for Numbers panel, click the View tab, enable Camera to View:

Press Numpad 0 and adjust your view, or if you already have the correct view, press Ctrl + Alt + Numpad 0 to set camera to this view.
Now select the object, then the camera (so the camera is active). Ctrl + P, then O to parent the object to the camera.
Now by moving the view you also move the object:


Thanks. Here is the python script I wrote to select vertices of a specific vertex group, but only within a specific range:

import bpy

minWeight = .6
maxWeight = .7
vertexGroupIndex = 1

bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.mesh.select_mode(type="VERT")
bpy.ops.mesh.select_all(action = 'DESELECT')
bpy.ops.object.mode_set(mode = 'OBJECT') # Switch to Object to get selection
obj = bpy.context.active_object
verts = [v for v in obj.data.vertices]
for v in verts:
  weight = v.groups[vertexGroupIndex].weight
  if weight <= maxWeight and weight >= minWeight:
    v.select = True
bpy.ops.object.mode_set(mode = 'EDIT')


Make grey background while using HDRI for renders

The best way is to use film->transparent.
Now go into compositing section and click on use node.
Add an alpha over node before output node and chose your desired color.
This way,the render will use the HDRI and then make background as chosen in the apha over node.
Also,if your entire render comes as single color,try switching the color inputs of alpha over node


Is Blender the only open source Non-destructive editor?

If the problem is only performance, Blender can also leverage OpenCL running on the GPU and CPU to speed up the node compositing. From my experience, it significantly speeds up the process.

You can turn it on in the node editor panel.


Morphing a mesh between more than two shapes

You can set Shapekey B to depend on shapekey A, and shapekey C to depend on shapekey B.


Face surface/shading looks wrong in a FBX export from sketchup?

Ok, I turn off the Auto Smooth and now everything is normal. THANKS !!


Blender 2.79, how to install Khronos Group gltf exporter?

Thank you gandalf3. My mistake was the path.
I tried ~/.blender folder when in fact I had to copy the addon under ~/.config/blender/..

Works now, thank you again!


Take a look at the cubes below and their materials.

Material of the left cube:

Material of the middle cube:

Material of the right cube:

All three materials above are equivalent, despite using different nodes

What you are doing is multiplying the 3 individual values of a vector (the object coordinates) with a certain value. The second material above might be what you expected what you were supposed to use. It takes a vector, splits it up into individual values, multiplies the values with a number and combines the values back into a vector. If you compare the first and the second material, you can see that they are almost the same, except that the first uses 'color' nodes and the second uses 'vector' nodes. The reason why this gives the same result is because vectors and colors are actually pretty similar. Both consist out of three values ('X','Y','Z' vs 'Red','Green','Blue'). This means that you can basically plug colors into vector inputs and vectors into color inputs. This also means that you can use some color nodes to do operations on vectors, like in your example the color multiply node.


What is the range of random values given by Object Info node?

Yes, Random output of Object Info Node generates numbers in the $0$-$1$ range, as stated in this Blender Artists thread.

If you need different values you can use the Math Nodes to convert it into the desired range.

You can also get random colors by running the output through a Color Ramp node


It's the normals. to fix it I can suggest 2 ways, average the borderline normals with an add-on or just replace normals.
Here is how you can replace normals:
before separation, copy your object and hit f2 and call it "my.normal.source.01" or anything.
hide it
on original model, do the separation.
add a modifier in the end of stack of original object and named "Data Transfer"

select the source (we called it in this example "my.normal.source.01")
mix mode to Replace

do the same for the lid
Done.
Now if you want to move the object your source have to move with it you can parent it. if you don't like that just apply the Data Transfer modifier. that will write normal data into your object.


Convert a circular tube into an oval tube

Since I don't really know your topology, I better start from scratch. If I interpret your question right, here's how I would approach it:

I assume a Blender unit to be 1 meter. I don't use metrics, so you might have to adapt your values.

Create a cirle. In the redo panel to the left, enter the desired resolution (I chose 64) and as radius, enter .214/2

Go into Edit Mode with TAB, hit A to clear the selection and use B to select half of it (you could do a negative border select with MMBand spare the A).

Then press Y.

It's called split and will duplicate the verts at the border of your selection. In this case it means you now have two half circles. One is selected, one isn't.

With the right half still selected, move the right circle to the right with GX .05 RETURN, right?

Select all with AA and fill it with F

Inset the face with I .004 RETURN

Delete the inner face using X, "Only Faces"

Go into front view, select all and extrude up with E .325 RETURN

The finished tube with, I hope, the right dimensions.


Can I lock the viewport to always jump to what is currently selected?

Note that there is a keyboard shortcut for locking the view to the selected object, ShiftNumpad . (Not sure if you knew already or not, but It might make your workflow faster)

Python:

You could use the python api to create a simple script to lock the view to the selected object for all 3D views:

import bpy

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        for space in area.spaces:
            if space.type == 'VIEW_3D':
                if space.region_3d.view_perspective == 'ORTHO': # if view is orthographic, do the following:
                    space.lock_object = bpy.context.object # Set the view lock object to the active object

Here is the above code made into an addon based on the addon tutorial in the Blender API reference:

bl_info = {
    "name": "Lock all views to active",
    "category": "3D View",
    "description": "Sets all the 3D views to be locked to the active object",
    "location": "Ctrl+Shift+Space",
}

import bpy

class ViewLockAll(bpy.types.Operator):
    """Lock all views to selected objects"""
    bl_idname = "view3d.lock_all_to_active"
    bl_label = "Lock all views to active object"
    bl_options = {'REGISTER', 'UNDO'}

    def execute(self, context):

        for area in bpy.context.screen.areas:
            if area.type == 'VIEW_3D':
                for space in area.spaces:
                    if space.type == 'VIEW_3D':
                        if space.region_3d.view_perspective == 'ORTHO':
                            space.lock_object = bpy.context.object

        return {'FINISHED'}

addon_keymaps = []

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

    # handle the keymap
    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name='Object Mode', space_type='EMPTY')
    kmi = km.keymap_items.new(ViewLockAll.bl_idname, 'SPACE', 'PRESS', ctrl=True, shift=True)
    addon_keymaps.append((km, kmi))

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

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

if __name__ == "__main__":
    register()

You can install this like any other addon. It will create an operator called ViewLockAll and a keyboard shortcut CtrlShiftSpace for calling it.


When I connect nodes the image starts blinking

Apparently it was due to Animation Nodes making calculations in the background.  Once I severed some of the AN connections everything went back to normal.


How do I draw a parametric column or cylinder with varying radius using python

Using bmesh and screw

Make a simple bmesh edge on zx plane using poly function, then spin it around the z axis.  I've added a screw modifier to do the spinning, and commented out the bmesh spin operator.

import bpy
import bmesh
from math import radians

def poly(x):
    return   0.2 * x * x - x + 1.3

bm = bmesh.new()

# draw on zx plane
v0 = bm.verts.new((poly(0), 0, 0))
for dz in range(1, 100):
    z = dz / 50
    v = bm.verts.new((poly(z), 0, z))
    edge = bm.edges.new((v0, v))
    v0 = v
# could spin here I've added screw mod instead
#bmesh.ops.spin(bm, geom=bm.edges, axis=(0, 0, 1), angle=radians(360), steps=16)

bpy.ops.mesh.primitive_cube_add()
ob = bpy.context.object
me = ob.data
bm.to_mesh(me)
me.update()
# default screw modifier spins 360 on z
screw = ob.modifiers.new("Screw", 'SCREW')


Rough vertex curve transform into even curve?

What username:cegaton shows is part 2 of how this issue can be dealt with.(this may be helpful for adjusting the curve before extrusion)

The folowwing image shows a Curve before Alt+c was used to convert the curve to a mesh object.

To adjust a mesh's curvature, you can use proportional editing.  There are several math function options available for doing this and they are shown using the popup dialogue.  The default setting often works well.  Proportional Editing can either be activated using the o key or by clicking the icon shown in the following image.

The Proportional Editing tool has a fallof radius that is shown on the screen as a white circle that can be re-sized either useing the Page_UP, Page_Down or the mouse wheel as shown in the following animating .gif that was made with a program named LICEcap

Now I would do what cegaton has shown in the answer posted previous to this one.


Is there a way to adapt False Color to be seen for color blind people?

The False Color view transform is defined in the filmic_false_color.spi3d and referenced by the OCIO configuration in config.ocio. In order to add custom 3D lookup tables as new view transforms, they have to be stored in the .spi3d format and the config.ocio has to be modified to references these new files.

Update 2020-02-17: The re-write of the tool is complete. It now includes a proper command line interface, it allows to create your own colormaps or to load colormaps from viscm. The release includes lookup tables that should be suitable for people with color vision deficiency. Turbo has been removed from the list of colormaps since it's not useful for people with achromatopsia and it would require to license all code under the Apache license. The matplotlib colormaps are still available.

Update 2020-02-05: The correct mapping of middle grey to the center of the colormap is applied and relative luminance is used for the mapping.

Update 2020-02-04: The lookup tables now have a distinct color for both the low and high clipping range.

I've implemented a lookup table generator that allows you to create your own false color view transforms. Detailed instructions for the installation, colormap creation, arguments for the command line interface and integration into Blender are provided in the README.md.

The first release also includes two false color view transforms, Ignis and Agnoscis, designed for people with color vision deficiency using viscm. Additionally they've been analyzed with Coblis. The generated .spi3d files and custom ocio.config can be downloaded here.

Examples

Test Scene - View Transform: Filmic

Test Scene - View Transform: False Color Ignis

Test Scene - View Transform: False Color Agnoscis

Test Scene - View Transform: False Color Dante (based on Inferno)

Ignis Evaluation

Agnoscis Evaluation

Exposure value to color, Ignis (l) and Agnoscis (r)

Installation

Download the .spi3d files and custom ocio.config from the release page.
Open Blender's directory and navigate to [2.8x]\datafiles\colormanagement (the 2.8x is a placeholder for your Blender version).
Rename the original ocio.config in that directory, e.g. to ocio_old.config
Copy the custom ocio.config into the [2.8x]\datafiles\colormanagement directory
Create a directory/folder named custom in [2.8x]\datafiles\colormanagement
Copy the .spi3d files into [2.8x]\datafiles\colormanagement\custom

Usage

The new view transforms should be available in Render Properties > Color Management > View Transforms after a successful installation.


Randomizing the starting frame of an image sequence on a per object basis

The only workaround I have in mind is to use drivers.
Try plugging the random output to a Math node where you add 0 to it (just to have the value in some place you can address with a driver) and set a driver to the offset value, pointing the driver to the value in the Math node where you plugged the random.
I didn't try it yet, so I'm not 100% sure it will work.
If it doesn't let me know. Another alternative is to use Python.


Mesh mirror itself without a mirror modifier

You may have enabled the "X mirror" option, which is an Edit mode option rather than a modifier. It's located in the tool shelf (T) of the viewport under the "Options" tab. The first one here:


How to transfer render data from one object to another.?

Unfortunately, real time "portal viewports" are not supported in blender. However, one way around it is to transfer pre-rendered data into a new scene. Here's an example - see if it works for you.
Make your initial scene and put your object (sphere?) in it. Select the sphere and press Shift + S and select "Cursor to selected" to put the 3D cursor directly in the center of the object.

Then select your camera, and press Shift + S again, this time select "Selection to cursor" to put the camera where the cursor is (in the center of your object).

Now, remove your object (sphere) from the scene, leaving the camera in place. Don't just hide the object - it will still appear in the render if you hide it. Either move it or delete it.
Make sure you are using Cycles engine (this particular camera perspective only works in cycles), and in your camera settings, pick Panoramic - Equirectangular.

Now render and save your image. It should look something like this (bent).

In your other scene (other side of the wormhole), add your object (sphere) and for it's material, assign an Environment Texture (not an Image Texture), and pick the saved image you rendered. Use Reflection Texture Coordinates so the "wormhole image" will change perspective as you rotate the camera. (If you lower the roughness, the sphere will even reflect the current world environment, while still showing the "wormhole" environment inside)


Explosion effect is getting stopped by domain

I solved it! I had to increase the "add resolution" property under adaptive domain and decrease "threshold" to .01


Reading out all operators in a header's menu

There's no straight-forward way to retrieve the contents of menus or other layout types.

If possible, create shortcuts in the User Preferences, but that might not be possible with external hardware keys. Or if that's sufficient for you, Right-click > Edit Source to see the layout code (mostly python-scripted).

It might be feasible to extract layout information somehow by hacking deep into the Blender internals with Python, see this to get an idea:

http://wiki.blender.org/index.php?title=Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Interface&oldid=226944#Overriding_Interface_Elements


If you want to add a group instance in another scene just do so from the Add menu with Shift+A > Group Instance > Group name.
If you want to move objects themselves between scenes use method of copying and pasting or linking.


Can you transfer weights partially in blender?

You can copy the vertex group (the weights) to the selected object from the active, if they have the same geometry, then you can remove the unwanted weights easily, by selecting them and click on remove in the Vertex Groups tab.


I don't think such option exists (unless you'll do some scripting). The solution for you may be making all the manipulators visible. Enable all of them clicking on the manipulators icons with Shift+LMB.


How to register keymaps for all editor types?

I randomly discovered the answer to my question on the Blender Python API Documentation

My registration code now looks like this:

addon_keymaps = []
def register_keymaps():
    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name = "Window",space_type='EMPTY', region_type='WINDOW')
    kmi = km.keymap_items.new("wm.call_menu_pie", type = "E",alt=True, value = "PRESS")
    kmi.properties.name = "editor_switcher_pie_menu"
    addon_keymaps.append(km)

You can find the final version of my addon on GitHub


Blender 2.8: How to select multiple object with the same diffuse color in principled shader?

import bpy

for obj in bpy.data.objects.keys():
    bpy.context.view_layer.objects.active = bpy.data.objects[obj]
    activeobj = bpy.context.active_object
    try:
        if "." in activeobj.active_material.name:
            mat = bpy.context.object.active_material.name[:-4]
            activeobj.data.materials[0] = bpy.data.materials[mat]
    except:
        pass

for mat in bpy.data.materials.keys():
    if bpy.data.materials[mat].users == 0:
        bpy.data.materials.remove(bpy.data.materials[mat])

Try this out and let me know


Why does my object remain gray in the 3D View after changing its 'Base Color'?

You have 2 materials in your material list, the one you've assigned is blank, you need to assign the other one (or simply delete the first one):


animation: edit the way an object moves by grabbing the pose in the curve editor or graph editor

In the graph editor and dopesheet you can press I to insert a keyframe just like in the 3dview. You will get a menu to choose between all or selected channels.

In the graph editor with a key selected you can press G to move it, also pressing Y will keep it locked to the frame so you only change the value. You can drag an existing key with the mouse to adjust it's value, the drawback of using the mouse is you need to drag the mouse some distance to start the movement, at which time the key snaps to the mouse location making small accurate adjustments hard without the keyboard.

Once you select a key in the graph editor you can move it more precisely using the keyboard eg. GY.5

You also have the properties panel N in the graph editor that shows the frame and value of the active key, you can use the mouse to drag the value slider.


The acute angle in the trailing edge of the wing will result in the even thicknesses overlapping, I think the surest solution is a bit of remodeling.

Detach the faces constituting the outside of the trailing edge, P separate to a new object
Delete the appropriate inner faces of the rest of the wing, and fill the hole, to prepare to solidify the rest of the wing independently of the trailing edge
Solidify and apply the modifier
Recreate the hole for the trailing edge
Ctrl JRejoin the trailing  edge and the wing, Remove Doubles, tidy up.

This example treatment of your wing passes basic Manifold checks.


Blender 2.8 View Layers - "Exclude" feature

Old "Render Layers" are now here, in the top right corner:

In the context menu (RMB) in outliner you can set to any collection to be Excluded, masked (now holdout) or hided (now Indirect Only).

View layer -> Set Exclude is old Exclude function

View layer -> Set Holdout is old Mask function

View layer -> Set Indirect Only is like you Hide layer, but not exclude it.


All physics have some kind of setting that lets you control the speed at which they're run. This setting can be keyframed or assigned a driver, so for your case, keyframe it to 1.0 at frame 27, then to 0.25 at frame 28 and 63, then 1.0 again at frame 64.
If you want it to gradually slow down and speed up, set something like for example 1.0 at frame 20, 0.25 at frame 28 and 63 and 1.0 again at frame 70.
With particles it's set as the time between frames instead, but the idea is the same. I'll come to that.

For Rigid Body physics, this is located under Rigid Body World in the scene properties. This affects all rigid bodies in the scene.

For Soft Body physics and Cloth simulation, it's set in the physics properties per object.

For Smoke simulation, it's set in the physics properties for the domain.

Fluid simulation is a bit special, as it runs over the entire range of frames being rendered.
The Start value defines what point in the simulation will happen at frame 1. The part of the sim that comes before this time has to be calculated, but gets discarded.
The End value defines what point in the simulation will happen at the last frame.
As an example, let's say you have a 10 second animation, and you want the whole fluid sim to run at one quarter speed, just set start to 0.0 and end to 2.5. These 2.5 seconds will be stretched to take the 10 seconds of your animation.
The Speed value speeds up or slows down like for the other simulation types.
These are set in the physics properties for the domain.

For Particles, as I mentioned before, the setting controls the time between frames rather than a speed factor. To slow down, decrease the Timestep value, to speed up, increase it. To keep the accuracy, you may want to increase the Subframes value, to do calculations in between actual frames.
It's set in the particle settings per set of particle settings. One set of particle settings can be used by several particle systems.


Of course one solution would be to model it another way, but it is worth noting that Boolean algorithms do not work well with matching geometry - if faces, edges or vertices are very close to each other or if the edges intersect. In those cases slightly moving one object or another in a way that would not change the result sometimes helps, sometimes trying another Boolean algorithm also solves the issues. this happens in all versions of Blender and in most other 3d software as well.


Your sphere object should have

location (0,0,0)

in the object panel.
The origin of the sphere should be in the center of its mesh.

You should have no other keyframed movement.  Keep this initial effort simple.
When you disable the constraint and move through timeline your sphere should have zero movement.

Consider deleting the sphere and creating a new one with the

Follow Path constraint with the 2 [offset] keyframes

in constraint.  This should only take 88 seconds.  Perhaps you need a fresh start.


How to accurately add sound effects on each rigid body collision?

I would write a python script to keep track of the object's velocity. When the velocity suddenly decreases (on collision) I would play the sound, setting its volume based on how big the deceleration was.


The Compositing Method

First, you could go for a cartoon render of your model. This effect uses advanced Compositing with the goal of creating a comic style look. You can read about it here. It can create results like this...

...but you'll have to deal with stuff like this.

OpenGL

There is a way to render in Blender that uses grease-pencil. You can look into it here.


How to import materials to a downloaded model?

These guys actually have UVmaps. Just import the DAE file, go to Material view instead of Texture view and check in Shadeless for every material.


The green color (and the yellow on Optimal Display) indicates you've set keyframes for those values. Right-click on them and choose "Clear Keyframes".
Green color means, there are keyframes for this value but not on the frame you're currently on. The yellow color means, there is a keyframe right on this frame.
When you are on a yellow-colored value, right-clicking also gives the option to "Delete Keyframes". If you do this, only the keyframe on this frame will be deleted and others (if there are any) will stay, so the color will switch to green.
If you want to completely get rid of them (because it seems you've set them accidentally), then "Clear Keyframes" is what you want to  do.


Can I change multiple material colors at the same time

I tried to figure it out on my own and I found a few traces but I was stuck so I asked for some directions to get it done using python.

So here's the solution to changing multiple materials using python.
https://blender.stackexchange.com/a/80737/39857


Duplicating / copy collections (unlinked) in 2.81 from one scene to another scene

You can move Collections between Scenes using outliner.

Set the Display Mode to Scenes
Grab the Collection and drag it to another Scene

Example:
Moving Collection 01 from Scene 01 to Scene 02.


Is there a way of setting vertex colors per mesh in an object output node?

Welcome to StackExchange! First, you should know how to set vertex colors to meshes, this answer explains that in details. Next, note that the mesh resulted from joining all source objects has its vertices ordered such that the first n vertices are those of the first source object, the second n vertices are those of the second source object and so on where n is the number of vertices of the source object. So if we color every n vertices the same color, we will be fully covering each object with the same color.

Let's say we have a list of colors "Colors" where each color represents the color of an object, then we can repeat each color n times using this expression:

[color for color in Colors for _ in range(n)]

If we now set the outputs colors of the above expression to the mesh, we get what we want. But how do we know n (the number of loops)? All we have to do is sum the amount of vertices per polygon using a simple loop. So the full node tree becomes:

Where the script is from the answer I linked. This will produce:


You question is very vague and hard to answer.
In Blender you can link or append various types of data, this is visible when you browse to append or link from other files, and you can choose from Object, Meshes (object Data), Cameras, Freestyle, Groups, Materials, Node setups etc.

Depending on the type of object you link, you'll get different results that can sometimes be overridden.

Linking object data like meshes, curves, cameras etc, will only bring in that data alone (raw mesh data without modifiers for geometry), whereas linking an object will also bring with it: it's materials, associated textures and modifiers.

When linking an object you can then make it a proxy in your current scene, this allows you to override some of it's properties like position or materials. You can also make the object local, which allows moving it in the scene.

Linking a group instance will bring in a static group of objects, as if they were a single object.

For more complex interactions you can link objects and armatures to rig it locally and animate it, although I am not an animator myself, so am not at all comfortable in this area.


Are there any ways to speed up blender compositor?

You can change the lines to be straight by going to "File > User Preferences > Themes > Node Editor > Noodle Curving".

You can disable "Use Nodes" to keep it from updating until you are done moving.


wip Answer

Via the Particle Edit Mode it is possible to subdivide single Hairs, therefore it should be possible to recreate this via python. One Constraint here is that the hair system is locked after editing it.

You have to tweak it a bit, but the basics are here, namely doing it via the depsgraph: devtalk.blender.org/t/manipulating-particles-in-python/7552/3


you can scale with restriction on the axis.
press S and then an axis on keyboard(x,y or z) to scale only on that axis.
and press S and then shift + axis to restrict the scaling on that axis.


How do you apply the object transform so that scaling the object on a single axis actually scales along the correct axis?

Please try this : in Object mode, hit Ctrl + A, in resulting menu select Rotation

Its all zero now, I hope it help you :) best of luck


Making regular polyhedra in Blender using Python

It turns out it's easy (a bit hacky though) to make such regular shapes in Blender without using add-ons. Here's how:

Tetrahedron
Bring up the Add Mesh menu (Shift+A), and select a Cone. Set the number of Vertices to 3, leave Radius 1 at its default value of 1.000 and Radius 2 at 0.000. Now, set the Depth to square root of 2 =~ 1.414213

bpy.ops.mesh.primitive_cone_add(vertices=3, depth=1.414213)

Octahedron
This shape is the dual of the cube -- it has vertices where the cube has faces, and faces where the cube has vertices. To make it, first create a cube. Press TAB to switch to Edit mode. All the vertices should already be selected. Press W  to bring up the Specials menu, and select the Bevel function (or select it directly with CTRL+B). As you move the mouse, you will see each vertex of the cube turn into a triangular face; don’t bother getting the shape exactly right, simply press LMB to finish the drag. Then, look in the panel that should have appeared at the bottom of the Toolshelf on the left of the 3D view (press T to toggle its visibility); you should see an editable numeric field labelled “Offset”. Type the value 1.0 into this field, and that should exactly form the octahedron shape. Finally, bring up the Specials menu again, and this time select Remove Doubles.

bpy.ops.mesh.primitive_cube_add()
bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.mesh.bevel(offset=1)
bpy.ops.mesh.remove_doubles()
bpy.ops.object.mode_set(mode='OBJECT')

Icosahedron
Bring up the Add Mesh menu, and select an Icosphere. Set the Subdivision to 1. Simple!

bpy.ops.mesh.primitive_ico_sphere_add(subdivisions=1)

Dodecahedron
This shape is the dual of the icosahedron. To create it, make an icosahedron as above. Then do what you did to make an octahedron out of a cube: press TAB to switch to Edit mode. All the vertices should already be selected. Press W to bring up the Specials menu, and select the Bevel function. As with the octahedron, press LBM to finish the drag. Then set the Offset value to 0.607, the closest I could find. Then, bring up the Specials menu again, and this time select Remove Doubles. However, the default Merge Distance of 0.0001 will not be enough to remove all the doubled vertices; change this to 0.001, and you should see the message “Removed 40 vertices” briefly flash up.

bpy.ops.mesh.primitive_ico_sphere_add(subdivisions=1)
bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.mesh.bevel(offset=0.607)
bpy.ops.mesh.remove_doubles(threshold=0.001)
bpy.ops.object.mode_set(mode='OBJECT')

Source


My texture bake of my model seems to not render the textures on the correct polys on the UV map

I just did some digging around in the nodes and the issue seemed to be something with the image texture node, so i just deleted all those nodes on all my materials and that fixed it.


Low-level location, rotation and scale for sphere, cylinders

If the Atomic blender addons (which include an XYZ importer) don't help, I would suggest using dupliverts instead of creating multiple objects when creating a large number of objects. My earlier tests have shown that using dupliverts can be quicker than creating individual objects.

This example that works with your sample data creates a new mesh that only has vertices that are placed at the location of each atom, this is then set as the parent of a sphere and dupliverts is enabled, this places a copy of the sphere at each vertex location. Based on a previous answer I then created a curve and added a new spline for each bond. That makes only three objects to display the data.

Using your sample data, multiplied by 1000 (with a small z offset for each) it takes 3.3 secs on my corei7 machine.

import bpy, bmesh, bpy_extras

mesh = bpy.data.meshes.new("Atoms")
bm = bmesh.new()

for atom in molecule['atoms']:
    bm.verts.new(atom['location'])

bm.to_mesh(mesh)
mesh.update()
bpy_extras.object_utils.object_data_add(bpy.context, mesh)
points = bpy.context.object

bpy.ops.object.select_all(action='DESELECT')
bpy.ops.mesh.primitive_uv_sphere_add()
bpy.ops.object.shade_smooth()
sphere = bpy.context.object
sphere.scale = (0.2,0.2,0.2)

sphere.parent = points
points.dupli_type = "VERTS"

bpy.ops.curve.primitive_bezier_curve_add()
curve = bpy.context.object
curve.data.dimensions = '3D'
curve.data.fill_mode = 'FULL'
curve.data.bevel_depth = 0.05
curve.data.bevel_resolution = 4

c_splines = curve.data.splines
c_splines.remove(c_splines[0])

for bond in molecule['bonds']:
    spline = c_splines.new('BEZIER')
    spline.bezier_points[0].co = molecule['atoms'][bond['atoms'][0]]['location']
    spline.bezier_points[0].handle_left_type = 'VECTOR'
    spline.bezier_points[0].handle_right_type = 'VECTOR'

    spline.bezier_points.add(1)
    spline.bezier_points[1].co = molecule['atoms'][bond['atoms'][1]]['location']
    spline.bezier_points[1].handle_left_type = 'VECTOR'
    spline.bezier_points[1].handle_right_type = 'VECTOR'


How to subdivide concave face into quads

Download TinyCAD script from GitHub:
https://github.com/zeffii/mesh_tiny_cad

File > User Preferences > Add-ons > Install from file...
choose the zip file

Edit mode + Edge select > C
select an edge, and another one you'd like it to extend to.
Right-click to finalize selection.

W to bring up specials menu > TinyCAD > VTX | AUTO

I'm not having much luck with this script over here.
I'm not a pro at it, but I'm hoping it gets you in the right direction.

You might need to tweak it, but at least if gives something to start from.
Or file a bug-report on GitHub, if it's not doing what you need.

I've used a similar feature in drafting class, so I get what you're going for.
Hope it does better for you.


How can the active bone group be set from a script?

Example:

import bpy

obj = bpy.data.objects['Armature']
bone_groups = obj.pose.bone_groups

bone_groups.active = bone_groups[string_key]
#or
bone_groups.active_index = new_index


3D Octant cube model from Rubik's Cube 2x2

Initially I thought about adapting an already existing 3D model of a Rubik's cube but after speaking with a Blender user, he told me that in order to achieve this I just need to:

  3 planes, turn 90° each other, subdivide each, assign material, join.
  Then extrude verts (with Ctrl) and fill.

(so basically he told me to not consider adapting the model because this is something easy)

This was the result he got, which is exactly what I wanted - it misses only the axis and text:

With his message, managed to create the planes (by pressing Shift+A and select Plane from the drop-down list and then rotating them (Plane has rotation 0, 0 0; Plane 001 has rotation 90, 0, 0; Plane 002 has rotation 90, 0, 90)), subdivide each (Tab > Right Click > Subdivide once), and assign a color in Material Properties (notice that to see the colors one has to activate Viewport shading). Then, joined the planes and extruded vertices (Editor mode, right click > extrude vertices and use CTRL do get the point fixed in the proper location).

This is the final result:

Object mode:

Editor mode:


The BGE is event driven. The initial event is the "object is created" event.

That can be measured with an always sensor. For example you can activate an action actuator after the object was created.

To ensure the any long running actuators are deactivated after the first frame enable the [Tap] switch at the sensor.

When you use the build-in state machine I suggest to measure when the state changes to the waiting state. A sensor measures state changes when the [Level] switch is enabled. This means the always sensor triggers on state change not just on object creation but on state change too.


making texture atlas for only some part of objects

If you mean like the following...

To start with, select all the faces in Edit mode and press u.  This opens the UV Mapping dialogue.  Select the very bottom entry which is 'Reset'.  This will pack all the quads tightly and they will be overlapped.

The reason I said to select everything to start with is because the tools will act on all faces when a new uv layer is first being created.  They tend to ignore selections on the first pass so you can just unwrap everything as a group and then work on them individually afterwards.

So now, make sure everything is selected and move this block of faces out of the 0-1 UV space so you can work on the faces that will be non-repeating.

Now select one of the roof top pieces and use Select Similar-> Normals Shift+g.  This should select every face that is facing upwards since they have similar normals.

Now access UV Mapping again u and this time try "Unwrap", it should produce evenly spaced UV faces that match the proportions of the faces that are selected.

Now use box select, circle select or whatever your favorite selection tools happens to be and use that to move all the side pieces back into the 0-1 UV space.  Resize them to fit in there somewhere and you should be ready to go once you have the texture ready.

UPDATE: If you have uv's that are scaled beyond the 0-1 range then you can add extra UV layers.

For the next image, you can see three UV layers.  One is for the roof, one for the walls, and a third for the bakeTo coordinates that will be used to combine everything into one final material/texture so the models can be exported to an external game engine as one asset.

Now you can add two materials, one for the roof and one for the walls.  Set both materials to 'Shadeless'.   The check-box is on the same tab with the other material settings.

Now add each of the textures to the respective material and be sure to select the proper UV coordinates or Blender will pick one for you and you may not like the choice it makes. :)

Now verify using the Object Data tab(the one left of the Materials tab with 3 dots forming a triangle) that you have the bakeTo UV coordinates highlighted, also make sure the camera icon is selected.  Now find the Bake section under the Render tab and change this to full Render.  I always set the margin to 64 pixels.  Also, make sure that 'Selected To Active' is off.  So long as you have already assigned a texture to the BakeTo UV coordinates in the UV Image Editor all the materials and their textures should transfer over to the bake texture and will all be in the 0-1 space and all together in one image.  Here's the final result that uses the UV coordinates that I showed how to make in the first part.


Adding image texture to procedural texture without colour alteration

You are using a VectorMath node there, rather than a color blending node.
As Craig D Jones said, MixRGB is correct for color blending (like 'photoshop-layer' blending rules).

It's unclear what your goal is, but you appear to mean you want to just 'alpha over' the two inputs, when you say 'without affecting each other'.

One way to achieve that would be to pass the color data to Diffuse BSDFs, then use a Mix Shader to combine these (with 0.5 giving the middle result of some from each), and then take that shader output into a 'Converter > Shader to RGB' Node.

The 'Shader to RGB' node is under 'Converter', 3 items from the bottom of the menu, assuming you are editing an Object's Material nodes. It is not available in World nodes.


Figured it was the Gizmo/Overlay wireframe function that was making it look this way. When de-activating the overlay and adding the wireframe tool modifier I got roughly the same result I wanted.
This effect can be rendered via the view - render image/animation function within the layout.


How to create a low poly model from a high poly model

Your best option is to use the Decimate modifier. It allows you to control how much of your mesh your want to reduce.

The Decimate Modifier:


Create a folder dialog box for an addon (2.91)

This is how you get it to work
Import :

from bpy.props import PointerProperty

In your PT_Panel class:

ProjPath = context.scene.proj_path
row.prop(ProjPath, "path", text='Project Path')

While registering:

classes = [project_path, PT_Panel]

def register():

    for cls in classes :
        bpy.utils.register_class(cls)
        bpy.types.Scene.proj_path= PointerProperty(type= project_path)

def unregister():

    for cls in classes :
        bpy.utils.unregister_class(cls)
        del bpy.types.Scene.proj_path

if __name__ == "__main__":
    register()

If you want to save it permanently then use AddonPrefrences
And try to improve your naming skills :

Darkfall - https://www.youtube.com/watch?v=i12oOBI3E28
Red-K Production- https://www.youtube.com/watch?v=V1gU50MKulw


How do I select the best Keyframe Interval for video encoding?

Assuming that you mean the keyframe interval in the video encoding properties panel (highlighted), this governs how often keyframes are written to the video stream. The default, 18, is one keyframe every 18 frames (or two-thirds of a second.)

As the tooltip states, there is a trade-off between file size and seekability. What this means is that when you seek through a file, the video cannot render correctly until the first keyframe -- this is the first frame of video data that is guaranteed to contain all pixels (the in between frames are "delta frames" and contain only partial information about what changed). So with fewer keyframes (with a large keyframe interval), when you skip through the video it will take longer for the video to "catch up" and start playing. However, because the keyframes do contain basically a whole screenshot, these frames take up more storage space. So if you have a small keyframe interval (lots of keyframes) then the resulting video file with be larger.


How to display backfaces in black or other color in Blender 2.8?

You can use Geometry node's Backfacing output to mix different shaders. If it's only for preview you can set up different outputs for Cycles and EEVEE. You can set it up so it only works with EEVEE(that is what you get while in LookDev mode), but will not be rendered with Cycles.


You can use curves as hair guides. Set their maximum influence to create a small "sphere" around their base which influences the hair system, which will allow short hairs, and under the curve's influence only, long hairs.

Than you can use shape keys to animate the curve. I'm not sure if you can use an armature but that may also be an option through some other round about method.

Here is a step by step, sorry there is no screen shots.

select an object and create a particle system. Select "Hair" as
the type. You will see some strands.
create a bezier curve (shift+a -> curve -> bezier curve)
this is the step that may have been unclear sorry. Select the
curve, and go to the Physics tab, and click "Force Field". In the
properties below, under "Type" change from "Force" to "Curve Guide".
There will be 2 circles, a dotted and solid at each point. The solid
sphere is the root of the guide.
Check the "Use Max" checkbox. This will change the root to a dashed
sphere. Set the maximum distance as desired. It will change the size
of that sphere, and any hairs inside of it, will be influenced by
the hair guide.

Now changing the hair system in particle settings will affect the normal parts, and the hair guide fill affect some specific parts.


There is a button “apply modifier on splines' points” that you have to enable.

With the function deactivated the curve will get beveled and the resulting surface will receive the shrinkwrap modification. With the function activated all of the curve's control points will be shrinkwrapped. The bevel will then be applied to the shrinkwrapped curve.


Making an object heavier on one side to afect the fall of an object with ridgid body (active) applied to it

Something with an off-center center of mass doesn't fall any differently in real life (disregarding air resistance, which is not simulated by Blender's RB physics).  It won't rotate as it falls unless it has some rotational inertia from some other cause; all parts of the object will experience the same acceleration due to gravity.
Rigid body physics places the entire center of mass of an object at the origin of that object.  (That means that properties like moment of inertia are not simulated.)  You can create an off-center center of mass simply by setting the origin of the object.  If you do this, be sure to use mesh or convex hull collision types, as other types of collision bodies are centered on the origin and won't have the proper behavior for an object without a centered mass.


You must remove doubles first

Select all > press W > Remove Doubles

Select the plane and extrude


What is the function of the "Shape Object" tool in particle edit mode?

According to the manual it

  trims hairs to a shape defined by the Shape Object

That means it allows you to create a mesh that surrounds all or part of your model and use it to cut hair that goes outside that mesh.

Increasing the path steps under it also helps give better results.


While user2859's answer is correct for changing the color of shadows, the shadows in your image are actually not those kind of shadows (or at least not to BI).

To adjust the color of those shaded parts of the mesh, try tweaking the ambient world color in Properties > World:


With your object selected, go to the object properties tab, select the vertex group you want to see from the list, and click the "select" button (or deselect, depending on what you want to do). You must be in edit mode to see the selection.


In clipping border mode, sculpt tool has no effect, help is much appreciated

Turn off X-Ray on the empty.

However, you should report it to the bugtracker.


The syntax class DerivedClassName(BaseClassName): is for declaring a class DerivedClassName that inherits from BaseClassName. In the case of your code example VIEW3D_PT_monkey_grid inherits from bpy.types.Panel. More information about Python's syntax and concepts can be found in its docs.
The code does not instantiate an object from the class, it only declares the class. In order to use the panel VIEW3D_PT_monkey_grid you will have to register/unregister it in the register/unregister function. This is how objects for UI elements are instantiated in Blender.
This answer by p2or should give you a complete overview of UI creation through Blender's Python API.


You can create an empty texture of size of the resulting image strip and alpha over all of your images over it in compositor and translate them with translate node into positions and render it:

With python:

load in you image textures:

import bpy

def load_image(file_path):
    try:
        return bpy.data.images.load(filepath)
    except:
        raise NameError("Cannot load image %s" % filepath)

image_names = ['first.png', 'second.jpg', 'third.bmp']
images = []
for name in image_names:
    real_path = bpy.abspath('//' + name)
    images.append(load_image(real_path))

Get image dimension:

images[0].size[0]    # resolution x
images[0].size[1]    # resolution y

Create empty image of desired resolution for example 1024x256:

bg = bpy.ops.image.new(name="bg", width=1024, height=256, alpha=False)

How to create nodes in compositor and link them:

Controling compositor by python
Render:

render = bpy.context.scene.render
# set this
render.resolution_x = 1024
render.resolution_y = 256
# render image
render.render()
# use File_Output node or specify render.filepath to also save the result

Getting low level with manipulating image pixels:

# you get float values for each pixel like this:
# in png they are stored nicely in rgba order
image = bpy.data.images['SOME_NAME.PNG']
for i in range(0, len(image.pixels), 4):
    rgba = image.pixels[i:i+4]
    # this is also writable ofc

There are couple things to keep in mind though:

Blender uses opengl internally so the origin is in the lower left corner of the image (with the y-axis pointing upwards).
Some image programs might not save the transparency pixels
The image might have alpha premultiplied, but this shouldn't be a concern. In that case the values are in form of [r * a, g * a, b * a, a]


How can I create a dynamic HUD bar in the GE?

The following script runs every second when the light is on. I used an always sensor with "60" placed on the frequency. Since I am interested only in the plane's vertices I won't say more about the logic bricks.

import bge

scene = bge.logic.getCurrentScene()
controller = bge.logic.getCurrentController()
object = controller.owner
#sensor = controller.sensors["name"]

# Get a list of the mesh
meshList = object.meshes
# Get the first mesh on the object
mesh = meshList[0]
# or mesh = object.meshes[0] for both lines

# get the 2 vertices in the right side of the battery
verttop = mesh.getVertex( 0, 2)
vertbot = mesh.getVertex( 0, 1)

# new xyz for the vertices
# 0.09 is a result of the following:
#length of battery(180cm)/time it should work(20s)
verttop_xyz_Pos = verttop.getXYZ()
verttop_xyz_Pos[0] = verttop_xyz_Pos[0]-0.09
vertbot_xyz_Pos = vertbot.getXYZ()
vertbot_xyz_Pos[0] = vertbot_xyz_Pos[0]-0.09

# set local xyz position of the vertices
verttop.setXYZ(verttop_xyz_Pos)
vertbot.setXYZ(vertbot_xyz_Pos)

This solution worked for me. So till anyone finds a drawback, here it is.


Cycles material with bump and image texture - scale only the bump map?

You can use a Mapping node to adjust the scale of the texture. It would be placed between the connection of the Texture Coordinate node and the Image Texture node.


How do I change a Math Z Surface's x and y bounds?

x and y range from -0.5 to 0.5, if you want them to range from -5 to 5, simply multiply each occurence by 10. You get quite high values for z that way, so you might want to double-check your constants, but you can also quick and dirty correct this by scaling along the z axis.


How to remove blue dashed line with numbers attached to it

Looks like the MeasureIt addon. In the Tool Shelf (T), go to Display / MeasureIt Tools and click Hide.


I think the main thing you will want to learn first are the basics of a computer graphics development. This generally means learning the basics of OpenGL programming. You will also need to go over some basic trigonometry and linear algebra for this. Once you understand these basics it should be a lot easier to just google for individual topics and find explanations.

I learnt most of this at my university introduction to computer graphics course, so maybe you could try looking at an online course covering these topics. I noticed a couple of online courses that look like they cover similar ground, although I haven't tried them myself, so I don't know the teaching quality:
https://www.coursera.org/course/webgl
https://www.edx.org/course/computer-graphics-uc-san-diegox-cse167x-1

When you get more familiar with the basics, you can try looking at blender's source code as well. I wouldn't recommend that for a complete beginner though, as it can be quite hard to follow in places.


How can I use Animated Strip Time in the NLA Editor?

Came across the same issue trying to use it. Whenever I made a keyframe it would resort back to 0 and wouldn't animate.

I contacted the developer and it turns out this was a bug. It has now been fixed and it seems to be working fine on the latest daily build, which you can download from here:

https://builder.blender.org/download/

  UPDATE: Currently with the latest release (2.7a), you can only get it
  to work using the Graph Editor.


Dynamic Displacement for tracks doesn't appear in the final render?

You have Subsurf modifier with different settings for render and viewport:

So, then you hit render new plane generates and dynamic paint refreshes.

Set view subdivisions equal to render subdivisions.


Can't remove object via python once grouped

So, I submitted a bug report, and got a same day response from Bastien. Turns out, the problem is related to the Fake User restructuring that is going on and there isn't a straightforward way to do it. Here's a link to the bug report: Blender Bug Tracker

He also pointed me in the direction of an effective workaround that I thought I'd share. Here is the working code:

import bpy

scn = bpy.data.scenes['Scene']
ob = bpy.data.objects['Cube']

testgroup = bpy.data.groups.new('testgroup')
testgroup.objects.link(ob)
testgroup.objects.unlink(ob)

scn.objects.unlink(ob)

ob.user_clear()    #manually clears all users, frees the object to be removed

bpy.data.objects.remove(ob)


Hair particle system possibly bugging out

I figured it out, it appears I had the amount of hair on render set to 100 and 3 on the viewport and did not notice it.


First of all in object mode select your wall and apply rotation and scale (Ctrl A) so that your object has rotation 0,0,0 and scale 1,1,1: it's a good practice that affects also UV unwrapping.

Then in edit mode select all and remove doubles (there are 4 doubles that confuse the algorithm), then - in wireframe view - select the little face at the bevel zone between the mesh and her mirrored side and delete it.

Then select all the edges you want to act as seams, in order to preserve the visible faces (front and lateral) without seams.

In the pictures my example.

enter image description here


A Color Ramp is used for many different things. You will use it all the time.

Here are a few examples.

It can be used to mix many different colors.

It can be used to control how much of a texture you see ie Roughness (and other inputs by clamping the white and blacks).

It can also be used as a mask to mix two materials together. By clamping down how much falloff or fade you want your texture/mask to have.

There are more use cases but here are some to get you started.


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

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

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

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

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

Some bone constraints you may want to try:

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

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

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

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

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

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


Is there a way to copy lighting to multiple scenes?

If you want to have objects linked from a scene to another, select your object and go in the header menu > Object > Make Links > Objects To Scene, and choose the destination scene:

Any change on the object on a scene will be replicated on the same object on the other scene. If you ever want the objects to be unlinked, go in the header menu > Object > Relations > Make Single User > Object & Data & Materials:


Blender Game Engine control material values

I've found a hack: the "Lamp data" node gives you the distance from a specified lamp to each fragment. That gives you a float to control the material, and the position of the lamp can be controlled with the game logic.
This is a fairly terrible solution.


Why is my cloth material not rendering properly?

Sorry for the misunderstanding - you meant that the flag does not move. I thought you meant the image. It is good habit to cache all physics simulation before rendering, so the renderer has all the data needed to render the animation. Go to the Physics pane with the flag selected check 'Disk Cache' and after that hit 'Bake' in the Cloth Cache tab. After completing the caching process you can render and everything works just fine. It should look similar to the image below before rendering


How to use the Freehand Curve drawing add-on?

Took me some tries to figure it out myself:

Add a Bezier curve to your scene
Tab into Edit Mode (with said curve selected)
Shift+LMB draw your freehand curve
Delete the Bezier curve from step 1


This is generally caused by custom normal data.

Under the Properties Window > Object Data > Geometry Data press Clear Custom Split Normals to get rid of it.