How to let grow PingPong balls inside an invisible box? Inspiration / Reference
So I came by this interesting example of ping pong balls from Alvaro Navarro, where the amount of spheres are growing inside an invisible box.
So I think he is using some kind of particles to generate new PingPong balls at a point down the bottom of the invisible box, where the new generated particle balls will be pushing the already generated balls to the top using some kind of collision.
Tried
To make a simplified version for the first step, I did the following:
So I created a box. Deleted the top face and add Rigid Body Passive (so the box doesn't fall down). For simpelicity, I added one sphere with also the Rigid Body, but now type Active. Unfortunately it seems like it will set this type for all objectes with Rigid Body.
Something that is made in C4d, but don't know if this is possible in Blender, because there is no collision for each particle I've read? https://www.youtube.com/watch?v=HoxBLXKZ7gw

You can achieve a similar effect with builtin physics engine.

Just add a bunch of spheres to your scene, set physics type to Rigid Body, Active and collision shape to Sphere. Set it up in advance before duplicating, or copy it afterwards.
Place them inside an invisible container with a simple box-like shape, like the default cube.
Now you need to push them against a wall. Do so by either animating the container shape, or optionally using a second animated object to push them around.

The illustrated example uses an animated squashing box. In retrospective you could probably animate its scale instead, avoiding changing shapes and expensive mesh morphing physics, but this example uses shape keys.
Set the cube mesh up with Rigid Body type physics, with both Dynamic and Animated active, and collisions set to Mesh type, Source as Deform and Deforming option active.

Add one additional shape key besides Base, for that shape key move the back face forward enough distance to squash the desired amount of spheres against the front face. Keyframe the factor for that shapekey from $0$ to $1$ for the desired duration of the animation.


bone bigger than armature I'm trying out my first rig with rigify. But the bone is always larger than the armature.

As you can see, the dimensions are different and if the dimensions are matched, the camera perspective changes.

How can i have the bone size same as the armature?

Many Thanks

The easiest way is to select your Meta-Rig and go into Edit Mode - select all the bones and scale to your Mesh size. You could also do the same thing in Object mode, with one additional step - applying the scale with CTRLA

This answers your question - below is just extra stuff that may be helpful...

The scale should by default go towards the Median point - which is that little orange dot which identifies the root of your object. At the moment your Mesh object and Meta-Rig object have different positions for the Median point. Best practice is to get them aligned. You can do this by selecting your Meta-Rig in Object mode and ShiftS Cursor to Selected. With the position established now select your Mesh in Object mode and move the Median point to the same location...

Now you can return to your Meta-Rig in Edit mode and start positioning the bones...


How to close view windows? I would like to close some view windows that I opened accidentally.

See the image below:

Edit: another note: I tried searching for the solution, but only found things like "Join Area", which don't seem to work in this situation.

Click and drag on the corner with the grabber (same one for making a new window) and drag DIRECTLY over the neighboring panel that you want to make disappear (if you drag anywhere else, you'll make a new panel). This will make a grey arrow which shows you which panel will get put on top of the other. Release the mouse button when your cursor is over the panel you want to go away.
Two caveats:

when you click and drag, you must immediately cross the boundary between two panels, before dragging anywhere else. THEN it will make the grey arrow. If you click and drag into the same panel, you'll create a new panel.
you can only join two windows that share a COMPLETE edge. If you have one full window on the left, and two windows (one on top of the other) on the right, then you have to join the two windows on the right together before you can join the window on the left.

Now, using this knowledge, you have a bit of a puzzle to solve. You have to close each of the windows in the red square individually. So I'd start with the smallest one first. Join it with the one with which it shares a complete edge, and the go to the next-smallest.
This is exactly what you need: http://www.youtube.com/watch?v=AMBi1R7KB48


Fastest way to export files multiple passes into folders? What is the fastest way to export the files of multiple passes into a folder for the appropriate pass in Cycles?

Is there any way to automate this process?

For example, if you wanted to render: Diffuse color, AO, Shadow, and Z
Then place them into a folder, let's call it 'Renders', with a subfolder with the pass (Renders would contain 'AO' folder (AO pass within it), etc.)

The File Output Node is exactly what you are looking for.
Unfortunately the documentation does not mention how to get it to output to different subfolders, but thanks to sambler you can have each file go into its own folder.

The settings for the File output node  are in the properties region, press N to open it. Such things as file format, compression, the input's name and adding inputs are all only accessible there.
To add outputs to the file output node click on the large "Add Input" button.

Now you will have to add a slash (forward or back slash, does not matter on windows) at the end of the name of the input, like in the image below. For example, to have all your AO passes go in am AO folder you would name the input "AO\", or "AO/" (I use the backslash for consistency in windows file paths).

Or you could use a separate file output node for each folder you want to create. I have not noticed any difference in performance.

During the compositing stage blender will automatically save all the files specified in the file output nodes.


How can I achieve this "security camera" effect? I want to create the following effect:

When a keyboard control is pressed the main camera will be switched to another camera that already exists in the scene. At that time till the camera is switched back, everything at the scene where both cameras exist must remain as is with no change, except a few things of my choosing.

How can I achieve this? I thought of suspending the scene but I want to be able to move the new camera.

My 2nd thought was changing all objects to different states when I set the new camera so they won't move at all, but that will mess with scripts and it is confusing.

My 3rd thought was a bit more complicated but till a point I think correct. It was the following idea: What if I add the new camera in the original scene and create a new overlay scene with one new camera there also. Now everytime I switch to the new camera in the original scene, I'll suspend the original scene and add the overlay scene with a small delay so that it will seem that it is the same "new" camera. But there is a problem. How can I save any motion done with the camera in the overlay scene to be copied to the "new" camera in the original scene?

I hope I did not make this too complicated. Any ideas?

Switching a camera is pretty easy with the Scene Actuator in "Set Camera" mode.

Switching controls/behavior is independent from the camera, as it has no relation to what is rendered. Typically you "enable" a set of controls while you "disable" another set of controls.

There are many ways to achieve this effect. The basic idea is that each entity remembers if it is enabled or disabled (= state) and acts accordingly.

Additionally you need a way to request one or multiple state changes e.g. via property change, message listening or other events.

Example:
When receiving message "enable security camera", you

let the camera switch to the security camera,
disable the current controls on the player's avatar
enable the controls on the security camera
...

When receiving message "enable security camera", you

let the camera switch to the player's camera,
disable the controls on the security camera
enable the controls on the player's avatar
...

if you have a lot of such objects and possible toggles, you might want do this is two steps:

disable all
enable what was requested

This way you do not care the previous state.


Hiding objects with scripting - unpredictable behaviour I have a really weird issue with my script. It is extremely unpredictable and I have no idea why. Sometimes it works, sometimes it kinda works, and sometimes it doesn't work at all.

Here is what I want to do:

I have an empty parent object that controls the all of its children
I select that parent object, and then only select his children using the SHITFT+G shortcut, then select children
Then I hide all of the children using the H shortcut

This is the script that I wrote:

def makeInvisible(ob):
bpy.ops.object.select_all(action='DESELECT')
ob.select = True
bpy.ops.object.select_grouped(type = 'CHILDREN_RECURSIVE')
for sel in bpy.context.selected_objects:
    sel.hide = True

As you can see, I will pass the the parent object as an argument to the function. The problem is that it doesn't really work, especially when I call it multiple times.

What am I doing wrong? Is there a better approach to my problem?

I think the problem here is that you do not set the active object for the context on which operators almost always rely. Here is a low-level approach without operators, tested and working. All children (recursive) of the active object are hidden.

import bpy

ob = bpy.context.active_object

def makeInvisible(ob):
    for child in ob.children:
        child.hide = True
        #call the function on the child to catch all its children
        #as there is no ob.children_recursive attribute
        makeInvisible(child)

makeInvisible(ob)

Note that this does not hide the active object itself, only its children. If you want to hide the active object too, just add ob.hide = True right below the function header.


Mac Blender 2.82 Simulation Issues OK so I know I'm on the S list using a Mac for 3D these days, but it is what it is.

I'm running 2.82 and the improvements in the UI are impressive. I'm a C4D user, but want to check out Blender's Fluid and Smoke. I started with 2.8 and couldn't get ANY simulation to bake so I could see anything. Sometimes it will look like it's calculating, but nothing at the end. Sometimes it will zoom through and "calculate" in less than a second.

I then downloaded the latest build, 2.83 alpha. I set up a simple fluid sim and boom. I could see the simulation. Great. I freed the bake and added some obstacles to test everything. Nothing. I haven't been able to get any results except that one time. I've read many posts, watch tons of tutorials, changed lots of settings all to no avail. I'm not talking about rendering issues where Eevee and Cycles and GPUs come in to play, I'm just try to see ANYTHING.

Here's a link to a super simple file I set up. Maybe I'm missing something. Thanks for taking a look.

Simple Fluid Setup

I tried your file. I changed the render engine to Cycles and in physics properties - chase from modular to replay (this allows you rendering during your animation - so you haven't to waitlists till the end of the render).

I deleted your flow object and created it new.
Type: Flow
Flow Type: Liquid
Flow Behavior: Inflow
nothing else

activated liquid

It works :)


Soft Body Self Collision Weird Behavior for half verticies I noticed when I enabled soft body self collision, only last half vertices were working properly and first half vertices were working in weird way.

You can set up the following scene easily

Add Sphere Object
Copy Sphere and add 3 more Spheres in Edit Mode
Add Soft Body and Disable Goal and Enable Self Collision

As you can see the behavior of balls are different on left and right,
While setting is completely the same and I'm not using any Vertex Group.

Am I doing something wrong or is this a bug?

I'm using Blender 2.79b

The problem is actually due to the geometry of the UV Spheres and how this is interacting with the self-collision as it results in intersecting collision spheres at the start of the simulation resulting in inconsistencies from the start. To understand this you first need to understand a little about how the self-collision works.

Soft Body self-collision acts on the vertices of the mesh - with each vertex being modelled as a sphere that repels any other vertex an each sphere sized independently based on the surrounding mesh. Within the Self Collision properties panel you can configure how Blender calculates the self collision spheres with options of Manual (set a single size for all vertices), Average (set each ball based on the average of the lengths of all of the connected edges), Minimal (based on the shortest connected edge), Maximal (based on the longest connected edge), AvMinMax (based on the average of the shortest and the longest connected edge). The default is to use the Average.

Now consider the geometry of a UV Sphere - particularly at the poles.

At the pole you have a single vertex surrounded by a large number of edges - this should not cause a problem as the collision ball will be based on those edges.

Considering the next row of vertices you should see the problem :

Each vertex in this row has two close neighbours and two much more distant neighbours - actually about 5 times as distance as the closest. Using the 'Average' method of ball sizing results in collision balls that are larger than the distance to the next nearest neighbour (ie, if the shorter distance were 1BU then average would equal (1+1+5+5)/4 = 12/4 = 3BU. The default 'ball size' is 0.49, resulting in a ball size of 3*0.49 = 1.47BU - so the vertices are considered as being instantly 'in collision' - and they repel each other.

The solution (to prevent them collapsing) is to change the self-collision ball size to prevent this initial intersection. This can be achieved by changing from 'Average' to 'Minimal' - so that rather than 1.47BU in the above example, the initial size would be 0.49BU so the collision balls would always be separated.

Of course, this doesn't explain why when the spheres are duplicated as in the original example only some of them distort in this way. I suspect that this is actually a bug - although, arguably, it is having to deal with a mesh which is not really suited to Soft Body simulation (as it has vertices with neighbours that are at radically different distances).

The other solution is to use better soft-body-friendly geometry such as Icosphere.


Animated visibility of an object in render mode is different on rendered image I was following a tutorial and everything was perfect until I saw the final render animation.
The render view shows what I want

But then when I render the file the letters don't disappear.

I have no idea what the issue is. Any help?

This is the link for the file https://www.dropbox.com/s/ect1165odmlwtnu/Firma.blend?dl=0

From your images it appears that you have keyframed the visibility of the writing - shown by the green around the ‘eye’ icons in the Outliner at the top-right of your images. However, that only controls the visibility in the 3D View window. In order to make the same effect on the rendered result you need to do the same on the rederability of each mesh - the camera icons in the Outliner window at the top-right (the rightmost icons).


Why does my material only render correctly on certain faces? I have been getting started with materials and wanted to create a lo-fi scene with a dark marble material. I followed a tutorial to create the marble material, which works great. I then modified it using another tutorial to make it look more pixelated and retro. Here's the node graph:

And the preview looks like exactly what I want:

However, when I apply it to faces in my scene only some of them render the material correctly. Others distort the material into strange angles:

The faces marked with a green dot are rendered correctly, those marked with a red dot are inexplicably distorted. It works just fine if I use the more realistic material by disconnecting the snap node from the bottom voronoi node. This happens in both Eevee and Cycles, in previews and final renders. What gives?

You’re using UV coordinates to sample your Voronoi texture. This is fine, but the default UV map will not automatically compensate for stretching/scaling of the model. To illustrate, I took a cube and shrunk it along one axis:

Note how in the UV map, all six faces are still squares of equal area, even though they aren’t on the model.
Fortunately, all you need to do to fix this is to re-unwrap the mesh. If you don’t care about continuity between the faces at all, you can do the simplest thing of marking all edges as seams by selecting the whole mesh with A, then CtrlE ▸ Mark Seam. Then you can do U ▸ Unwrap, which will automatically compensate for face size:

As you can see, this fixes the texture stretching.


My imported blender building in unity has loads with missing walls! I have the frame of a building in blender, I imported it as a .fbx file and it comes out with missing walls! How do I fix this?!?!

The problem is probably that your normals are flipped the wrong way, Unity doesn't render normals that aren't facing a camera. In your blender file. In edit mode go to mesh Normals and it can flip and recalculate your object normals there. The face or faces have to be selected for the tool to work.
I hope that helps, others have had this problem too.


Is there a way to smooth a selected patch of vertices but preserve the contour? It is really irritating the way that Smooth shrinks the entire selected contour, especially after several applications.  For me, this almost always introduces additional distortions that can be almost as hard to fix as the original irregularity of the surface I was trying to smooth.  Is there no version of the Smooth tool that will maintain the border vertices/edges in their exact position while smoothing all the vertices inside these borders?

Perhaps Laplacian Smooth will suit your needs better. Access it via the Specials menu (press the w key while in Edit mode). The image below indicates the menu placement and (in the lower left) where to alter the parameters for Laplacian Smooth:


How to toggle to camera view via python? Is there a way to programmatically achieve the same thing as pressing the 0 key the numpad?

The operator for switching the 3D view which is associated with numpad keys is view3d.viewnumpad().  You have to be in the right context (3d_view) to use it and select which view you want to set:

import bpy

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        override = bpy.context.copy()
        override['area'] = area
        bpy.ops.view3d.viewnumpad(override, type = 'CAMERA')
        break

Another way, without the operator would be:

import bpy

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        area.spaces[0].region_3d.view_perspective = 'CAMERA'
        break

Which is equivalent to:

import bpy

area = next(area for area in bpy.context.screen.areas if area.type == 'VIEW_3D')
area.spaces[0].region_3d.view_perspective = 'CAMERA'

Other options are  [‘PERSP’, ‘ORTHO’, ‘CAMERA’]


How to load scripts into the Text Editor on startup? I am trying to load a couple of simple python scripts on startup for later use.  I don't want to run the scripts on startup, I only want them available in the Text Editor so that I can quickly run them on demand, rather than search them out individually.  I have a simple script that loads 2 scripts from a file path.  It works if I run the script from the text editor or from the Python console, but the script will not run if I try to load it on startup.  This is on Mac OS.  Here is the script...

import bpy
bpy.ops.text.open(filepath="/Users/my_name/Documents/Blender/scripts/modules/Script1.py")
bpy.ops.text.open(filepath="/Users/my_name/Documents/Blender/scripts/modules/Script2.py")

This script is in my startup scripts directory, and does not execute but errors on the first line after the import bpy.  I want the 2 scripts in the file paths to appear in the Text Editor after Blender loads.  I can run these 2 commands in the Python console, or run this script from the Text Editor, and the scripts will load in the Text Editor.  But they will not load if I try to run this code at startup.

What is different when running this code on startup, from running it after startup?

Ok, I found a solution for this problem.  Thanks to all for providing answers.  I posed this as a scripting question since I could see no other way of solving my initial problem.  The problem is creating a library of often used scripts that are immediately available every time I open Blender.  This is to emulate Maya's Tool Shelf in which the user can save scripts as buttons in the UI.

The solution is to open a script in Blender's Text Editor - this creates a text data block for the scene, which is saved with the scene.  Do this on the fresh Default Blender scene to open scripts in the default New Scene, then re-save the scene as Default.
If you want specific scripts available for a specific scene, just open those scripts as data blocks for that scene and save it.

This is not quite a decent solution, since the entire script is saved within the blender file, which could add up to a lot of extra data, plus it exposes the script to unintentional changes.  A better method would be to save each script path in a run_script command as an individual text object.

import bpy

path = "/Users/user_name/Documents/Blender/scripts/modules/script_name.py"
bpy.ops.script.python_file_run(filepath=path)

Then you only save these few lines in the Blender scene file and run it from the Text Editor, and the script is isolated from changes or prying eyes.  It just won't work if the blender file is opened from within a different machine or file system.  Its just a convenient hack until a more elegant UI solution is invented by someone.


does Blender have a Material Swatches panel showing all available materials? I'm a C4D user and it has a Materials Pallette. I can see a preview of all materials in the file and I can drag one onto an object. Does Blender have a similar window?

It does, in the materials tab, and the arrow points to the droplist of all your materials. I never tried drag'n'drop, though, so you need to check it. This is from Blender 2.7x so the current version (2.9x) must have this much or more.


select specific face by its index How do I select a specific face within a mesh knowing its face index or vertex?
I tried without success:

bpy.data.meshes.polygons[2].select=True #where the face index=2

The line below is invalid.

bpy.data.meshes.polygons[2].select = True

bpy.data.meshes is a collection of all meshes in this .blend file, it doesn't have an attribute .polygons. You are close though, you need to reference a specific  mesh either via

mesh = bpy.data.objects['some_object_name'].data
# or
mesh = bpy.data.meshes['some_mesh_name']

Important to note here that Objects are not the same as Meshes

An Object can hold a reference to a Mesh. (or Curves, or other Types)
A Mesh only holds references to the objects that use it. (Actually, I think it only holds the count of objects that reference it.. not their names: maybe someone can correct me?)

In Object Mode

One way to select by face index is, go to Object Mode first then do

obj = bpy.context.active_object
obj.data.polygons[2].select = True

When you go back to Edit Mode you'll see the face is selected.

In Edit Mode

If you wanted to do that in Edit Mode, this might be unintuitive at first, but it involves a little more code. Blender  comes with a useful collection of templates for mesh editing. The relevant template for this question can be found in Text Editor > Templates > Python > Bmesh Simple Edit Mode.

Below is a slight modification to that template, copy it to the Text Editor and press Run.

import bpy
import bmesh

obj = bpy.context.edit_object
me = obj.data
bm = bmesh.from_edit_mesh(me)

# notice in Bmesh polygons are called faces
bm.faces[4].select = True  # select index 4

# Show the updates in the viewport
bmesh.update_edit_mesh(me, True)


Mirror vertex group failed When I try to mirror vertex group in weight paint mode, error shows up ''0 vertices mirrored 11226 failed''
I've tried:  - mirror half of the model, so everything is symmetrical,
- center everything on the X, Y than ctrl + a
- attach the armature to different model > mirror vertices worked
- attach the model to different armature > error
There is clearly something wrong with the model but I have no idea what is causing all the problems. I made the model in Maya 2016 than exported it as .obj than did the Uv mapping + textures in blender 2.8.
I don't want to do retopology, so I'm asking for help.
Here's the model in blender: https://drive.google.com/file/d/1iykZkZBXoBTzXScjjGUdMEzCR_mOCCdk/view?usp=sharing

Fixed it by importing the model and armature in a new scene.


How to reassign general confirm function from "Enter" key? i would like to reassign general confirm function from the "Enter: key to something else. My setup is setup in the way, that i cant reach right side of keyboard because it covered with my graphic tablet.

I reassigned most hotkeys i use to the left side of the keyboard, but i can't find how to reassign general confirm function from "Enter" to another key.

Thank you.

You can do this by going to User Preferences > Input and changing Name to Key-binding and typing the word enter into the text box.

Sadly you will have to change every single instance to your new command by hand unless someone else can come up with a script to do it automatically.


Orientation of instances in Particles Instance Modifier I'm trying to get dynamic tassels attached to the end of a scarf in the example here.

I just don't seem to be able to get the tassels oriented correctly, despite having studied
Samir's excellent explanation here

here is a link to the blend in question

Many thanks in advance,

Matt

Tassle_twist.001 has a particle system applied to it from the Modifiers tab. That does'n seem right. remove it, then select the belt and from the particles tab section Render select Object instead of Path and select Tassle_twist.001 as Dupli Object. Now go to the Physics section of the Particles tab and set the size to 1. It's not entirely clear to me what you want or what you're having trouble with exactly, but I hope this helps.


Can you apply an action to an armature that has more bones than the one that created the action? I'm trying to create mocap animations for my characters in Unity. I currently use character models and animations downloaded from mixamo.com. I've just created some mocap animations with Brekel pro body v2, and I have imported the bvh file into Blender along with one of my models that were imported as a collada. I am trying to assign the bvh animation action to the mixamo armature. I've changed the names of each bone to match the names of the bvh armature, and the only difference is that the mixamo model has more bones than the bvh. It has a toe, eyes, head top, and extra spine bone where the bvh model does not have them, but everything else is the same.

When I assigned the bvh animation action to the mixamo armature, the animation plays but the rotations seem off and it doesn't look as good as when I play the action on the bvh armature. I've tried changing the type of rotation (ZXY Euler, XYZ Euler, etc.) but it hasn't helped. I'm trying to get the mixamo armature to make the same exact movements as the bvh armature.

Are those extra bones causing the issue? If so, is there a way to apply this animation to only the bones they share? I need to keep the current mixamo skeleton.

Thanks,

Clownthulhu

Edit:

Here are some added pictures of the problems I'm experiencing.

The first image shows the bvh armature on the left and the mixamo one that I need to keep the same on the right.

This shows the mesh of the mixamo model in the middle of the animation as well as the bvh armature during the animation. It also points out the problems I'm seeing and looking to correct.

The toe bone shouldn't be a problem, but an extra spine bone might be, as it will have children that are animated by the armature. Because of this it is likely that the transferred animation may never look the same.

To fix this I'd suggest adding an extra control bone to the mixamo armature named after one of the bvh bones and constrain two of the spine bones (the dupilicate and another) to move based on its rotation. A picture of the two armatures would make this easier to explain.

You may want to check that the bone rolls on each bone in edit mode match between the two armatures.


How to remove light bounce / reflection from objects? Hi there. I'm creating a scene with many images tacked up onto the wall. I use 'Images as Plane' to import these images and add a solidify modifier to give it some thickness. It is rendered on cycles.
It seems that there's some light bounce from the back of the paper. How do I remove it?

Maybe disable the Diffuse option in the Obect panel > Visibility > Ray Visibility?


Does keyframe 0 have a "special" use case in blender? In computer programming indexes are (usually) 0 based but the default frame range in Blender is 1 - N which makes me think there could be a reason behind it - similar to last layer being used as a "trash layer" for helper objects - by convention.

So does keyframe 0 have such common "special" use case in workflows (eg. maybe storing default pose) or is it just a UI design choice ?

'0' may be the starting point for programming, but blender is aimed at artists, who may well not have any programming knowledge, for which a zero-starting counting system may not make any sense. Of course, the artist may have programming knowledge and be aware of zero-starting counting, but it is not presumed.

Frame '0' has no significance or importance over any other frame. If users choose to consistently do something with that '0' frame then that would be an individual choice, and not a standard convention (as far as I'm aware).


Using game property to control actuator values (BGE Logic Bricks) For example, Is it possible to control a value on a motion actuator by linking it to the value of a set property? For example movement speed that can be changed on the fly by changing the property value, to change the speed?
If not possible solely using logic bricks then how would you do this using script? Would prefer logic bricks though.

(Using the picture as reference) Basically I just want the value of the X Rotation (second red box) to mirror what ever the value is of the property sp1 (first red box).

I don't think there is a way to achieve that with logic bricks but a small python script can. Simply paste this into a text block in blender's text editor and use the text block name in the python controller.

import bge
from mathutils import Vector

cont = bge.logic.getCurrentController()
own = cont.owner

sens = cont.sensors['Keyboard']
actu = cont.actuators['Motion']

actu.dRot = Vector((own['sp1'],0,0))

if sens.positive:
    cont.activate(actu)
else:
    cont.deactivate(actu)

The script should explain itself fairly well. By getting the controller object we can then get the owner and the sensor and actuator that we are interested in. We use the owner to access the game property own['sp1'] to alter the actuator values.

If you place the line print(type(actu)) you can find the type of actuator and lookup it's properties in blender's api reference. eg the simple motion actuator identifies as a KX_ObjectActuator

The last few lines activate or deactivate the motion actuator based on the output of the sensor.


Cannot change curve modifier after pressing 'Apply' Sorry for my trivial question.
I'm a newbie and I'm walking through a cave tutorial. I can deform a mesh with a NURBS curve but I can't further edit the deformation through manipulating the curve after applying the modifier. Pressing Apply on the modifier 'freezes' the effect and the modifier icon in the object tree disappears (is that a standard behaviour?). Moreover, when the mouse pointer is over the Apply or Apply as Shape buttons, I read the same tip: 'Apply modifier and remove from the stack'. Is that a bug? My configuration is Blender 2.72b on Ubuntu 12.04 LTS (64 bit).

EDIT: I can edit the deformation before the modifier is applied. I expected a further deformation editing through the curve manipulating because I am too influenced by CATIA :)

The purpose of 'Applying' a modifier is to make the changes that the modifier has made, permanent. Any deformation or change to the geometry a modifier may have caused will overwrite the original geometry.

As long as the modifiers are present in the modifier 'stack' (where the modifiers get listed), they will be able to be edited.

I have not followed every step of the tutorial you linked to, but unless the tutorial says to apply the modifier there is no need to. It is perfectly fine to have many modifiers on an object and never apply them, allowing non-destructive editing.

See more information about modifiers and the modifier stack in the Blender Manual.


Looking for a way to create details fabric texture(Normal Map) This is a really amateurish question but I'm completely lost at the movement. I trying to create a cloth  with a wooly vest. However, no matter how I tried I cant seem to get the result I wanted. I've manage to sculpt and bake the fold to normal,  However, I fail to create the "wool texture/feeling". which lead to this post
How does artist usually create pattern and details such as leather, wool, etc on to the cloth other model?

I've try directly sculpting on high poly model (through stencil) however the details is not consistent.

I've tried merging two normal map together(the one I've bake which include the fold and a wool normal map from the internet), it  a didn't go so well as I've found it is best to bake your own normal then using other. The wool map does "join"  correctly as shown on the image

texture painting heavily rely on the artist skill (which embarrassingly, I'm not at the level on the model) and it is not suitable for the style I'm trying to pursuit. I would like the final to be something like this where at a glance a person could the pattern,texture and the details of the fabric.

Hence, I'm completely lost. Clearly there is way to do it as many have able to create. I just cant seem to figure it out.
The link to my blender file
it contain the mesh,3 normal maps and a node setup for merging N1 and N2 , the following are the name of the maps.
N1: the one with fold only(I acquire through baking from high to low poly) it
is intended to mix with N2.
N2: The normal I found on the internet , intended to mix with N1. If directly use
on mesh, it will not "join" together properly refer to the image above.
N3: I directly sculpt the "wool texture" on to the high poly and bake it to the
low poly, as you can see the details is not very consistent

For this kind of object you will necessarily have seams somewhere but you could delete the one on the top and it will unwrap correctly. You could also model a seam at the top so that it matches the UV seam.
As for the material, you could use a real picture of wool, but if you want to stay procedural, you can improve what you've done so far with some tweakings:

For the moment your wool looks a bit plastic, it is not supposed to be so glossy, so increase the Roughness and decrease the Specular values.
To make its tint more realistic and less monochromatic, Plug a Noise Texture node (with a high Scale value) into a ColorRamp with 2 or more colors.

About your question on mixing 2 normal maps, you can do it through a MixRGB, then plug the MixRGB into a Converter > Vector Math > Normalize:

I've watched this method that recommends to separate and recombine the RGB channels but I can't see any difference with my method as soon as I put a Converter > Vector Math > Normalize node as well, maybe node experts will tell...


Objects missing in render, light has no effect I've been test-rendering a character I'm working on and I'm running into some problems. Not only are the eyes of my character not appearing in the render, but light seems to have no effect on objects at all.

In the viewport, all objects are visible and changes in light make changes to the image, but when I hit F12, I get the same thing every time.

[![enter image description here][2]][2]

This is what it looks like when I hit F12

Object added in Local view don't update till you go out of it

I never notice, but looks like the object you build while you are in the Local view, despite being added to the outiner, (and so to the scene as well) they don't appear in the Global view till you go out from the local View.

At least this is what happens in 2.78 version.

If you open another window, you can examine the scene that is being rendered:

Eyes are missing, and maybe the planes that are providing light to the scene...all objects that you have probably built while you was in Local view without ever going out.

Those are not rendered because they are in a limbo, trapped in the Local view waiting to be released. That's where the difference cames from.

You can see how the cube added in the image sequence below is not in the Global till I go out from Local view.

I don't kown if this is a feature or a little bug.


Why are all the correct axis's are blocked on my follow path? why the only time my character is in right position it is on a blocked axis? I have tried changing the offset. I have tried every combination of forward and up. I have tried unfollowing the curve and following it. My goal here is to make him walk across the path. I haven't made the walking animation yet but I figured I would do this first. Is that the right way to go about it? Because I just wanted to make a walk loop and didn't want to have to animate across the whole road.

select your armature
apply all transforms
object -> set origin to geometry
move your armature to the beginning of your path
armature -> follow path -> change settings to this:

and you get this:


Blender Game Engine Rigid Body Instability I've made a simple quadrapod with rigid body 6 DOF joints - with joint limits so it's only a single DOF per joint (w/without limits doesn't effect end results - I will have limits in the end goal though).

However, I am getting crazy instability. The joints do, rougly, seem to be working - but they just shudder and jitter a lot.

I'm not putting much force on them here. I have set them as dynamic objects, with collision convex hulls (not that boxes made a difference). I have the box ticked that says it disables collisions between jointed objects.

I am using rigid body joints as I intend to move towards some sort of machine learning for gait development - this rules out armatures I believe. Each leg needs to be able to freely translate and rotate in the world coordinate frame - this would allow gait development on uneven terrain, and for the quadrapod to fall over!

Example added below.

My blend file is here:

You want something like this?

Notice the bottom right of the screen. I have locked the X and Z rotation for all the legs (Both upper and lower).

Alternatively, you could use this method, but it stiffens the joints so it's able to stand:

Notice that I have deselected the Angle X limiter. In addition, I changed the joint type to hinge for all upper limbs.

Alternatively, disregard the modifiers on your upper limbs, and assign them to the lower limbs instead using a hinge pivot like this if you don't want the stiffness of the previous solution:

Note that the hinge modifier only affects the LOCAL X axis, not the global. So you have to re-orientate the limbs like I did to get the local X axis pointing the same way as the global axis (Just for reference, they have to point directly 90 degrees out from your limbs.

If you look closely, you'll see a gap between the lower legs and the main body compared to the back legs. I made this quickly, so I didn't adjust to the 100% accurate values, but you have to tweak the Angle X min/max values to your liking. This will determine how far the legs are allowed to rotate along the X axis. Too high and the legs will go through each other, too low and the lower legs won't connect with the main body when it's laying down. Depending on your needs, these numbers will be different from the ones I gave you, but again, you have to tweak these to your liking. Again, these are local X values relevant to your upper limb.

This deals with your spasm issues.

Hope this helps. Let me know if this wasn't the answer you were looking for.


How do I make a giant clock made of many small clocks? I want to recreate this animation I found online, of a giant clock that displays the time using many smaller clocks. The minute and hour hands of the smaller clocks rearrange into symmetry and shows the time. This is the particular image I found:

(The clock showing the time.)

(The video: Giant clock made out of tiny clocks)

For sake of simplicity: I want the needles of those clocks moving and align to show a single digit.

Here is the simple scene that I made using animation nodes:

I made 2 arrows, and duplicated it 5*8 times:

Each arrow is sent to the node program, which determines the position in the space and the rotation:

First, I divided the index by 5 and took the remainder of the division to get the coordinates (x and y index) of the arrow:

Next, I just multiplied it to get the correct scale of the arrow's matrix (x and y coordinates):

How to get the rotation? First, I wrote a map, which determines the rotation of each arrow. I made it using a list of "box symbols" ("┌","─","┐", etc..):

┌───┐
│┌──┘
││
│└──┐
│┌─┐│
││ ││
│└─┘│
└───┘

Then I wrote the script, which converts a correct symbol into 2 angles:

out=[0,0]
if(letter=="┌"):
    out=[-90,180]
if(letter=="─"):
    out=[-90,90]
if(letter=="│"):
    out=[0,180]
if(letter=="┐"):
    out=[180,90]
if(letter=="┘"):
    out=[0,90]
if(letter=="└"):
    out=[0,-90]

rot=out[arrow]

So when I put the correct letter and arrow index (0 or 1 - first or second arrow) it outputs the correct angle:

This script block gets the letter from the text "map":

and finally I used the animate float node to make a transition between a random angle and that angle:

As you see, you need to know a little about Animation nodes and scripting. This is the file (NOTE: it will not work without Animation Nodes!):


How to change shape keys with the same name in different objects at the same time In the image below, the “face” object has shape keys “angry_left” and “angry_right”.

And similarly, in the image below, the “eyebrows” object has shape keys with the same names “angry_left” and “angry_right”.

I want to change the angry_left value of "eyebrows" by the same amount when the angry_left value of "face" changes.
In Maya, I can do this with standard blendShape, but how can I do it with Blender?
Can I do it without a rig?

Yes, you can do it without a rig, but those shape_keys are on different objects and shape_keys from different objects can not be mixed, only transferred if the objects have the same vertex count. Choice one, joining objects:
So considering the pure shape_key blend/mix way, the function is found right to the shape_key list when you click on the "v" button.
If you join the objects, i would suggest to rename the shape_keys to reflect which part they belong to (face, eyebrows) beforehand, as that combines the shape_keys from both objects in one list. That allows then to adjust all keys and you can set face_angry_left and eyebrow_angry_left (just an example for the names) to 1.0, after which you click on that mentioned "v" button and select "+ New Shape From Mix". That will create a new key with the effect of both previous set to 1 keys, means you get a shape_key adjusting both values at the same time.
In the picture you see the button mentioned and the functions.

Choice 2: Using a driver, which you can set up as a new shape_key on your head for example or a custom property value under your head. It does not really matter, as long as you have a value that you right click on, and choose "Copy As New Driver" function (see below, in second picture right click on any value really you get the second last option in the popup menu). After that you go in your eyebrows and select the shape_key for angry_left for example and right click over the value to then select the "Paste Driver" function. That will color the value purple and connects the previously used value (New Driver) to the now colored value. You can do the same with the face where you select the angry_left value of the shape_keys and right click once again to also "Paste Driver" here. Well, you now have both objects essentially remotecontrolled with the "New Driver", only problem with this solution is that you can't change the values separately anymore. To work around that you could copy the shape_keys before pasting the driver on them, but if you ask me, i would consider to consider choice 1.
To not leave it out, copying a shape_key goes by setting only the value of the to be copied key to 1 and then click on the "v" button and use the "+ New Shape From Mix" function, generating a clone.


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:


How to remove aliasing from two images displayed on top of each other in the video sequence editor? I have two images that are displayed one on top of the other in the video sequence editor:

Each image has an accompanying transform to apply scale and rotation:

On closer inspection of the rendered output of the first frame, I discovered a lot of aliasing where the two images overlap:

The Blend property of the top two strips is set to Alpha over and the other two strips have the value set to Replace.

How do I remove the aliasing so that there isn't such a visible seam when the images are blended together?

This seems to be a precision problem, when you check Convert to float in the filter tab of your image strips, the issue disappears.


Can my unwrapped UV be scaled outside of the UV grid? So I have UV unwrapped an object, and everything fits inside the UV grid as it should. But why should it remain within the UV grid?

Do I need to keep it within bounds or can I scale it outside the grid?

If you extend the UV grid the size of the texture will change inverse proportionally. If you make the UVs larger the texture will get smaller and start repeating itself.


Bend plane with panorama image Main question

I have large panorama images (not necessarily a full circle of 360°) with let's say 23000x3600px and I want to include the image to the scene, bend it to a circle (or almost circle in case it is less than 360°) and fly around it in a short movie sequence.

I imported the images as textures using the images to planes addon.

Minor problem (already solved in an acceptable way)

The first problem I encountered is that such a large image can't be handeled correctly which seems to be a problem of RAM according to my research. This can be solved by reducing the enormous size of the images to something more suitable. But maybe I oversee something and there is still an option for very large images.

Main problem

How to bend the planes with the images to something like a circle or sector of a circle? This should unwarp the panorama image roughly; it does not have to be exact.

I tried it with loop cut -> proportional editing -> circle. But the result is half of a circle at maximum. Is there an easy way to bend the plane? Using a cylinder and adding the texture has not worked on a first try, but maybe I have to experiment with this.

Background

I have a map of a holiday trip and want to fly over it showing images alongside the visited cities. Some of the images are of normal format, some of panorama format. The latter should be processed as described.

How I use the Curve Modifier.
I subdivided the plane using Cut and Slide with Ctrl+R.
I created a NurbsPath cuverd the desired shape.
So I used the Curve modifier.
The plane just fits half the curve, then you shall move and scale de plane to envolve the entire curve as you wish. Good luck.


How do I stop wagon wheel effect when a wheel spins at low speed in blender I am animating a sniping wheel in blender. The wheel rotates at one revolution per second. In the view port it appears okay. But when I render the animation in cycles, it produces the wagon wheel effect. How do I stop this?

It's all about physics. You can change the movie fps, or you can use some motion blur to reduce the effect. You also cam change the count of details on the wheel to change the frequency,


Can't see weight paint heatmap in blender 2.8 release candidate. What should I do to toggle it? I am trying to weight paint a terrain to adjust the amount of stones in some spots, but when I go in weight paint mode the heatmap is not showing, even if there are changes on the stones distribution when I paint.

Is there an option to toggle or another way to show it?

Thank you

You can now pick weight painting heat map opacity, but for some reason it defaults to zero with some previously saved projects (probably because the category didn't exist before now).

Hope this fixes your problem.


GPU & CPU setups, what is appropriate? I have an older system that I am using blender 2.81 on, as it will not run 2.8 and shuts off.  I am wondering what should I do for best viewport performance with a 24gb ram, hex core x5675, desktop, 2gb nvidia gf100 quadro 4000.

It is a bit slow at viewport cycles rendering in cpu mode, eevee seems fine to render. viewport is a bit laggy in general compared to a laptop quad core,6.942gb ram, integrated Radeon R5 graphics, AMD. The laptop seems just as quick? Though I may change to 2.81 as eevee won't render on the laptop, but runs blender?

Is there any way to increase viewport efficiency in some way? This is the main point...

Thanks.

You can increase viewport speed in multiple ways.

1) Make sure you have GPU Compute on (in preferences and in render tab)
2) Adjust viewport resolution in Render Tab -> Performance -> Viewport -> Pixel size
3) Decrease Render samples in Render Tab -> Sampling -> Viewport
4) Remember that Cycles will always be considerably slower than Evee.

Settings on my old machine:

Hope this helps.


Easiest way to create offset animation on a number of objects I’m wondering what’s the easiest approach to creating offset animation on a number of objects. By that I mean having a range of objects where each object follows the rotation of the first object with an offset of a few frames per copy, preferably linked to the original animation, so changing the animation for all objects is easy.

If an add-on like Animation Nodes or Animax is the best way to go, I’ll install that, but I’d prefer to do it without add-ons.

Thanks.

There is the addon Animation Replicator with Offset that seems to do what you want.

I have used it before with success to create a series of objects that slowly rotate one by one in sequence.

While still relying on an add-on to create the objects, it is a tool type of addon, with a "use it once and discard" sort of workflow.

It doesn't need to be permanently installed for the animations to keep working, it just creates regular Blender animations using native features.

Once it has done its work, you can uninstall it, and things will keep working properly, afterwards, so you can freely share or reopen the file without losing your work.


Creating a plane based on nodes I have just started working with Blender and have run into a problem:
I'd like to add a plane to a side of an object, but I don't know how to do it since it has curved edges, is there any way to add a plane based on the nodes I have selected, or do I have to do something else?
Grateful for any help!

As Batfinger already said the points on the mesh are called Vertices and not Nodes. Nodes are a completely different sphere of blender which includes stuff like materials and compositing.

As for you question, selecting the Vertices and pressing F will fill in the faces.


How to switch between Action Actuators I have two action actuators, and I need to switch between the two immediately once a variable has changed.  I have tried multiple things such as logic bricking the set up and using this script:

import bge
cont = bge.logic.getCurrentController()
own = cont.owner
sens = cont.sensors['Move']
if sens.positive:
    if own['Y Axis'] == 1:
        cont.activate(cont.actuators['Y Axis'])
        cont.deactivate(cont.actuators['X Axis'])
    else:
        cont.activate(cont.actuators['X Axis'])
        cont.deactivate(cont.actuators['Y Axis'])

Where own['Y Axis'] is the variable that this is dependent on.  It works the first time the variable is switched, and then it doesn't work afterwards.  The actuators, Y Axis and X Axis are Action actuators with the Loop End playback type set.  How can I do this?  Thanks!

You have to change the layer or priority of one of the action actuators :

OR

instead of having two actuators and activating and deactivating the other one, you can use just one and switch the used action :

import bge
cont = bge.logic.getCurrentController()
own = cont.owner
sens = cont.sensors['Move']
if sens.positive:
    if own['Y Axis'] == 1:
        cont.actuators['Axis'].action = 'Action1'
        cont.activate(cont.actuators['Axis'])
    else:
        cont.actuators['Axis'].action = 'Action2'
        cont.activate(cont.actuators['Axis'])


Simple question, how to smoothout faces? I'm a veteran of 3dsmax who hasn't modeled anything in half a decade trying to get my head around Blender.  So simple reproduction of what I am seeing, I create a cylidner, I add autosmooth, I then add Edge Split modifier but my render still has flat shaded faces.  I am surely missing something?

Thanks!

To make an object smooth, you either go to the left panel>Tools>Edit>Smooth or press space and type "shade smooth".

Then if you want to make the top faces flat shaded, use auto smooth or Edge slplit modifier, but they are essentially the same so one should only use one of them not both.


Creating curve design Hi, in the image below you can see point "3" is the bottle that I created using blender 2.69. "1" is the side view of the original bottle "2" is the front view of the bottle. Now I want this design of the curve on my blender bottle, but I have no guess how to achieve it. I mean how to create those design on the bottle. The curves on bottle are like small gutter which are towards inside of the bottle.

Some technics to do that (I won't make here the exact same bottle...):

Knife cut

The cut is straight, but the result is parabolic due to the bottle shape.

Knife project

Again a curved shape obtained from a flat curve.

Create a cutting shape (here a plane)
Scale/orientate it
Shift select the bottle and enter edit mode in the bottle (both are selected and that indicates to Blender which shape(s) will cut the bottle)
Use 'knife project'
In your situation, make sure that 'cut through' is checked

Beveling

In edge selection mode
Select the wanted edge loops
Use CtrlB
Choose bevel depth with Numpad + and Numpad -

Once done, give a shape, for instance selecting the two face loops as below and scale them:

Draw it flat and bend the shape

Use a mirror to make so the future cutting lines will match
Add a simple deform modifier to bend the shape to 360°
Make the cuts/bevels as previously
Apply the modifiers and remove doubles when the shape is as you want
Add a subsurface modifier
Scale and merge (or extrude and model) the shape to fit your bottle


Blender modeling materials in Unreal Engine 4 I'm new to Blender and also Unreal. In Unreal material object is a place for material elements. In 3DS Max you can create Submaterial for it but I don't know how to do it in Blender.

Sorry it's a bit hard to tell, but are you talking about placing Materials in Material Slots? If so, you can do it through the Material Properties Tab:


Select shortest path with python I am using Blender 2.78. I have found 2 vertices that I want to automate measuring the shortest path between them on the surface. I have written the following function that I give the object that I found the vertices on and the vertices themselves, it looks like this.

def surf_len(ob, path):
    # first select the object in edit mode
    # and select the vertex path to measure
    ob.select = True
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_all(action='DESELECT')
    for vert in path:
        vert.select=True
    bpy.context.object.update_from_editmode()

    # select the shortest path
    r = bpy.ops.mesh.shortest_path_select()
    bpy.ops.object.mode_set(mode='OBJECT')
    ob.select = False
    if 'CANCELLED' in r:
        raise ValueError('Cannot build shortest path: {}'.format(r))

However when I run this code I always get back CANCELLED and get the exception thrown even though I think I have selected valid vertices.

I also read somewhere that I might need to use the bmesh module for this so I did modify the code like this

def surf_len(ob, path):
    # first select the object in edit mode
    # and select the vertex path to measure
    ob.select = True
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_all(action='DESELECT')
    me = ob.data
    bm = bmesh.from_edit_mesh(me)
    bm.verts.ensure_lookup_table()
    for vert in path:
        bm.verts[vert.index].select_set(True)

    # select the shortest path
    r = bpy.ops.mesh.shortest_path_select()
    bpy.ops.object.mode_set(mode='OBJECT')
    ob.select = False
    if 'CANCELLED' in r:
        raise ValueError('Cannot build shortest path: {}'.format(r))

But this always raises ValueError: The mesh must be in editmode which is weird because when I run this from the console within blender, rather than as a start up script, I can see it working

I would really appreciate any help.

Cheers

OK sweet I managed to figure this one out myself with a lot of perseverance (and grumbling) ... This is the final code I needed

def surf_len(ob, path):
    # first deselect all other objects and select our target object
    bpy.ops.object.mode_set(mode='OBJECT')
    bpy.ops.object.select_all(action='DESELECT')
    ob.select = True
    bpy.context.scene.objects.active = ob

    # next select all the vertices in out path
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_mode(type="VERT")
    bpy.ops.mesh.select_all(action='DESELECT')
    bpy.ops.object.mode_set(mode='OBJECT')
    for vi in vert_indices:
        ob.data.vertices[vi].select = True

    # select the shortest path
    bpy.ops.object.mode_set(mode='EDIT')
    r = bpy.ops.mesh.shortest_path_select()
    ob.select = False
    bpy.ops.object.mode_set(mode='OBJECT')
    if 'CANCELLED' in r:
        raise ValueError('Cannot build shortest path for {}: {}'.format(vert_indices, r))

I think the main thing I needed was the vertices objects I was passing in, that I had found earlier, had completely crazy indexes and just were not the same ones I found for some reason, this seemed to happen after I added a bunch of other objects to the scene

So instead I record the vertices index when I found it on the object originally and then use those for the select which seems to work .... I don't know why this happens, all I was doing was saving a list of ob.data.vertices[vert_index] to a list, when I came to use them later the vert_index were ok to be used in the function above, but the actual vertices seemed to be no good ... ie the code did something like this

    vert_list = []
    for face in ob.data.polygons:
        for vert_index, loop in zip(face.vertices, face.loop_indices):
            vert_list.append(ob.data.vertices[vert_index])

If anyone knows why this vert_list is no good after a bit of editing to the scene I would be very interested.

Anyway once I figure out that problem, the rest was just a matter of fiddling about to get the correct modes etc ... I think bpy.context.scene.objects.active = ob helped too

Cheers all.


How does the Blender Internal Renderer create Environment Lighting exactly? I'm using Blender 2.77 and I have currently arrived at the native Blender Renderer engine, and I fully want to understand how it works and how I can use, adapt, modify it for my own Blender projects.

I've already read many free e-books, articles and watched many videos about it, but I want to be able to truly understand AND visualize its inner workings.

Unfortunately the official Blender Render manual does not offer much in-depth/under-the-hood insight on how stuff really works, so I still have lots of technical in-depth questions about the Blender internal Render engine like:

QUESTION: - How does BI create "Environment Lighting"?

Is this done by adding just another (hidden) Lamp (like spot, point, hemi, sun, area) to the scene or is it done otherwise?

From the Blender documentation 1

Environment Lighting

Environment light provides light coming from all directions.

Light is calculated with a ray-traced method which is the same as that used by Ambient Occlusion. The difference is that Environment lighting takes into account the “ambient” parameter of the material shading settings, which indicates the amount of ambient light/color that that material receives.

Environment Lighting panel.

Also, you can choose the environment color source (white, sky color, sky texture) and the light energy.

Energy: Defines the strength of environment light.
Environment Color: Defines where the color of the environment light comes from.

Using both settings simultaneously produces better global lighting.

It is good for mimicking the sky in outdoor lighting. Environment lighting can be fairly noisy at times.

Internally blender creates a sphere with these settings. Sampling this sphere will influence the ambient parameter in the reflection model.


Lots of Intersecting faces when using 3d printing, how to fix them in batch? I am using Blender 2.7.8.

I have a lot of intersecting faces on a peice I am trying to 3D print. My usual strategy in Edit mode is to manually delete each face, select the verticies forming it, and reform the face using F. This is unreasonable at this point. I have tried to select them all, and do a boolean operation, but that doesn't work (Intersect deletes everything, Union gives no improvement with all the faces selected).

What else can I try? Is there anyway to identify the real problem interfaces? Pic below. (Sorry for the Blue tinge, idk why screenshots on my second monitor always do that, #linuxproblems)

I hacked around this by:

Selecting all intersectng faces
Deleting only faces
Using Make Manifold

This reduced the number from 45 to 3, and I repeated the same strategy above on those 3 until there were 0.


Blender 2.8: Grease Pencil Fill Brush Not Working I've been trying to figure out how to use the fill tool, but it doesn't seem to be working properly. Am I doing something wrong?
The build is 2.8 nov 2018.

The confusion is caused by the default setting of any new draw brush material where the fill is set to 0.0 alpha which means it is transparent (it makes sense as you'll most often just want to draw a stroke without a fill). Therefore the 'color bucket' click doesn't do anything obvious besides just adding another stroke.

For proper use create a new (fill) material and change the alpha of the fill color to 1.0 or any other value greater than 0. You may want to edit the stroke settings, too, i.e. deactivate it for the dedicated fill material.


Geometry Nodes: Rotate positions about a point? I've wanted a Simple Transform modifier for ages.. using an Axis/Origin object, by vertex weight. I'm thinking Geometry Nodes will make it possible to construct our own.
I would like to have been able to answer this question with Geometry Nodes.
Is there a reasonable way to rotate or scale mesh vertices / points about an arbitrary origin, without effectively composing your own transform matrix? Point Rotate gives each point an orientation about itself, but I'm looking to rotate their positions. Vector Rotate doesn't distribute across another vector attribute.
Unless I'm missing something, someone else has done it, or there are plans, I'll start rolling-my-own node groups.

Interesting question!

The blend file above contains a moving weight modifier and two rotating pivot points. The mesh is rotated around the pivot points influenced by the weight value by geometry nodes.

Add the weighted_rotation node network to your target, provide it a object as pivot point and you're done. The weight group is optional; if it's not available the modifier just rotates around the pivot point.
Enjoy!


Geometry Nodes align How can I align a Cylinder with the normals of the surface? I want it to be aligned with the points on the surface as well.

UPDATE: The answer below is for Blender 2.92, in the experimental build 2.93.0 Alpha this already works. Keep the nodes in the order described down here. Set Vector to Attribute and enter the value vertex_normal (or choose it from the dropdown menu).
For Blender 2.92: Not the answer to get it working (because it doesn't in this or older versions), jut a quick explanation of how to setup the nodes and what they do.
The Align Rotation to Vector node rotates the points of the plane object according to values you enter in there (if Vector option set to Vector instead of Attribute). Which means, you have to put it before the Point Instance node to have an effect on the rotation of the instanced objects.
However, this only rotates all points into the same direction for X/Y/Z given by the three values entered there (all set to 0 would mean, the rotation isn't changed at all).
So Attribute must be the option to choose I guess - and this is the point where someone should take over who knows how to get the vertex normals. I don't know and can't find a list which attribute names Blender understands, but in my opinion the attribute which gets the vertex normal must be put in there and it should work as you want it.
I just watched a Youtube video on geometry nodes and talking about the attributes it was mentioned that the normal attribute is still a work in progress and yet only used by the Point Distribution node.


How to make jagged geometry smooth/diagonal? Often times I select faces from my character's body and then duplicated them and grow them up in order to create clothes. However, sometimes this results in jagged clothes with hard edges. Is there a way to select all the jagged corners and moved them so that the clothes become smooth?

or any other suggestions to make clothes that are not jagged?

Here is what I mean. I selected some faces from the purple body and then duplicated them into the yellow pant (The gap is not part of the problem, it's just part of the style). The problem is the jagged geometry that makes it look "pixelated".

This is a bad topology with high poly count and work with this becomes hard and more inefficient.

You will need to adjust many things manually because the tools works based on topology of your mesh and if it has a bad topology, then, the tools have bad results too:

But using the Relax tool from the Loop Tools addon maybe you can solve your problem:

Loop Tools addon already inside in blender and to enable it go to Edit > Preferences > Addons and search for "loopTools"

Now you can use the Relax tool:

N panel > Edit > LoopTools > Relax


How do I create a sphere with six circles cut into it? I'm attempting to model BB-8 from The Force Awakens, but I'm struggling to create the base shell of his body. He's essentially a sphere with 6 equally spaced circles cut out of its surface. The remaining shape is then cut into 8 segments, like here:

If I could even create one of the segments I could then duplicate it.

Any help is appreciated!

Create a cube a default cube
Enter Edit Mode
Inset all its faces at about [0.3] or [0.4] units
Add a Cast modifier
Add a Subsurf modifier at about 3 subdivision levels
Add another cast modifier
Profit!


how to set camera's look-at point when moves along a curve? I want to have my camera moves by "Follow Path", it moves pretty well except that its view angle is not what I want.

I want to have the camera's look-at point always to be the next point it moves to. How can I get this work with python script? (or is there a setting for that)

My guess is that if I set the rotation angle correctly at the beginning it will fulfill my requirement.

pi = 3.1415926
scene.camera.rotation_mode = 'XYZ'
scene.camera.rotation_euler[0] = rx*(pi/180.0)
scene.camera.rotation_euler[1] = ry*(pi/180.0)
scene.camera.rotation_euler[2] = rz*(pi/180.0)

where rx,ry,rz are the euler angle that I need to calculate at the beginning.

Thanks in advance

You can access and alter the properties of the constraints of an object, all constraints are listed in object.constraints, access each constraint by its name or type and of course the index

cam = scene.camera
# if you are sure the constraint exist and has the default name
fol_path = cam.constraints['Follow Path']

fol_path.forward_axis = 'TRACK_NEGATIVE_Z'
fol_path.up_axis = 'UP_Y'

# to avoid errors in case it doesn't exist or has another name
for cons in cam.constraints :
    if cons.type == 'FOLLOW_PATH':
        cons.forward_axis = 'TRACK_NEGATIVE_Z'
        cons.up_axis = 'UP_Y'


How to create little flanges on the bottom of the bottle Can you please help me understand how to do it the right way? :)

Trying to make glass can:

You may do it fast using the inset tool.

Add a circle with 72 vertices- set it in a Tool Shelf (T).

Extrude it inwards (E) and add two edge loops (Ctrl+R). Select the whole face loop with Alt+RMB, then press I twice and set the inset's scale. Finally extrude the inseted faces upwards, add addictional loopcut in the middle and rotate it a bit (R).

Add a subsurf modifier (Ctrl+3 in Object Mode). Lower the middle loopcut a bit. Press Ctrl+Numpad+ to increase the selection area. Press Shift+E to crease it. Finally add a smooth shading and recalculate normals if needed (Ctrl+N).


How to make a texture that shines, or paint a material? How can I make an arm with blood textures on it, and where there is blood, there is a shiny material?

You UV unwrap and texture your mesh with a glossy map. The parts you paint white will be glossy, and the parts left black will be diffuse. Use that glossy map to factor a Mix Shader that has a Diffuse Shader and a Glossy Shader connected to it.

If your Glossy and Diffuse shaders are plugged in the opposite way then it will be inverted, with black values being glossy and white diffuse, so pay attention to how you've set up your mix node. Any areas that are grey will be neither fully glossy nor fully diffuse, but something in between.

Of course this concept can be applied to the factoring of any mix, whether it be glossy/diffuse, red/blue, bumpy/smooth, transparent/opaque... the possibilities are infinite.


Is there a way to know when color picker is closed in the scripting API I need to update mesh vertex colors when color has been selected from color wheel. I don't want to do this all the time when color item is updated, because that would be too slow.

Is there a way to know when color wheel is closed? I also looked into timer-based solutions but unfortunately context seemed to be wrong and I could not use them. Also I cannot do this within draw function for the same reason.

import bpy
from functools import partial
from time import time

from ..third_party.boltons.funcutils import wraps

def parametrized(dec):
    def layer(*args, **kwargs):
        def repl(f):
            return dec(f, *args, **kwargs)
        return repl
    return layer

@parametrized
def delay_execution(func, delay_sec=1.0):

    lock = False
    def timer(*args, **kwargs):
        nonlocal lock
        lock = False

        func(*args, **kwargs)

    @wraps(func)
    def wrapped(*args, **kwargs):
        nonlocal lock

        if not lock:
            lock = True
            bpy.app.timers.register(partial(timer, *args, **kwargs), first_interval=delay_sec)

    return wrapped

@parametrized
def on_release(func, delay_sec=1.5):

    exec_time = time()

    def timer(*args, **kwargs):
        nonlocal exec_time
        if not abs(exec_time - time()) < delay_sec:
            func(*args, **kwargs)

    @wraps(func)
    def wrapped(*args, **kwargs):
        nonlocal exec_time
        exec_time = time()

        bpy.app.timers.register(partial(timer, *args, **kwargs), first_interval=max(1.0, delay_sec))

    return wrapped

I achieved this by creating these two useful decorators. It'd require the library 'boltons' to be added to your addon.

@on_release() is the one you are interested in. Simply put that over your update callback, you can also specify delay (default is 1.5 sec) after which the function gets executed when you stop changing the property by doing this @on_release(delay_sec=your_delay)


Lengthen an edge infinitely (a.k.a. vanishing point) I'm using Blender to make 2D perspective drawing materials for educational purposes. I'd like to demonstrate how the vanishing points change along with the camera angle. I know how to animate the camera, but to show the vanishing points of a cube I need to extend its edges to infinitely.

How can I emulate this effect in Blender (preferably in EEVEE)?

Since your screen resolution is far from infinite, moving points far away will quickly reach the pixel size of your display. Starting with a 2m default cube, extruding an edge back 5000m should be plenty enough to simulate infinity and have them join at a subpixel level. Before doing this, don't forget to increase the Clip End limit of your viewport of camera.

Here is a simple way to do it in the view port:


If "bpy" in locals(): evals to True on first run I've put together this multi-module script, which lives in a make_Shaders folder, which is also the name of the module that makes the shaders: make_Shaders.py. I'm using this code in the __init__.py to load (import) the modules:

# 'borrowed' from Antonioya - elegant solution!
path = sys.path
flag = False
for item in path:
    if "make_Shaders" in item:
        flag = True
if flag is False:
    sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'make_Shaders'))
    print("make_Shaders folder added to pythonpath")

if "bpy" in locals():
    import imp

    imp.reload(figure_Defs)
    imp.reload(make_Shaders)
    print("make_Shaders: Reloaded multifiles")
else:
    import figure_Defs
    import make_Shaders

    print("make_Shaders: Imported multifiles")

When I zip and install this in a brand-new .blend (just opened Blender), I get the following error when I try to tick the 'Activate' tickmark:

addon_utils.disable: make_Shaders not disabled.
Modules Installed from   '/home/robyn/Documents/Blender/Projects/AllScripts/make_Shaders.zip' into '/home/robyn/.config/blender/2.76/scripts/addons' (make_Shaders)
addon_utils.disable: code_autocomplete not disabled.
make_Shaders folder added to pythonpath
Traceback (most recent call last):
  File "/home/robyn/blender276/2.76/scripts/modules/addon_utils.py", line 324, in enable
    mod = __import__(module_name)
  File "/home/robyn/.config/blender/2.76/scripts/addons/make_Shaders/__init__.py", line 61, in <module>
    imp.reload(figure_Defs)
NameError: name 'figure_Defs' is not defined

addon_utils.disable: make_Shaders not disabled.

Line 61 is the last statement in this segment:

if "bpy" in locals():
    import imp

    imp.reload(figure_Defs)

It seems "bpy" is in locals() straight away, when first starting Blender, which this says wouldn't happen:

This code works as follows.

If __init__.py() is run for the first time, i.e. on starting Blender with the addon enabled in your default.blend, "bpy" in locals() is False. The other files in the package are imported, and Imported multifiles is printed in the terminal.
Thank you for considering my little dilemma.

Edited to Add

I double-checked case and spelling of the modules: both correct.

Following batFINGER's sage advice, I've done the following. I think I get the from make_Shaders.make_Shaders import xxxx now. I haven't seen this syntax exactly anywhere, but it works an absolute treat. My actual statement is:

from make_shaders.make_shaders import buildShader
from make_shaders.figure_defs import matZones

'buildShader' and 'matZones' both being classes. This approach works perfectly, and is an excellent solution to managing multi-file modules. Incidentally, I took out the add to syspath stuff as well. Thank you, batFINGER. Wish you did a correspondence course... :)


How to Download Blender Pose Library ? As well as like in Maya Studio Library (Facial Expression) Just learning about posing characters and found I have a library (vers. 2.79) but see that it is empty. Is there a repository out there somewhere of free poses I can install in my Blender library?

Stored poses have to correspond to the armature that you are using - so any library of poses that could be applied woudl have to be rig specific. If you are using the existing empty pose library with your rig, you can pose the rig and then add the current pose to the library, and name each pose as you go. Then you can call up those poses when working in the dopesheet to set your main pose to pose action.


Sharing data between Operators I have two sets of Operators. The first set, lets call it A, produce data. The second set, lets call it B, needs to read this data.
What possibilities do I have to store my data from set A, so it is accessable for the ones from B?

Additional info:

The type of the data is a dictionary
It is not neccessary to store it in the blender file to make it persistend for later use
When Operators from A are called multiple times, the data shall be overwritten, so the Operarators from B always gets the latest data

A simple way is to use a global variable, although I don't recommend to make use of the global keyword on a dict directly. I suggest to use a class instead:

class G:
    pass

class OperatorA(...): ...
    G.your_dict = {"foo": "bar"}

class OperatorB(...): ...
    print(G.your_dict)

You may replace pass with class variable declarations if B might try to access it before A sets it:

class G:
    your_dict = {"default": None}

If the data is really related to let's say OperatorA, you may also use that class instead of G. Inside of a method in OperatorA, you can either refer to the class via the explicit name, or via self.__class__.


Best Place to put Feature Requests? The only place I am aware of is the Features & Proposals section of the official wiki.

The challenge we have in general with feature requests is that a good place to ask assumes that there is some chance of developers reading and implementing it (or at least replying to the request).

However, developers get asked for features a lot (personal emails, on blender-chat, mailing lists, on social networks even!) — so chances are, you are not even the first person to ask for it.

The ratio of people asking questions to those who can implement them is so high that its difficult to usefully manage requests.

Especially since Blender is general purpose 3D software, there are so many things you might want to do, depending on your project.

Taking this into account, here are some suggestions:

Check module owners tasks
Search on forums (eg, blenderartists)

If nothing turns up:

Ask on rightclickselect.com(community run web site, currently in development)
Ask in the "User Feedback" section of devtalk.blender.org.
Find the developer who works on this are and mail them personally, see Module Owners
You could look into funding the feature, Either by hiring a developer directly or contact the blender institute (via the blender network)


In VSE, is it possible to have keyframes adapt to clip length? (relative position) I have added transform keyframes to the beginning and the end of a movie clip. When I decide to change the length of the clip, the keyframes keep their position. Is there any way they would keep position relative to the clip? So if let's say it is located at the end, when I shorten or stretch the clip, it is still at the end of the it? Basically what I want is a relative keyframe position. I haven't been successful in finding a solution.

Park the play head at the end of the strip. Open the dope sheet view and select the last keyframe, then press the Shift-S key, select Snap type "Current frame".

To move all keyframes by the same amount, select all keyframes then press G key and type the offset value in frames and press enter.


Adding lights to selected objects with python? I'm working in Blender 2.8 and I'm new to python and scripting in general.

I have a file that contains multiple lighting fixtures (100+). I'm trying to write a script that will add a spot light to each fixture that I've selected.

Here's what I have so far:

import bpy

selected = bpy.context.selected_objects[0]

bpy.ops.object.light_add(type='SPOT', location=selected.location)

The issue is this script only adds a light to one object, not every object I've selected.

I haven't gotten to it yet, but I'd also like every light to have share the same light data, so they can all be changed at once.

Thanks in advanced for the help!

import bpy

for obj in bpy.data.collections["Collection"].objects.keys():
    bpy.ops.object.duplicate(linked=True)
    light = bpy.context.active_object.name
    bpy.data.objects[light].location = bpy.data.objects[obj].location

This should do the trick, make sure you create a light first (this will control all the other light) and have it selected. Also you want all your light fixture objects in the same collection named "Collection".


Object closely follows other object being moved When I import object B in my scene, It appears at origin 0, near object A (which is keyframed). I cannot seem to move A away from B without B loosely following... What is the relationship at work here? How can I move object A without B being affected?

Moving, rotating or scaling  an object while the Proportional editing is on will propagate the effect to neighbors objects "or vertices in edit mode" .
you can toggle proportional editing ON and OFF in the 3D viewport from the icon or using the shortcut O


Why is my mesh so tiny when I port it to UE4? I'm using metric degrees 0.01000 and my export FBX settings are scaled to 1.00 but when I open up the mesh in UE4 it looks like this.

I circled the tiny speck so you could see him. Any help?

Oh, your problem is that the dimensions of your mesh are tiny! A mere 1.6074cm tall—this is why it is so small in UE4. I would scale the character by about 100 times. A quick way to do this is to type 'S' and then '100' on your keyboard. After which you should apply the rotation and scale at the very least. I usually also apply the transform. Note: make sure you are in object mode and apply the transforms to the armature and the meshes of your character. In Blender 2.79 you have to do it one-by-one.

If you have multiple meshes in blender it can be tricky to measure them all together. One way I do it is by clicking on the top of the character's head: the 3D cursor will be placed there, and then in the right panel you'll be able to see the height of your character. It should definitely be somewhere between 1m - 2.2m tall for a humanoid character.


Can not select parts of the mesh Hey I am new to the program not sure what I did wrong here. I can't select any vertices, faces or edges on the tongue and gums of my model, which I need to in order to colour them in UV Editing mode. I appreciate any sort of help!

The issue is that you are not editing the tongue and gums.  Try exiting edit mode, selecting one of them, and then switching back.  That should fix it.


Blender UV vertex limit I have a small texture that I want to repeat over a big area. 100x100 times to be exact. To be able to do this, I edit the UVs for a plane, and try to extend them far beyond the image bounds. This works, though I can not manually enter values more than 10 for the UV vertices, when using normalized coordinates. I would like to enter 100 here, but that seems not to be possible. This is how it looks:

My question is why this is the case, to have such a limit? Am I missing something, and can it be bypassed som how? I can actually scale the UVs beyond 10, but that is not very accurate. I am using Blender 2.77.

Blender Internal Render.  Material Texture Panel.

Size XY 8, 8.

Size XY 2, 2.

Size XY 1, 1. Mapping Extension Repeat. Default.

Adjust offset values to suit you.

The plane has a simple UV Unwrap.  UV Coordinates not further modified.


How to export the unfolded image I'm seeing in the UV Image Editor as an SVG? I'm wanting to convert a 3D concave cylinder into a 2D image. I've brought it into Blender as an STL, generated a UV Image, and added a material. Looks good. I'm just learning Blender. So search results seemed to indicate that Paper Model add-in was the way to go to get 3D > 2D > SVG export.

But I can't keep it from unwrapping mesh triangles into a thousand tiny, separate packed islands. When I use Export Paper Model, I don't get what I see in the UV/Image editor: the mesh flattened. Instead, each triangle has been separated out and packed with like kind, each with their own little numbered tabs. This would be really cool for creating paper models. I get that.

But I need bigger islands: I need exactly what I'm seeing in the UV Image Editor screen. Any way I can just export that to SVG?

You can export the UV-Layout as .svg file. In the UV-Editor, go to UV > Export UV Layout. Then select the file format as .svg.


How to translate objects away from an empty? Is there a way to simultaneously translate objects away from predefined object, so basically all objects will move away from it in radial fashion?

So, let's say we have an empty in the middle, and some cubes around it. I would like to move the cubes away from the empty, just like in an explosion. I don't want to use particles and force field, but controlled, keyframed animation.

I tried to parent all cubes to the empty, but the only thing I can do is to scale or rotate the objects.

To disable the scale of children objects, you need to add object constraint Limit Scale to each one of those objects.

In the object constraint enable minimum and maximum on all the axes and change them to 1.

Once you resize the parent object, the position of the child objects will change relatively but the size will remain the same.


BI: is background (CLI) rendering faster? I had a long (by my standards) render running and got frustrated, decided to do it via the CLI in the background while I work on other stuff.  To my surprise the time per frame seems lower when the render process is invoked via CLI with -b.  This is of course anecdotal, as I didn't take a screenshot before shutting down the GUI render :-)  It also seems to be using the CPU rather than the GPU (maybe user preferences don't carry over to CLI invocations of Blender).  I was wondering which was the most likely reason for it being faster:  rendering w/o the screen updating is more efficient, or maybe my CPU for this particular BI render beats my GPU...

Yes, it doesn't update GUI, so it's faster. I personally always render in cli with -b key anything that takes longer then 20-30 minutes. Additionally it's more reliable and stable than the GUI, especially using an RDP or VNC connection. Sometimes GUI crashes or just hangs on window minimize or monitor goinng off or on screensaver launch. But in background it never happens.


Surface Area of Intersection with Skull I was wondering if anyone can help me. I pretty much need to know the amount of surface area there is on a plane lying tangent to a human skull. I would GREATLY appreciate any help with this. Thanks in advance.

First cut the part of the skull that is sticking through the plane using the bisect tool:
Then delete the rest of the faces so you're left with only the part you need to measure:
Join up all the edges to get a plane, and then delete everything else so only the plane you made is left.
Lastly go to user preferences and activate the 3d printing addon (found under mesh) and it will tell you the area of your plane. I would add more screenshots, but i can only post 2 since i dont have enough reputation.


Merge Vertices in UV-Editing How do I quickly move vertices to the same location? I can snap cursor to vertice and then move the other one to the cursor but it takes a very long time.

You could use the Stitch tool to stitch together the vertices along each edge.

Select two edges that you want to join then open the UV menu and choose the Stich option. (shortcut key =  V  ).

At the bottom of the UV editor view you will see a list of the Stich options.  Use the Snap option:  S key.

Left mouse button the validate Stich.

Select the other two edges, then  V  followed by  S  again.

Note that if you don’t want to move the vertices of the lower UV island you may have to use the Switch Island option:  Shortcut key =  I .

Left mouse button to validate.


Is there any way to get a specific angle using the knife tool? Instead of the constrained 45 degrees that happens when you press C, is there a specific angle I can get for example 35 degrees instead?

It's currently cut at 45 degrees in the attached image and I need it to be 35.

This is a work around.
For a simple object like your cylinder, simply rotate it in object mode 35°, make the cut, then rotate the object back.

For more complex objects where you can not rotate it. You can align the view to a rotated face. You could duplicate a face out of your mesh and separate it in to a new object, or just add a new object, a plane or an empty; then align the view to it with  with ShiftNumPad 7.

Finally do not forget that you can roll the view, but that is limited to 15° increments.


Export face groups as paths(vectors) I need to export the colored face groups below as vectors so that I can import them into photoshop.
My first approach was to use different colored shadeless materials which I could then turn into selections inside photoshop but it is not an accurate method, I have to have the vectors rendered inside photoshop.

There is a addon which does this. It works on both meshes and curves, and has many options for coloring and shading.

Here's a setup which will output flat shaded faces with the diffuse color of your materials (click for larger image):

In cycles the viewport color is actually the diffuse color, which is used by the addon.
For flat shading be sure to turn off most of the effects and variations, as shown in the screenshot
Once everything is set, click export to export the viewport as a SVG.

The result is shown in inkscape on the left.


Rigid body tower falling over by itself? I have a large tower (12 blocks high) that I plan to have a ball thrown at it. But what happens is that it falls over by itself and starts to spread out on the ground. What is happening and why?

Blend File

The issue is that rigid body physics are taking over your tower, and making it collapse before the ball hits it, which is what would happen in real life, if the tower was already broken. The way to fix this is to go under Properties > Physics > Rigid Body Dynamics and check Enable Deactivation and Start Deactivated.


How do I stop myself from creating light? I'm trying to change the lighting but I create my own light and I shine all over everything I want to edit my scene's lighting, but wherever I go, I create light. how do I stop this?

In 'Solid' view mode, Blender automatically lights surfaces based on their angle to the viewport. In order to see the effect of your lighting you need to switch to 'Rendered' mode which you can do by simply clicking the relevant Viewport Shading icon :


What is the Reason Cycles Creates Incorrectly Colored/Firefly Artifact Pixels? When it casts a ray, shouldn't it calculate the color and return that? Why would it create incorrectly colored pixels?

Fireflys aren't incorrectly colored. In theory, you need them for a correct rendering result. They are only a representation of a part of your light that is very difficult to sample for the renderer and therefore magnitudes more noisy than everything else.

The problem with them is that they represent a path that a ray is very improbable to travel on. For example, if you have a reflection or a refraction of a very small but strong light source, the probability that any sample will reflect/refract in a way that will hit this small light source is very small. If it hits it, however, the result shows that this should have a big effect on this part of the surface, so it samples a very bright pixel there.

That would be no problem if, for every pixel, a few samples would eventually follow this path and create a bright pixel there, but due to the small probability, only very few ever follow it and these pixels are then far too bright (because they found the way "too early" and are not yet averaged out by the other future samples that would all not find this way).
On other pixels, no sample will find the way at all (within the numer of samples you set in your render settings) and are therefore too dark (but only very little too dark, because the actual effect of that light on the surface would not be that big).

So if you would render, for example, 10,000 times as long as you do, the fireflies will eventually become more and weaker and, in the long term, become a normal, noise-free part of your light. It's just impossible to sample for that long.


Exclude sides when using the DataTransfer modifier How can the side faces be excluded when using the datatransfer modifier?

This is an addinitonal question following my previous question:
enter link description here

Choose appropriate name of UV layers in Data Transfer modifier settings, but for sides you can assign another material with different UVmap.


Face behind transparent material not visible I'm trying to model a sort of bottle that in Blender:

Like you see the base of the bottle has a different material and there's a face on the top of it. But when I export the model in Unity 3D, the object appears as if the face doesn't exist, and the object has a "hole":

What am I doing of wrong? how should I properly set the faces in a way that the bottle doesn't appear to have a "hole" in the bottom?

You aren't doing anything wrong, this is an inherent problem with Unity.  You are looking for a "per-surface" shader, but you are finding out that Unity out-of-the-box is "per-object" (i.e. doesn't show itself through transparency).

The answer to this question does an adequate job of summarizing your problem, and potential solutions:

http://answers.unity3d.com/questions/609021/how-to-fix-transparent-rendering-problem.html

There is nothing you can do on Blender's side.

As for the hole at the bottom:  try a "solidfy" modifier on the bottom.  This will make the base have thickness and will give both sides of the base drawable normals for Unity to pick up on.  Fail that, play with how the normals are calculated (Ctrl+n)


UV map contains massive distortion This is a specific issue with this model.

I have tried to UV unwrap it, yet it is not un-wraping neatly at all.
The object is a flat map looking rectangle with a few tears in it.
Obviously, I want it to unwrap in the straight and rectangular shape it is.
I want it to unfold completely flat, not distorted, hinging at the top of the map.

Things I have tried:

Using smart unwrap. This doesn't get the desired result.
Marking the interior loop on the edge except the top as a seam.
All the other unwrap options.

It might take a LITTLE extra work, but why don't you just:

select only the front faces
orient the view so you're looking directly at it -- i.e. View > front (Numpad 1)
From the unwrap options choose "Project from view" (in ortho mode)

This will give you as "flat" an unwrap as possible for just the faces you selected. Then, you can repeat these steps for the remaining five different views (back, left, right, top, bottom). As you do each side, you'll notice that only the UVs for the selected faces will be set -- so after each round, you may have to scale/rotate/translate and put them roughly in the position of the desired final layout. (For example, since you want it to be hinged at the top, when you do the back faces, you'll have to rotate the UVs 180 degrees clockwise and position them above the front faces.)

Once you get the scale and position for each side as close to one another as possible, you can select pairs of UVs (I use "B" so that I can box-select) and "W" to weld them together.

There might be a faster/better way to do it, but that's all I got.

Hope this helps.