Why is Loop Cut and Slide not in the CTRL+E/F menu?

You are correct, Loop Cut and Slide is available currently only as a shortcut (Ctrl-R) and in the Toolshelf, in the Mesh Tools panel, as stated here: https://www.blender.org/manual/modeling/meshes/editing/subdividing/loop_subdivide.html


Animation nodes bake to keyframes not working with polygon decomposed offsets

The Mesh Object Output node does not support keyframe baking. A list of nodes that support keyframe baking are listed below:

Cycles Material Output.
Object Attribute Output.
Object Data Path Output.
Object Matrix Output.
Object Transforms Output.
Object Visibility Output.
Shape Key Output.
Text Sequence output. (Text input is not keyframe-able)
Text Object Output. (Text input is not keyframe-able)
Curve Object Output. (Splines input is not keyframe-able)


Multiple KeyErrors leading to segfaults with custom properties

I might be mis-interpretting your question but, this works:

import bpy
import math

def update_rotate_cam(self, context):
    v = bpy.context.scene.rotCam
    bpy.data.objects['Camera'].rotation_euler.x = math.radians(v)

class SliderProperties(bpy.types.PropertyGroup):
    bpy.types.Scene.rotCam = bpy.props.FloatProperty(
        name="Rotate Camera",
        description="Rotate the camera with the slider",
        default=0,
        min=0,
        max=360,
        update=update_rotate_cam,
    )

class EditStuff(bpy.types.Panel):
    bl_label = "Edit"
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOLS"
    bl_context = "objectmode"

    def draw(self, context):
        layout = self.layout
        layout.prop(bpy.context.scene, "rotCam")

def register():
    bpy.utils.register_module(__name__)

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

if __name__ == "__main__":
    register()

In python a safe way to access items using a key is often done this way:

# returns None if key isn't found
v = some_collection.get(key_name)

# or provide the fallback value if not found
v = some_collection.get(key_name, fallback)


Objects using Nurbs Curve disappear in game engine

I kinda figured out the problem. I had to select the Nurbs Path and then click on
Object --> Apply --> Make Duplicates Real in the bottom menu of 3D view.


Looking for Blender source code of version 2.79.7

The source code of blender is available in a git repository, as documented in the blender wiki, which explains how to build the code for your operating system:

  git.blender.org/blender.git

There is also a mirror of the code repository on github: https://github.com/blender/blender

The version tags may be used to navigate through history and pull the desired version.


Some faces won't render so what it means is that you propably have Backface culling activated(means that only the faces in the direction of the normals are getting rendered).

Select the object whose faces won't appear.

Then go into edit mode by pressing tab.

In the "N" panel find the mesh display and under "Normals" select faces (the 3rd icon).

Blue lines (these segments are called Normals) are gonna come out of the faces of your object. The faces will be rendered from the side these blue lines go to. So if the faces that won't render have their blue lines going inside, it means this is your problem.

What you should do to fix this is:

press ctrl+N (with the faces still selected) and then in the "T" panel the "Make normals consistent" option is gonna appear with an unchecked box. Check it and it should be fine. This is the manual way in case of selecting all faces and pressing ctrl+N won't fix your problem.

p.s. if you want your plane to render both ways, deactivate backface culling in the "N" panel below shading mode.


Subdivision Surface shrinking / not displaying as following UV sphere properly

Figured it out, I needed to check "Adjust edit cage to modifier result"


Jittery physics trying to get a tube to roll in 2.8

I find if I turn these settings up and turn sensitivity,Margin to 0 I get good results in similar simulations.


Recommended:

png: Great image quality, alpha support. File size is a bit large. Best overall. Compression hardly noticeable. also supports
tga: Popular in game engines. Good quality, alpha channel. Support for lossless compression.
hdr: 32 bit color depth. Use for environments maps only
exr: 32 bit color depth. Use it for rendering out images from blender that you plan on compositing later. Or for large textures that actually have the appropriate color information.
jpeg/jpg: Small file size, needs to use good compression to no like bad.

NOT Recommended:

gif: png was created to replace gif
bmp: Huge file sizes


How to set up a color palette in Blender?

I found an answer: Create a 5x5 pixel image, and fill each pixel with a color you want to use.
Then open the shader editor.
Then, Shift+A, S for search, then type image texture.
Connect the image texture 'color' output to the 'base color' input of the Principled BSDF node.
Then, open the UV editor, and in the dropdown select your palette image.
Scroll up to zoom in to your image.
Then, tab into edit mode on your object, hover over the UV editor, then press A, S, 0.
Now, your faces should be tiny in the UV editor.
When you want to change the color of a face or multiple faces, you can select any faces in the 3D view, hover over the UV editor, and press 'G' to grab the faces and move them onto any of the colors in your palette.
Source


How to avoid terminator artifacts while still using smooth shading and the new pointiness attribute?

Yes
You can use autosmooth (added in 2.71) instead of edge split:

It works exactly like edge split, but without actually splitting the edge.


shortcut to show a single channel (solo mode) in the graph editor ?

You can select the channel and press Shift+H to "Hide Unselected Curves". This option is also found in the Channel> Hide Unselected Curves menu in the graph editor.

You can then press Alt+H to "Reveal Curves" to bring the hidden ones back.


I would suggest using the Material modifier for the freestyle edges.

Apply different materials to the object for the parts you want to color.

To control a property, use the Material modifier and select the material property.

Select the Freestyle Line color as you wish. I'll use the Diffuse Red channel to control the thickness and the Diffuse Blue channel to control the Opacity.

Note that the color channels can have any float value.

The green material has a Priority of 1.


Moving with "Right Mouse Button+WASD" while Editing

As far as I'm aware, the closest thing Blender natively has for that style of navigation is the Shift+` thing that you mentioned.  It seems that walk/fly navigation is better for navigating through scenes like you would need to do a lot in a game engine whereas turntable navigation (like what Blender or Maya have) is more useful for modeling or animation, which is probably why Blender's walk/fly mode isn't as good as Unreal's.
There are a few other navigation options that might work for you, but ultimately, the best option is to just get used to Blender's navigation.  So, I'll first explain some options that can help make Blender's navigation more (or less) natural (depending on who you are), and then I'll gives some alternative options that you might want to explore.
Blender Navigation Options
You can change the Blender navigation settings by going into Edit -> Preferences and then clicking on the "Navigation" tab.

Orbit & Pan
Most likely, you'll want to keep the orbit method on "Turntable" rather than "Trackball," but you could try out both options.  Basically, Turntable keeps the objects from getting rotated sideways whereas Trackball lets you control each axis of rotation.  Beyond that, it's kind of hard to explain, and I don't know how to record GIFFs, so you can just try it out yourself.
Although it's disabled by default, I like the "Orbit Around Selection" option.  That way, if you have a large scene, you don't have to fumble around with Shift+ to what point you want to orbit around.  Instead, it will just rotate around the selected object.  The disadvantage with this setting is that if your selected object is a really large object such as the ground or a room, it rotates around the origin point of that object, so it might still be a bit confusing if you have that object selected.
The "Auto Perspective" option just automatically  switches the view to orthographic view when switching to left/right, top/bottom, and front/back views.
The "Auto Depth" option is also pretty useful.  There can be times when zooming just becomes painfully slow because the way zoom works is by zooming onto a particular point, and it gets slower as you get closer to that point.  If the zoom focus point is somewhere between the viewport camera and the object you're trying to zoom into, zooming will feel painfully slow.  The only way to fix it is by using Shift+` to get closer to the object you want to zoom in to and thus change the focus point of the zooming... or just check this box so that it finds out how far the object under your mouse point is and just uses that as the zoom point.
Zoom
Most of the zoom settings you'll probably want to keep the same.  Probably the potentially most useful option in this section will be the "Zoom to Mouse Position" option, but I personally don't like it.
Other Tips
Blender's navigation is best when you're not trying to navigate around a room or anything.  It can be helpful to hide large objects such as buildings when working on smaller objects such as furniture.  Then, to place the furniture in the buildings, you can use the walk/fly navigation to move your view and then place the furniture.
Other Navigation Options
3DConnexion Space Mouse
I was going through a faze where I was really into Blender, and my birthday was coming up, so I decided to get the 3DConnexion Space Mouse for $130.  In Blender 2.8, there are two modes you can use with the space mouse, a fly/walk (free) mode or an orbit mode which the mouse was originally designed for.  In the fly/walk mode, it feels like you're holding the joystick to a space ship or something and can push the vessel through the scene.  In the orbit mode, it feels like your holding the actual object itself instead of the joystick and are rotating it directly... at least it would if I ever took the time to use it enough to get more used to it.
The settings for the space mouse are found in the Preferences under the Input tab and the NDOF expandable section.

The space mouse works great, especially if you're doing something like painting or sculpting with a pen, but there are two major disadvantages to it.  First, it cost $130, and honestly, it's probably not worth that much unless you're really into 3D design... or if you're really really really really curious about it and can't get sleep at night thinking about what it would be like...
The second disadvantage is that it takes away one of your hands.  Blender is designed for one hand on the keyboard and another on the mouse.  The most practical way to use the space mouse is with your right hand on your regular mouse and your left hand on the space mouse.  However, you then have to let go of one of your mouses to hit the shortcuts.  Granted, there are programmable buttons on the mouse that can open radial menus that hit various shortcuts, also Blender 2.8 doesn't depend on shortcuts as much as Blender 2.7, but it still can be a bit impractical in my opinion.
Unreal Engine Navigation Mode Keymapping
I saved this for last because I'm not sure how or even if it will work in Blender 2.8, but I found this YouTube video that talks about how to set up Unreal Engine navigation using this page from developer.blender.org  Again, I haven't tested it out, but it might be just what you're looking for (or it might not work at all)


How do i select similar sides of a face loop

Choose the face with edge loop select Alt + LMB:

Click the side you want them to propagate, ideally on the edge (the red circle position).

Sometime it won't propagate correctly, the you might need to switch between face and edge select mode until one is working correclty. If none of them work, then their must be some topology issue that cannot treat those face as a loop (eg. got a diverse face in middle)


Problems with automatic weights when rigging

It looks like you have 5 pieces rather than 4.  Include both head pieces with parenting to the bone.


Mesh issues after using boolean modifier

I downloaded the .blend file, and it seems you just need to recalculate the normals on the areas carved out by the boolean modifier. There's also a stray edge near the base of the anvil that's creating some ugly topology. Remove that stray edge and recalculate the normals and everything should be good to go!


Start with a cube, enable the measurement overlay so that you can see the dimensions of the object.

Scale the object to the size you need.


How to add an image texture to a single face?

The image node must be connected
You create an image node but don't connect it to anything. A node needs to ultimately flow into the output node to have an effect. You need to connect the image node's Color socket to the Principled node's Base Color socket. You can do that with (I also moved the node so its easier to see)
bsdf = mat.node_tree.nodes["Principled BSDF"]
texImage = mat.node_tree.nodes.new('ShaderNodeTexImage')
texImage.image = bpy.data.images.load("S:\\roadsigns\\124_67.png")
texImage.location = -300, 120
mat.node_tree.links.new(bsdf.inputs['Base Color'], texImage.outputs['Color'])

Your shader will now look like

The poly's material_index is an index into the object's material slots
You have
bm.faces[3].material_index = ob.data.materials["matsign"].pass_index

The pass_index has nothing to do with this and this only works by coincidence because it's 0 by default.
The material_index is an index into the objects' material slots. So since here
if ob.data.materials:
    ob.data.materials[0] = mat
else:
    ob.data.materials.append(mat)

you are ensuring the material is in the 0th slot, all polys with material_index 0 will use that material.
And since 0 is the default value for material_index, all polys will use that material without you having to do anything.


Reusing animation at specific locations and timelines

I have made a loop that provides the on and off logic for the lightning. The float list provides the frame numbers for the on then the off then the on then the off etc..

For moving around the lightning I used an empty and  moved it about and inserted some key frames into the timeline. "Vector from value" node controls the amplitude of the randomnes. The "vector math multiply" node after the "vector wiggle" node makes sure the randomness only affects the x and y coordinates.

If you want to append this to another project append the bezier curve as well as the node tree and add an empty. And select them in the appropiate nodes. Chris P who did the tutorial has tutorial called "#5 - Audio + Peak-Meter - Animation Nodes in Blender 2.8 - Tutorial Series" for learning how to use audio files to alter the animation.
I have added a blendfile done in Blender 2.93 beta and animation nodes + extra nodes 2.2.2
Also you might want to append your shader tree to the file as it looks different to mine from the gif

For this blend I have disconnected the on off logic loop recconected the number of bolts node. Deleted thekeyframes for the empty.

I have added the sound spectrum node here to give you some ideas. You add your path to your mp3,wav,flac etc file via the sound input node. You may have to fiddle with the values like amplitude etc in the sound spectrum node depending on the dynamics of your music. Doc for Sound spectrum node

I've never used the sound spectrum node before, but I hope this gives you some ideas. I have just thought that you if you are doing visuals to repetitive music like house etc you can get the frames per a bar by mutiplying the bpm of your tune by the frames per second of the render then dividing by 60. Then divide by 4 to get frames per a beat.
Here is an answer to a question about the sound spectrum node that will help you familiarise yourself with it.
sound spectrum


you can add anything to your pop-up

you should check this thread

here a little example:

import bpy

def draw(self, context):

    ob = context.object
    rows=4

    layout = self.layout
    row = layout.row(align=True)

    row.operator("object.material_slot_add", icon='ZOOMIN', text="Add slot")

    row.template_list("MATERIAL_UL_matslots", "", ob, "material_slots", ob, "active_material_index", rows=rows)

bpy.context.window_manager.popup_menu(draw, title="Material", icon='INFO')


zoom to an object without using the NumPad

You could use the menu item 3D view header View > View Selected, that is the same command as pressing NumPad .

AltF will center the view depth over whatever the mouse hovering on.

Home will zoom and center the view so all objects are in view.

Possibly the best solution for you is in the User Preferences under the Interface tab then check the two boxes for Auto Depth and Rotate Around Selection. That will make the viewport rotate around whatever object(s) is selected.

Also in the user preferences under the Input tab you could try enabling the Emulate NumPad check box. That will make the regular 1-0 keys act like the NumPad.


How to make generate noise texture interact with displacement map

Using generated textures with the Displacement Modifier in blender is kind of outdated, because it relies on the old blender internal textures. You can't mix these textures using Cycles nodes and therefore also won't be able to bake them using Cycles. While there probably is a way of achieving this switching over to blender internal i would recommend you not to use Texture Displacement Modifier but rather to do it the native Cycles way:

The Tools:

Cycles "Displacement" output socket

By default it affects the normals and the angle based shading math and (not the geometry itself like the Displacement Modifier). So it's an efficient way to fake roughness/displacement similar to using a normal map.
Because the floor is very flat and even you probably won't see great difference to real geometry displacement like in your screenshot.

Experimental: Cycles Microdisplacements + Adaptive Subdivision Modifier

If real geometry displacement is needed Cycles offers a new (still experimental) technique introducing real geometry (micro-)displacement. It is very handy and memory/performance efficient because the actual subdivision and displacement only happens in the renderengine while the object stays lowpoly while editing. This video by Andrew Price gives a good overview.
Here is how to enable it in three steps:

Enable Experimental Cycles in the Render-Tab:

Switch to Geometry Displacement in the objects material:

Add Subdivision Modifier "Simple" and "Adaptive": A dicing scale of 1 means the mesh gets subdivided pixeldense - there will be at least one "sub-vertex" per rendered pixel.

The Setup:

Option 1: Using one object/material

So this is how you could setup one cycles material for both concrete and puddles:

Option 2: Two separate objects/materials

The setup above has the disadvantage that if the water is semitransparent the concrete shining through doesn't have displacement.
Another solution would be to add a second plane below the concrete that serves as the water level and use the puddles mask to dig holes in the concrete material. This requires micro-displacement. In this screen I have exaggerated the effect for demonstration purpose:

Also check out the other cycles procedural texture nodes. As an alternative you could also create the holes using sculpt mode...


You can change the font used for a text object under the Object Data properties panel.

Here you can specify different fonts for standard, bold, and italics; as well as various other typesetting parameters.  You can also define a set of objects as a custom font by naming them something like fontName_a, fontName_b, etc. and use fontName_ as the Object Font.

In order to find fonts easily I have bookmarked my system's fonts folder (C:\Windows\Fonts\ on Windows, /Library/Fonts on macOS) in Blender's file browser so I can quickly add new fonts.  Note: as Chebhou explains in his answer you can also set the default directory for when browsing for fonts in the user preferences.

Note that as of Blender 2.76, you the file browser's thumbnail display mode now works for previewing fonts.


you have to parent the armature to the mesh, in order for the mesh to follow the bones.

set the 3D view in wireframe mode (Z key): it makes easier to see more than one object in the viewport
create the mesh (start with something simple, but the more vertices and subdivisions it has, the better will deform), leave it object mode
create the armature with all bones needed, leave it object mode
select the mesh and then shift-select the armature: you should then
have the mesh selected with a dark orange outline and the armature
with a lighter orange outline
press ctrl+P key and the armature parent menu shows up
for now, select armature deform -> with automatic weights
now select only the armature, and go to pose mode
select the last bone (the last in the chain) and try rotating it,
the mesh should follow. If you rotate the first bone in the chain all
other bones will follow, and so all the mesh will follow, too.
if ALL the mesh follows the single last bone, maybe the mesh
wasn't subdivided enough when you parented it. no problem:
to restart the parenting, select only the mesh (object mode) and
 press alt+P key, and choose "clear parent". then, subdivide more
 the mesh to make it more easy to deform following the single bones.
 When done, go back to point 4)

Using a multi-bone armature, each bone can be parented to specific mesh vertices, so that each bone influences the movement of the related vertices. The video you linked shows this at this point: https://youtu.be/n0VspDUOErE?t=421

The relation between a bone and mesh vertices is not exclusive of that bone, though. Other bones could influence at least part of the same vertices, if you decide so. Each bone can be set to influence a set of vertices with a variable degree of "weight". When more than one bone moves, all the influenced vertices are moved following the overall weights attributed to all parented bones of the armature.

This is a process usually known as "skinning", you can learn how here: http://www.blender.org/manual/rigging/skinning/obdata.html


Is there a way to limit the number of CPU Cores used for physics baking?

There isn't really a straight forward answer for this, it will depend on what simulation you want to bake and what OS you are using.

To use multiple cpus, some parts of blender use openmp and others use pthreads.

For simulations using openMP, setting the OMP_NUM_THREADS environment variable should limit the cpus used.

For simulations using pthreads, adjusting system limits should be able to limit the cpus or cpu time used. The way to do this varies between most operating systems, for linux there are /proc/... settings or the bash builtin ulimit command.

Another approach available on most *nix systems is the nice and renice commands to adjust the cpu priority so that other procs are given cpu time before blender.


Material only applies to some of the Mesh

The rest of the body is part of a different material slot, the last one, in fact.

You can either:

Assign the material to both texture slots
Merge the texture slots to the same slot

To merge:

Go to edit mode
Go to the materials tab
Click the last material slot
Click the "Select" Button under the material slot listings
Click The first material slot (the one currently with the material)
Click "Select" again
Click "Assign"

To Assign:

Go to edit mode
Go to the materials tab
Click the last material slot
Click the color globe (Next to "+ New")
Choose the material


Python 2.8 - transform/resize UV map instead of object

Use the right context

The issue here, as often with operators, is context.  .  If Transfrom resize  is run in the context of the UV editor it resizes the selected UVs, if run in the dopesheet scales the selected keyframes, ..., otherwise (or if run from 3dview) it defaults back to the object or the mesh.

Depending on how you are going to invoke your code, may need to override the context such that the operator "thinks" it was invoked in, in this case,  the UV area.  (Like pressing a button in that area)

Some python console test code

Areas in my current screen, area 2 is the image editor.

>>> for i, a in enumerate(C.screen.areas):
...     i, a.type
...
(0, 'PROPERTIES')
(1, 'OUTLINER')
(2, 'IMAGE_EDITOR')
(3, 'VIEW_3D')
(4, 'CONSOLE')

>>> ie = C.screen.areas[2]

The mesh is in edit mode with all faces selected. Running the operator like so scales my mesh.

>>> bpy.ops.transform.resize(value=(1, 2, 1))
{'FINISHED'}

If I override context.area such that it is the image editor from above, it scales the UV.

>>> bpy.ops.transform.resize({"area" : ie}, value=(1, 2, 1))
{'FINISHED'}

Related

poll() failed, context incorrect? - Example: bpy.ops.view3d.background_image_add()

Without the operator

From the text editor template templates > python > Operator mesh UV can scale the uv coordinates directly.

    uv_layer = bm.loops.layers.uv.verify()

    # adjust uv coordinates

    S = Matrix.Diagonal((1, 2)) # scale matrix

    for face in bm.faces:
        for loop in face.loops:
            loop_uv = loop[uv_layer]
            # use matrix to scale uv by 2 in y
            loop_uv.uv @= S


GPU Rendering but it appears CPU is being used

You need to enable GPU rendering in the properties panel.

Also, make sure you're using cycles, not blender internal.


When using "Bake from Multires", the resulting normal map has odd pattern along topology

I just had this issue. I know it's months late but I was able to figure it out. In the multires modifier there's an "apply base" option that conforms the base to match the sculpt. This fixed the issue for me.


Can custom nodes be written for the compositor?

While it is possible to define a pynode that can be added to existing node trees, they are considered unsupported and have limited functionality - mostly they don't get an event to automatically update. I don't think anything has changed since this previous answer.

The two main pynode projects are animation nodes and sverchok - both of these projects have implemented bpy.app.handlers that trigger an update of their node trees for various events. You will need to experiment to see if you are able to get some results using one of the render related handlers to update your node, but I don't think that any of the handlers fall between rendering and compositing.

Depending on your needs, you may be able to use a script that renders a frame, updates your node to get the result and then save the render result or viewer node output.

You may also want to try manipulating the render after it is completed instead of during compositing.

bpy.ops.render.render()
img = bpy.data.images['Viewer Node']
w = img.size[0]
h = img.size[1]
arr = np.array(img.pixels[:])
arr = arr.reshape((w,h,4))


The point is to have the good amount of vertices so that the two can fit easily.

If the cylinder part exposes from top to bottom 9 vertices (ring of 16) then the torus should have 16 minor segments.
Once done,
Boolean approach
Place the two shapes like so, so that they overlap:

Add a boolean union modifier to the torus using the cylinder as object:

Apply it. Cuts should be good but you'll have unwanted vertices:

So delete them.
The result should look good but warning check for doubles and/or overlapping faces (there will be some) and remove them. All should be quad after that.
Knife project approach
Place the cylinder along the torus:

Use a circle of 16 vertices too at the place of the last torus ring:

Keep the circle selected and the cylinder active, in ortho view (like the picture above) and enter edit mode.
Choose the menu "mesh/knife project". That will make this cut on the cylinder:

Remove these edges and faces:

Join the cylinder and the torus, enter edit mode, select these parts as below and use the menu "edge/bridge edge loops".

So that the two parts are now connected.
Common part
Now some clean up:
Make the opposite part quad using a knife cut:

Add some bevel using loop cuts CtrlR on these 3 parts:


Do you have subsurf on or something in the list before mirroring?
Sort of has that look.

Otherwise can, with clipping on for the mirror, drag verts to center.


multiple copys of character with rig linked in the same file

This is something Blender can't help you with yet.

Solution is to have duplicates for each instance you wish to link:

objects can share mesh data, so update to one mesh changes all
armatures have to be independent objects

It is smart to have scripts to update all other armatures or modifiers when you do changes to one of those so it's not that time consuming.


Are the technical details of Filmic available?

Blender is a package of view transforms created to convert Scene-Referred image data into Display-Referred values, using a large dynamic range and de-saturating the highlights so that they resemble images created on a film camera.

Refer to: Render with a wider dynamic range in cycles to produce photorealistic looking images

Blender's Color management is implemented through OpenColorIO (https://opencolorio.org/). That might be the place to start a journey that will take you down the rabbit hole of color.

The file with the rules used for color managenment can be found in
/blender/(blender version)/datafiles/colormanagement/config.ocio.

The definitions and stanzas on such config.ocio file are written to be interpreted by OCIO and determine how data is transformed, and if LUTs are used.

LUTs used for transformations are contained in the luts and views sub-folders within the color management folder.

How to make 3D LUTs and use them in Blender?

To use filmic, you would need an app that is OCIO aware. (Nuke, Mari, AffinityPhoto, Krita and others already use it, so there might be no need to re-invent the wheel).

Image data must first be converted to use Rec709/sRGB primaries, transformed to linear values, and then scaled to be real scene-referred data (or at least to fall within the range used by filmic).

If the image is generated on a camera, the de-saturation and conversion to display referred might have already taken place, so there might be nothing to be gained by using filmic, even when shooting raw. Filmic was intended for CG rendered imagery. It was meant to overcome the limitations of using sRGB transforms and to solve the non-existing cross-talk between color channels during rendering. Camera sensors and filters work in a completely different way to create images. The filters over the sensor, that define color, allow for some overlap of different frequencies, making the color saturation at the bright parts of the image more "film like".

Other kinds of transformations might be more useful than "filmic" for in-camera generated images .


Starting and Stopping Rigid Body Simulations

Under rigid body tools on the toolshelf there should be a "Bake to keyframes" option. You can run your simulation, and then bake it all to keyframes.

Then in the dopesheet, you can move these keyframes later in time starting from when you want to animate the camera.

E.g.

Simulate 20 frames
Move keys on frames 11 to 20 to frames 16-25
Animate camera between frames 11 and 16


Duplicate object suffix (.nnn) to be put elsewhere (prefix maybe?)

When duplicating Cube, it will create Cube.001, there is no feature that i'm aware of to allow you to specify the desired duplicate name or convention.

It is possible to rename using the reference to the object after  duplication, because the duplicate becomes the active_object

# with one object selected.
bpy.ops.object.duplicate(linked=False, mode='DUMMY')
obj = bpy.context.scene.active_object
obj.name = desired_name

or a mass rename if that makes sense

for obj in bpy.data.objects:
    if obj.type == 'MESH':
       if '.' in obj.name:
          # assuming it only has one period in the name.
          basename, postfix = obj.name.split('.')
          obj.name = postfix + '.' + basename


how to apply a boolean modifier to a collection

I think the best way to achieve something like what you are trying to do, is using the Bool Tool add-on.
Activate the Bool Tool add-on (ships with Belender) by checking its box in the Preferences window.
In the 3D Viewport press N, click the Edit tab and click on Bool Tool to extend the menu, if it isn't already.
Then right click the collection in the Outliner window and choose Select Objects.
In the 3D Viewport Shift select the target object (so the collection objects and the target object are selected), and click on the desired boolean operation in the Bool Tool menu. For instance: Brush Boolen Difference.


understanding the simple deform modifier (TAPER - FACTOR)

If you look at the source code of the simple deform modifier (1), the Taper transformation is done as follows. I assume that you selected the Z-axis as the deform axis.

scale = z * factor;
new_x = x + x * scale;
new_y = y + y * scale;
new_z = z;

So, every vertex of the object is scaled for the X and Y axis (unless, you have them locked). The z-coordinate remains untouched; maybe also the Y-coordinate, if you have locked it. You were right that the factor is mixed with other variables. As you can see, the factor is multiplied by the z coordinate. The further away a vertex is from the origin (as you suspected), the larger the scaling factor. At origin, z = 0, so the scaling is 0. At the top, z=1 (I assume!), so the scaling = factor. All vertices between origin and top are scaled between 0 and factor.

In the attached picture, I applied the taper modifier only to the group of top-right vertices. The origin of the cube is at the bottom. The factor is -1.000.

If the factor is -1.5, then

new_x = 1 + 1 * (1 * -1.5)= -0.5;

If you want the top-right vertices to collapse with the top-left vertices, the factor should be - 2; because

new_x = 1 + 1 * (1 * -2)= -1;

which is the x-location of the top-left vertices.


Baking textures on headless machine (batch baking)

Yes, the bake operator can run in background mode, for both Blender-Internal and Cycles Baking.
A very simple script could look like this:
Bake Once
bake.py:
 import bpy

 # Like pressing the 'Bake' button in Blender
 # this will remain locked until the bake is complete.
 bpy.ops.object.bake(type='COMBINED')

 # You might want to inspect the materials and extract images
 # but for this example, simply select by name
 image = bpy.data.images["Untitled"]

 # save-as by setting the target path and saving
 image.file_format = 'PNG'
 image.filepath_raw = "//my_new_bake.png"
 image.save()

Execute the bake with:
 blender --background bake_test.blend --python bake.py

For batch jobs you would have to change the selection before calling bpy.ops.object.bake each time.

Bake Everything
This next example is more comprehensive, and uses the is_dirty image flag to detect which images to save, giving each image a _bake suffix.
bake_all.py:
# Blender v2.8x +
import bpy
import os

scene = bpy.context.scene
for obj in scene.objects:
    obj.select_set(False)

for obj in scene.objects:
    if obj.type != 'MESH':
        continue

    bpy.context.view_layer.objects.active = obj
    obj.select_set(True)

    bpy.ops.object.bake(type='COMBINED')
    obj.select_set(False)

# save all baked images
for image in bpy.data.images:
    if image.is_dirty:
        # foo.png -> foo_bake.png
        filepath, filepath_ext = os.path.splitext(image.filepath_raw)
        image.filepath_raw = filepath + "_bake" + filepath_ext
        image.save()

Execute the bake with:
 blender --background bake_test.blend --python bake_all.py

Further ideas for batch baking which might be useful.

Automate baking an entire game-level:
loop over each group and bake its objects (or each group matching a naming convention, ending with .bake for example)

Automate baking existing models:
A utility script which loads in models from an external format (OBJ, FBX, 3DS... etc), unwrap, assign images, bake and exports.

Automate low-poly mesh creation with the decimate modifier, and bake normal maps (high->low poly meshes).

Bake textures over time (create a baked image sequence).

Create a utility which runs back in a background process so you can keep on using Blender.


What's the simplest way to wrap extruded text around a cylinder?

Try using a Curve modifier.

Add curve circle (ShiftA> Curve Circle) and set the radius as desired in the Redo menu (at the bottom of the Tool Shelf):

Add the text object (ShiftA> Text) and type in your text (Tab> Edit mode):

Add a curve modifier to the text object in Properties > Modifiers, and set the Object to be your curve circle:

Rotate the text object 90 degrees on the X axis (RX90) and then scale by -1 again on the X (SX-1):

Increase the Extrude value in Properties > Text > Geometry to give the text some thickness:

Optionally increase the Depth and Resolution values for Bevel to round the edges a bit.

Result:


Best way to create Godzilla's Atomic Breath (Cycles)?

One of the method may be using some Blur (Fast Gausian) nodes in the compositor.

First check the Transparent checkbox in the Film panel of the Render header.

Add a cylinder, subdivide and shape it. Give it the Emission shader. Render image (F12). Go to compositor and add some Blur (Fast Gaussian) nodes with the different bluring values. Use Alpha Over nodes to mix them. Use Color node to color the beam as you like (in my case I used it to color the glow blue).

Use Render Layers (How to render a very complex scene using Render Layers?) to add a background or your scene with Godzilla in it to the final render.

EDIT: You can add two cylinders and place them in two different render layers. Each cylinder may have its own deforming shapekeys to affect the beam transformations. You may then parent both cylinders to the deforming bones. Here's the animated result. I know it isn't exactly the same as in the movie you provided but I guess it's a good start for experiments.


One way to approach this is with proportional editing:

Press O to enable it (or select Enabled from the drop down in the header)
Select the tip of the guard and press G. Then use the mouse wheel to adjust radius as you translate the tip.


How to select a group of vertices in edit mode?

You can select (or deselect) the faces of a Vertex group by pressing Select with the desired vertex group selected in Properties > Object Data > Vertex groups:

To select all the faces of an Object press A or 3D view > Header > Select > (De)select all.


Generate Rig error: key "ORG-nose" not found'

Found the problem.

The face bones were not all removed as I saw one inside the big bone when I moved it.

Removing that small isolated bone solved the problem.


Making holes in an object using an image as a reference

Assuming Cycles (and using your first sample image), you can achieve this effect using a volumetric material to render the insides of any 'holes' in the mesh :

This is achieved with the following material :

The 'surface' is a mix between a Transparent shader and a Diffuse shader (or whatever surface shader you want to use) - using the image as the mix factor. Unfortunately you cannot use UV coordinates for this since the coordinates need to also be used for the volumetric (and UVs don't support points below the surface - in my case I have used Object coordinates, passed through a Mapping nodes to allow them to be rotated and scales as desired.

For the 'internal' structure, the same image is used to affect the density of the volumetric - for the 'spaces' the density will be zero (ie, empty space) while for the 'solid' sections the density needs to be high so as to appear solid. This can be achieved using Maths nodes (in this case, Subtract from 1 (as the 'black' in the image was to be 'solid', the white 'trasparent') and then multiply by 15 for the 'high' density - even higher values will make the 'internal' substance less translucent). The Volume Scatter and Volume Absorption setup is the same as would be used for smoke (just higher density than would be typical for smoke).

To increase the quality of the volumetric you may need to decrease the 'step' size in the volumetric properties (although this will slow down the render). Also, don't forget to set Light Paths Volume scattering (in Render properties) to more than 0 (eg, 4 or 5 should be sufficient).


Blender Texture Paint applying to incorrect object

Go to the Slots tab of the tool shelf in texture paint mode.
Now there are two Painting Modes here Material, which I will talk about first, and Image.

When set to Material (as in the image above), all Image Texture nodes in the selected material are displayed as Available Paint Slots. All you have to do is choose the correct "slot" or texture, and paint.

Note that the Image Texture node does not have to be connected to anything, and it does not even have to be the active node anymore. (yeah!)

Now when the Painting Mode is set to Image, materials no longer matter, only the images. The image field under Canvas Image, is where you select what image to paint on. If you don't have on, there is a button to create a new one.

Having said all that, your problem is that you are no painting on the image you think you are.
Just the way you describe how it show up on other objects meas that, you are painting on an image that some other object is using.
Check the painting Slots as I explained above.


How can I mirror an object relative to a chosen point, in 3D space?

Blender allows you to manipulate center points instead of the whole objects.

Set Manipulate Center Points, then mirror the objects: the geometry will not change.

CAVEAT: Since it will manipulate individual origins, you have to separate all the components of your model before mirroring.

If you want to "reverse" the order of the object, set Pivot Center to Bounding Box Center, then mirror the objects along the desired axis.

Shortcuts for these examples

Toggle Manipulate Center Points: Alt + ,

Set Pivot Center to Bounding Box Center : ,

Set Pivot Center to 3D Cursor : .

Mirror along X-Axis: Ctrl + M, X


When looking straight at a model, there must be visible curvature on the model for the normal map effect to be visible.

I've illustrated this using several cubes and a 3D Viewport Matcap Normals' surface.  The view is top-down orthographic.

The cube at the top-left is just a default cube with no bevel.  It is invisible to normal mapping.

The top-right cube has only a very small bevel and it is barely visible in contrast to the plane.

The two bottom cubes were beveled enough so that the curvature across the top and side surfaces is clearly visible.


How can I assign an action to an armature using Animation Nodes

Yes you can do it. But the main problem with your node setup is  that your using the second Object Attribute Output in wrong way. You haven´t passed any value to node. Therefore no paremeter can be assigned.


Using the UE4 mannequin for scale in Blender

In Blender you can input math operations instead of values. In your case select the mannequin followed by S 183/210 This will reduce the size to that you had in UE4.
Putting Scale X,Y and Z transform fields to 183/210 and hitting Enter works as well. Also, this is the way to use with i.a. modifiers and every field.


Is there any paper or balloon simulation?

A very simple way is to set the scene gravity to a positive value (by default is the usual -9.81), and set a simulation for you baloon...

then (eg) a rigid body, but also cloth works (you just inverted the "falling" direction, and/or acceleration):

then, starting the animation with ALTA your ballon will fly upwards...

You could also add an empty with wind effect, if strong enough will move your uplifting baloon along the wind direction...


How to unlink material from a mesh, with python script?

Unlink a Material

Remove the first material from the mesh.

import bpy
obj = bpy.context.object
obj.data.materials.pop(0, update_data=True)

Remove all materials.

import bpy
obj = bpy.context.object
obj.data.materials.clear()

Unlink Texface

This clears images for each face (active uv layer only)

import bpy
obj = bpy.context.object
for tf in obj.data.uv_textures.active.data:
    tf.image = None

This clears images for all UV layers

import bpy
obj = bpy.context.object
for texlay in obj.data.uv_textures:
    for tf in texlay.data:
        tf.image = None

Update: TexFace has been removed in Blender2.8


Positioning the pivot point in center in part of mesh

The reason "Origin to Center of Mass" (or "Origin to Geometry") does not work is because your center of mass in not in the same location. The two tiles with dirt, have most of the geometry much lower.

To set the origin in the seam place as the your all green first tile requires a 2 step process.

In edit mode, select the top 8 vertices of your tile. (Note that the pivot point can not be set to "3D Cursor" or "Active Element") Now press ShiftS > Cursor to Selected. That will move the 3D cursor to the location you want as the origin.

In object mode press CtlrAltShiftC > Origin to 3D Cursor.


For the object you have in the picture, you can add two displace modifiers with a noise or clouds texture. Set one to effect the Y direction and the other to effect the X direction. Make sure Space is set to global.

You might like the results better if you first made a flat, segmented  rectangle shape, then use a displace in only the x axis (Local Space this time), subdivide it, solidify it, and then use a curve modifier to modify the object like below. You can mess around with different displacement textures and amounts to get the look you're after.


How do I match the UV map with the image used as texture

you can manually reposition the vertices of the UV map so that it matches with the mesh.

Select a vertex, press L to select all of the linked vertices and use the regular tools to edit, grab, size, rotate, etc.

As an alternative you can export the UV map as image and use it as reference to position the image so that it matches the UVs in an image editing app, then re-import the image and it should match the geometry.


For its Domain, tweak the value for "Final Resolution", I have tried other values and it works fine (For some reason 300 didn't work on my computer too). Choose another values and bake the fluid simulation again.


Sometimes while importing an obj model, the uvs get messed up, which eliminates all simple answers. If not, there is an easy way.

import the model into Blender.
Switch from object mode, to texture paint mode.
Switch to textured view. (or material view, depending on how you like it and your circumstances.)

The most common error, besides the UVs being messed up, is the material not working in Blender. If you are simply texture painting, this is easy to fix.
Simply,

Add a material. (or click use nodes on the current one).
Load the texture into the material.

Now it should show up.

This same concept applies to most model types.
Here is an illustration using a .3ds model I got from www.archibase.net.
In this example, the uv map was already there how it was meant to be, I just needed to adjust the material. If I would have re-unwrapped, that would have ruined the intended position of the texture.


Rendering as an image makes Blender re-render three times

You have multiple View Layers with Use for Rendering set to true in the View Layer Properties tab.

Turn this little guy off.


EEVEE, just like Cycles. has Samples. Directly turning incremental rendering off is not an option, but you can turn down the samples to the lowest value. This would give you a smiliar result.


This is called non-planar geometry.
Shading issues are typical for such faces.

To make it planar, just scale it along it's Normal to zero.


Moving GPencil frames in time with Python causes viewport issues

As Antonio Vasquez suggested me : "The frame number is not designed to be used in this way. The correct way to do this is to replace the strokes or replace the entire frame, but not just change the frame number. There are many things that happen under the hood and they cannot be changed as easily as it seems."
So here i am, trying to create a function moving frames by copying his strokes and points. As there are no stroke.copy() neither points.copy() methods, the function is longer than expected.
import bpy

def move_GPframe(layer, frame, frame_number):
    ### move Gpencil frames in a proper way
    #First check if there's already a frame at frame_number (and remove it)
    for _frame in layer.frames :
        if _frame.frame_number == frame_number :
            layer.frames.remove(_frame)

    #create destination frame
    new_frame = layer.frames.new(frame_number)
    for stroke in frame.strokes :
        #create strokes
        new_stroke = new_frame.strokes.new()
        for attr in dir(stroke):
            try :
                #copy attributes
                setattr(new_stroke, attr, getattr(stroke, attr))
            except AttributeError:
                pass

        #create points
        new_stroke.points.add(count = len(stroke.points))
        for i, point in enumerate(stroke.points) :
            new_point = new_stroke.points[i]
            for attr in dir(stroke):
                try :
                    #copy attributes
                    setattr(new_point, attr, getattr(point, attr))
                except AttributeError:
                    pass
    #remove source frame
    layer.frames.remove(frame)
    return new_frame

######

ob = bpy.context.object
gp_ob = ob.data.id_data

#it gets the frames at time 1 and 10
for layer in gp_ob.layers :
    for frame in layer.frames :
        if frame.frame_number == 1 :
            frame_1 = frame #should be layer.frames[0]
        if frame.frame_number == 10 :
            frame_10 = frame #should be layer.frames[1]

    ## old way to do :
    #frame_1.frame_number = 10
    #frame_10.frame_number = 1

    ## proper way :
    frame_1 = move_GPframe(layer, frame_1, 0)#need to move the frame_1 at time 0, or it will overwrite frame_10
    frame_10 = move_GPframe(layer, frame_1, 1)
    frame_1 = move_GPframe(layer, frame_1, 10)

I feel that it can be really simplified, but at least it works.
Any suggestions ?


How to prevent cuts between adjacent array copies in freestyle?

Generally, array segments will have edge loops between them even if you use the merge option. The merge essentially merges the vertices at the bridge between segments, but does not dissolve the edge loops generated by the segmentation.

To avoid seeing the edge loops with freestyle, you can limit the edges that are rendered by freestyle by marking those you want manually, then setting the freestyle to only render marked edges in:

To mark an edge, go to edit-mode, then select the edge, press CtrlE --> Mark Freestyle Edge.

To set freestyle to only render marked edges, go to the render layer settings in the options panel, then to the Freestyle Line Set settings, then uncheck everything except Edge Mark.

Alternative method

In this case (and similar cases), where you essentially have an object that simply needs to scale on a specific axis based on the dimensions of another object, you can use a driver instead of an array modifier.

To do this I added a driver to the beam's y scale property (In properties N panel, right click on y scale and then press "Manually create later (single)".

I then added a driver variable (single property type) that points to the wood beams array overall y dimenions (dimensions.y data path), and set the expression to be that variable's value divided by the original y dimensions of the metal beam object (2 in the example above).

This sets the scale so that the metal beam's y dimension fit the wood beam array's overall y dimension, and you have one seamless, "edgeloopless" metal beam that even looks smooth with freestyle renders.


hard self collision: make particles occupy space

one partial and approximate solution is to use the harmonic forces as a self-effect on the particle system. Here, "harmonic forces" means to turn the particles into a set of oscillators, connected by virtual springs. The rest distance is the distance we want to keep between objects.

The key point to note is that this now adds an attraction for particles spaced wider than the rest distance, and that it might lead to wobbling. The latter can be controlled with a high damping factor (at or close to 1 gives us "acyclic damping"). To control the former, judicious use of the maximum distance and the strength and power of the force field is necessary. The result can be further improved by use of charged particles (so they repulse each other) and maybe combine that with invisible, charged objects as external attractors.

Downside of this approach is that the self effect on particles is limited to two forces and that getting the right behaviour can be tricky and insidious.
But the largest shortcoming is that there seems to be no way to tie the rest distance to the actual size of the particles, which might vary randomly


Yes! You have to go to the render panel, then under the render panel and click on the audio icon (next to render and animation).

Then you can choose different audio outputs and settings (on the left at the bottom of the screen under the tab mixdown).

And then you push the button mixdown (at the top right).


Python: list is populating with wrong order?

The question is not a Blender question, but anyway...
So use append(currentBone) instead of insert(index, currentBone), to have [IKB3, IKB2, IKB1].
Or use insert(0, currentBone) instead of insert(index, currentBone) to have [IKB1, IKB2, IKB3].
But concerning "why" your usage of insert does not work:
Step1:
bone_list is empty and index is 2.
So bone_list.insert(2, IKB3) gives bone_list = [IKB3]. Explanation: Python tolerates that even if there is no element at position 2.
And index becomes 1.
Step2:
bone_list.insert(1, IKB2) gives bone_list = [IKB3, IKB2]. Explanation: still no element at position 1 (IKB3 is at position 0), so IKB2 is added at the end (which is the closest position to '1').
And index becomes 0.
Step3:
bone_list.insert(0, IKB1) gives bone_list = [IKB1, IKB3, IKB2]. Explanation: there is now an element at 0, so as expected Python add IKB1 before it.


Emission surface act like a down area light -- Not 360 degree

The way a surface responds to light depends on the direction that particular point on the surface is facing. The direction of a point on the surface is determined by the 'Normal' of that surface. The Normal can be determined either by the actual surface geometry or this can be overridden by your Normal Map.
In your particular case, the way the surface seems to be reacting to the light, the way the surface seems to be reacting to the light indicates that the normal is generally pointing 'up' and to the 'right' - ie, it's only responding to light from that direction. As this is different to the apparent geometry, this indicates a problem with the normal - especially since the problem goes away when rendering with a different wall texture.
There is a problem either with your Normal Map itself or with how you are connecting the Normal Map to your material's nodes (impossible to say without seeing either the normal map or the nodes).


That is because the vertices you are located on more than one axes.
All the vertices have to be on a single axis.


How do i write a script that modify every material in the scene by creating and connecting a "UV map" node to every texture file node?

This script will iterate over all the materials in your scene, and add a texture mapping node to each material that has an image texture node. The mapping node's UV output applies the default UV map of the object using the material, so it should achieve the same result as using a UV texture node (that uses the default UV map). The script will then connect the mapping node's UV output to the image texture's input and that should do the trick.

Disclaimer: This script assumes you are using Cycles and will probably only work in with Cycles materials.

import bpy

M = bpy.data.materials

for m in M:
    t = m.node_tree

    # Get all image texture nodes in each material's node tree's
    img_textures = [ n for n in t.nodes if n.type == 'TEX_IMAGE' ]
    if len( img_textures ): # If material has at least 1 image texture
        imgTex = img_textures[0] # Get the first (and probably only) image texture node in list

        # Create a new Mapping node (its UV output uses the default UV map so it's simpler than the UV map node)
        texMap = t.nodes.new('ShaderNodeTexCoord')

        # Link the texture mapping node to the image texture node
        t.links.new( imgTex.inputs[0], texMap.outputs['UV'] )


Cycles is using Path-tracing-Tile instead of Sample

You are confusing terms.
The number of samples is not the number of tiles being rendered.

8 samples will give you a very noisy image.

Read: How to avoid noisy renders in Cycles?

What you see as orange squares are tiles being rendered. By default blender doesn't render the whole image, but it splits it in tiles to maximize the resources on your computer. Your machine is using 8 threads to render (two threads for each core on the CPU). The size of those tiles is determined in the performance tab:

The default settings are "auto-detect" to determine how many threads will be used for rendering, or you can choose to use a fixed number to keep some other processes in your computer with some resources.

If you render using GPU you will have as many tiles as GPUs you have installed in your machine. With olny one GPU, only one tile will be rendered at the time.

Read: How do the number of cores in the CPU relate to the rendering tiles?

Read also: How can I render the way the render preview renders?

The square sample box does something completely different. It has nothing to do with the shape of the samples. When you enable "square samples" you are mulitplying the number of samples by itself.


Movie Distortion Node in compositor does not respect optical shift values from Movie-Clip-Editor?

thanks for the reply :)

I actually did manage to get the distortion working properly. :)
My mistake was that I had hit the "centre" button( Movie Clip Editor > Properties panel > camera > centre ) after solving and that was throwing the undistort node off in the compositor.

Setting the correct values again in the "centre" panel fixed it.

I cannot post the images here as "uploading" is blocked in  my office due to security reasons.

The high error values I will solve later in another proprietery software @my office.  Its awesome.

Thanks,
Jayraj


Is it possible to render AO with the OpenGL render?

I have come up with a hack to fake AO in the viewport using negative lamps.

The way this works is with a negative point lamp parented at the center of each cube, and an array of negative point lamps below the floor plane:

For the floor it would be more ideal to use an area lamp, however these are only supported in the BGE candy branch.

The world is set to Paper with a pure white Horizon Color. The Ambient color is also set to white.

GLSL shading and Only Render are also enabled.

Blendfile


How to set up keyboard shortcut for bounding box viewport shading?

Go over to the 3D View Header, right click over the Viewport Shading Mode menu and choose the option Online Python reference.

That should take you to the Blender's Official Python API Documentation where you can learn all about it.

There you will learn that the the viewport_shadeproperty is an enum that accepts [‘BOUNDBOX’, ‘WIREFRAME’, ‘SOLID’, ‘TEXTURED’, ‘MATERIAL’, ‘RENDERED’]string values.

The one you are looking for would hence be BOUNDBOX.


How to attach a Bump Node to a Node setup containing many shaders in Cycles?

The shaders for which a normal input makes sense usually do have a normal input.
You can plug the output of a node into any number of node inputs.
Example :

Or you can simply use a displacement node and connect it into the displacement input of the "Material Output" node :

It's hard to get exactly the same result using these two methods. The benefit of the first one is that you can define different bump maps for each type of shader.


Volume scatter makes the render image and render view entirely black

When you give your environment a Volume Scatter shader, you need to use a light source other than a Sun Lamp, like a Point Lamp or a Plane with an Emission shader. A Sun Lamp essentially lights a scene from an infinite distance away. The light has to go through an infinite amount of space before it reaches your objects in your scene, and so a Volume density of anything greater then 0 will completely block the Sun's rays, since the Sun is an infinite distance away. So you have to use a light source that has a definite location, like a Point Lamp, Spotlight, or Emission shader.

If you must use a Sun Lamp as your light source, instead of giving your whole environment a Volume Scatter shader, create a Cube or Sphere and give that a Volume Scatter, and just scale it up so it encompasses the visible area of your scene. That way a Sun Lamp can penetrate through the fog, since it only has a finite distance the light has to go through.


How to deal with masks and shadowcatcher when compositing 3D elements over an image or video?

I didn't check a Mask option, but seems to me more natural to use an Object as a Mask and Shadow Catcher in once, so shadow follow the shape.

Alpha Over node seems to be working as expected.

Notes:

Image in my 3Dviewport is an Empty object for a reference it doesn't influence a render. For the same effect (and probably easier) you can use image as bacgroud for camera (Camera Properties > Background Images) that can be video as well.
With Object ID pass or Cryptomatte you can separate shadow and adjust if needed.


How can I scale and extrude a mesh proportionally?

Separate off the first tier of seating (seat and back) into their own object.  Add a new empty at the origin.

Select the seating object and add an array modifier with a fixed count of say 15 and clear the relative offset checkbox.  Use object offset with the object set to the Empty.  Check the Merge checkbox.

In front orthographic view, move the Empty up on Z until the seating rows are correctly aligned.  In top orthographic view, scale the Empty until the tiers are correctly aligned.

Apply the array modifier, join back to the original object and remove doubles.  You should have a clean mesh.


python error in addon "Load Obj Sequence as Shape Keys"

Well, the first thing to notice is that

target.data.shape_keys.key_blocks

is a null or empty object at the point of the error and thus the script cannot execute the for loop to fill the sknames object.

Upon looking into this further it seems the issue is with the file path that references the location of the obj files around line 56 (at least it did for me).

Replacing this:

for f in files:
    fp = spath[0] + "\\" + f

with this:

for f in files:
    fp = os.path.join(spath[0], f)

seemed to solve it for me.


Your saw blade mesh should use the same position as the curve as a resting position. The blade should be aligned to the Deformation Axis (X by default).

When you then animate the blade mesh object position along the Deformation Axis (X), the blade will move along the curve.

One extra note: This doesn't work well with the Bounds Clamp option on the curve.


Remove sequence Text strip in Blender 2.80

You have to pass an object of type bpy.types.Sequence into bpy.types.Sequences.remove(). This means you can pass the return value of sequences.new_effect() into sequences.remove(). In the example in your question that reference would be stored in effName.

bpy.context.scene.sequence_editor.sequences.remove(effName)

If you don't have a reference to the sequence anymore, you will have to retrieve it from:

bpy.context.scene.sequence_editor.sequences_all

Update: Since there seems to be some misunderstanding about my explanation, you find a fully functional code example below. As I said before, you need to store the return value of new_effect() to later us it as input for remove().

import bpy

sequences = bpy.context.scene.sequence_editor.sequences

names = ['a', 'b', 'c']
tChan = 0
fStart = 0
fEnd = 50

text_effects = []

for name in names:
    text_effect_strip = sequences.new_effect(
        name=name,
        type='TEXT',
        channel=tChan,
        frame_start=fStart,
        frame_end=fEnd
    )
    text_effects.append(text_effect_strip)

for text_effect_strip in text_effects:
    sequences.remove(text_effect_strip)


Phil, I add below a capture of how it should be behaving (both on blender render or cycles render): if it does not work like this, something went wrong, either the blender install itself or something else...


Why does cloth simulation not work on a NURBS sphere which has been converted to a mesh?

Found the problem:

Select the converted nurbs object, press Tab to go in edit mode, press A to select all elements. Now press Alt+M and select By Distance.

This will remove all the unnecessary vertices, that essentially made the sphere a patchwork become one closed object with no split faces.

The reason Cloth did not work is that it needs a structure, the nurbs sphere was though only patches of separate faces.


Blender got its name from a song used in NeoGeo's showreel, the company that started developing Blender.

The song's name is Blender by Yello, a Swiss electronic music band, as stated at the Wikipedia Page.


Is there a way to quickly replace left half of my sculpt with mirror image of right half?

You can try going into edit mode, then under mesh options, symmetrize. On the popup option choose direction of the symmetry (ie. -x to x)


How can I export curves(nurbs) to AutoCAD without converting to mesh?

The OBJ exporter supports import/export nurbs curves natively.
Otherwise you could find a list of all formats autocad supports, then see if there is support within blender for any of these formats (as 3rd party addons for eg, perhaps shapefile for example).


How to scale down an extrusion/hole in mesh?

Since you have 'Limit Selection to Visible' enabled, you might not have all the relevant verts selected.

The selected part seems to be unconnected to the rest of the mesh.
It also looks like you have another object inside the disc which probably doesn't belong in there.

Ideally your mesh should have only one closed surface and, without sacrificing shape, as little faces as possible if it's for 2nd life.


How to scale the top of a mesh w/o distorting the structure

One way would be Proportional Scaling.

Select the top part and scale it, Keep Z=1 (to keep the height)
Enable proportional editing and set it to Linear
Use the slider to adjust the faloff distance


If you are using a subdivision surface modifier, the easiest way to sharpen edges is with a loop cut and slide (Ctrl R)

This is where loop cut and slide is located

And if that doesn't work try adding creases to the specific edges


Replacing all mesh elements in a Mesh object

The functions for the removal of mesh elements for Mesh(ID) are turned off in the source code.

#if 0 /* BMESH_TODO Remove until BMesh merge */
    func = RNA_def_function(srna, "remove", "ED_mesh_vertices_remove");
    RNA_def_function_flag(func, FUNC_USE_REPORTS);
    RNA_def_int(func, "count", 0, 0, INT_MAX, "Count", "Number of vertices to remove", 0, INT_MAX);
#endif
}

from_pydata is a utility function written in python. You could use bmesh but it might be slower.

I.e. (see verts.new, edges.new, faces.new)

import bmesh
bm = bmesh.new()
for co in vert_data:
    bm.verts.new(co)

#bm.verts.ensure_lookup_table()

for edge_indices in edge_data:
    bm.edges.new((
        bm.verts[edge_indices[0]],
        bm.verts[edge_indices[1]]
        ))
for face_indices in face_data:
    bm.faces.new(tuple(
        bm.verts[index] for index in face_indices
        ))

bm.to_mesh(obj.data)
bm.free()

Btw: I was able to crash blender using this simple script to test from_pydata for existing geometry.


Did u accidentally add a modifier? if that's the case remove it.
If that's not the case then try decimating its geometry.
To decimate: Properties -> Modifiers. Then click on Add modifier and select Decimate\
hopefully, that should work


texture is not going on the outside of my rock object only the inside

I have been checking your blend and it looks like the normals of the fractured object just point inwards instead of outwards (Recalculate Normal -> then it should work again, and of course re-execute Fracture)

I also took the liberty to tweak your blend a bit. As the rock texture was not packed, i just put the bottle texture onto the fractured object as well, just for demonstration. For example I used triggers and constraints, and reduced the displacement a bit, because the displacement "happens" after the physics and the more displacement you have, the more unnatural the shards will behave.

Edit: to have an "inside" actually, you need a solidify modifier on top and a Fracture Modifier below it, and need to refracture. The "inside" of the solidified object counts as "outside" too and will have the same material as the "real" outside of the cube. Additionally you could set an "inner material" on the Fracture Modifier and refracture. This will be applied to the inner shard faces.


If you select just the faces that are stretched, you will find that they don't have many pixels in relation to the rest of the faces on the uv map - if you can possibly give more room to them, then you will reduce that effect you see there.


Why is there no ouput in the System Console?

I now can conclude that the black system console window is with Blender 2.78a under PortableApps.com, running from a usb drive. When downloading the zip file directly from blender.org, and unzipping, the console works as described in the manual.


Reducing in mesh stretch at bone junction

Bones heads here need to be placed on the exact place of the folding.

Here the bones and the box are not on the same plane. So when the bone rotates it stretches the box:

This is the main problem.

Make so all bones are well aligned with the wanted folds, in all directions.

When the bone is aligned:


Why is my model coming apart when posing its armature?

Im preety sure your Bird's mesh doesnt have all the faces connected to each other. One way to clean this would be to select your bird and go into edit mode. Then, select all the faces by pressing A. After, press  the "Remove Doubles" button. It should connect all the faces together, if not most of them.


What is the key for the curve modifier to work properly?

It will simplify if you set the origin of both your objects to their geometry (right click and Set Origin to Geometry)
Once done, put the 2 objects at the same location (select one object, press ShiftS > Cursor to Selected, select the other object and ShiftS > Selection to Cursor)
Create some edge loops all along your tube if you want it to bend
Give it the Curve modifier with the curve as Object


Sculpting Dynamic topology or detail flood fill?

There is a change from the 2.7x sculpting workflow to 2.8

You can still use dynamic topology but it's not the recommended workflow anymore.

The new workflow is sculpting on the static mesh and remeshing.

Pablo Dobarros Talk about the new tools and how they work:
https://www.youtube.com/watch?v=lxkyA4Xslzs

Hand on with Julien Kasper using the 2.8 workflow:
https://www.youtube.com/watch?v=YaVEJTLDD3Y


You're not doing anything wrong, the tools you have chosen are working as expected, but perhaps they are not the right tools to achieve what you want. When you hit F, a face was created between the vertices around the back of your chair. If you use the little eye icon to switch off the Skin modifier, and switch on 'Limit Selection to Visible' you'll see it there, solid shaded. That face is the one that a modeler using F would usually be interested in. (i.e the faces between edges, not the ones a Skin modifier has put around edges)

The Skin modifier rapidly creates enclosing faces to a skeleton of edges and vertices, and with it, you can quickly convert those edges into an armature to control the deformation of the faces in animation. It tries its hardest to behave well at junctions, but things made with it are usually organic, and best kept simple.

To create a chair-frame, and learn some Blender at the same time, you could perhaps try a 'Box Modeling' approach .. I've just searched on 'Blender Box Modeling' and come up with some pretty reasonable looking tutorials.


Using mask as a garbage matte to hide an object

In your first attempt you are replacing the original alpha with the mask, you need to combine the original alpha (the render) with the new alpha (the mask):

Which would result in:

Based on this render and mask:

That's essentially what you're doing in your solution that doesn't 'seem right'. This is just a slightly simpler way of doing that.


Accidentally mirrored on an offset, too late to undo

Start with that: Go into edit mode (vertex select) and select all, then in the menue on (most likely) the bottom left of the screen go to mesh --> vertices --> remove doubles and set the merge distance to 0.02
Then in the menue select --> select all by trade --> interior faces and delete them.
That should at least reduce the problem. From here on cleaning the rest by hand should be not too much work. To help with that you can use mesh analyses (in the properties panel).


Press ShiftCtrlA to Make duplicates real.

Originally from this comment


Slow render times are perfectly normal. This stuff is complicated.

Still frames can take a while, and an animation is hundreds of still frames put together. Movies can take very long times to render, even on big supercomputers.


Emission shader on large object is black in Cycles?

As for your... uh... missing(?) light

The default world shader, and an example object;

Your file when first opened;

Disconnecting... whatever you were trying to do there;

Adding a default cube;

Decreasing the strength of your dome's emission... significantly;

As for the point light question

I disconnected the emission (which generates light) and replaced it with a diffuse;

Then I added a point light at a minimally affecting strength (for the size of the dome;

Something a little stronger;

And especially stronger;

Conclusion

I honestly have no idea what your goal is, or if I've answered your question properly. Please let me know.


Maybe you should try Animation Nodes if you are going for some sort of procedural animation. It gives you the ability to create parametric animations, like ICE in SoftImage or Xpresso in C4D

https://github.com/JacquesLucke/animation_nodes


Objects exported from Blender contain extraneous wing-like flat faces that don't display in Blender layout and modeling views

This is the result of using ngons. If you add the following edges so that the faces are all quads (on both top and bottom), this should resolve the issue;

As you'd mentioned before, technically all Tris would work too. The issue is that you're dissolving the faces into a face of (what is generally considered) irregular dimensions/vertices. This doesn't cause a problem in Blender because it inherently supports ngons (faces with more than 4 edges/vertices)


I have a method that may help you in this case.

This method works best if you don't have truly vertical surfaces, but there are workarounds to this if you are willing to adopt it in your meshes.

The first recommended step is to take the bottom most surfaces and scale them outward, so that you have a slight slope to your vertical walls.

The next step should solve the rest for you:
This is a fairly long step-by-step, so I chose to link to it from another post here, if this is a problem at all from the moderators, I would be glad to duplicate it here - just let me know.

After you recreate your mesh using the Z-Pass method, you should be able to easily re-scale your bottom most parts of the mesh to get it looking like you intended, if you so choose by applying the displacement modifier, and manipulating the bottom faces to be what you desire.


Assign shortcuts to different values from thedrop-down menu "Merge"

To make merging vertices faster change in User Preferences setup for this shortcut enabling Type option just below the main options:

Select the desired type from the list  to make this shortcut execute command with given option and skip any dialogs (most likely you will want to create also shortcuts to use other options of the operator).
To disable that either restore settings or press on X button near the Type selector. Read more details on this technique in this post - How To NOT extend selection with Box Select?.

However you have other approaches available too without need to change shortcuts.

One approach would be to use Shift+R to repeat the last action. So you would select 3 vertices in desired order, choose needed option from menu and then after selecting next verts just execute Repeat Last.

Anotehr way would be using list of Undo history from F3. Once doing any action it will be accessible from that list and you will be able to repeat it by pressing F3 > Enter. See more here - Is there a shortcut to repeat the last operation in Blender.

Also you could just choose another way of modeling and dissolve those vertices either with X > Limited Dissolve or Dissolve Edges (make sure to select needed geometry first).


Take more time to study materials. Water is darker and has a gradient affected by the depth as it gets closer to the coast. (try to make tiling less obvious, combine different bumps or use smth procedural). The roughness from the sand/ ground is too shiny. The lighthouse has kind off poor shading it needs roughneess variation to push its quality.
Study as if you were painting check how values work in the pictures and try to match them in your materials. Use HDRI and photometric color
Your shapes are too general there is no depth in terms on diferent scale, try not to skip details go from big shapes to the tiniest this can help you get a scale sensation and realism
Keep working on it, compare more photos, close ups from similar materials, study a lot. You can do this, build patience :)


Rendering Issue - Tracked Video & 3D Object Composite

Might be an obvious one, but check your render layer setup and which layers your objects are on...

Also check your compositing node setup after rendering an image. I've had problems in the past when I accidentally moved objects to layers that were selected as a mask layer or Excluded layer.


(Python API 2.82a)how to pin vertex group with python api

Here's a quick minimum working example with Blender 2.82a and Python:

import bpy

def clear_scene():
    for block in bpy.data.meshes:
        if block.users == 0:
            bpy.data.meshes.remove(block)
    bpy.ops.object.mode_set(mode='OBJECT')
    bpy.ops.object.select_all(action='SELECT')
    bpy.ops.object.delete()

def make_cloth(vertices):
    """Make a plane at height 0.2m and subdivide. Then, pin vertices."""
    bpy.ops.mesh.primitive_plane_add(location=(0, 0, 0.2))
    bpy.ops.object.editmode_toggle()
    bpy.ops.mesh.subdivide(number_cuts=20)
    bpy.ops.object.editmode_toggle()
    bpy.ops.object.modifier_add(type='CLOTH')

    # Pin the designated vertices.
    gripped_group = bpy.context.object.vertex_groups.new(name='Pinned')
    gripped_group.add(vertices, 1.0, 'ADD')
    bpy.context.object.modifiers["Cloth"].settings.vertex_group_mass = 'Pinned'

if __name__ == '__main__':
    clear_scene()
    vertices = [0]
    make_cloth(vertices)

Note: the clear_scene method is not necessary to get pinned vertices. I just had it there to remove the starting items so that the only thing left would be the cloth.

If this file is called test.py, then run blender -P test.py. I get this when I open the GUI:

Notice the vertex groups shown to the right in the screenshot above.

Clicking the "play"' button to animate the scene, I get this at frame 85:

Unfortunately, it isn't always clear how vertex indices are determined. I would consult this question for further information.


How to make the sun lamp not the HDR cast shadow in Cycles?

Starting with a scene like this where one layer has a cube and a sphere are being lit by HDRI only.

The sphere has the shadows disabled in the cycles settings

On a separate layer containing the plane, a copy of the sphere with the shadows enabled and a sun light.

Create two render layers, one that uses the environment, and a second one that does not, and has the shadow pass enabled:

Combine the shadows on the compositor.


How do i select an object that is separated from other objects

Because you mention the object is separate from other objects, I am thinking that selection may have been disabled on the object you can't select.

In order to enable/ disable selection on an object you can click on the arrow next to the objects name in the outliner.


How to register a property group in blender 2.8

Check the source

As with a lot of blender, can check the code for bpy.utils.register_classes_factory

def register_classes_factory(classes):
    """
    Utility function to create register and unregister functions
    which simply registers and unregisters a sequence of classes.
    """
    def register():
        from bpy.utils import register_class
        for cls in classes:
            register_class(cls)

    def unregister():
        from bpy.utils import unregister_class
        for cls in reversed(classes):
            unregister_class(cls)

    return register, unregister

As you can see it does no more than register unregister classes.  (Notice the reversing of list in unregister)

I would recommend using your own register methods. Even prior, would recommend own register methods over the now defunct bpy.utils.register_module()

To still use the factory, in conjunction with your own methods.

foo, bar = bpy.utils.register_classes_factory(classes)

def register():
    foo()
    # do other stuff

etc.  Or write your own factory that also takes type, property pairs.


From the documentation for 2.9:

When an item only contains 4 items they define (identifier, name, description, number).
Separators may be added using None instead of a tuple. For dynamic values a callback can be passed which returns a list in the same format as the static list.

This is conspicuously absent in the documentation for 2.79, so there may not have been an easy way to do it in Python when this question was asked. But for newer versions, you can just use a straight None instead of a tuple.


How can I deselect a loop cut layer of vertices?

Are you trying to do this?

If so, then just press A to select everything, and SHIFT+ALT+LMB to deselect the loop that you want, and it is the same in the edge and face modes.

Hope this helped!


How to inset near a mesh boundary without creating new border faces?

You can do this using the 'Inset' tool.

Select the faces you want to inset:

Press I to trigger the 'Inset' tool and move the mouse to increase or decrease the amount. Press B during the inset to turn on the 'Boundary' option (which will stop creating faces along the boundary of the mesh):

Press Enter when you are happy with the inset and then delete the inset faces with X> Faces


How to freeze a falling rigid body animation for good?

Select the object(s) you want, select the frame you want in the timeline, then in the header menu > Object > Rigid Body > Bake to Keyframes and choose the frame(s) you want in the pop-up.


If I remember correctly the default output is C:\tmp folder.

The files save to the path set in the Preferences window

For 2.8 check here:


AMD Radeon RX 5700 XT OpenCL Cycles Render 2.91

I had this issue for days with Radeon RX 580, today I updated the drivers to 20.12.1 (released in 2020. 12. 04.) and the problem is no more.


How can toolbar transparency be modified?

Enable Region Overlap in CtrlAltU→ User Preferences → System:

To modify the transparency of the sidebars, change the Alpha value of User Preferences → Themes → 3D view → Region background:


Blender Eevee Keeps crashing when i try to render

Instead of opening the 2.79 file in blender 2.80 i just appended the objects in my scene to the startup file for 2.80 and it rendering seems to be working so far now.


Detailed error report for every object in the scene

I don't know if it is possible to make Cycles more verbose to print the name of the object which causes this problem.

The error message indicates shrinkwrap out of memory : only objects with a Shrinkwrap modifier should cause this error. This can help you to reduce the number of objects to analyze.

You can use the Outliner to quickly enable or disable the render of an object (with the Eye button at the right of the object name). With a dichotomy method, you should find quickly the wrong object :

In a first pass, disable the render of the alf of the objects with a Shrinkwrap modifier and try a render. If the error disapears, the wrong object is in the alf you just disabled. Otherwise, it's in the second alf.

In a second pass, keep disable the render of objects witch do not cause the error, and disable the alf of the remaining objects. With a new render, you will see if the error disappears or not.

After few iterations, you should find quickly the wrong object.


You cannot use a bone for this, but you can use the associated vertex group with a mask modifier.
1st add a Mask modifier to your mesh.

Then choose the vertex group in the list

Invert the mask with the double arrow button

You can animate the renderability by keyframing the "renderable" (camera) button (and viewport visibility with the eye icon)

The mask modifier doesn't use precise weights, it's just yes/no so if a vertice has 0.01 weight, it will be completely hidden.


How to make part of the mesh follow a bone without deforming it

Like it was stated, you need to remove unneeded vertex groups from the shield.

In Weight Paint mode, select the vertices you want to clear. Back in the Vertex Groups, click the down arrow icon. There's an option to either remove all groups from selected vertices, or only the active group. Best to remove all groups in your case and manually add the driving group back.


Where can I find boolean feature in modifier for NURBS?

The boolean modifier is only available for meshes.

You would have to convert your nurbs objects to meshes.  Probably not what you wanted to hear.

This is something I miss from Rhino and other modellers.  In blender, however, the mesh is king.


Object's coordinates are not influenced by constraint's influence?

Object drived by another is always represent by it's relative coordinates. If you parent a cube to an empty and you will move with empty, cube will have also zero in coordinates.

And I don't think there is a problem to animate Camera on top of the Constraint. But if you animated influence to zero on frame 149 and one to frame 150 somthere is not to much room for transition. Sorry if I understood you wrong.


How to remove a part of edge loop which deforms my object?

Select the edge loop by pressing Ctrl+Shift+RMB
Then pressX or Delete button, right on the bottom you will find an Edge Loop option. That should do the trick.

Edit : Make sure you are on edge select mode.


Ok. So the reason was unnecessary solidify modifier I used. Removing it helped and after it was all about adjusting light coming through the bottle.


1: (Not necessary but to simplify things) remove the Mirror and Solidify modifier.

2: Open the Viewport Shading menu and enable Backface Culling.

Now the problem is revealed. Mesh faces only have one side, With backface culling enabled we can see this. Your models has half the faces facing outwards (which is good) and the other half facing inwards (which is not good). To correct this

3: In Edit mode select all of the mesh and open the Mesh menu, Mesh > Normals > Recalculate Outside.

4: Look carefully where the face is selected in the screenshot below and you will see a face that should not be there. Delete this face and fill in the gap it leaves.

5: Now you can add back the modifiers

Looks ok now :) ................

........... apart from the weird edge flow !
As with most things but especially cars, edge flow is very important. I suggest you find a car modeling tutorial on Youtube and pay special attention to that.
Takes time, sometimes you will spend hours and hours just tweaking existing vertices until it is ............ just right.

Edited to illustrate Nicola's suggestion in the comments

Edited to reply to comment:
Often its extrude in one direction and the face normals are ok, extrude in the opposite direction and  you find the face normals are now reversed.Work with backface culling enabled and you will notice problems and can fix them as you go along.

Advice on edge flow? Spend a few hours watching car modeling tutorials on You tube.
Avoid Ngons and tris where possible and most important of all keep it as low poly as possible. The more geometry you have the harder it is to tweak.

Try for something similar to the screenshot below.

Note this is only the side of the car. If I was intending to model the complete car, at the same time as adding the circles for the wheel arches I would also have added a circle for the front radiator grill and work back from there.

For this Youtube is going to be your best friend. Good luck.


Correct vector input to map texture light in Cycles

You can do this without drivers.
You can achieve it using an area light instead of a spot light, then make use of the Geometry node's Normal and Incoming socket and subtract them using a Vector Math node.
It still suffers from tiling/mirroring artifacts at extreme angles like the solutions by @gandalf3, but those can be adjusted with the Vector Mapping node as long as multiple instances of the light are maintain within a certain angle threshold from eachother, and overall it seems like a more maintainable solution in the long term.

Blender 2.79+
As of Blender 2.79 Blender, Cycles can correctly use lamp texture coordinates directly for Spot, Area, and Point lamp types without any further contrivances.

Committed by Lukas Stockner Cycles: Implement texture coordinates for Point, Spot and Area Lamps
Cycles: Implement texture coordinates for Point, Spot and Area Lamps
When using the Normal output of the Texture Coordinate node on Point
and Spot lamps, the coordinates now depend on the rotation of the
lamp. On Area lamps, the Parametric output of the Geometry node now
returns UV coordinates on the area lamp.
Credit for the Area lamp part goes to Stefan Werner (from D1995).

Just use the Normal output on the Texture Coordinates node as vector input for a texture.

If you are using an image based texture you may need to offset the texture coordinates by $0.5$ units on $X$ and $Y$ axis using a Vector Mapping node to center the image on the projection direction.
Smaller sized area lights will produce sharper image projections.


imported .stl model is tiny. How can I set the scale correctly?

STL file does not have information about units and their scale, https://en.wikipedia.org/wiki/STL_(file_format)

So you need to set the units and scale in Blender before importing your stl. This is done on "Scene" tab under "Units" group.


Problems with assigning dimensions through python script

The core of this question is

import bpy

bpy.ops.mesh.primitive_circle_add(vertices=5, radius=1, location=(0, 0, 0))

# this doesn't produce expected results
bpy.context.object.dimensions[0] = 0.7
bpy.context.object.dimensions[1] = 0.7

versus

import bpy

bpy.ops.mesh.primitive_circle_add(vertices=5, radius=1, location=(0, 0, 0))
# this does
dims = bpy.context.object.dimensions
bpy.context.object.dimensions = 0.7, 0.7, dims[2]

Plugged into your sample code:

import bpy

bpy.ops.mesh.primitive_circle_add(vertices=5, radius=1, location=(0, 0, 0))
obj = bpy.context.object  # might need it later

bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.mesh.select_mode(type="VERT")
bpy.ops.mesh.extrude_region_move(MESH_OT_extrude_region={"mirror":False},
TRANSFORM_OT_translate={"value":(0, 0, 30)})
bpy.ops.object.mode_set(mode = 'OBJECT')

current_x, current_y, current_z =  obj.dimensions
obj.dimensions = [0.7, 0.7, current_z]

Why?

There is a bug report about it here https://developer.blender.org/T31760

it's a known error/limitation, and down to the property being intended to be used on the UI only.

For now either use obj.scale (with some extra manual calculation) or set the obj.dimensions all three at once (as shown).


I'm not familiar with Spark Ar, but maybe this can help you out: https://www.reddit.com/r/blender/comments/3nfr7c/export_only_vertices/


If you change the normal map node from 'Blender Object Space' to 'Tangent Space' and select the 'UV map'in the dropdown that appears, that should work.

If it still appears black, then something else must be wrong. No lights, that sort of thing. I've uploaded my file (which is working for me), so you can compare: character.blend


With the faces selected use U Unrwap to open the unwrap menu and chose Reset:

Result:

After that you can scale S and move G the uv as you like, use Circle select C to select all vertices in a corner and align them with your texture.
Of course you can also align individual vertices.


Use a knife or loop cut to break the square in half, then delete the extra vertices.


You have to keep the script running all the time, it is better to have an always sensor in pulse mode attached to the Python controller :

or just activate the pulse mode on the ray sensor to keep activating the script even if the hitObject is the same :


Is your medical imagery made only of vertex (no planes)? If this is the case, you could morph one to another by using a particle system.

add a particle system to each object, with the same number of particles
create one additional object with the same number of particles
add Physics > keys in the last created object's particle system, create a key for each of your medical imagery objects.

Here is a complete tutorial about this.
https://www.youtube.com/watch?v=lPCs4XbGth8

Hope it helps!


how do I seperate hair texture from regular texture

What you want are 2 materials:

one material for the skin (Image Texture and Principled BSDF)
and one for the hair. For Cycles, you can use the Principled Hair BSDF. It works only in Cycles and you have to switch to Cycles to be able to add the node. To have a fallback for Eevee and the Material Preview mode you can add another node setup in the same material that is used for Eevee only.

Just add another material slot for the head/emitter and create a material. After that, you can select it in the hair settings: Particle Properties > Render > Material
If you use Cycles make sure you have the settings for the Hair Shape correct (small values) else you will get very "fat" hair.


Why doesn't the Grid Fill Tool work on this mesh?

As Gandalf pointed out the area can be Grid Filled by:

Separate V the selection
Grid Fill Space,Grid Fill or Ctrl-F / Grid Fill
Remove Doubles Ctrl-V / Remove Doubles


You don't run blenderplayer.app by itself like that by default, you would launch this from the command line if you wanted to tweak how the game is run (see the arguments it takes here). It is used to execute games that you exported. To launch the actual application use blender.app.


Figured out that the existing blender addon given here serves the purpose if the objective is just to triangulate in blender.

However, the question of programmatically selecting the vertex and (or) faces is still open. If any body has any idea on this topic please do throw some light.


Select the emission Plane.  Set Cycles Ray Visibility Camera to False.

You may choose to locate the light or lights anywhere convenient.


You could use a UV Project Modifier, to project a texture on to your mirrored model.

If you are using the UV map (without the Project Modifier) then no there is no way. You will have to apply the mirror modifier.
With a mirror modifier on a model, there is only half the mesh, and thus half the UVs to texture with. So anything that is one the first half, will be mirrored to the other half, including materials and textures.


You just can not see it because of bad lighting. The highlights and shadows are just much more apparent than the texture color.

Move your lamps around and you will see that the texture is actually there. The body textures however are missing from the file you uploaded.


viewport denoising blender 2.83 macbook pro

As written here
In section about "OptiX Viewport Denoising"

To use this feature you need a NVIDIA RTX GPU and at least driver 441.87 (Windows) or 440.59 (Linux).


Yes, open up your User Preferences > Themes > Node Editor and set the Noodle curving to 0.

If you want to reset it, default value is 6.


You can turn off anaglyphic view by pressing the icon at the bottom row (looks like a pair of glasses? with red/green lenses).

To save as one image, select "Save As Image". When deciding file name, you have a panel at the left, this is where you select the format of the output. The window in the rendering panel doesn't seem to do anything useful.


When I rotate my legs using the assigned bone, it weirdly makes the legs thiner, any solutions?

It's because the topology of your legs doesn't have enough geometry, so it doesn't deform well.

Look at some examples comparing good and bad joint topology. (The good ones have a denser, "capped" extrusion)