text:
ImageViewport.refresh() seems to do nothing / how to re-render in BGE before taking a screenshot
I made this toy example to demonstrate the problem i have. I am trying to use BGE to make screenshots of a rotating object for a report.
 I use a script on the cube to rotate and capture that uses logic to run on the object (e.g. deleted the cube and added a rotated cone - to which I applied the rotation, so in the screenshot it has rotation 0):

import bpy
import bge
from mathutils import *
import numpy as np
import math

cont = bge.logic.getCurrentController()
own = cont.owner
new_q = np.random.randint(4)
if new_q == 0:
    q = Euler((0.0, 0.0, 0.0)).to_quaternion()
elif new_q == 1:
    q = Euler((0.0, 0.0, math.radians(90.0))).to_quaternion()
elif new_q == 2:
    q = Euler((0.0, 0.0, math.radians(180.0))).to_quaternion()
elif new_q == 3:
    q = Euler((0.0, 0.0, math.radians(270.0))).to_quaternion()
own.worldOrientation = q
fname = 'e:/temp/q_{}-{}.png'.format(new_q,int(np.random.random() * 100000))
ivp = bge.texture.ImageViewport()
ivp.refresh()
print ('saving {}'.format(fname))
bge.render.makeScreenshot(fname)

the script rotates the object and then captures a screenshot:
However, when I compare the screenshots, they are not acurate. E.g., files starting with q_0 randomly point to all axes...
Is there any way to enforce a new render so that the saved images have the exact rotation they are supposed to have?
I also tried saving on the next frame (e.g. saving to the global dictionary a flag, and then on the next time the script was called, save then) No joy there either... :S

Side note: do not import bpy. This is the Blender API but you are working with the BGE (not with Blender). You will get problems when you publish your game.

BGE API:

bge.render.makeScreenshot(filename)

Writes an image file with the
    current displayed frame

Your changes to the scene will be rendered after all logic of the current frame completed. Regardless what you do and in what order the rotation will not be part of the already rendered output of the last frame.
Your idea to perform logic (rotation) in one frame and call makeScreenshot within the next one is correct.
I strongly suggest to separate these two operations. Rotating an object and making a screenshot are two separate operations. As they need to run at different time points running it from the same controller makes the design unnecessary complex.
As you want to create the filename dependent on a previously chosen number I suggest to transfer this number somehow to the other processing. In this case I suggest to send it via message. This serves two puposes:

tells when to make a screen shot
provides information necessary to create the file name

I would not send the file name as it is the responsibility of the saving operation to care this detail, while the rotation processing cares just the random selection (it selects an option not a file name).
Randomly Turn

turnRandomly
import bge
from mathutils import Euler
import random
import math

controller = bge.logic.getCurrentController()

if all(sensor.positive for sensor in controller.sensors):
    owner = controller.owner
    new_q = random.randint(0,3)
    if new_q == 0:
        q = Euler((0.0, 0.0, 0.0)).to_quaternion()
    elif new_q == 1:
        q = Euler((0.0, 0.0, math.radians(90.0))).to_quaternion()
    elif new_q == 2:
        q = Euler((0.0, 0.0, math.radians(180.0))).to_quaternion()
    elif new_q == 3:
        q = Euler((0.0, 0.0, math.radians(270.0))).to_quaternion()
    owner.worldOrientation = q

    for actuator in controller.actuators:
        try:
            actuator.body = str(new_q)
        except AttributeError:
            pass
        controller.activate(actuator)

Assumptions:

all sensors needs to be positive (AND behavior)
should have a message actuator (otherwise there will be no error but make screenshot will not be triggered)
all actuators will be activated

Make Screenshot

makeScreenshot
import bge
from datetime import datetime

controller = bge.logic.getCurrentController()
if all(sensor.positive for sensor in controller.sensors):
    for sensor in controller.sensors:
        try:
           bodies = sensor.bodies
        except AttributeError:
            continue

        for body in bodies:
            option = body
            filename = 'e:/temp/q_{}-{:%Y%m%d-%H%M%S}.png'.format(
                option, datetime.now())
            print ('saving {}'.format(filename))
            bge.render.makeScreenshot(filename)

assumptions:

all sensors needs to be positive (AND behavior)
non-message sensors will only be checked without any further processing
all bodies will be processed (e.g. several messages arrive at the same frame)
the screenshot will use a timestamp in name (rather than a non-unique random number)

As the message will trigger one frame later, the screenshot will be made a the right frame.
Be aware these operations do not need to be performed by the same object.

Thanx for your answer! (+1) I ll go check it to make sure it works, then accept...


text:
How do I create a hinged wing?
So I'm planning this semi-photorealistic animation involving a flying ship, some green miles, and a supervoid as special effects, and some of the many models that are going to need to be created are:
Chen, a Nekomata from the Touhou Project (Perfect Cherry Blossom.)
A Parasect from Pokémon.
Several angels with wings.
I'm trying to figure out how to would a hinged wing actually work in Blender? For that matter, should wings, tails or other tentacular appendages be animated through bones, or through simple physical rotation?
It's only been laid out on paper, and the entire project's pretty much ground to a halt because I can't seem to remember how to parent a mesh to an armature.
(Also, feel free to submit some blends to help me out here.)
Thanks, Nefer007 (Anyone who responds gets to be mentioned in the credits!)

Others may find it useful for you to state your artistic style for your project.  Photo Realistic or Cartoon for example.

Please only ask one question at a time (and edit the title to reflect that question).

Okay, here you go on a silver platter... one question on one question.

are the wings on a ship, or like an angel or somehting?

Both: look up Cyodrake's Gaze online for the ship's wings, and the angel wings are...well...angel wings.

P.S. If that was you that upvoted the answer, @RadishoftheOpera, oh my god thank you I finally leveled up.

For Tails consider a Armature a Spline Constraint, employing curves, which can provide the smooth visuals.  That is just a starter.
Armatures are suggested for Wings.  Thus you have control over the flapping motion. I assume you will need that control.
You stated [I can't seem to remember how ..].  Consider a video website for tutorials. You may want to search .. Blender Tutorial Spline Constraint.
Once some of the basics are there you can consider hundreds of subtleties.

Umm... I stated what? I've also been experimenting with all the objects, and the only things under my Armatures tab are Single Bone, Rigify Human, and Rigify Pichipoy Human.

I've been trying to rig wings as well. I have all of the bones in the right wing with a "copy rotation" modifier copying the rotation of the bone I have selected in the image.
Every one of the teal bones have the copy rotation modifier, and have the target set to the right wing armature, and the bone set to the bone selected in the picture. I also clicked 'offset,' allowing me to edit the wing manually. Also, don't forget to set the 'space' to 'local space <-> local space'. Then, I have the left wing bones copying their right wing counterparts.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
Align View to Current Transform Orientation
Is there a keystroke or command to view along an axis of the current transform orientation (similar to Shift+Numpad to view along an object's axis)? Assume there aren't any objects already aligned with the transform orientation.
The best way I've found is to create a dummy object (like an empty), use "Align to Transform Orientation", and then use the old Shift+Numpad keys. It's workable, but it's kind of tedious.

I don't think you understand. Or maybe I don't understand. There is no object aligned with the orientation. I've just created the transform orientation (specifically in Python, although there are other ways this could be useful).

Ah Ok something like setting in view3d context context.space_data.region_3d.view_matrix = context.scene.orientations["blah"].matrix.to_4x4()  and orthogonal rotations of.

... btw above will prob give wrong scale, would need only set rotation part of view matrix from orientation matrix.

@batFINGER, it looks like your snippet works, except that I think you have to invert the matrix.  I'll do a little more testing and post an answer with a code example.

Test script to put all 3d view areas in context screen into same orientation as first custom scene orientation
import bpy
from mathutils import Matrix
context = bpy.context
# put all view_3d areas in screen into screen.orientation[0]
scene = context.scene
screen = context.screen
for o in scene.transform_orientation_slots:
    if o.custom_orientation:
        orientation = o.custom_orientation

print("Using ", orientation.name)
view_rot = orientation.matrix.to_quaternion()

view3dareas = [a for a in screen.areas if a.type == 'VIEW_3D']
for a in view3dareas:
    r3d = a.spaces.active.region_3d
    r3d.view_rotation = view_rot

To make it change from camera perspective would need something like
    if r3d.view_perspective == 'CAMERA':
        r3d.view_perspective = 'PERSP'

To look "from above" from this orientation
rot = Matrix.Rotation(radians(-90), 3, 'X')
#view_rot = (rot * orientation.matrix).to_quaternion()
view_rot.rotate(rot)

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
How to display a reference image in a new window?
How do I open an extra window to display a reference image? How do I import the reference image into the window?

Please see this answer: http://blender.stackexchange.com/questions/118/how-do-i-set-a-background-image-while-i-am-editing

The questions is not a duplicate, it isn't asking how to add background images, it is asking how to make a new window to display the reference image.

UV Image Editor
If you wan't to have it next to your 3d view, you can use the UV Image editor. To open a new one, click and drag to your right on the bottom left hand corner of the 3D view.

You will then see a second 3d view. click on the icon of a cube, and change it to the UV image editor.

Thanks for your replies, but I am the newest of noobs, so I think I need to reframe my question. But I'll have to do it later. Perhaps you could check back in a few hours and bail me out!

@chas sure.... if it isn't exactly related, try asking a new question (if you're not sure then just ask it)

Okay... I looked again at the answers above, went back to blender, and after a few more tries succeeded in opening a new window and opening an image file in it. Thank you very much for your help! (I just hope I can do it again.)

@chas If the answer helped you, please mark it as accepted, using the green check mark. If you need more help, feel free to ask again.

Empty
You can also add a background image using an empty. Shift-A>Empty>Image. Go into the empty properties panel, and chose your image

Background Image
You can use a background image in the same 3D view, by adding one in the properties panel on the right side of the view (you can toggle it with N).


text:
'Context is incorrect' error when using 'bpy.ops.object.mode_set(mode='OBJECT')' if I'm already in object mode
I'm trying to do things that only work in object mode. This gives me three choices:

I can hope I'm in object mode, and my script will raise an error if I'm not.
I can hope I'm in pose mode (or some other specific mode) and use bpy.ops.object.posemode_toggle() to switch out of it.
I can hope I'm not in object mode, run bpy.ops.object.mode_set(mode='OBJECT') to switch into it, and my program will raise an error if I'm already in it.

If I go with that last option I'm getting the error message
Traceback (most recent call last):
  File "C:\Users\daniel\Desktop\BlenderMusic\keyboard.blend\fingers", line 5, in <module>
  File "C:\Program Files\WindowsApps\BlenderFoundation.Blender_2.82.1.0_x64__ppwjx1n5r4v9t\Blender 2.82\2.82\scripts\modules\bpy\ops.py", line 201, in __call__
    ret = op_call(self.idname_py(), None, kw)
RuntimeError: Operator bpy.ops.object.mode_set.poll() failed, context is incorrect

There's nothing I can do to just let my script run no matter what mode it's in without crashing. Am I missing something?
Also, why is posemode_toggle() even a thing? How can you be in a situation where you don't know whether or not you're in pose mode, but if you're in it you need to not be in it and if you're not in it you need to be in it?

Hi. Aa you used the word 'crashing' do you mean blender is closing as a result of running this?

I just mean it's raising an exception.

You can check which mode you're in with the following line:
mode = context.active_object.mode

And then do things correspondingly, such as switching to object mode when you're in pose mode for example.
Or you could use a try/except statement:
try:
    bpy.ops.object.mode_set(mode='OBJECT')
except:
    pass

Hope this helps.

Making that happen?
Given of-course there is a scene, the only way I'm aware of to have set mode operator fail is to have no active object.  Calling op to object mode from object mode is not an issue.
Is it possible that in your code this can happen? Are you running from a timer thread? Recommend editing a script example inTO question showing giving more context.
Python console test
>>> C.mode
'OBJECT'

>>> C.object
bpy.data.objects['Cube']

>>> bpy.ops.object.mode_set.poll()
True

>>> bpy.ops.object.mode_set()
{'FINISHED'}

>>> bpy.ops.object.mode_set(mode='OBJECT')
{'FINISHED'}

>>> C.view_layer.objects.active = None
>>> bpy.ops.object.mode_set.poll()
False

>>> bpy.ops.object.mode_set()
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
  File "../modules/bpy/ops.py", line 201, in __call__
    ret = op_call(self.idname_py(), None, kw)
RuntimeError: Operator bpy.ops.object.mode_set.poll() failed, context is incorrect

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Separate/convert bones into their own armature
I have the following setup:

Unfortunately this does not work in WorldViz. Instead I need every bone to have its own armature system. This results in an cascade of armature systems.
But I would like to reuse my already perfectly placed bones. Is there a way to convert a bone into its own armature system?
For example: The bone Bein would become Armature Bein with a pose and a bone Bein and this bone would be the original bone.
Here is the result I wanted to achieve:

The option you're looking for is CTRL + ALT +P.
Its called separate bones. All you need to do is select the bones you want to put in their own armature and CTRL + ALT +P.
Now you have another armature system, with any IK's still working.
From there if you want to have the bone it was originally attached to be the parent of it, all you would have to do is select the new armature, SHIFT + select the old armature, TAB into pose mode and select the bones you wanted it to be parented too.
Any pose data should still be left intact.

Select the bones needed and just press P in edit mode (i.e. Separate Bones) and press enter to apply.
You have now a new armature.


text:
Can I disable alpha when baking textures?
I have a particle system that adds some details to a texture. However when I bake the texture down, any area that is transparent makes the bake transparent, even though there is another object beneath the transparent one.
It appears that the default Bake Mode Full Render setting renders as if the Alpha setting under Shading (render tab) is set to Transparent.
When baking objects on to a texture, how can I disable alpha and just get the color as it would be in a render (reflections/refractions of the sky instead of Alpha pixels making holes)?
Note: I am making the particle system real and joining it first, so that it correctly renders and does not make the black silhouettes.
Id prefer an internal render solution if possible, but a cycles one is ok too!

Add any extra notes into the question itself by using the 'edit' link below the question.

Could you post images of what's happening versus what you expect to happen? It's a little difficult to picture.

In the UV/Image Editor, if you open up the image you want to use as the bake output, and look at the properties panel, there is a "Use Alpha" checkbox. Have you tried deselecting that checkbox prior to baking?

Turn off transparency in the Render properties. In cycles it can be found under film and in blender render it can be found under shader. Or you could just add a plain as a background.


text:
Is there a way to render particles as if they were a single liquid?
I don't want to use the fluid simulator beacuse i've been getting more controlled results with the particles system feature + using a guide as a force field.
What i'm trying to accomplish is water flowing inside a pipe. I don't need it to be realistic but i need an inner flow to be perceived.
So i was thinking of using a particle system guided with the same curve that models the pipe (so it follows its shape) and maybe add a smooth modifier to the result, to make it appear as though the multiple particles are only one fluid.
Of course if you think there's a way to achieve this easily with the fluid sim, or maybe there are ways to control it more preciselly, I will be glad to listen to your suggestions. But if what i'm asking is possible i would like to go that way or even a lower-tech solution (without any kind of simulation at all!)
Thanks!

Related: Different materials for each fluid inflow?

If you set up a particle system that works, you can use metaballs as the object it emits, so it looks like it's one smooth "fluid". Metaballs will merge together into one smooth shape. The result isn't perfect, but it's decent:

Thank you! this is exactly what i'm looking for, but i cant find the metaballs.... do i have to create 1 as an abject first in the scene and then select it as the object to be emmittted?

@invicente Yes. Fair warning, this can be extremely slow with medium to large amounts of particles.

Thanks to you two, I didn't know what "metaballs" were. Now i know.

Would it be possible to "bake" the result to an animated mesh or something? And, if so, would that turn to be less resource consuming?

@invicente if you want to save the mesh for a single frame, you can convert it to a mesh, but it won't animate anymore. There really isn't a way to "bake" it as far as I know.


text:
How to make procedural textures to follow geometry?
I know this may be a very basic question, but I somehow got myself tangled up.
I'm trying to make procedural textures (like clouds) to follow the geometry of a simple model, for instance, a distorted plane.
I'm satarting from a plane and then adding twists and bends to it.
by now it's not working for me:
The texture grain will not follow the direction of the breaks, but will stay in the original direction, as in this picture.

These are the settings of the texture:

Maybe the problem is in the Mapping settings for the Projection and the Coordinates. Or maybe there's something I should set up with the geometry first (my guess is something with the UV's ¿?¿ which i know nothing about).
I appreciate any help or hints. As you may help me clarify i can edit the question to be more detailed and specific.
And here's a video, where it simply happens,
http://youtu.be/sxgwa-0e5Jw?t=46s
...And the author itself responds in one of the comments (mine by the way) That this happens because the texture is like "the pattern on a carpet" so it will naturally follow if you bend or twist it...
So maybe it's even as simple as I'm not using the right tools to twist and bend the plane..... (wich were just extrude and subdivide....)
Thanks in advance

Try UV unwrapping your plane and then using the UV coordinates in Textures > Mapping.

So first, i add the plane, then unwrap it, then apply the texture and finally i choose UV coordinates? (i'll give it a try now) thanks!

Thanks @gandalf3 ,It's working now, but i still don't get it completly, i think you've got to set the texture first .... but i'm still not sure.

Using UV mapping, This is often the most straightforward method since you can edit UV's directly and preview the changes realtime, However you only get 2D coordinates, but you have the advantage that the coordinates are editable and are stored per face-corner (they dont have to be contiguous). UV's are also well supported by many formats, game-engines and render-engines.

if your mesh has primarily a grid topology, then try the Follow-Active-Quads tool from the unwrap menu.

Using Generated mapping, this works when you deform a mesh by a modifier (ShapeKey, Lattice or Armature for example), the un-deformed mesh is used for texture coordinates.
Using TexMesh, see Mesh Data properties, This allows you to select another mesh to use for texture coordinates, this gives a lot of control but the vertex indices must match up. These have the advantage of allowing you to set XYZ coordinates, but you have to take care not to add/remove vertices from the mesh. While useful, this is a Blender specific feature.


text:
Problem With the Rotation Edge CW
Like you see in the first photo below the edges rotated in this direction but in the cours im folowing they rotated in the opposive direction (see in photo 2). Could someone help me please.
Photo 1

Photo 2

Just rotate again and again until it hits the correct rotation

Try Rotate Edge Clockwise or Counter clockwise command from likely Right click menu in Edge selection mode.. And from your question seems like course author did the same


text:
Modeling Error Please help me
So I dont know what I did wrong But I am following a course to model a humain body and the teacher isn's responding to anyone for months so here is my problem. This is what is was soppose to do like you see in the second picture and the third on is what I did so how can I fix it.

Please help me im desperate

Please use a descriptive title, and avoid extraneous text like "please help", "question about" and "doubt", that is what everyone is here for. Thouroughly explaining your issue might also help get answers

It's a bit hard to visualize without having the actual mesh, but I think you just have an extra loop in there.  If you just merge the points on the yellow edge here to the points to their right, you'll be pretty close to correct.

OK, then add this edge in green, delete the edge in red, and move the top endpoint of the green edge over to the right:

That should give you this edge in your reference model:

Then I think the last problem edge is the one that curves over the top of the bicep.

Okay I got It It's look like that after but It's still not the same thing

well, can you post an update of what it looks like now?  I can't visualize it in my head.

Well the picture just under yours is the one after

ok I added what I think is the next step.

Thanks you I redid all the part and I dont know what I did wrong But It worked But still Thanks


text:
Exporting problem
So I exported this material( The one in the picture) for blender to unreal engine but when I exported the fbx file in ue4. When I applied the material to a plane well it was just a black material they was nothing showing up. Could someone help me please.

You can't export Blender's node based materials to a game engine like Unreal in a format like .fbx.

Well how should I do it because I really need it exported in ue4

The correct way of doing it, is baking the textures onto the low poly model and then setup a material with the Principled BSDF, a Material Output and otherwise just Image Texture nodes. Then export as glTF or fbx with copied/packed textures. Blender's node system is not the same as Unreal's, even the glTF format will not be able to transfer all of them. The other option is of course to recreate the material in Unreal using their shader editor.

I don't understant. But how would I do that

But I did this one In shading and i didn't use a texture. I followed a tutorial here is the link. https://www.youtube.com/watch?v=Hb81bSTygt4&list=WL&index=47&t=0s


text:
Baked Normal Map Not Appearing on Mesh
I've been continuing that Blender Anvil Modeling tutorial, and I've gotten stuck on the part in which I'm supposed to bake a normal.
I sculpted, and created a high-poly model, and then tried to bake the normals onto a low-poly model. (I hope I'm saying this correctly...)
The result was this fine normal map:

I saved this image, added it as an image texture, plugged it into a Normal Map node, and plugged that into the "Normal" port of a Principled BSDF.
And nothing.
The low-poly mesh still looks the same. I've unwrappped the mesh. Image/Color textures work fine, but for some reason, the Normal Map does not work. The normals line up with the UV Map, the Image Texture is set to "Non-Color", and I don't know what else to try.
For reference, here's the node setup:

And if anyone's willing to take a further look, various .blend files will be linked below:
Smaller anvil.blend file containing only the low-poly mesh + the normal map (1.6MB):

Hyperlink for those with Script Blockers
The original anvil.blend file containing the low-poly mesh, the high-poly mesh, and other stuff (137MB): On Google Drive.

When I opened your file, the image called Normal was not loaded in the Image Texture node, once done it seems to work fine:


text:
Animation nodes: applying material to text instances
What I'm trying to do is make an animated graph in Blender. I'm using animation nodes to generate text instances for the axis scale labels.
I'm not using 'copy from source' because when I use that, I'm not able to change the text of the object depending on the loop index, I'm just generating text instances. I have everything working fine except for the material.
This would be simple if I was using copy from source, because they could have the material of the source, but since I'm not doing that, I need a way to apply a material to the text instances in the animation node tree, and I can't see how to do this.
Can anyone help with this? Thanks in advance!
Edit:
I was about to post images of my node tree to show what happens when I use 'copy from source' to answer Omar's comment below, but in the course of doing that, I found the problem. Before, when I was using copy from source, all the numbers would be the same. When I have 'deep copy' checked, then the numbers change according to the index. But, if you have 'copy full object' checked, it won't copy the material. So, the solution is to use copy from source, not use copy full object, and use deep copy. Here is my node tree in case this helps anyone. Thanks Omar!

Unfortunately, Animation Nodes have no system for dealing with materials as of now. The only solution is by using scripting and I think there are answers here describing this method. But before we get to that, I want to understand why using Copy From Source option won't work. Can you elaborate on "I'm not able to change the text of the object depending on the loop index"? Can you share your current node tree or a simplified version of it?

Glad you were able to solve this yourself. Can you write the solution in an answer?

Now Blender 2.8 has Animation Nodes 2.0, as such there is more material handling available. I was able to use Animation Nodes to assign materials to text instances without deep copy. The text instances were created from a text block list making objects with unique names.
I used Object Material Output nodes (labeled 1,2) from a Get List Element node which you can iterate.

These materials were defined as Eevee types but it should work with Cycles as well. Note that the Get List Element is an integer index so you can't blend the materials this way.

In order to solve this problem, instead of just using text objects in the object instancer, I used 'copy from source' with 'deep copy' checked, and 'copy full object' unchecked.
This was done in order to apply a material to a set of text object instances, while allowing each of those instances to have different text. 'Deep copy' makes it so that the material of the source is applied to all of the instances, and having 'copy full object' unchecked allows each instance to have different text.

In my case this fails as I cannot guarantee the object name as its generated new by a list variable earlier in the node tree. But thats great to know, thank you


text:
Which Exposure control to use?
There are two Exposure controls: In the Film section of the Render Tab and the Color Management section of the Scene Tab.  The effects of changing the Exposure in Color Management can be seen in both the Cycles preview and in the final render.  Changes to Exposure in the Render tab seem to only affect the final render.
Other than this, are there any practical differences?  In what situation would one prefer to use the Render Exposure instead of the Color Management Exposure control?

It doesn't seem like the exposure setting in Render > Film does anything which can't be done later, see http://blender.stackexchange.com/q/11024/599

There is a subtle difference between the "Film" exposure setting and the CM panel exposure setting that may elude many folks.
The "Film" version, while functionally equivalent to the CM version (IE 2^EV_adjustment * scene_referred_render_value), is applied on the data. In the colour management panel, on the other hand, it is applied purely on the view.
If you are rendering out to display referred imaging encodes, such as JPEG, TIFF, etc., in all instances the impact will appear identical as the data is baked into the display referred format, with all view transforms.
However, if you save as a proper image pipeline format such as EXR, you will see the difference. In the case of the Film variant, the exposure adjustment ends up baked into the EXR's scene referred data. In the colour management variant however, being only on the View, the EXR will bear the original scene referred values as present in the direct render. If you save both versions, only in the latter will the data be saved at its original exposure value, while the former will actually adjust the encoded data.

Exactly. One easy way to see the difference is the following: look at an already rendered image. The color management exposure will change its apparent brightness, since this affects the view. The film exposure will not change its brightness, since the image is already rendered, it is too late to change the data.


text:
Aligning bones' axes to the global axes
I am using the quaternion rotation mode to rotate bones into poses for an animation. For some of my bones, when I increase the X value of the quaternion the bone rotates around the y axis instead. For other bones this does not happen.
I have set all my bone rolls to 0, in case that makes a difference. How can I make all of my bones rotate around the same axis when I modify the same value of their quaternion?
update:
I have discovered that in pose mode bones use the vector from their head to their tail as the y axis and the roll affects the orientation of the x and z axes. Still looking for a way to change these to the global axes.

if you're not set on Quaternion, I can only recommend using euler, it's much more intuitive and easier to correct in the graph editor

You can recalculate roll, (Armature -> Bone Roll -> Recalculate Roll), or Shift+N
This can align bone roll to local or global space.

Shift+N in Blender 2.8

I've found a method which solves my problem, incase anyone else has the same: I seperate each of the bones and place the tail at the same x and z point with a y value greater than the head, then lock the position of the bones and set the roll to 0. This effectively sets the local axes to the same as the global.


text:
How to run a Python script without locking Blender?
By default a long running script will lock Blender, and using threads isn't currently well supported.
How can a Python script run, (that has access to the Scene data bpy.data.*) for long time, in a way that allows the user to cancel? (for example).

Note: sub-processes are fine, but require data to be passed between processes,see this similar question for the sub-process case.

For a process like baking a number of frequencies from an audio file, I use the modal timer operator.  Eg If I have a long audio file and it takes 5mins to bake one frequency out of a set of 16, I bake one then have a small wait time to allow the handler to catch an escape key which throws up a  menu to cancel (and clean up)  or continue, rather than have to wait 16x5 or kill blender.  It doesn't however let me cancel amid a bake.
For convenience I have used the BakeSoundPanel Panel class to store data on the status of the bake.

class SD_ContinueBakeOperator(Operator):
    """Continue Baking"""
    bl_idname = "sounddrivers.continue_baking"
    bl_label = "Continue"

    def execute(self, context):
        BakeSoundPanel.wait = 2
        BakeSoundPanel.cancel_baking = False
        return {'FINISHED'}

class SD_CancelBakeOperator(Operator):
    """Cancel Baking"""
    bl_idname = "sounddrivers.cancel_baking"
    bl_label = "Cancel"

    def execute(self, context):
        BakeSoundPanel.cancel_baking = True
        return {'FINISHED'}

class ModalTimerOperator(bpy.types.Operator):
    """Operator which runs its self from a timer"""
    bl_idname = "wm.modal_timer_operator"
    bl_label = "Modal Timer Operator"

    _timer = None

    def modal(self, context, event):

        def confirm_cancel(self, context):
            layout = self.layout
            layout.operator("sounddrivers.cancel_baking")
            layout.operator("sounddrivers.continue_baking")

        if BakeSoundPanel.cancel_baking:
            self.clean()
            return self.cancel(context)

        if event.type == 'ESC' or not BakeSoundPanel.baking:
            context.window_manager.popup_menu(confirm_cancel, title="Baking", icon='SOUND')
            BakeSoundPanel.wait = 1000000
            return {'PASS_THROUGH'}
            self.clean()
            return self.cancel(context)

        if BakeSoundPanel.wait > 0:
            BakeSoundPanel.wait -= 1
            return {'PASS_THROUGH'}

        if event.type == 'TIMER':
            BakeSoundPanel.baking = True
            # bake a sound, when finished set self.wait to some "wait time"
            # to enable a cancel

        return {'PASS_THROUGH'}

You can try an approach that is similar to how Javascript works on Web pages. Web pages have no processes (there are web workers, but lets not talk about them).
You can try and split your script's execution into small portions (quants). Each quant can be executed by a timer. When all your quants are executed, you stop the timer. For example:
def my_handler(scene):
    val = scene.objects['Cube'].location.x
    scene.objects['Cube'].location.x = val + 0.1
def register():
    bpy.app.handlers.frame_change_post.append(my_handler)
def unregister():
    bpy.app.handlers.frame_change_post.remove(my_handler)

This script will make your Cube fly away, after you call "register()". The UI won't be blocked because the Quant in my_handler does not take much time to execute, and its execution is bound to the frame_change timer that is controlled by Blender.

This assumes my_handler is short running and can incrementally perform a task. There is still the problem that the function may take a long time to complete.

I didn't know of Fibres, possibly this could be its own answer?

Fibers, also known as greenlets, can provide you means to organize your code into tasks that can be scheduled by your own code (that is, paused, switched and resumed).  I think this link has some better explanation: http://aigamedev.com/open/article/round-robin-multi-tasking/

I'm familiar with greenlets but as far as I know the current implementations don't work when Python is embedded inside another application,
Did you manage to use these successfully with Blender?

I personally never tried them in Blender's Python. In the nearest feature I'm going to try.

spawn a process, then hand the data required to it, however if it's operating on anything blender is using things could get ugly, best to pass all the data to the remote process, (I was thinking of pickle myself to pass a mesh from bge to bpy)
but you may know more about using the python networking then me,
once the operation is completed, replace the data in blender with the data generated by the sub process?
I think Agoose could help here.


text:
How do I get the name of the active brush texture with Python?
How to get active_texture.name via python? Or get active_texture[ID]?
(I mean a texture in active slot)

In this case, you can reference it from the brush it is applied to:
bpy.data.brushes['NameOfBrush'].texture

Or use the active brush (if the context is sculpt mode, texture mode, etc.):
bpy.context.brush.texture

Or:
bpy.context.sculpt.brush.texture

https://www.blender.org/api/blender_python_api_current/info_api_reference.html#indirect-data-access

The 2.66 version you use in your link is old - we now have a link that always points to the newest API www.blender.org/api/blender_python_api_current/

Fixed, thanks. I didn't know about the /blender_python_api_current/ trick! I normally just type 2.77 when I google something in the api b/c the search bar in the docs works horribly (you have to almost know the answer to what you are looking for to be able to find it).

authors: שלמה הרשוביץ


text:
Boolean Modifier fails or makes object disappear
I cant seem to Cut a hole in Any objects with the Difference operation while using the Boolean Modifier, All it does make Objects Disappear or Instead give me an Error(Unable to perform Boolean Operation)

May you please upload a .blend file? the only time I had this problem was when I selected an object with no mash overlapping but I can't tell that from you screenshot. Thank you!

Possible related issue with this question: Why doesn't the boolean modifier work for me?

My build of Blender 2.73 performs the Boolean operations flawlessly, either it is a bug or you are trying to perform the operation on a non-,manifold mesh as Cegaton mentioned. We need your .blend file to be sure. One thing you can try is adding a new cube scaled by 2, and adding a new cylinder and scaling on the z axis by 3, and performing the operation with them.

It appears that your mesh with the Boolean modifier is a 2-dimensional plane, this will cause some issues with your Boolean operations. I noticed some very unusual behavior when trying to perform a Boolean operation on a 2-dimensional mesh (final result, difference mesh  has been deleted):

However if I extruded the plane a small amount, the result was completely normal:

I think you will have to add some thickness to your mesh before using the Boolean modifier if you want to achieve expected results.
Also see this answer to a very similar question.


text:
Why does the Render View in "3D View" look totally Different than the Rendered image?
In "filigree"? handwork I managed to make the textures of my eyes look like this:

When I render it looks like this:

How can I fix this?

The texture, anyway, doesn#t follow the camera in 3D View anymore, but the rendered image does, maybe? :O

the problem is in the texture mapping , you need to unwrap the eyes and place the texture corectly than set mapping coordinates to UV and select the UVmap

Ok, sounds complicated ^^ Maybe im in something like a learning blockade right now because i switched from Gothic2 SPACER to Oblivion SDK to UE3 to UE4 to NeoAxis 3D Engine and never did any Modelling or mapping before Monday :D I really hate that word "UV Mapping" since a few days but i think it'll come with the time ^^ -.-

someone may give a detailed answer , for me it's bedtime


text:
How to render explosions and fire animations in Blender?
I am trying to render a scene where I am animating an explosion and simultaneously changing the camera view. When I rendered it as an image sequence, the camera view changed as per the keyframes but the fire flame was stuck as it was in the initial frame. I am using Cycles render.

The above is a frame from the scene I have been trying to render. The fire in the cooling cell is stuck as it is in every frame. It was animated to explode but that is not showing.

We will need some more information, screenshots and the .blend file would be really helpful

how about the viewport is it any different ?

@Chebhou No.. It's not any different in viewport

@NoviceInDisguise The blend file is a bit large and I'm having trouble uploading it. What other information would be helpful to you?

I believe this a smoke simulation does it run in the viewport ( solid view ) normally ?

Yes it does run in solid view

it could be the material used for the smoke

Could there be a problem in the process of rendering. I'm relatively new to this, so does fire render when you animate the camera movement or what?

Yes, it will still work as expected if set up properly, although I have noticed that sometimes if you change a setting it will freeze at the first frame in the render and the viewport. Does the viewport preview of the fire freeze after the render?

Here is the link to the blender file https://mega.co.nz/#!O9oDlYgY!NRi_ipdK2YEZpYavc23tBsVSiX89F9Pf_o2GU6jgu7g

@AnuragSinghania  just Bake_All_Dynamics and it will render fine ( at least for me )


text:
Why is this hair particle system not properly into account the 'density' vertex group?
Having trouble with hair particle system on a vertex group on version 2.74.
I have a single head mesh (post mirror-apply, already checked MeshLint and normals) with multires modifier on. I created a beard vertex group to control the area to grow my beard/mustache.

When I specify my beard vertex group under "density", the generated hair only stays in the vertex group area on one half of the mesh, and spreads outside the area and onto parts of the face, neck, and ears in the other half.

When I specify both "density" and "length" to my beard vertex group, the generated hair does stay in the vertex group area on both halves of the head mesh, but there are glaring bald spots despite having "Even Distribution" toggled on.

I'm hesitant on resorting to replicating and separating parts of my mesh in order to control hair growth, which gives me the expected correct behavior. How do I do this without resorting to this hack?

Not sure if anyone could provide any assistance on my problem.

You should use the Weight Paint mode to create your vertex group.
Make sure you Apply Transforms on your mesh aswell.
Regarding "separating part", creating 'scalps', I think it is a better way to go especially when using animated characters.

Post a blend file if you still struggle.
EDIT: The Particle tool has a known bug when used with subdivision surfaces, and Multires. So it's "normal" and is being solved.
(SOURCE: https://soundcloud.com/blender-institute/podcast-ep-006-flexirig @ 12:50mn)

I had a similar problem. Applying subdivision surface really helped.

I'm also having problems relating this issue.
It also occurs when you have a bevel modifier primarily to the particle system.

@Delagone what is the order of your modifiers in the stack?

@Akelian Like I mentioned, I first added a bevel modifier followed by a particle system. Had this problem occuring on several projects since Cycles supported GPU hair rendering. Didn't know why but after reading this question it has come apparent that this is a bug.


text:
Beveling compound curves
Is there a way for beveling compound curves?
For example - Add icosphere -> Select all -> delete only faces -> convert mesh to curve -> bevel curve. Curve will be beveled but with a some kind of distort at some points. Is it possible to make it more consistent, except changing radius at every problem point?

Would using Add icosphere -> add wireframe modifier work better?

not really, icosphere just for example. If u have just intersected lines without faces, a lot of arbitrary lines, so it will be a way too long to make faces first

It's possible to get sort of beveling using Skin modifier. However you still will be limited to intersections' style and stuff.

Yeah, skin modifier do the job but with a little distort at points  and it becomes imposible to change the profile shape. I thought there must be some option in curve properties to fix the problem. Anyway, I can't get why it deforms when beveling.


text:
blenderplayer and 3rd party libraries
Blender player is a nice way to create stand alone .blend files that can be distributed to other people.
However, for most interesting programming, one would use in python libraries such as numpy, etc. All the python libraries out there is what makes python so powerful. Blender does not come with e.g. numpy pre-installed, .but 3rd party libraries can be installed.
However, when the .blend file is distributed, it still depends on those libraries... The problem is that now the end-user, which might not be tech-savvy needs to install the 3rd party libraries alone... Is there any way to fix this?
This question relates to the (unanswered :S) How to bundle python libraries into addon? in that a solution to it might be a solution to this one, but "how-to-bundle-python-libraries-into-addon" refers to plugins, not .blends for the standalone player, and further this question is more general, any way to distribute the 3rd-party libraries would be ok (e.g. could one put them in the .blend directory and set some paths to point there?).
I had the problem on a .blend file, and that was because I was using an old version of Blender , newer versions will have numpy etc. (my old version was using the system's python, now python comes with a nice python that has common  stuff like numpy included, so the question becomes less important.
To see if numpy was not there i did on a script from inside blender:
import os
import sys
print ('sys.executable',sys.executable)
print ('---')
print ('sys.path',sys.path)
print ('===')
try:
    print ('PYTHONPATH', os.environ['PYTHONPATH'])
except:
    print ('no PYTHONPATH')
import numpy as np
print('done!:)')

to which I got:
sys.executable /usr/bin/blender
---
sys.path ['/usr/share/blender/scripts/addons', '/usr/share/blender/scripts/startup', '/usr/share/blender/scripts/modules', '/usr/lib/python35.zip', '/usr/lib/python3.5', '/usr/lib/python3.5/plat-x86_64-linux-gnu', '/usr/lib/python3.5/lib-dynload', '/usr/local/lib/python3.5/dist-packages', '/usr/lib/python3/dist-packages', '/usr/share/blender/scripts/freestyle/modules', '/usr/share/blender/scripts/addons/modules', '/home/ntg/.config/blender/2.76/scripts/addons/modules']
===
no PYTHONPATH
Traceback (most recent call last):
  File "/Text", line 11, in <module>
ImportError: No module named 'numpy'
Error: Python script fail, look in the console for now...

)
Blender 2.79 gives:
sys.executable /home/ntg/software/blender-2.79-linux-glibc219-x86_64/blender
---
sys.path:
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/scripts/addons_contrib
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/scripts/addons
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/scripts/startup
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/scripts/modules
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/python/lib/python35.zip
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/python/lib/python3.5
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/python/lib/python3.5/plat-linux
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/python/lib/python3.5/lib-dynload
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/python/lib/python3.5/site-packages
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/scripts/freestyle/modules
     /home/ntg/software/blender-2.79-linux-glibc219-x86_64/2.79/scripts/addons/modules
     /home/ntg/.config/blender/2.79/scripts/addons/modules
===
os.path: /opt/pub/anaconda2/bin:/home/ntg/bin:/home/ntg/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
===
no PYTHONPATH
done!:)

Blender does not come with e.g. numpy pre-installed

Yes it does, unless you configure WITH_PYTHON_INSTALL_NUMPY:BOOL=OFF and build it yourself.
Python modules can simply be imported from whatever is listed on the PYTHONPATH environment variable. If it doesn't automatically work by placing .py files next to your .blend file, you can modify PYTHONPATH to point to that location.
You can bundle 3rd-party modules with your game, but you do have to think about the following:

You have to adhere to the license of the module, so probably you'll have to include their license, give them credit, etc.
Be careful with binary modules. Make sure you test (so don't read documentation and assume it'll work, but actually test it) that they work with the version of Python that's built into Blender. On Windows this may be an issue, since (AFAIK) we build Python with different options than the python.org build, and as a result the pre-built binary Python modules may not load in Blender.
If you do decide to use binary (i.e. .pyd, .so, or .dll extensions) Python modules, make sure you include the versions for all platforms you want your game to run on.

Thanx for the answer! In my system (sonya mint 18.2, Blender 2.76b),  it seems numpy is not there(will add info to the question), however the PYTHONPATH might solve the problem, will have to check and be back

Try a recent Blender release from https://download.blender.org/release/; the version of Blender you're using now is already two years old.

Lol, and It is the one that comes with the latest version of ubuntu :) Good point, will do.

Indeed! Using the latest version of blender (2.79) allows me to load numpy! Still not sure what happens if there is some obscure library I need, but my problem is solved :) (thanx, did +1)


text:
How to get to FCurves from specific strip?
In my script I get access to all selected strips using below code:
selection = [ seq for seq in context.scene.sequence_editor.sequences if seq.select and seq.type == 'SPEED' ]

Now, this gives me a list of speed effects from the selection. I want to modify (basically remove and insert new) the FCurve for the speed_factor property.
However I can't see how can I access the FCurves for this specific property.
I see than I can access all scene FCurves through bpy.context.scene.animation_data.action.fcurves. However this seems to have at least two problems:

I don't know how to properly create data_path having only SpeedControlSequence instance (the only thing I can think of is some string concatenations, but it doesn't sound like right solution),
even if I had data_path value I am looking for I would have to scan through all FCurves for the whole scene to get to the one I want, which doesn't sound very efficient.

How can I access, modify and replace FCurves if I have specific instance of Sequence?
edit:
One solution seems to be:
seq = # code to get one sequence instance
f = None
for f in bpy.context.scene.animation_data.action.fcurves:
    if f.data_path == seq.path_from_id("speed_factor"):
        break
else:
    f = None

However it seems to be highly inefficient way of approaching that issue. Is there a better way to do it?

It's possible that you have come across the best answer.  Do you mind moving your proposed solution from the question to a separate answer?  That way people can vote on it alongside other answers.  Also, it makes the question more concise.

It is indeed the only way (checking the data_path), and you can only optimize it using a dict if you know you'll need to find several F-Curves in the same action (create a lookup dict once with the data_path as key and the F-Curve as value, then access different F-Curves via the key you are after. You may need to add the .array_index to the key for properties like loc/rot/scale).

I will wait few days before accepting my own answer. Maybe someone else will have a better
idea.
Due to lack of other answers and request to do so I will give what I am currently using.
I still feel like it is not the best approach, but it as well may be (I don't know Blender's API that well, just started learning).
I've created an operator that takes all selected speed effects and given the original frame rate of clips (I haven't found a way to get that automatically from movie sequences) creates linear interpolation curve for speed effect.
It is is more useful than constant speed value as you can then go and edit curve not having to work out how it should look like to get original speed in your final edit (it also creates meta strip that actually is trimmed correctly so it appears in correct size in VSE, but that part is omitted as it is outside the scope of the question).
def execute(self, context):
    # filter out non speed effects
    selection = [ seq for seq in context.scene.sequence_editor.sequences if seq.select and seq.type == 'SPEED' ]

    # get render frame rate and calculate how to scale input movie fps
    fc = context.scene.frame_current
    fps = bpy.context.scene.render.fps
    fcurves = bpy.context.scene.animation_data.action.fcurves
    factor = fps / self.original_framerate

    # remove current fcurves for speed_factor if there are any
    # we create set for faster lookups (at least I'd home it would be faster than naïve approach
    paths_to_remove = set((s.path_from_id("speed_factor") for s in selection))
    for f in fcurves:
        if f.data_path in paths_to_remove:
            fcurves.remove(f)

    for s in selection:
        s.use_default_fade = False
        s.use_as_speed = False
        factor = fps / self.original_framerate
        final_duration = s.input_1.frame_duration*factor
        final_duration = s.input_1.frame_duration*factor

        # create curve for this speed effect and add two keyframes
        curve = fcurves.new( s.path_from_id("speed_factor") )
        start_key = curve.keyframe_points.insert( s.frame_start, 0 )
        start_key.interpolation = 'LINEAR'
        end_point = curve.keyframe_points.insert( s.frame_start + final_duration, s.input_1.frame_duration )
        end_point.interpolation = 'LINEAR'


text:
Blender 2.8 rendering is using a lot of psu power
So when I'm rendering something in blender my pc makes a lot of noise, but like airplane level noises. So I checked my task manager, and it uses about 60% cpu power, 80% gpu power, but psu usage is also marked as very high. Is this normal? Is there anything to make this less extreme without doing further rendering optimisation?
I'm rendering in Eevee btw.

That is normal, GPUs require quite a bit of power. Just make sure that the PSU you're using is suitable to supply enough power for your entire build under full load.

Also make sure it doesn't overheat and get proper ventilation.


text:
Knife project not working
In some simple cases such using the default Monkey as the object to project, the resulting cut looks nothing like the monkey. Note the selected cube only has only been cut around the monkey's eyes, not the entire object.

Trying with other primitives results in this error

No Other selected objects found to use for projection

I know that I have both objects selected.

Suzanne is non-manifold, so it just gets the eyes. Knife project is designed to work with flat 2D meshes as the projection object, so I think the overlapping faces confuses it. Collapsing a sphere into a flat circle and removing doubles makes it work as a projection object.

This is because knife project only uses wire or boundary edges:

Knife projection is a non-interactive tool where you can use objects
  to cookie-cut into the mesh rather than hand drawing the line.
This works by using the outlines of other selected objects in
  edit-mode to cut into the mesh, resulting geometry inside the cutters
  outline will be selected.
Outlines can be wire or boundary edges.
To use Knife Project, in 'object' mode select the "cutting object"
  first then shift select the "object to be cut". Now tab into edit mode
  and press "knife project".

emphasis mine
A boundary edge is an edge with nothing connected on one side, e.g.:

The primitives, being manifold objects, do not have wire or boundary edges.
Suzanne partially works because it is non-manifold (the eyes are disconnected). The two circles that you get by projecting Suzanne are the boundary edges around the eyes.

The error message is a little bit strange though.

If Blender documentation could be as clear as your answer...

Inspired by this answer to contribute to the Blender docs.. see changes here

@JJones Cheers! BTW, barring a bit of Z-fighting, projection of  edges internal to the silhouette can work if you Delete > Faces Only  https://imgur.com/a/v4wIO5k

@RobinBetts  Hmm... maybe instead of giving that error  knife-project should use the face-less version of the object?  Would the "z-fighting" complicate that? Better left as-is?

@JJones yup.. just twigged gandalf was on it, anyway.


text:
Small errors when baking displacement maps
I am baking a simple displacement from several Bezier curves. The curves are beveled and set to full. Whenever I bake the displacement map, I get several small errors. Here is the baked .exr applied via a displace modifier to a heavily subdivided plane. Several of the baking errors are circled in the image below.

What is the cause of the errors? What can I do to get rid of them during the baking process? Because I can not edit the image externally with out compression artifacts.
The blend file, just open and press bake.

Can you give us the .blend with the baking setup to look at? Nothing can be done to help otherwise..only guesses.

You might also want to look at the .exr file itself. Maybe that will tell you what happened.

This is ANOTHER dead pasteall link. You should use http://blend-exchange.giantcowfilms.com/ - those links will never expire after a certain time limit.

Looks like a baking bug to me.
Investigation shows the artifacts are already present in the .exr and the displace works as intended. I just subdivided a plane to 16.78M polys for 4096 texture and it showed the same result as you posted.
Artifacts in .exr:

Then I tried converting the curves into mesh, different curves resolutions and smoothings, normalized/unnormalized bakes but I always got black pixels at different random spots.
When I plug the raw bake into compositing nodes and inspect it it has artifacts, so it is not the exr.
The only solution that worked for me are smooth modifiers after the displacement, which is not really a solution.

Thanks, at least I know it was not specific to something on my machine. I too have tried many different settings, file types, etc. but still get the one pixel errors.

Can you give me your system specs (OS bit memory and gx card)? I want to add them to the bug report I'm filing.

Sure, it was baked on Win7 64bit, i7-4770K, 16GB ram, GTX780

This might be of use for you :)
How can I get rid of the black dots or black pixels in a float 32-bit EXR baked displacement map?
Open the .EXR image into Blender's compositor and use these settings:

After that, save the image as OpenEXR again.

Indeed. that is a good work around.


text:
How do I rig a BB-8 robot?
I have made a BB-8 robot from the new Star Wars: The Force Awakens movie, now I want to rig it so the head will stay on top when I move the body.

Here is some reference footage of what it looks like moving.
How can I create the lag in the head moment seen when the robot starts or stops?
Further more, how can I make the body rotate when I simply move it?

The body will be very similar to this: http://blender.stackexchange.com/a/21406/7777 and for the head there can be a softbody delay, but I would prefer full manual controls over the head and animating it by hand. That control always pays off in the end.

I was looking for a way to have the robot roll without using a curve to define where it goes.

I am afraid it is impossible to rig without the curve. If you want to control the ball rotation based on translation, it has to know where it was the frame before, because the rotation direction depends on this information. And such curve defines all the points of translation and where it was previous frame. If you want an interactive rig, you would have to script it (I would go with bpy.app.handlers).

Maybe have a parallel translation controller that your rig follows, and create a node that feeds the x and z translation data direction into the rotation of the sphere. I guess you'd have to experiment with it a bit. Without a SOLID understanding of rigging this is my best answer, maybe someone can fill the rest in for me :)

The basic key to getting the head to react to the motion of the body is using the Slow Parent function. Similar results can be achieved with soft body or cloth sim, however, this method has the advantage of no simulation baking.
The slow parent function is then used the drive the rotation of the head around the center of the body, so that acceleration causes the head to "lag" behind the body.
Setup
First we will set up the rotation of the ball based on location. Start with the ball, next, add an empty. This  will be the control for your droid. I chose the type of circle, and rotated it by 90 degrees along the X axis, and set the display size to 1.1, to create something that looks like a belt:

Next, I named it Ctrl (name your emtpies now, or you will become hopelessly confused).
We want our ball to be at the location of our control object. We could parent it, but that might cause conflict over the rotation later. Instead we will use a copy location constraint, with the object set to Ctrl. leave all other settings as they stand.

In order to have the ball rotate correctly, we will need two drivers, linked to the X and Y location of the control object respectively.
To add a driver, select the ball, and go into the object properties. In the X and Y rotation boxes, enter a pound sign (#).

Next, enter the graph editor, it is time to setup some drivers! Switch to driver mode:

Starting with the X Euler Rotation, we need to add a variable, var. Use single property, and set the object to Ctrl (aren't you glad we named it :D). Into the data bath box, enter location[1]. This will get the Y location of our droid. Set the expression to -var.

Repeat for the Y Euler Rotation, except use location[0] in the data path.
 and var (not negative) for the expression this time.
Our rotation is now set up, but lets quickly look back to the expression we used, -var. This might not seem logical at first, since you'd think we'd need to multiply be π and some number of degrees etc; however, we aren't working with degrees we are working with radians. 1 Radian is equal to a turn such that the each point on the circumference of the is moved along by a distance equal to the radius of the circle in the direction of rotation. Basically, if our droid has a radius of 1, it will turn 180 degrees when we travel π radius. So, when our droid moves π units, it will rotate by 180 degrees, which is the correct rotation. Note the actual expression should be -var * 1 since it is location * radius in blender units. If your droid has a radius other then one, be sure the put the multiplication in there.
After writing this, I did a couple tests, and I am now convinced that the above method of driving rotation produces incorrect results. I am still searching for a definitive answer to this, at least the above method has the benefit of producing reasonably convincing results, so it is being left in.
Now, its on to the head. This is where the slow parent comes back in. For this portion, we will need three new empties all added at the origin. Name these "Drag", "Face", and "Point".
We'll deal with drag first. It needs to be parented to Ctrl, but with slow parent under relation extras checked. The offset will control the amount of forward motion the head has when the droid moves. I liked a value of 1.8, but set it to whatever looks right for you.

Drag now, as it name implies, drags behind the droid. We can use this to drive the position of the head.
Lets work on "face" next. This empty should face drag, hence the name. To do this, we need to use a track to constraint. Add a track to constraint and set the target to drag, that is all that needs to be done. leave the other settings at default. Finally, add a copy location constraint to face, set to Ctrl, like the one we used on the sphere earlier.
Finally it is time to work with "Point". Point works by pointing to the location of the center of the head. when the head is parented to point, it will move to this location on the outside of the sphere. The set up for point consists of two constraints and a driver.
The first constraint is yet another copy location set to Ctrl, like we had earlier. With "Face" and the droid body. The second constraint is a copy rotation constraint, which should have the target set to "Face: and only the X axis checked:

Finally, we need to set up a driver that uses "Drag" to animate the position of the head. In the X rotation property of "Point" add a driver by entering the pound sign (#), and proceed into the graph editor.
Add anther variable, but this time set it from Single Property to Distance and select the Ctrl and Drag objects. Finally, enter var into the expression.

Last but not least, parent BB8's Head to the "Point" object.
Lets watch our droid roll!

Note: The head may act strangely while you position the droid or jump to a different position in the timeline. However, when you play back a completed animation, it should act normally.

you da man! that looks perfect!

Comment above describes everything pretty clear, but
"face" empty need only one constraint - track to. Connection to control "Ctrl" object must be applied through parenting instead of "copy location" constraint, otherwise turn rate of the droid head will be super slow and unefficient (that's how it realized in attached file. have no idea why here is difference between description and realisation). I've spent like an hour to realize what caused that problem, so think it might help someone else.

Holy cow it took me a while to get it but this is one heck of a useful tutorial!  I am totally using this rigged little guy :)

@lakerice I'm glad a could help feel free to ping me in chat if you need more help.

@GiantCowFilms I've posted a new question related to your answer here, wondering if you might be able to help https://blender.stackexchange.com/questions/99657/problem-rigging-bb8-in-a-diagonal-direction

For the bottom ball maybe you could put a bone in it and rotate it to make it seem like it’s rolling. Or you could parent the head to the ball and rotate the ball normally. Rigging may not even be required.

Hi and welcome to the site. If the future please try to put more detail into your answers so that they are helpful to all, not just "maybe try ..."

I say “maybe try” because I’m not a veteran like you. I don’t KNOW that my suggestion will work. That is why I say “maybe try”. If I knew that it would work then I wouldn’t have said it.

I’m not here to argue, but why shouldn’t I try to help. At the time I didn’t notice that someone had already answered this question. For some reason I found this in the unanswered section. Secondly if this is their first project and they don’t understand parenting in blender then I’m not sure how the answer above will help that much. I’m also not sure how he could be frustrated since what I’m suggesting doesn’t take long to do at all. If he understands parenting which is what he would have to understand to follow the answer above anyway then I’m not sure what problem is with my answer.

I think it is good  you suggested an alternative answer.  I do not believe your answer should be helpful to all. It is your right to suggest an answer.  Just know that [maybe]  you will get negative votes from the [maybe my way is the only way] club.  Whether your answer helped this particular person is only part of the potential benefit. If a user will ["rage"] , that is not your problem.  If you want your answer to be helpful to all, or give some momentary pleasure, include sugary snacks and  the latest .  You do not need to follow the thought  picktaters.  Please continue to answer.


text:
How to add a panel to the properties region in the Image Editor?
How do I add a panel to the properties region in the image editor?
The code below is just a slight modification from the "ui_panel_simple.py" template. I changed the bl_space_type to be the text editor, and the bl_region_type to be UI which I thought would put it in the properties region, but it does not work.
import bpy

class HelloWorld(bpy.types.Panel):
    """Creates a Panel in the Text Editor properties region"""
    bl_label = "Hello World"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'TEXT_EDITOR'
    bl_region_type = 'UI'

    def draw(self, context):
        layout = self.layout
        obj = context.object

        row = layout.row()
        row.label(text="Hello world in the text editor!", icon='WORLD_DATA')

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

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

if __name__ == "__main__":
    register()

Your code works for me, the label is displayed in the text editors property panel accessible by Ctrl-T

The script works as written. The "problem" with the script is that it is putting the hello world in the text editor and not the image editor. bl_space_type takes:
EMPTY, VIEW_3D, GRAPH_EDITOR, OUTLINER, PROPERTIES, FILE_BROWSER, IMAGE_EDITOR, INFO, SEQUENCE_EDITOR, TEXT_EDITOR, DOPESHEET_EDITOR, NLA_EDITOR, TIMELINE, NODE_EDITOR, LOGIC_EDITOR, CONSOLE, USER_PREFERENCES
as accepted values, one for each window type in blender. The script in question has TEXT_EDITOR and not IMAGE_EDITOR.
import bpy

class HelloWorld(bpy.types.Panel):
    """Creates a Panel in the Image Editor properties region"""
    bl_label = "Hello World"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'IMAGE_EDITOR'
    bl_region_type = 'UI'

    def draw(self, context):
        layout = self.layout
        obj = context.object

        row = layout.row()
        row.label(text="Hello world in the image editor!", icon='WORLD_DATA')

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

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

if __name__ == "__main__":
    register()


text:
How to avoid particle data being stored in blend file to make it smaller?
I'm working with particles (for grass or leaves).
The problem is the blend file is very huge when it contains a lot of particles.
Is it possible to stop blender storing particle data to make the file smaller?

While it isn't actually an answer to your question, you might save some space if you reduce the number of hairs and add Simple or Interpolated child hairs.  Some quick experiments show that child hairs aren't free, but they are much cheaper than primary hairs.

One very simple way to do this is to write all the values for your particle systems that tell how many particles are to be rendered, and then to change that value to a much smaller one for storing.
Open a Text Editor region and type the particle system name and numbers:

You can now change back to these values when you want to use this file again.
I saved massive amounts of space. The original not reduced version was 15MB, while the reduced version was 550KB.
While this works, it can be quite tedious, and is still just a work around. MutantBob's answer might be more along the lines of what you are looking for.

Could be this option. Anyone knows if an addon can do that ? Like this one but it's not working on Blender 2.74. link

In your particle system tab there is a minimized subsection called Cache.  If you open that up and check the Disk Cache checkbox and Bake, that will cause your particle data to be stashed in a directory called blendcache_something/ and not in your .blend file.

thanks but that works only in emitter type and I'm using the hair type...

Hmm, I guess that's because combing of hair is usually a critical part of the blender scene, and you really wouldn't want to lose the combing if there is any.

I'm just using hair type to make grass or leaves. So I'm not using combing.

When you have a fluid simulation in your scene and you use objects with fluid type Particle, setting the fluid type to None also slashes the file size, in my case from 70MB to 1.5MB
This is a bit tedious, but your settings aren't lost. if you change the type to particle again, you will see your settings restored


text:
How do I print something to the console when using the game engine?
I am having trouble just starting a script in BGE
for example
cont = GameLogic.getCurrentController()
print dir(GameLogic)

This does not print out in a console window - In fact I get no interaction with the console window at all At this point I would love to simply print something out from a script to the console. Is there a quick test to check my system? Is there a  tutorial which just gets things rolling? Thanks in advance

Are you trying to use the external Command Prompt style one, or the one in Blender?

Usually the one in blender _ I have tried this on a windows machine and on my linux machine in both cases hoping that the "command Prompt" or "terminal window" would be the console which was accessed in stead of the one in blender which to me seems like where I should look.

someone please give this question a more meaningful Title.

You need to import GameLogic before you can use it, print statement has been replaced by a function in python3 print( arg ).
This works:
import bge
import GameLogic
cont = GameLogic.getCurrentController()
print(dir(cont))

or alternatively
cont = bge.logic.getCurrentController() # bge.logic is automatically imported
print(dir(cont))

Note that the script wouldn't work in the python console (Editor Type) only when wired in the logic editor.

The output goes to console opened via main menu: Window / Toggle System Console
Related:

Is it possible to dump an Objects Properties and Methods?

Thanks for the reply, there is still something very very simple/basic I am not doing. when I paste that into the script editor and press run script it does not talk to the console..? Alternately when I try using an "always sensor" wired to a "python controller" with the new text.py created from the above - in both cases it hangs (highlights in red?) on the import bge line....

basically if I try running the stand alone player (pushing the standalone player button) the results are similarly uninspiring. I have tried this with both the "this works" and the "alternatively" - is there a set up that I am missing or again a layout for the intellectually challenged that I might access? Thanks

With console I mean from the main menu: Window /  Toggle System Console.

@DPR-treasureIsland I tried to clearify this in the post did it help?

This is a bit late but anyway:
It might be that your script is running on a different layer in Blender, and therefore not printing out in the console. Even if an always actuator is connected to that script, your script must somehow be able to run in the current layer in Blender.
So what you should do is try running a print command on an object of the current layer you are on. Hope that helps.

authors: Андрей Подопрос


text:
How to create lighting for an LED strip?
I am creating a simple demo of LED strip animation in Blender. Currently I'm planning to use Blender Render, not Cycles (I'm less familiar with Cycles).
I have already created LED meshes themselves (just a tiny boxes along a curve) and now I'm thinking what would be the best way to add actual lights to make them look and work somewhat realistically (at least, as it's possible in Blender Render).
Additional problem is that I'm going to add a semitransparent screen object in front of these LEDs and I'll need to achieve an edge-lit effect - to make the colors of the LEDs blend on the screen.
Should I use a material with high emit value or should I create spotlights or pointlights? And what would be the easiest way to animate the LED colors for each individual LED?
For reference of what I would like to achieve, here are two videos:

a typical LED strip and how it lights up the environment:
https://www.youtube.com/watch?v=xxsI63zWk2w
an edge-lit screen:
https://youtu.be/4-1X7HJCLcg?t=2m5s

Idle Chit-chat
I am not familiar with all the LED terms you used, so I just answered the bolded question. BR is a good engine, and although Cycles might be better, there is a great way to do it in each. Similarly, I will include instructions for both.
Blender Render
I believe it might be best to use a point/spot lamp inside the mesh and control the color/strength from the lamp settings AND shader Diffuse color settings.
Add a lamp inside your cubic mesh. Set the color and strength to the desired effect. Add a shader to the mesh. Change the Diffuse color to correspond with the lamp color. Change the Emit strength to 2, the max. Here's the key: Uncheck Traceable in the settings. Procedure described and explained further here around 40:00.
Cycles
Use an Emission shader and set the color and strength as desired. You will need to set the strength in the hundreds or thousands to see it light up. That's it; ta-da!
Hope this helps and happy Blending!

authors: ลลิตา พละหงส์


text:
Can I scale a mesh with baked physics?
I'm having a lot of troubles with a cloth simulation for a flag flapping in the wind and I'm starting to suspect that my problems are related to small scale at which I'm running the simulation (length of the flag is 0.04 Blender units).
Is it possible to bake the simulation at a more typical size, then scale down to my mini-flag? Alternatively, are there tricks one can play to work around problems with simulating physics with really small objects?

imho the bake can't be scaled, but maybe you can describe a bit what  "lot of troubles" means, which undesired behaviour you get, so that others could help you better there

I don't see why it wouldn't work. If for some reason it doesn't, you should be able to parent it to an Empty and scale the Empty (the child object will inherit the scale). I don't have a machine in front of me to test on right now, but why don't you go ahead and try.

@Mentalist I tried, and after baking the sim, you can scale (object or edit mode) the original base object but the baked animation will keep same scale as before... the bake keeps its own scale. It needs to be baked again after scaling.

@cegaton I have a mix of some really large objects and some really small objects

Here a workaround if someone else encounters this issue in the future:
Simply bake your animation and export it as albemic file (.abc). The animation playback will be slower, but as you import the albemic file you will find a transform cache in the constraints tab. In the transform cache you can simply scale and offset your animation to your likings.

Exactly! In any scenario where you need to somehow permanently cache your animated mesh, Alembic is the way to go most of the time. Downsize is you can't keep materials with it (but you can write UVs and materials' assignation areas, so you can reassign them later on). These days the VFX industry's pipelines relie heavily on caching every mesh data into alembic when sending down to each department.


text:
Why do Blender objects have a type?
To the outside it appears at least superficially as if an object was not much more than it's location, rotation and scale values and the datablock handled the rest.
That's obviously not the case and you can only swap datablocks of the same type. Why is that? Why do objects even have a type? How do objects differ from each other when you ignore their datablocks?

Imho, at least to drive the properties in the panels... a camera, lamp or curve has not a mesh...? A linked camera can be set as active... etc.

@m.ardito That info could be taken from the datablock

I understand, but in that way even local objects could behave as you say... perhaps? Maybe linked objects have a type because even local objects have one.

bpy.types.Object has props common to all types. I'd imagine that setting the readonly type once an object is instanced, based on its data,  is an arbitrary but logical choice.  Swapping an object from an empty to a lamp to a mesh to a lattice ??? the mind boggles.

@batFINGER Swapping datablocks is in no way weirder than being able to turn any object into the active camera.

Moot point.:  doesn't turn the object into a camera, rather it uses the objects  -Z axis as if it were the camera.  The Z axis is an object property.

since this is gone back to all objects, not just linked, it seems it's a question for blender developers, perhaps: "why blender was not thought to use generic objects which can use any kind of datablock?".

@m.ardito it would be a nightmare.. imagine turning an armature object to a whatever after setting up a rig. There is an expectation that once a "blonk" always a "blonk".

@batFINGER I agree, but I was just suggesting HH that his question was more about blender internal developer's choices (and, done in a far past, and still "compatible"...)


text:
Can i edit the textures of linked character?
Which option should i choose or how can i edit the textures of character when edited in original file should see in linked file.

Hello :). You cannot directly edit linked files, but you can refresh them to see them updated. The fastest way is to save your file and then hit File->Revert. This thread should help.

This should be possible through Library Override. I'll test it.

Might have misunderstood your question. You want to edit locally and see the changes saved in the linked file? Because that is not possible as far as I'm aware. Local changes through library overrides are possible though.


text:
Smooth vertices option not working in blender 2.82
So This "Smooth vertices" tool That I use alot while modeling a character seem to not work any more or it just does not give the right result in the new update.

I am not sure if this is what you have done, but I recently was trying to add weight to all objects and nothing worked and that was due to a selection mask being selected yet no objects selected. In Sculpt Mode the following picture shows how I can smooth any object

In the following picture only the selected stroke is edited. If, like me, you don't have any strokes selected, then you will not be able to edit.

Hmm I think I didn't quite explain  properly it is actually in edit mode.when you need to smooth some surface that tool does not work.

Ah appologies, that seems to work for me in 2.82.7. NB all I tried was creating a circle, selected every second vertex, moved them to form a 'jaggered' circle, selected all verticies, then when I did 'Smooth Verticies' and it put things back into a circle.

It seem to work now thanks


text:
Blender lagging the more I use
So basically I bought a new computer;
specs;
32 gb ram
core i5 10th gen
1 tb ssd
no Graphic card
I have been using cpu integrated graphic card and it seem to work fine with blender but as I continue to use it. It starts to lag more and more to a point where selecting a single bone lags for 3 or 4 second but when I close it and open it again seems to work fine but than again it starts to slow down again.
Is it because I don't have graphic card?


text:
can I use tkinter with blender?
I want make game engine
i can use  bpy without run blender but I do not know how to create gui with bpy
is there are way to create gui with bpy or use by with tkinter

Possibly related https://blender.stackexchange.com/questions/143687/pyqt-and-tkinter-seem-to-not-work-with-blender-2-8  https://blender.stackexchange.com/questions/55332/bge-import-error-no-module-named-tkinter


text:
Convert N-GON to quad with the given topology
I used this thread to make a screw thread on some cylinder. The acccepted answer poster say that the method will leave 4 ngons at the end, that could be solved to quads with some thoughs. Even if the result is acceptable with thoses ngons, you still can see a little flaw in the shape once subdivision is added.
After many tries I am not getting it right, and more generally, I have a hard time with retopology and understanding edge flow. How would you get rid of thoses ngons ?

Thanks.

In this link: https://topology-guides.tumblr.com/ look for "Optimal Edge Loop Reduction Flows"

Nice link, will look into it. Thanks.

maybe share your object so that we can give a try


text:
How do I disable the coloured lighting in the viewport in 2.8?
When shaded in Look Dev mode, there's a kind of coloured lighting so the darker faces are yellow and the lighter faces are blue. Is there a way of disabling this so the shading is more greyscale like in 2.79? The faces of this cube should be in black and white only but the colours look very different in the viewport. Thanks.

The warm light comes from the studio light. You can either change to a different HDRI texture by clicking on the light probe image or enable Scene World to use the current configuration of the world background for Look Dev instead.


text:
What are the advantages of turning on "cache BVH"?
What are the advantages of turning on cache BVH for a cycles render?
Not sure how to elaborate. I'm not necessarily looking for a technical description, just a better idea for when to use it, and when it's not worth the disk space.

Note that BVH caching was removed in Oct 2015 as it was no longer useful.

From the 2.62 release notes -

For renders where only the camera or materials are changing, while meshes stay fixed, it is now possible to skip the sometimes slow BVH step, by enabling BVH Cache in the Performance panel. This will store the BVH on disk for subsequent (animation) renders of the same scene. Note that if the scene does change in the animation, enabling this option will make rendering somewhat slower.

Times when it will help -

Test rendering one frame while you adjust materials.
A camera flying through a static scene

Times when it will not help -

Any mesh changes during an animation (shapekeys or armature)
Any object movement during an animation

Turn it on when you want faster test renders. Especially if you are making mostly lighting or material changes. The problem arises when you are rendering a large animation.  I always think of cache (in a general sense) as more of a memory thing, and less of a disk space thing.  Well, blender is caching it to disk.  And it's huge, and if you leave it on during an animation you will run out of disk space. Quickly.


text:
Letting the camera move along different paths
What I want:
I have a model of a room with several objects in it. I want to see the objects in the room from several camera positions on three of the four walls. Basically, I want to let my camera follow predefined paths along these walls.
What I did:
I could not figure out how to make a path looking like an open rectangle, so I decided to create three different paths, one for each of the three walls. I managed to let my camera follow one of the paths nicely. However, I do not manage to let my camera jump to the next path/wall once its done with the previous one. According to this thread http://blenderartists.org/forum/showthread.php?204414-Follow-one-path-after-another-in-Blender-2-5 it should work with object constraints and the influence value, but since the blender file given there is not available anymore, I can't figure out how to do it. So, how would you animate the camera for this purpose?

Yes, I have seen this question and its answers but ran into problems when using object constraints, cmp.: http://blender.stackexchange.com/questions/13908/difference-between-ctrlp-follow-path-and-add-object-constraint. Also, I do not really know how to animate the influences. But you are right, the problem is similar, even though here I was also hoping to learn if there is a better way to model an open rectangle.

I think you could do with being more specific in your question then. Is your question 'How do I animate constraint influences?', 'How do I use the follow path constraint?' or 'How do I create an open rectangle?' (though I don't know what 'open rectangle' means).

Well, for 'How do I use the follow path constraint?' I added the other question. Maybe you are right and splitting the question into more subquestions would be better, but then context is lost. To understand what I mean by 'open rectangle' you need to imagine the situation. Imagine a room with 90° angles and I want to position the camera on three of the foor walls, for now always on the same height. The path to describe this would look like a rectangle with one side missing ;)

This question appears to be off-topic because it is asking multiple separate questions, which should be asked individually.

No need to use multiple curves:

Add a circle (ShiftA> Curve > Circle)
Switch to edit mode (Tab) and set the handles to vector (V> Vector)
Delete one segment by selecting two of the control vertices on one side and pressing Delete> Segments.

To align the curve to the axes, rotate it 45° on the Z (RZ 45).

Here is how you can make a rectangular path:

add a new bezier curve circle.
select all the points and hit V

rotate it 45 degrees.

Now you have a square.
Heres how you can make it align with corners in you room:

change the snapping mode to vertex

While holding down Ctrl, move your vertices to the top corners of the wall.
adjust to vertical potion of the path as you wish.
To open the path un-check cyclic in the path options.
Here is how you can switch paths:
Add your two paths. next select your object that you want to follow the path and add a follow path constraint.
Go into the paths setting and set the frames to the right amount, also copy that value.
Select your curve and press animate path
now in your time line, move to the last frame of the path value, the value you just copied.
In the follow path constraint set the influence to 1, and add a key frame.
Go to the next frame, set the influence to 1, and add anther a key frame.
add you next path.
Repeat steps 1 through 4 on this new path.
Go to the the frame that the other path was at influence one, and set a key on the influence (0) on the new constraint.
move to the next frame and set the influence to one. Key it.

Done!

Nice! Thanks :) If you add how to "open" the rectangle, I will accept yours as an answer since you also described how to switch paths.

While in edit mode of a curve Alt-C will turn on/off cyclic, which joins the first and last curve points. This property can be found under Active spline->Cyclic in the curve properties.

@sambler - nice!

@user1809923 Ideally we want to keep to one specific question per post. This helps keep questions to more widely useful operations that are more likely help other users coming from search engines. Could you split your question into separate posts, e.g. as Ray Mairlot suggested? Links to related posts can be added to provide context.


text:
Difference between Ctrl P > Follow Path and Add Object Constraint
I am trying to let my camera move along a path. The method to first select the camera, then the path and then use Ctrl P > Follow Path works fine.
However, if I select the object, go to Object Constraints and add a Follow Path constraint, the behavior is not the same.
Mainly, in the second procedure my object jumps to a different position once I added the constraint. Why is that and what is the difference between both methods?

CtrlP > Follow Path parents the selected objects to the active object (=curve), enables Path Animation in the curve's Object data tab in the Properties Editor and adds an F-Curve for the Evaluation Time property. An F-Curve Modifier is added to that F-Curve of type Generator (first order expanded polynomial).
Adding a Follow Path constraint to an object and target it at a curve only relocates the object (apparently to one of the end points of the curve), you need to click Animate Path to add an F-Curve with modifier (1st order exp. polynomial generator again) to the curve object in order to let the object move along the curve.
If you don't want that offset when using a Follow Path constraint, select your object and a curve,
CtrlP > Path Constraint. It adds a Follow Path constraint, creates the F-Curve with modifier for the the curve and does not translate your object.

When adding a "Path Constraint", in my case however it also jumps my object to a different position. The only option is to really use "Follow Path", which you helped me immensly.

Basically, the constraint assumes the object is at world origin and jumps it to the curve.  Translation off the origin translates it around the curve.  If you want to use the constraint, don't parent the object, leave it at world origin, and it works fine. Personally, I find it more intuitive to use the constraint and animate the offset of the constraint than to use path animation.


text:
Finding python operator for every tool within Blender
To calculate an oriented bounding box as defined here. I need the convex hull of an object. I know that there is an operator in Blender to do this, since you can go to edit mode, press spacebar and type "convex hull".
However, I have been unable to figure out how to call this operator from python. I know that one can usually find a python operator by hovering over the respective UI element one uses to invoke the operation from the interface, but that does not work in the spacebar-search.
Therefore:
Does anybody know of a reliable way to find the python operator for each tool within Blender?

We had a number of similar questions, but asking how to access a specific tool isn't a very good question, better ask how to find the Python operator for any tool.

I thought I knew how to find the Python operator in general (by hovering over the UI element used to invoke it from the interface) but that does not seem to work for the spacebar-search. I guess I could rephrase my question and ask how to find the python operator for a tool listed in the spacebar-search?

Yep, that would be best.

If you pull down the main menu an area appears which shows the log of invoked operators (I don't know the name of this area).

There you can find operators which are not displayed in tooltips.


text:
Understanding colliders
I understand how to add a collider to  a single mesh in blender, but... I want to know if it is possible to enlarge said collider. For instance, I have a model of a briefcase but I want the collider to be a bit larger. How do I do that?

In addition, is it possible for me to create a single bounding box and keep a bunch of objects inside? For instance if I have the model of a nightstand could I put a collider around it and also put the lamp, cell phone and any other component within that bounding box?

Many thanks in advance!

The easiest way to do this is simple to create an invisible box, parent your objects to it, and then remove your objects from the physics simulation. The box will then do the collisions on their behalf.
Steps:

Remove you meshes from the phsical simulation

Parent your mesh to you box
Make your box invisible, and set the simulation to Rigid Body


text:
Cycles Nodes - get actual coordinates
I want to make a procedural planet shader in cycles, and I want to for example have some poles at the z+/z- direction and some deserts in the middle (equator). Is there any way I can get the actual coordinates (esecially the Z- one) in the node setup.
Thank you

Related: http://blender.stackexchange.com/q/5491/599, http://blender.stackexchange.com/q/7222/599, and http://blender.stackexchange.com/q/7397/599

This node setup allows procedural pole, tempered, desert on local Z axis based on cursor location (it should be at the center). So you can rotate, scale move in object mode without any problem.

The Object Texture Coordinates Outputs -1 to 1 coordinates for all local axis (origin=0, so the origin has to be at the center of the object). Then we separate XYZ vectors because we want the Z coordinates only. Using the Absolute node will give us a mirrored 1/0/1 along local Z.
So now we have coordinates on Z that are 0 in the middle and 1 at each pole.
The 1st mix node is controled by a 'Greater Than' Node 0.2 so the material will use 'Desert' input from 0 to 0.2 and 'Grass' if Z coordinate is greater than 0.2.
The 2nd mix node will use the 1st mix and mixes it with 'Ice' if Z coordinate is greater than 0.8.
To control where the limits are, just change the 'greater Than' values (0-1).
But this setup will work only if your mesh sphere has a size of 2 units (default, size of the object doesn't matter).
So we want to fix this using the Generated coordinates.
The generated coordinates will give a 0/1 on each local axis, no matter where is the origin or the size.

Now we modify the coordinates with a 'subtract' 0.5 so we have -0.5/0.5, 'multiply' 2 to make it -1/+1 as before. This time the spere can be resized in object or edit mode, nothing will change!

Would be helpful if you could provide some extra details as to how this works.

@Bithur Z from -1 to 1 will depend on the dimension

@Chebhou damn, you're true! Generated will make things a bit more complex...


text:
Can not view MP4 output files in HTML
As a learning exercise I am trying to use Blender's video editing capability to modify a mp4 file. The problem is that my rendered output can be played using VLC, Dragon, and gnome-mplayer but it won't play when using an HTML <video> element.
To be specific, I am starting with a copy of Sita Sings the Blues in H.264/MPEG4 format. I've clipped out ~ 15 seconds, added a fade-in effect strip at the beginning and also deleted the audio track. The result is an 18 second video which I then try to render and output as an mp4 file. I have tried a variety of output and encoding settings but the result is always the same: I can play it back perfectly in any of my standalone players but dropping it into a browser wont work. Firefox gives me a "File is corrupt" message and Chrome just sits there and does nothing.
BTW, I can generate AVI and MOV files that Firefox will play without complaint. Its only MP4 that is an issue. Unfortunately, I need to be able to play mp4 files in a browser for my intended application.
Has anybody seen this type of problem before or have any suggestions?
Thanks
Larry

Could you post your HTML so we can double check it?

I'm not sure if mp4 is supported anymore by html5 video

I solved this with manualy: I convert the MP4 with VLC to MP4. :) This is a rough solution but works.