How do I make a clip extension using an image texture node in Blender render? I'm not sure how I can clearly explain this as a noob, but how do I make an image node in texture editor not repeat its texture when it is outside of the UV map. The first image below is what I want it to look like, the bottom is what happens when I use the node editor.

Scroll down your material panel to Image Mapping and change Extension from Repeat to Clip


Fatal Python error in debug mode: Py_Initialize() I spent all day to compile Blender, follow this instruction: https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Windows/msvc/CMake
I build it with Cmake manually without any stuff exclude Python stuff. Next I builded project and builded INSTALL succesfully. But when I try to debug Blender I receive error:

Fatal Python error: Py_Initialize: unable to load the file system codec
blender.exe has triggered a breakpoint.

Debugging stop on:

Py_Initialize();
{
    int i;
    PyObject *py_argv = PyList_New(argc);
    for (i = 0; i < argc; i++) {
        PyList_SET_ITEM(py_argv, i, PyC_UnicodeFromByte(argv[i]));
    }
    PySys_SetObject("argv", py_argv);
    Py_DECREF(py_argv);
}

I had Python 2.7 and didn't have PYTHONPATH before. When I installed 3.5 and to set varyable PYTHONPATH nothing to change, the same error. The same things if I start blender.exe in Debug folder directly. BUT if I start blender.exe from INSTALL path everything is OK. How to solve this problem? Thank you!

Ok, I solved it! The main problem is compatibility Python's precompiled limbrary, which is provided from SVN and local Python which we have on machine. In my case it's main points a compiling Blender:

1) Follow this instruction. https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Windows/msvc/CMake

2) Disable firewall.

3) Start ANY application (especially *.bat) from instruction with admin privilege.

4) I use Cmake manual setup and placed build folder(BlenderBuild) separately to source folder, disable any stuff except Python, and set INSTALL folder manually in "..BlenderBuild\bin" folder.

5) Make sure which Python version was provided in INSTALL path and install the corresponding version on your computer. If you had Python before you may have a problem with system variables. In my case i delete old 2.7 version and clear Python's path in "Path" variables, install 3.5.2150 version. That's it. No PYTHONPATH and etc.. Restart computer.

6) Open Blender.sln in MSVC2013 and built whole solution, then built only INSTALL (I had problems here before). Set blender project as start up, and start debug (here was too). Everything should be OK!)


Cloth simulation doesn't work with collision I have simple model, just legs and pants, when pressed play animation pants mesh goes up to the pined mesh part. I played with cloth simulation and collision values but result always the same.

I have made some changes. Also cranked up the quality settings a bit so if your pc can't handle it, just pull those back a little.
I have pinned the top and some other simple settings. I also changed the shape of the legs very slightly so the pants wouldn't pass through on some places.
The edited blend file


Exporting from Blender to Browser (Web Viewer)? What is the best way? Currently I have modeled 3D products in version 2.83 of Blender, using cycles as a rendering reference. And I have been using version 2.72 to create Web view pages (.html) of these objects, with the Blend4Web add-on, which was discontinued in version 2.72 of Blender. I was having satisfactory results when the product did not have very complex materials, as is the case with this object below:

Render Cycles (Blender 2.83):

Browser - (Blend4Web):

http://www.gabrielmagalhaes.net.br/3dmodel/snack/
http://www.gabrielmagalhaes.net.br/3dmodel/omo/

However, with products that have more complex materials, such as glass and metal, I have certain problems. As is the case with the following object:

Render Cycles (Blender 2.83):

Browser - (Blend4Web):
- http://www.gabrielmagalhaes.net.br/3dmodel/geleia/

In other words, I'm stuck in version 2.72 of Blender, just to create the 3D view pages. Also I am having big problems with material compatibility between cycles and B4W. That is my problem.

I need my products to be very detailed, the way I model them in cycles. With good reflexes, and very realistic.

What would be the best substitute to Blend4Web?

What do you suggest? Is there any other tool that helps me to create 3D visualization pages of my products, without having problems with the materials created in cycles ??

The direct successor to Blend4Web would be Verge 3D: https://www.soft8soft.com/
This is in active development and should be quite good for what you want.

Alternatively, you could try out https://sketchfab.com/

If you want something FOSS, you might want to give Godot a try: https://www.godotengine.org/ It has  WebGL-export and the model and material transfer from Blender works rather well, but it may require somewhat more effort than the two abovementioned alternatives.


UV mesh does not appear in UV editor in blender 2.8 but does in 2.79 as you can see in the below images, when I try to view the UV mesh in the UV editor In blender 2.79 It works perfectly, but when I open the exact same file in blender 2.8 It does not show up. I have already checked the "view" menu which only shows the options for "view" "mask" and "paint" and not "UV".

I have also tried this with a new object in a new file and that doesn't work either
Thanks for your help!

In 2.80 the Image and UV Editors are 2 different things.

Your screenshot is showing you have the Image Editor open.

Change to UV Editor to see the UV unwraps :


Export .dae with "include UV Textures & Include Material Textures I have a simple blender file and would like to export with textures, however I do not see the option within Blender Version 2.79.

I've come across this questions many times (ex), but my interface is different and I cannot seem to find a solution.

Here is what others have posted they see:

And this is what I see:

Any help is much appreciated! Thanks!

I have exported many .DAEs with textures from 2.79 without any problems.

The top image you posted is from an older version of Blender. To paraphrase what Mr Zak said, the export menu in 2.79 has changed to what you show in the bottom image.

The settings that work for me are:


How can I get a shot of the whole room without removing walls or distorting the camera? I have a scene of an office and I want to capture the whole room with the camera when I render it.

When I try to bring back the camera using ⇧ Shift+F to capture a shot of the whole room it just goes through the wall and I can't see the room anymore. I can't remove the walls because I need them.

How can I get a shot of the whole room without removing walls or distorting the camera?

There are several options to sort the problem.
Quicker would be to set the camera clipping:

Set the Start to a value higher than the distance between the camera and the wall you want to see trough.

Other option would be to set the wall invisible to the camera from object options tab in Cycles settings:


Mimic lightning in Blender's video editing mode I want to do something that I think ought to be rather simple. I’m working in Blender’s video editing mode. What I want to do is simply to light up what is shown in the strip abruptly, mimicking the effect of lightning. I do not want the flashlight itself, just the indirect light of the flashlight in the room the person in the video is in.

hope someone can help

Blender VSE has a range of color effects you can apply on strips.
The simplest :

Select your strip
In the properties region > Filter, change the value of Multiply to change the bightness

Then you have modifiers:

In the Properties region > Modifiers > Add Strip Modifier, try :

White Balance
Bright/Contrast
Curves

Finally you have effect strips:

with your strip selected, hit shift+A (or click on "Add")
in Effect Strip, try :

Glow, then change its parameters in the properties region > Effect Strip
Color, then  set the blend mode to "Add" (in properties region > Edit Strip) and change the color in Effect Strip.


Area Lights disappearing when rendering image I'm quite new to blender and I was following a tutorial by Blender Guru on youtube. Everything looked alright in the render viewport but when I rendered the image, I discovered that some of my area lights disappeared. Not all my area lights, but the main light did. I tried delete the light and re-add it, but it's still the same problem: its only viewable in the the viewport and gone when I render.

Screenshots of viewport and render is attached.

Any advice will be greatly appreaciated!

Image in viewport

Image when rendered

The 2 marked ones are the missing lights, the yellow is my main light source

It is not easy without the scene of Blender, but I try to guess the problem, which I think can be solved by checking the outliner at the top left, looks, if the camera is active for rendering that light.


how can I show a texture over my bump texture? So I've got a bump node setup using one black and white texture.
but now I need to show my blue texture over my bump texture.
How do I do this?

The node setup you have shown looks like it should work fine.  I believe your problem is that you are multiplying the bump map by 0.000, effectively disabling it.  Try increasing the value of the Multiply node.

If the Multiply node is just supposed to control the strength, you don't need it at all, you can just adjust the Strength slider on the Bump Map node.  You can also delete the Invert Color node and use the Invert checkbox on the Bump Map node.

Just select the Invert node and the Math Multiply node and hit Ctrl+X to delete them and keep the other nodes connected.  Then adjust the Strength and select Invert on the Bump Map node itself.


Boolean Diference not working I am trying to create a wheel on blender, so I can create an URDF. I use this meshes lick rollers, but when I try to use the boolean diference it does not affect the 3d. It look likes the same model. What can I do?

Some people will tell you to stay away from booleans because they can be a hassle and seemingly randomly not work, but if you get used to them you'll find out the exact cases where it won't work and can learn to avoid them.

That being said, here's my checklist:

Manifold geometry (in some, very very speciffic cases (maybe for logos or something) you will use booleans on non-manifold geometry), but it is generally considered to be a very bad idea, unless you know exacty what you are doing.
Normals : press the Overlays Options button on the top right and toggle Face Normals if you see any red, go fix it immediately: Tab  into Edit Mode and press A , then Shift + N
Line-vertex / vertex-vertex intersections: if all else fails, it means you have a vertex exactly on an edge or on top of a vertex, and Blender can't tell what's supposed to be inside or outside. if you are using a literal mesh you should try to move the objects around just slightly, if you are using non-destructive modifier operations, it's always clever to use a prime number of faces on your bevels and screws, this will greatly decrease the chance of such intersections


How can make objects invisible in only certain areas? I started to study blender recently, and I was just making some experiments with fluid simulation but I was stuck with this problem.

You can use the boolean modifier to achieve this. Put it after the fluid simulation modifier for the domain object, set its operation to difference and the target object to the region you want to hide.


Why is the Track to constraint "legacy"? The tooltip for the "Track to" constraint says: "Legacy tracking constraint prone to twisting artifacts".

Why is it "legacy"? Has it been replaced with something else?

After some further research, I found that Joshua Leung added this text to source/blender/makesrna/intern/rna_constraint.c when he committed the new Damped track constraint, indicating that Track to has been superseded by Locked track and Damped track.

Of course I don't think anyone's about to deprecate Track to.


How do I achieve more control over Fairy Wing Meshes? I've got a set of fairy wings I'm making for some 3D animation software, and I'm trying to make them flexible - i.e. so that they can be rolled and curled, as well as flapping.

While I've had some experience in Blender, this is my first time dealing with bone weighting, and I'm a bit puzzled by the results I'm getting.  It seems that when I move the bone around, the mesh seems to clip through itself or split, despite not having any separated vertices.

Here's what happened when I rotated a couple of the bones:

Here's what the weighting looks like for each bone, with auto-generated weights:

I know that I'm missing something.  Could someone please point me in the right direction?

Mesh Deform Modifier is Well Suited to the Task

A simple armature controls a simple box cage mesh. The cage mesh controls the final wing shape.

I will write more. But we hope to give you immediate tools for your work.

Bind Simple and Near vertices. Depicted in the image above. Then enlarge the shape with extrusion/scaling in [edit mode].  Click and Zoom to see larger image.  Edge lines are difficult to see in a small image.

simple to model
simple to armature weight

The cage is different than the wings.  The simple
cage can control your wings.  This cage is easy to roll/spiral and thus
rolls the wing through the Mesh Deform Modifier.

The image above show the lousy wing inside the cage. I am sure your wing will be very artistic. The mesh deform modifier is displayed on right.
This is a quick mock up slightly tailored to your question.  Please excuse the simplicity.  Note the vertex density of the cage and wing must be adequate and appropriate for your goals.  This is echoed in the video link below.  Please inspect and improve the process for your goals.

Lets pretend the image above was newly created as fairy wings for your question and not just another modifier.

On a humorous note or not.

Moonboots wrote an answer to your question 3 or so hours after my answer.  A short excerpt is reproduced here.

I wish I were flattered.

It is interesting to note the graduated weight similar to proportional editing with smooth falloff in the last picture of his answer.  The mesh is deformed/beformed with greater intensity near the bone itself. The difference is subtle.  This may or not be of interest to the OP.

The technique in this answer it to avoid such smooth falloff.

From the famous video website is  a tutorial!

https://www.youtube.com/watch?v=V2CqQUXraeY

The topic is Mesh Deform modifier. ... To save us both time.

From the minimal documentation.

https://docs.blender.org/manual/en/dev/modeling/modifiers/deform/mesh_deform.html

The image above shows the desired weights for one bone. No manual weight painting.  Extrusion preserves the previous weights.
The circular ring mesh is displayed below.  We display folding rather than rolling. Replace the example mesh with your Wing mesh.  This is not a tutorial on Mesh Deform Modifier.  This proposed answer has the goal to give you immediate steps in the right direction.

Mesh Deform can work with the technique above

This is an example of desired weight [stripe]. Done through modifiers.  The stripe exists or is red in a small portion near the bone.  Face connectivity is [not] considered.

Another Alternative Not Recommended

Place multiple armature spines parallel to each other so that every vertex is controlled by a near by bone.  Experiment at your own risk.

Python Script Success Results

The OP can ignore this in the near future.  Some future readers might benefit.  The above material is simpler.

Stripe in XY Plane or ||. Python.
Because there is little edge alignment with X or Y axis. We think this is more difficult to manually weight paint when a large, inconvenient number of weight stripes are needed.
The large stripe is for easy visibility. Color gradient along Y axis.   Concrete Python improvements are possible.
Read Python at your own risk.  Python subject to massive cleansing and refactoring.  Minimally tested. Please inspect and improve.

A comparison of Armature Placement and Mesh Modifier.  They are similar for this simple test.  Testing remains. Arrow indicates only the Armature Modifier is active.


Smoke drastically increases render time I have a scene in which I added some smoke to enhance an object's movement. As the scene is set in the clouds I have a lot of volume shaders, which I have had no problem rendering. After adding the smoke I noticed render times go from around 30 seconds per frame to about 50 minutes, and has made the rendered viewport shading unusable. I don't have any problem when not using the density attribute of the smoke simulation (obviously it won't work without it and will just render the domain).

Is this just a limitation with Blender or my hardware? Is there a way to speed up the render? I would rather a faster render time with less photo realistic results if possible.

I am using Blender 2.77a and am rendering with a GTX590 (have tried with CPU rendering and see similar increases in render times).

One thing you can try to speed up smoke rendering is by reducing the volume sampling step size.

The default value is great for rendering super-high resolution smoke, but I find that a larger value often works fine and gives you a 2-4x speedup at virtually no quality loss.


2.77a - Keep foot on the ground with anchor OR do not allow any vertex below certain world Z I am animating a human character. It is bit irritating that I need to go and adjust its feet for every animation I do.

Is there a way, through a constraint, to plant a bone at certain LocRot and not alowed to be moved by the IK? (Actually cannot work well with IK when I think about it).

Or rather, tell the rig that no vertex can cross 0 of Z. That will do it even better.

well, you can place a bone(anchor) in the desired location on the floor, then add a copy location and copy rotation constraints to the feet targetint the bone(anchor). then when the influence of the constraints is 1.0 the foot will be stick to the floor(the anchor bone position/rotation). you will have to keyframe the influence value that can be easy adding a driver for it.


Export error: mesh has ngons I've been trying to export a model to the game "transport fever" and I keep getting this error each time I try and export:

You should read error messages more carefully, it says the mesh has NGons not "rignors"

NGons are polygons whith N sides, that means your model that has more than four sides.

NGons are generally considered a bad modelling practice in general, and should be avoided for a multitude of reasons; and in many applications and file formats they are not even supported, so sounds like you have some cleanup to do.

Open all your meshes in Edit Mode and look for faces with more than 4 sides and remodel them so you have a proper quad dominant topology.

One quick (but unadvised) way to fix it it to blindly triangulate your mesh, by selecting all your faces in Edit Mode and pressing Ctrl+T.

Other less ill advised method is to transform all into quads with Alt+J.

Lastly the recommended method is to properly retopologise your meshes using a carefully planned topology that will ease future editing


Creating volumetric lighting (crepuscular rays) in Cycles Crepuscular rays (a.k.a. "god rays" and many other names) can be created in Blender Internal by checking the Halo checkbox in the lamp properties box.

How can I create a similar effect using Cycles?

Update

As of Blender 2.70, cycles has had volumetric support. See this answer for details on how to set up crepuscular rays with the new volumetric features.

As mentioned by Wchargin, this will be possible once volumetrics is integrated.

However, there are some ways to fake this:

Using motion blur:

  Basically you use a plane that moves through the entire scene
  perpendicular to the camera, then turn on motion blur and increase the
  frame blending enough so that cycles is calculating the entire motion.
  The plane will catch the light and blend it through the whole scene
  giving the illusion of volume lighting. I used a mix of diffuse and
  translucent material for the plane but wouldn't be surprised if there
  was a better material method.

Using BI to render halo volumes and then use compositing nodes to combine with Cycles render


Mysterious offset when alter armature's edit bones? I copy the locations for each bone in my armature (left) by using a Template armature (right) to copy from.

But I see that all parented object get moved after I have applied the changes:

You can see the "Cube" object moves after running the script. I have found no way to overcome this offset.

I have included the .blend file which contains the script and the two armatures ("run script" to test).

Also here is just the script. It tries to copy the edit bones from the template avatar to the final avatar, then it attempts to remove the offsets for all child objects (but slight offsets still persists):

import bpy
from mathutils import Matrix

def get_bone_children(parent, objects):
    children = []
    for ob in objects:
        if ob.parent_bone == parent.name:
            print(bpy.data.objects[ob.name])
            children.append(bpy.data.objects[ob.name])
    return children

armature = bpy.data.objects['Armature'] #The "destination" armature
bones = bpy.data.armatures['Armature.001'].bones #the source "template" bones

for i, bone in enumerate(bones):
    #match the head/tail local positions between the two armatures
    head_pos = bone.head_local
    tail_pos = bone.tail_local

    armature.data.bones[bone.name].head_local = head_pos
    armature.data.bones[bone.name].tail_local = tail_pos #Removed from main loop because makehuman rigs showed overlapping bones, besides the tail is unnecessary for pose

    bpy.ops.object.mode_set(mode='EDIT') #must do this or else the new positions will not be updated
    bpy.ops.object.mode_set(mode='OBJECT')

    pBone = armature.pose.bones.get(bone.name)
    children = get_bone_children(armature.data.bones[bone.name], bpy.data.objects)
    for c in children: #Parent object to a bone and object becomes offsets - https://blender.stackexchange.com/a/139180/32655
        c.matrix_parent_inverse = (armature.matrix_world * Matrix.Translation(pBone.tail - pBone.head) * pBone.matrix).inverted()

bpy.ops.object.mode_set(mode='EDIT') #must do this or else the new positions will not be updated
bpy.ops.object.mode_set(mode='OBJECT')

Could somebody please kindly help me figure out why my child objects are being offset?

As Serge L suggested it was possible to achieve the expected result by first removing the parent/child relationships from each object, then modifying the edit_bones to match the template skeleton, followed by finally re-creating the parent/child relationships for those objects.

Here is some code that finally got things working for me:

import bpy
from mathutils import Matrix

def get_bone_children(parent, objects):
    children = []
    for ob in objects:
        if ob.parent_bone == parent.name:
            print(bpy.data.objects[ob.name])
            children.append(bpy.data.objects[ob.name])
    return children

def clear_parent(child): #clear parent keep transform - https://blenderartists.org/t/preserving-child-transform-after-removing-parent/616845/3
    # Save the transform matrix before de-parenting
    matrixcopy = child.matrix_world.copy()
    # Clear the parent
    child.parent = None
    child.parent_bone = ''
    # Restore childs location / rotation / scale
    child.matrix_world = matrixcopy

armature = bpy.data.objects['Armature']
bones = bpy.data.armatures['Armature.001'].bones #the template bones

bpy.ops.object.select_all(action='DESELECT')
bpy.context.scene.objects.active = armature
bpy.ops.object.mode_set(mode='POSE') #must do this or else context will not be correct
for pb in armature.pose.bones: #Reset Rotation , Translation and Scale of bones through Script - https://blender.stackexchange.com/a/147342/32655
    pb.matrix_basis = Matrix() #  == Matrix.Identity(4)
bpy.ops.object.mode_set(mode='OBJECT')

childObjects = [] #stores all bones in this armature
for i, bone in enumerate(bones):
    children = [] #all of the children connected to this bone
    for c in get_bone_children(armature.data.bones[bone.name], bpy.data.objects): #Parent object to a bone and object becomes offsets - https://blender.stackexchange.com/a/139180/32655
        children.append(c)
        clear_parent(c)
    childObjects.append([bone, children])

for i, bone in enumerate(bones):
    #match the head/tail local positions between the two armatures
    head_pos = bone.head_local
    tail_pos = bone.tail_local

    armature.data.bones[bone.name].head_local = head_pos
    armature.data.bones[bone.name].tail_local = tail_pos #Removed from main loop because makehuman rigs showed overlapping bones, besides the tail is unnecessary for pose

    #These lines are critical!!
    bpy.ops.object.mode_set(mode='EDIT') #must do this or else the new positions will not be updated
    bpy.ops.object.mode_set(mode='OBJECT')

#restore parent relationships
for i, childObject in enumerate(childObjects):
    bone = childObject[0]
    children = childObject[1]
    for c in children:

        matrixcopy = c.matrix_world.copy()

        c.parent = armature
        c.parent_bone = bone.name
        c.parent_type = 'BONE'

        c.matrix_world = matrixcopy


Procedural Snow with Particles Basically, I want to have a quick way of simulating snow. My plan was to use particles to simulate where snow would fall, but I can't figure out a workflow. The only tutorial/article that I could find was one for 3DSMax. How can I do the same in Blender? The 3DSMax tutorial is 100% what i was looking for, but I can't seem to figure out how to do it in Blender.

Link to tutorial.

Hope you guys can point me to any plugins or ways of achieving that tutorial's results.

Thanks for your help!

I've only a week ago done a basic but effective looking snowfall. I'll try and place the Blender file up here.  I used two emitters, one for distant flakes and another for closer and a circular variety.  The Blender file  (just over 3 MB)...

As for directional flow, go to the emitter's "Velocity" tab and drag X, Y or Z values to suit.  You can also turn gravity off if desired.  You'll find that under the "Field Weights" tab further down.

As snowflakes can flutter on the way down, I've adjusted the Brownian value in the "Physics" tab.

Apologise for the missing texture files - tried to pack them into the Blender file but it kept coming up with "cannot find errors" even when I moved the files into the project's folder and re-saved.

Everything you need is still there and the snow still works though. (CTL-A)

Screenshot -


How to load models in Realtime from a blend file How can I load a model into bge in real time from a blend file with python? In other words when the game is running.

By default the BGE loads everything from a scene at scene start. To add more objects to a scene while the game is running you can use bge.logic.LibLoad() to dynamically load all objects from a scene of an external .blend file.

Be aware currently (since 2.78) this is supported:

loading a single mesh (mesh - not object!)
loading all objects of a scene
loading an action

Sample code:

def loadAndMergeScene():
    libraryStatus = bge.logic.LibLoad(
        "//Asset.blend",
        "Scene")
    return libraryStatus.libraryName

To unload the merged data call LibFree(). The library name should match the one from loading.

def removeAndUnloadLibrary(libraryName):
    bge.logic.LibFree(libraryName)


Image overlaping image in Shader The attached screenshot shows a whirlwind effect appearing behind the moon. I want it appearing in front of the moon.  How do I adjust a certain image to overlap another image in Shader ?   I want it appearing in front of the moon. Is it a case of a hierarchy adjustment in the Scene Collection window ?

i assume you want:
the beach as background, the moon before that and the whirlwind before all.
So you have to make one image for each object. Your "whirlwind" and the beach are one object in your file. So you cannot have it before and behind the moon.


Several shape keys blocking mesh face trasformation? I newly started using shape keys to create an animation, which is just a cube wobbling on the spot, the first shape key that I applied was the top face of the cube rotating slightly, and to this point it went all good. Then I wanted to add another shape key, making the same face rotate back to place. When I created the Shape key, I went to Edit mode, but when I tried to rotate the face, it wouldn't move at all. I could see the dotted arrow as I usually would when rotating, while the face remained still.I tried using the hot keys (R -> Z), the Mesh tools -> transform, and 3D widget manipulator and all of them resulted in the same. I tried to do the same thing to the first Shape key and it worked, while the second did not, even though both seemed to have the exact same settings

You probably enabled the option which allows you to see the applied shapekey in Edit Mode.

Please set the shapekey value up to 1, and then edit the mesh or just disable this option.


Need a solution for a solution (Subsurf Pinching) So I've recently viewed this video to solve my pinching issues with a car bumper:
https://www.youtube.com/watch?v=3rlMzsBWtPY

However, how would one get the bumper lights and stuff back on the bumper once you're done with the shrink wrap and stuff?

For example, my model has fog lamps on the bumper. I've removed it and I'm left with only the cut-out hole. I then use the guide mesh to fix it. Now how do I get the fog lamp back on it WITHOUT applying the modifiers?

The only way I can think of is by applying all the modifiers first which is both frustrating to work with and removes all the flexibility I can have with the model.

Any help is appreciated :)

Alright, this was a stupid question. He says in the video to use vertex groups so I just assigned the detailing to a vertex group and the shrinkwrap modifier now ignores it which gives me the desired effect.


Can blender export 2D curves to svg? Is it possible to convert/export 2D curves to an svg?

I know you could render it to a raster image and then convert it with inkscape/potrace, but it would be nice if you could keep the splines the way they are in blender.

You can try Liero's addon Viewport to SVG:

Download, install and enable add-on.
Add-on appears in properties panel of 3D View window (N).
Setup output directory
Check Bezier Overlay option
Select curve objects you want to export and hit "Export SVG"

The final shape is determined by point of view (perspective/orthogonal).
Addon exports all selected curve objects (3D curves as well).

Note: Bezier curve is exported with strange looking poly line version.
In Inkscape - click on this path and delete. In Illustrator – first Ungroup once (Cmd/Ctrl + Shift + G), than select and delete.

There is another add-on called Export SVG Format, which exports only active object. Shape of curve is determined by "Local Z" axis in Orthogonal view.
Addon is a bit messed up with naming – downloaded script is called "exporter.py", in blender's user preferences appears as "Export SVG Format" and in blender's File menu under Export you will find it as "Inkscape SVG".

Both addons exports only paths (no fills).


Blender 2.8 Bone pose local and global axis mismatch I need my bone local axis to be exactly the same as global axis. It's not true at least with the Y axis. I already tried applying current pose as rest pose, but it's not helping. In armature edit object mode, the local and global axis are identical. Please could you help me make this true for the pose mode as well?

In bones Y axis is always the longitudinal axis, and this cannot be changed, but you can extrude from its head another bone, orient it as you want (along with world coordinates I guess) and the set it to be the parent of the deforming bone.


Is it possible to have more than one smoke simulation in the same scene? If you add more than one Smoke domain in your scene, the first one will not make any smoke.

Is it possible to get more than one simulation in the same scene?
(For example, duplicating the entire scene, baking each simulation in separate scenes, then somehow put them all back.)

How might this be done?

It is possible.

You can create multiple working domains, but the whole process seems a bit awkward and only sometimes works, without any recognizable pattern.

One way I found that seems to consistently work as expected is to create your domains on separate layers.
If you need more than 20 domains, they sometimes work on the same layer, but I have not found what it is that makes/breaks them when they are on the same layer.
Most of the time it seems to work if the one domain that runs in real time is baked first, then the next domain that runs in real time, and the next, etc.

Create domains, on separate layers. Note that Separate domains can share the same Flow objects; however, they will not interact.

Here, each domain is on a separate layer, and each flow object is visible on all layers with a domain object.
Bake each one individually:

It seems that the selected domain is always displayed above the others. Here is the domain that covers all the inflow objects selected (top) and unselected (bottom) so it's more visible that the domains share the same inflow objects:


The particles doesn't move with emitter I am following the donut tutorial by blender guru on youtube. When I try to move my donut the Icing (emitter) moves along with it but the sprinkles(particles) don't move. Please help

Blender file:

The reason why your sprinkles aren't moving with the icing is that the cache for the Particle Emitter is outdated. The cache essentially stores the data for the particle emitter at a certain frame so the computer doesn't have to constantly recalculate it.

I'm not sure if this is a feature or a bug, but when you're moving the donut (which then moves the icing because of parenting), the sprinkles are not getting updated. However, if you select the icing, press G to move, and press the RMB to cancel, the sprinkles will be moved to the proper location. This may suffice as a workaround in your case.

You can also bake the particles as Nate suggested. Baking means that Blender will precalculate the particles' positions, sizes, etc for all of the frames. You can do so by going to the Particle Properties menu, opening Cache, and selecting Bake, Bake All Dynamics or Calculate to Frame. These will take a bit longer to process since Blender will be recalculating the particles for all the frames in the animation even though you haven't touched that yet. So for now, you may just want to stick with the first workaround.


How to extract commands such as single dupliverts To my understanding now Blender has many single commands that can be run via python commands and those commands are embedded into UI scripts.

For example the command for Duplication.

layout.prop(ob, "dupli_type", expand=True)

Now if I click Verts the Consol will write:

bpy.ops.object.duplicates_make_real()
bpy.context.object.dupli_type = 'NONE'
bpy.context.object.use_dupli_vertices_rotation = True
bpy.context.object.dupli_faces_scale = 1
bpy.context.object.dupli_type = 'VERTS'

I try to understand how for example I could only display None, Verts, and Faces plus their settings Rotate and Scale and package that into a box layout.

col = layout.row()
split = col.split(percentage=1.0)
box = split.column().box()

row = box.row()
row.label('Geometry Instancing')
row = box.row()
row.operator("context.object.dupli_type = 'VERTS'", text="VERTS")
row.prop(ob, "dupli_faces_scale", text="Inherit Scale")

But this only generates the button for scale and does not draw the Verts Type button. I assume this has something to do with the way how the object.dupli_type is called and the type declared.

I hope the way I explained this makes sense. In the end I would like to generate slimmer UI interfaces for my students so that they are only presented with Values/options usable for ID. Frame and Group is not a function we would use in product design.

The row of "dupli_type" options [None, Frame, Verts, Faces, Group] comes from what is called an EnumProperty. Blender uses this as a radio-box-like interface to give you a choice from a list. The item you select determines which elements of the UI become visible.

  Right-Click on the Verts button, pick Edit Source, go to the TextEditor and open
  properties_object.py it will show at the line where that UI element is  referenced.

The Duplication panel's draw is like this. Notice that the 5 possible states are covered by the if-elif-elif-elif. Notably the choice for NONE results in no drawing at all because it isn't in any of those tests. There's nothing to show in the case of 'NONE' so a 5th logic statement is redundant.

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

    ob = context.object

    layout.prop(ob, "dupli_type", expand=True)

    if ob.dupli_type == 'FRAMES':
        split = layout.split()

        col = split.column(align=True)
        col.prop(ob, "dupli_frames_start", text="Start")
        col.prop(ob, "dupli_frames_end", text="End")

        col = split.column(align=True)
        col.prop(ob, "dupli_frames_on", text="On")
        col.prop(ob, "dupli_frames_off", text="Off")

        layout.prop(ob, "use_dupli_frames_speed", text="Speed")

    elif ob.dupli_type == 'VERTS':
        layout.prop(ob, "use_dupli_vertices_rotation", text="Rotation")

    elif ob.dupli_type == 'FACES':
        row = layout.row()
        row.prop(ob, "use_dupli_faces_scale", text="Scale")
        sub = row.row()
        sub.active = ob.use_dupli_faces_scale
        sub.prop(ob, "dupli_faces_scale", text="Inherit Scale")

    elif ob.dupli_type == 'GROUP':
        layout.prop(ob, "dupli_group", text="Group")

To make a custom panel for this you need to make a custom (deputy) EnumProperty, which should include some code to update the real property.

import bpy

class HelloWorldPanel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "Hello World Panel"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "object"

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

        layout.prop(ob, "deputy_dupli_type", expand=True)

        if ob.deputy_dupli_type == 'VERTS':
            layout.prop(ob, "use_dupli_vertices_rotation", text="Rotation")

        elif ob.deputy_dupli_type == 'FACES':
            row = layout.row()
            row.prop(ob, "use_dupli_faces_scale", text="Scale")
            sub = row.row()
            sub.active = ob.use_dupli_faces_scale
            sub.prop(ob, "dupli_faces_scale", text="Inherit Scale")

def register():
    # give all objects a new property (also known as an attribute)
    # called "deputy_duply_type".
    bpy.types.Object.deputy_dupli_type = bpy.props.EnumProperty(
        items=[
            ('NONE', 'NONE', "", 0),
            ('VERTS', 'VERTS', "", 1),
            ('FACES', 'FACES', "", 2)
        ],
        default='NONE',
        update=lambda s, c: setattr(s, 'dupli_type', s.deputy_dupli_type)
    )
    bpy.utils.register_class(HelloWorldPanel)

def unregister():
    bpy.utils.unregister_class(HelloWorldPanel)
    del bpy.types.Object.deputy_dupli_type

if __name__ == "__main__":
    register()

The downside in this case is that changes made back in the original Duplication Panel are not reflected in the state of your new deputy_dupli_type property. This may lead to some confusion, but if you aren't using the original panels then it isn't a problem.

Some code clarification:

update=lambda s, c: setattr(s, 'dupli_type', s.deputy_dupli_type)

The take-away from this line is (even if it looks like gibberish):

Once the user picks a different option from the object.deputy_dupli_type, this triggers the object's dupli_type attribute to be set to the same value as the newly selected option.


Noob question : why are my Cycles render too bright, even with no lights? Why are my Cycles render so bright, I even tried to erase all lights and it makes no difference... :(

Below render example. It's supposed to be a commercial kitchen. Looks great with Eevee but with Cycles looks like big snow storm...

It looks like you have inadvertently enabled the Ambient Occlusion setting in the World properties. Disable Ambient Occlusion again and all should be fine.


All white and untexturable part of my mesh It my 2nd week of using blender and still learning. My problem is a part of my mesh is untexturable and all white but my mesh is not 2 or more objects its only 1 joined mesh

heres my blend file

It's because these parts of the mesh don't have the Material assigned to them for some reason. Select these parts in Edit mode, then select the Material in Material slots and click Assign.


How does the Particle Instance modifier work? I'm trying to figure out the Particle Instance modifier and how it functions, but as yet have had little success. I'd greatly appreciate it if somebody could give me a rundown on its functions and how to use it.

This modifier allows FX but works only with another object that has a particle system.
An example:

Add a cube and give it a particle system with Hair,
Add a UV sphere and apply particle instance to it,
Now, in Particle Instance, select the  cube in the object field.
In Particle System experiment with hair length.

Try out all options.


While rendering, after a few seconds my screen glitches out, then my computer BSOD's My PC is custom built, it has a Ryzen 5 1600 14nm and an AMD rx 570 with 16 GB of ram on a gigabyte b450m ds3h motherboard. Nothing is overclocked and I can run games just fine and with blender it seems to have the same power draw so I don't think its a power issue. In games, I have not experienced anything like this, even with max power draw. https://youtu.be/B6w_vKzFH6Q that is a video of the issue. I have tried limiting the power draw of my GPU and that doesn't help. My drivers are up to date, I'm using open cl with my CPU and GPU checked and under cycles settings, I have my GPU as my compute device. Even if I render with CPU as my device, it still happens. Didn't used to happen. Temperatures are just fine usually around 60-70 while under load.
This is a link to the project I am trying to render https://drive.google.com/drive/folders/1pgYE_1C1TcLQLkrghEq8Nac6qNlHIWAD?usp=sharing
the images were rendered on a different computer.

I have found that when I have instant replay on and record desktop on in radeon settings, it crashes. If turned off, I have no issues at all. Thank you for your time.


How to render a night scene I really need some help regarding rendering a night scene. When i tick the denoising option. My render become ugly where there is a black dirt on the image. As in the image below.

And if i untick the denoising option. There will be a lot of noise in the scene.

How should i really render this kind of scene. Hope anyone can help me. And sorry for my bad english.

The problem you are most likely facing is that you're render samples are too low.
This can make the denoise feature in cycles produce blotchy artifacts.

The way to fix this is by going to Properties >> Render >> Sampling

Under "Samples" section, increase the Render value gradually until you get desirable results.

Also make sure not to overdo it because setting the value high (like 1000) can have a massive hit on your computers performance.


Force uv unwrap to obey seam I have an extruded circle with a seam:

When I unwrap, the seem is not split. How can I force blender to split the UV map along the seam?

Use follow active quads.
Select the faces next to the seam. then select all and unwrap using folow active quads.


Use HDRI without lighting the scene? How do I use a world HDRI without lighting the scene? I only want it to appear in reflections (and maybe the background - not sure yet), but I want to manually light the scene with light objects. This applies to both Cycles and Eevee.

My answer works for the Cycles-Render-Engine:
In the Properties Editor select the World tab.  There you find the menue Ray Visibility (only in Cycles!). Uncheck all the boxes except Camera. If you want to see the world-environment in the reflections check the Glossy-Ray.


How to reset/remove a shortcut? I have just started using Blender but I feel stupid that I can't find how to reset/remove shortcut added through

By accident I have added a right mouse to Remove Doubles so my right click functionality is gone. Every time I right click Blender tries to remove doubles and I can't seem to be able to reverse to standard behaviour..

I have tried exporting/importing factory settings through user preferences ( Input tab ) but that didn't work.

So can you please point me in the right direction how to reset the shortcuts?

Using Blender 2.69.

You can reset the shortcut in the User Preferences (Menu / File / User Preferences) Ctrl-Alt-U

Select the input tab
Searching the command
Click the x right to the shortcut to remove the shortcut.


Duplicating object and default value of property When I create some property in object:

bpy.types.Object.my_prop = bpy.props.IntProperty(name="MyProp",
    default=-1,
    description="My Property"
)

and I set the value of this property e.g.: bpy.context.active_object.my_prop = 10, then duplicated object will have copied value of original object.

Is there any way how to force to use default value (-1) of property in duplicated object?

Each property can have callback functions: update(), set(), get() and get(), set() callback functions allows force to use default value:

import bpy

values = {}

def cb_get(self):
    try:
        value = values[self.name]
    except KeyError:
        value = -1 # default value
    return value

def cb_set(self, value):
    values[self.name] = value
    return None

bpy.types.Object.my_prop = bpy.props.IntProperty(name="MyProp",
    description="My Property",
    get=cb_get,
    set=cb_set
    )

print(bpy.context.active_object.my_prop)
bpy.context.active_object.my_prop = 10
print(bpy.context.active_object.my_prop)

Example with more explanation can be found in this gist:

https://gist.github.com/jirihnidek/2e5218dd8bf06787e538

Edit: Reloading blend file using previous concept is risky (look at comments). Following solution tries to fix problems with reloading blend file.
    import bpy

def cb_get(self):
    if self.name != self.name_:
        self.name_ = self.name
        self.my_prop_ = -1 # default value
    return self.my_prop_

def cb_set(self, value):
    self.my_prop_ = value
    return None

bpy.types.Object.my_prop_ = bpy.props.IntProperty(name="MySecretProp",
    default=-1,
    description="My Secret Property",
    options={'HIDDEN'}
    )

bpy.types.Object.name_ = bpy.props.StringProperty(name="SecretName",
    default="",
    description="Expected name of object storing properties",
    options={'HIDDEN'}
    )

bpy.types.Object.my_prop = bpy.props.IntProperty(name="MyProp",
    description="My Property",
    update=cb_update,
    get=cb_get,
    set=cb_set
    )

print(bpy.context.active_object.my_prop)
bpy.context.active_object.my_prop = 10
print(bpy.context.active_object.my_prop)


Change active collection Is there a way to change the "active" collection?
I can check witch collection is currently selected with this code:

>>> bpy.context.collection
bpy.data.collections['My Collection']

But I can't change it using this property because is read-only. Is there a way to do that?

EDIT

After some research I found out part of the solution. I can use this code to get and set the active layer collection.

# Get the current active layer collection and store it in x
x = bpy.context.view_layer.active_layer_collection
# Select another layer collection from the outliner,
# then use this code to restore x as active
bpy.context.view_layer.active_layer_collection = x

the new problem is that x is not a Collection object, is a LayerCollection and we can't pass any collection created with the method:

myColl = bpy.data.collections.new('My Collection')
bpy.context.scene.collection.children.link(myColl)

So the refined question is:
How to obtain a LayerCollection for a particular Collection to change the Active Collection?

In Blender 2.80, I've had some success with something simpler that previous @johnzero7's solution :

collection = bpy.data.collections.new('My Collection')
bpy.context.scene.collection.children.link(collection)

# NOTE the use of 'collection.name' to account for potential automatic renaming
layer_collection = bpy.context.view_layer.layer_collection.children[collection.name]
bpy.context.view_layer.active_layer_collection = layer_collection


Mesh doesnt change in the viewport while view port shading is in render mode I'm sculpting a mesh in the 3d view port with the view port shading in 'render' mode, but the mesh doesn't show any changes I make until I switch to another shading mode. Is there anyway to change this?

That sounds like the update-hook/redraw-hook got lost.
Did you try toggeling edit and objectmode?
If that aint working, I'll try writing a patch.


Smoke Generation "Unpaired" from Object / Broken Quick Effect Smoke So I am trying to use blenders quick effect smoke but I am stopped every time I try because the smoke gen isn't sticking with the object I am using. I have tried following tutorials, but this doesn't happen in their videos. I also haven't been able to find evidence of this anywhere online. What is going on?
Videos:
https://drive.google.com/drive/folders/1XH8H9ozSjPsX8_aCMUjrQt17_6WLzw6J?usp=sharing

You have at least three choices when blender becomes stubborn in cleaning up its cache:

Go to the (Domain) folder with the particle cache and delete all the subfolders to clean up:

Coax a cache clear by changing a Domain parameter (like Resolution Divisions) and then change it back.

Change the simulation cache setting to Type = Modular, then it will be easier to "Bake", "Free", "Resume" (from an interrupted simulation if you hit ESCape

And yes, you have my sympathies that many things in blender can be a bit quirky and frustrating at times!


One object, lots of materials I made a stone cabin in blender but I forgot to set materials to different parts of it and I joined it all together.

Is there a way to set materials to loose parts or do I have to separate it (which would give me about 300 loose parts)?

If there isn't, can I somehow separate loose parts one by one (so that I can separate for example all parts of roof and rejoin them separately)?

You can separate mesh in editmode with P. You get some options to choose, I think they are self-explanatory:

To select specific loose part select any of its vertices and hit Ctrl+L.

You can also add multiple materials to object and each apply to specific faces:

Make selection and in edit-mode hit Assign. The first material slot will be the default one.


Material Based on Distance from Origin I am trying to make a brain coral.

Currently I'm using a displacement modifier with an actual brain texture, which looks quite good. However, I cannot figure out how to get the material to work right. My coral is based off of this image:

I want to make a gradient material that makes the deeper groves orange, and the extruded parts bright yellow, based on the distance from the center of the mesh. All of the online methods that I've tried so far have resulted in a gradient from one side of the mesh to the other.

Is there any way to do what I'm attempting?

I am currently using Blender 2.8 with EEVEE.

Considering your mesh vertices are approximately centered around the object origin (if not, this will not work as expected with this solution), you can use this kind of setting:

From the object output of texture coordinate (which gives x,y,z values relative to the origin).

Calculate the distance to the center (dot product then square root).

Subtract some value which may correspond to the inner orange part distance to the origin.

Input this result into a colorramp tuned to mix yellow/orange appropriately.


Fluid with blocks remesh modifier jittering When I added Remesh modifier with option blocks to the fluid mesh, bottom part of the mesh start move up and down.

How I can avoid it?

My blender file https://drive.google.com/open?id=0B_-tV3odolwlRUgxOUhCVm5Yb3c
Jittering start at 14 frame
Fluid gif
http://imgur.com/a/kMCib

I was following this tutorial https://www.youtube.com/watch?v=bpYkNTwK9Pg&feature=youtu.be&t

The heart of the problem  that boolean modifier must be placed before remesh modifier.
Maybe this problem is stupid, but I hope that this answer is useful nonetheless.


during copy transform constraint, the child object snaps to the origin point of the parent object When i use the copy transformation constraint, the child object snaps to the origin point of the parent object.

What i want is, when i constraint an object, the child object should remain where it is, but when i move the parent object, the child should move with it, maintaining the distance and the rotation offset between them.

It looks like the Copy Transforms doesn't have any Offset option (I don't know why), so I guess if you want it to copy each of its target's transformation you need instead to give it a Copy Location constraint (enable the Offset option), a Copy Rotation and a Copy Scale.


Make a spherical background image How do I make a spherical background image from a Blender model, for example a city at night, rendered onto the inside of a sphere for use as a background?

This is similar to the question asked here: How can an equidistance, spherical panorama image be generated from Blender Cycles? See the answer for information on setting up a Cycles-based equirectangular camera.

As Leander mentioned: If you prefer to use Blender Internal or the Blender Game Engine, a Skybox is probably your best bet (simply render six 90º FOV square images, then make a cube out of the results and use that to surround your scene.


Separate by vertex count - fast I make a terrain (ground + vegetation mesh) for an old game engine which needs all the geometry to be separated into chunks consisting of ~ 25k vertices max.

So far I use my "separate by radius" script which enters Edit mode, select faces in a given radius, separate using bpy.ops.mesh.separate(type='SELECTED') and continues until it is separated completely.

This is the original script:

import bpy
import bmesh
import time

class SeparateByRadius(bpy.types.Operator):
    bl_idname = "object.separate_by_radius"
    bl_label = "Separate by Radius"
    bl_options = {'REGISTER', 'UNDO'}

    max_diameter = bpy.props.IntProperty(name="Radius", default=0)

    def execute(self, context):

        if self.max_diameter == 0:
             return {'FINISHED'}

        context = bpy.context
        scene = context.scene

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

        obj = bpy.context.edit_object
        me = obj.data

        bm = bmesh.from_edit_mesh(me)

        time_start_updating = time.time()

        def separateNextChunk():

            bm.faces.ensure_lookup_table()

            if len(bm.faces) == 0:
                bpy.ops.object.mode_set(mode="OBJECT")
                bpy.ops.object.select_all(action='DESELECT')
                context.active_object.select = True
                bpy.ops.object.delete()
            else:
                active_median = bm.faces[-1].calc_center_median()

                continue_next = False

                for f in bm.faces:
                    f.select = False
                    if (f.calc_center_median()-active_median).length <= self.max_diameter / 2:
                        f.select = True
                        continue_next = True

                bpy.ops.mesh.separate(type='SELECTED')
                # Show the updates in the viewport
                # and recalculate n-gon tessellation.
                bmesh.update_edit_mesh(me, True)

                if continue_next == True:
                    separateNextChunk()

        separateNextChunk()

        print("Separated in " + str(time.time() - time_start_updating))

        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

While it does the job, it is EXTREMELY slow - the splitting often results into ~2000 objects and this take hours to separate using this method. I suspect the reason is that we are doing modifications of the original (large) mesh by the each single separation.

I have tried to find some alternative methods that would generate the chunks without modifying the original mesh, but as I am not a Python programmer, it started to be too complex for me.

I would appreciate so much if anyone can share some specific ideas how to enhance the script to get it work noticeably faster with the same output, the requirements are:

separating into chunks of a given max vertex count or given area
splitting must use the existing mesh (no cutting)
UVs, materials and vertex colors must be preserved perfectly

A .blend with the resulted mesh, just Join all the pieces to single mesh for the purpose of a script testing.

Divide and conquer!

I think the main point for performance is to have smallest objects as soon as possible.

For that, the idea is to use a dichotomy: split the object in half, then each half in half, etc. So cutting an object is faster at each iteration.

The following code is doing it using the bounding box of the object. Boundings are in local coordinates in Blender.

So we get the boundings. Find the spatially largest axis then cut in half on it.

Once vertices are selected, we use 'select linked' to avoid the faces or edges to be cut.

import bpy
import bmesh
import time
from mathutils import Vector

def cut_object( obj ):
    #Gets the bounds
    bounds = [b[:] for b in obj.bound_box]
    #0 is the min
    min_bounds = Vector( bounds[0] )
    #6 is opposite corner to 0
    max_bounds = Vector( bounds[6] )
    delta_bounds = max_bounds - min_bounds

    #Get the axis which corresponds to the largest area
    axis = 0
    if ( delta_bounds.x < delta_bounds.y ): axis = 1
    #Commented below as using Z axis has unwanted effects in your situation
    #if ( delta_bounds.y < delta_bounds.z ): axis = 2

    #The center is the limit
    limit = min_bounds[axis] + 0.5 * delta_bounds[axis]

    #Set the object active
    bpy.ops.object.mode_set(mode = 'OBJECT')
    bpy.context.scene.objects.active = obj
    #Set selection mode
    bpy.ops.object.mode_set(mode="EDIT")
    bpy.ops.mesh.select_mode(type="VERT")

    #Select the wanted vertices
    bpy.ops.object.mode_set(mode = 'OBJECT')

    for v in obj.data.vertices:
        v.select = v.co[axis] < limit

    #Extend to linked parts (so wont cut the faces or edges)
    bpy.ops.object.mode_set(mode="EDIT")
    bpy.ops.mesh.select_linked()

    #Get the selected vertex count
    selected_count = sum( 1 for v in obj.data.vertices if v.select )

    print( "Axis: " + str( axis ) )
    print( "Selected: " + str( selected_count ) + "/" + str( len( obj.data.vertices ) ) )

    result = True
    #Check that will separate something
    if selected_count == 0 or selected_count == len( obj.data.vertices ):
        result = False
    else:
        bpy.ops.mesh.separate(type='SELECTED')

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

    return result

print( '-----------------' )

max_vertices = 10000
max_iterations = 20
iteration = 0

found = True

start_time = time.time()

discarded_objects = {}

while found and iteration < max_iterations:

    found = False

    #Get all objects that have more than the wanted vertex amount
    for obj in [x for x in bpy.context.scene.objects if len(x.data.vertices) > max_vertices and discarded_objects.get( x ) != True]:
        if cut_object( obj ):
            found = True
        else:
            #We can not cut it, so discard it
            discarded_objects[obj] = True

    iteration += 1
    print( "Iteration: " + str( iteration ) + "   Objects: " + str( len( bpy.context.scene.objects ) ) )

end_time = time.time()

print( "Elapse: " + str( end_time - start_time ) )

The code is commented. So I think all is said about that.

Results

For a limit of 25k per chunk that gives 33s here.

For 10k, this is 50s.

Comments

You may prefer cutting differently. For instance defining a virtual cube surrounding the object, then cut it in half and use its part to cut the mesh.

The given code version does not included cutting along Z. It works, but is far longer when the wanted amount of vertices is low (10k for instance). The reason is we can only separate few faces at each iteration.

I'm also wondering why you need to start with such large mesh? Why the process does not allow to start from small parts instead this big one?

Here is the blend file with the script included:

Edit

Here is a version with no iteration limit and including the cut along Z.

But, practically cutting along Z won't work for small chunks (tested on 10k).

The reason is several parts of the mesh are tall and close to each other. So they can't be separated the way the algorithm works because select linked will nearly select them all and only few very small parts will be separated.


Blender 2.8: Very hard to see selected vertices & edges in edit mode I am running Blender 2.8 2019-04-30 hash e8daa615704b and it is very hard to see selected vertices & edges in edit mode. In the attached image the left and top edges on the forward face are selected, and if I look very closely I cna see that, but it is not nearly as easy to see as it was in 2.79 or in videos I have seen of 2.80. I also had the same result with an earlier version (f32902e6dacf) from on or about 2019-04-23.

Is there a preference I can set to make this more visible? I understand this is beta software and I may just have to wait. If it isn't controllable via a preference value then I will look to see if a bug has been filed.

Thanks, Matthew

Since the edge edit mode in your screenshot is displayed with default line width, you may want to check the overlay's option in the 3D View panel header bar.

After entering the edit mode, Mesh Edit Mode options will appear in there. Without the center checkbox been checked, the line display in edge mode will be slightly bigger then normal to make difference from face mode.

And for vertex mode,
you can change directly in Setting >> Themes >> 3D View >> Certex Size, but the line width won't change either.

An alternative way is changing Setting >> Interface >> Line Width to thic, making literally everything bigger than usual. Which might not be the best solution.


Automatic moving of unselected objects & detailed Blender documentation I am using Blender like for CAD-like work because it does what I want and the 25 CAD programs I tried do not. Argh.
I use S -> Selection to Cursor a lot. Sometimes Blender moves the shared meshes of UNselected objects. How do I control whether Blender will move unselected objects' meshes (esp. make it stop)? I have been trying to learn to use objects created with Duplicate Linked, but if the object already exists, I switch its mesh to match.
I am regularly running into the problem of a lack of detailed information on Blender features—in this case, what linking does under the hood, which sometimes copies some attributes instead of connecting them. Is there a reference that is more in depth than the short doc pages? Perhaps for coders?

Thanks for the explanations. I will hunt down resources to explain what Blender thinks origins are, not to mention how it handles non-absolute world coordinate systems. I'm wondering if learning about "local" coordinates might help me, which I've seen reference to.
It seems unnecessarily confusing because at most times Blender pretends there are no absolute coordinates, which is bogus, since that is how it knows where to draw things relative to where it draws the X, Y, and Z axes. I could figure what Blender was doing in operations if there were a visible absolute reference for everything. I can't very well keep moving all objects' origins to their geometries to understand what an operation involving origins is doing.


Where is the file directory of blender modifiers python code? I kinda want to experiment with remesh modifier, and mess up with it's code. So I just want to know where it's python code located. Is it in C:/Users/UserName/Appdata/Roaming/Blender Foundation/Blender ? Also I want to know.. if I edit the code, will my blender crash or corrupted if I run the modifier. Thank you for response ^^.

Modifiers need to be able to deal with a huge volume of data, which is one of the reasons why Blender has them implemented in C.

In short, there is no Python code for the modifiers.

If you modify the C code for the modifiers & build your own Blender, then yes, there is a chance that Blender will crash (same as any other modification of its code; this is not limited to modifiers).


Delete freestyle after rendering In some cases I want to have the Ray Tracing-render and the Freestyle-render seperated, so I can post-process it in Photoshop. It seems to be that the Freestyle lines are placed onto the render after the Ray Tracing renderprocess. So my question is

Is it possible to delete Freestyle lines after rendering?

The first thing you have to do is enable freestyle and create a new render layer(I called it lines).  Next, you can delete the line set for the default RenderLayer and add one for the lines layer.

You can then enable transparency and(on the lines RenderLayer) disable use Environment, AO, Surfaces, and Hair.

If you render now it will render two RenderLayers, one with your scene and one with only the lines.  You can switch between them at the bottom of the UV/Image Editor(after it renders).  Then, if you then switch to the node editor and enter the compositor and check Use Nodes, you can duplicate the Render Layers node and set the duplicated one to the lines RenderLayer.  You can then connect both of their outputs to two file output nodes and select the output destination(Remember to give them names).  It will then output the lines and rendered image separately.


How does real life camera sensor size affect tracking on Blender? I don't quite understand deeply what the relation of the real life camera sensor in relation the tracking with the virtual camera size.
I've always worked with direct aspect ratio (i.e: 1920 x 1080). In the case of Arri Alexa sensor size to full 35 mm. And that's about it. That's all I used to PFtrack to do his bidding. Later I'd refine track. Put some markers, export to .FBX and voilá: I got my Matchmove.

But I ask this question because when I do the same with my phone tracking is offset. On a Droid Turbo, the resolution of 10MP (4320x2432) can record at 1920x1080 24 fps. The focal lenght is 4.5 mm. Viewing angle 66.5ºx40.3º. Sensor size 5.9x3.3 mm. Crop factor: 5.9x

With those numbers, I don't know how to setup PF track or any other tracker since:
If I set the sensor size: I get an automatic size frame which I cannot modify (it gets ghosted)
If I set the Image size: I get an automatic crop factor which I cannot modify (to set the sensor size).

I guess this should be pretty straight forward in PF track or any other Tracker (Boujou, Blender, Shiloette, etc..) but I don't know where to put what information provided above.

Could someone help me with this please?

If you use Automatic Refinement for the focal length during the solve process in Blender then it shouldn't really matter, since Blender will calculate the (more or less) correct focal length for the given sensor size. For the final image it doesn't really matter anyway, as long as aspect ratio and the camera solution itself are fine.

But if you want to be sure you have the correct solution by comparing it with real world data, like your actual camera sensor size and focal length, you can fill in those values in the Camera and Lens panels of the clip editor and see if you still get a proper solution. If the automatic refinement calculated something that is way off from the real world data, then probably something is wrong.
Of course, as you described, you have to account for the crop factor. An iPhone will hardly have a true 35mm or so focal length, but rather something like 4.2mm. But if you take into account that it also is not a full frame camera, then it's really just about the correlation between focal length and sensor size that matters in the end.

See this video, where I try to describe it:
https://www.youtube.com/watch?v=yjLTg37hFUM&index=9&t=0s&list=PLtuvwW4VAp5tu2RdbRHThM6FVFfvFur1g


How do I convert a Mesh's autosmooth result into an edge selection? To illustrate my problem, I have this object with autosmooth applied at 30 degrees.

I wish to convert the resulting hard edges from autosmooth to marked sharp edges, or at the very least an edge selection. So the end result would appear as follows:

My goal is to commit the current smoothing splits, use the sharp edge selection and mark them as UV seams, as you should always have a UV split for every smoothing split anyway when baking normals.

Can anyone help me out with this?

It probably isn't possible to convert the selection Auto Smooth uses internally to define edges shown as sharp ones however it should be easy to select those edges additionally. In the 3d viewport header open Select > Sharp Edges to run the operator and create the selection.
In the operator options make the angle threshold to be the same as in the Auto Smooth option (so if Auto Smooth was set to 30 degrees make sure same angle is set in the Sharp Edges selection options). In the end same edges as ones used by Auto Smooth will become selected.


Why do I lose my selection when switching to the 'Paint' mode of the UV Editor? I create empty project, and do Smart UV project on simple cube. After this, it is possible to select faces in the UV Editor tab ("View") mode:

But when I want to switch to the ("Paint") mode, the selection is
reset and brush fill fills the whole image.

I tried to switch to the texture paint mode and enable buttons like
"face selection masking for painting" and
"Keep UV and edit mode mesh selection in sync", but nothing helps.

My main goal is to be able to fill faces with brush selecting faces in the UV editor mode. Please tell me if this is possible at all.

The Face Selection Masking in the the 3d view header is only available in the 3D View in Texture paint -  the UV Image Editor in Paint mode does not respect this restriction. If you use the UV Image Editor for the face selection, and then tab to Texture paint mode in 3d view you can then turn on Face Selection masking and see the focused selection ready to paint - and it will only deliver paint in that face plus whatever bleed amount you have set in the Options tab in the toolbar.

For now, the best option is to use the fill brush in the 3d view with the face selection masking. Because of this, I added the vertex group selectionint the Texture Paint Plus addon version Spirou4d and I have been changing. Texture Paint Plus CDMJ fork I have a video on it as well.youtube video on selection masking

I haven't found a way to be in edit mode and in texture paint mode yet, so for now the keeping the selections in sync won't work while painting.


Cutting a "channel" halfway into a shape? What I mean:

How can cut this groove?

The "channel" doesn't go all the way through, probably only half way or so (Using a picture to build my model so I can't tell for sure). It's suppose to be a height adjuster like you would find on a lawnmower for the height of the blades. was wondering if I could use the boolean modifier but I didn't know if one shape has to go all the way through the other shape for the modifier to work properly.

What do you's think?

You can use knife project.

By hiding the faces you don't want to cut, you can control which faces get cut with the shape and which are left uncut.

Example:

With the shape object selected,  Shift-Select the object you want to cut and enter edit mode:

Select the bottom faces (the ones you want to preserve with no cuts) and Hide them (H)

Then in top orthogonal view press the Space Bar and type Knife Project. Enable Cut Through** and then unhide the hidden faces (AltH)


Cycles: How do I exclude the Environment Texture from reflections? In a Cycles scene I have an equirectangular image serving as an Environment Texture background (set in the World settings).

I have a glossy object being partially lit by the Environment Texture, as well as getting reflections from it.

Is there a way I can exclude the Environment Texture from affecting the glossy object completely? I want the image as background wallpaper only. The glossy object should be affected by other objects and lights within the scene: everything except the Environment Texture.

You could use Is Glossy Ray and a mix node in your environment material, but it might look weird..


How do I snap multiple objects, based on a vertex from one of these objects, to a vertex of another object? As per title.
I have essentially half of my work that needs to be moved, and I want to move it sharply, snapping as it was snapped before to the other object.
I had to reduce the height of the floor of a building, and I need to bring down all the rest of the building.
I could of course just "put it there, more or less", but as I'm here and I want to learn Blender for good, I prefer to wait and ask.
I've spent now almost one hour between attempts, moving the cursor, selecting a vertex in edit object mode, etc. and watching tutorials.
I even tried to move the origin point of the object that must be reference for the group of objects to move, to the protagonist vertex. Doesn't work even like this.
A realy mistery.

Snapping is a bit hard to control sometimes, but you could create an empty on the vertex location, parent all your objects to this empty, and move the empty until it snaps to the destination vertex:


Why is Blender just using 54% of my CPU when rendering in cycles? Blender is only utilizing 54% on every core of my CPU (as shown in TaskManager) when rendering in Cycles. How can I make it use 100%?

Can this be fixed within Blender or is it more of an OS/hardware-related issue?

Try to changing the number of threads to the same amount of the CPU (in this case 10)?


Why are the drops so large on a water simulation? I'm trying to make a waterfall, but the water turns out too big compared to a human. Why are the drops so large? What am I doing wrong? I tried to change the value Resolution but more than 300 Blender crashes. Please help!

You can consider the 'domain' to be made up of a 3-dimensional grid of cells. Each cell is a cube and Blender calculates the properties (density of fluid, motion of fluid, etc.) for each cell.

The Resolution setting indicates how many 'cells' should be included in the simulation - effectively the number of cells along the longest edge of the domain.

So, for a domain in the shape of a cube and with Resolution set to 300 you would have a grid of 300 x 300 x 300 cells - ie, 27 million individual cells!

Most Blender crashes are actually due to running out of memory - when you perform some action (such as setting the Resolution for a fluid simulation, the number of Sub-division Surface divisions, the Remesh detail, or whatever) that results in Blender requesting a considerable chunk of memory that your computer cannot handle - so it either grinds to a halt or crashes blender (or your computer) completely.

Fluid simulations are a trade-off between cell size and number of cells. Obviously you want small cells so as to get a more accurate simulation but you also want to reduce the number of cells to improve efficiency.

In your particular example, it appears that you have a large cube domain - you can see the water running over the 'floor' of the domain. If you don't actually require the water simulation to include the droplets running over the 'floor' then a simple way to reduce the number of cells will be to shrink your domain to include only the waterfall and sufficient space infront and behind to contain any splashes off the model.

As an example, if you reduce the front-to-back dimension to only 20% of the current size then you'll save 80% of the memory requirement for the simulation. The free memory can then be used by upping the resolution further - which should give you better detail for the liquid. An 80% reduction in one dimension will mean you can get almost double resolution in the same memory (510 instead of only 300).

When baking the fluid simulation, the Bake button shows an indication of the memory required. Changing the resolution will affect this value - if it gets too close to your computer's available memory you may want to reconsider before pressing 'Bake'.

Also, make sure your fluid domain is set up correctly for the liquid you are trying to emulate and at the correct scale. For example, set the Fluid World Real World Size to match the domain size (the longest dimension) and set the vicsocity - this will affect how the fluid behaves and how the liquid breaks up into droplets.


Is there a way to move, scale and duplicate hidden objects with the gizmo? I'm using 2.80 and want to do several difference booleans on an object.  I would greatly prefer to adjust the modifier object while it is invisible so I can clearly see the results.

What I really want to do is move and scale with widgets so I can easily do so on a specific plane, then duplicate the object for another boolean.

Using the properties editor I can move it, but I haven't figured out if I can use said editor to scale on just two axes so I sort of get what I want but it is very cumbersome.

I'm new to blender so I'm unsure if there's a setting I am missing or there is some other way to achieve a smooth workflow.

Summary
You can constrain the location, scale and rotation of the to-be-hidden object to another object, which you then manipulate to indirectly influence the invisible object.

Preface
Some terminology I'm using for clarification:
'Target' = The object that Boolean-intersects the mesh, you want to hide this but manipulate it as well;
'Modifier' = The object that you need to manipulate to indirectly manipulate the Target object.

Constraining the Target to the Modifier object
Create a duplicate of the Target object (linked(Alt-D) if you also want to edit the Target's mesh, but a link is not required).
This duplicate will be the object you manipulate, the Modifier object.

Note that you can also just use an Empty or generally any object; I like to duplicate the object to better see what is going on.

Create three constraints on the Target object; Copy Location, Copy scale and Copy Rotation.
For Copy Location you will want to enable the Offset option; this will allow you to move the Target object away from the Modifier object instead of them occupying the exact same point in space.

Copy Scale and Copy Rotation should be set up correctly as soon as you add the constraint. You may need to adjust the 'Invert' options on the Copy Rotation constraint to get the Target to link in the correct orientation.

The target for all constraints is the Modifier object.

If you select both the Modifier and Target object and duplicate these(Shift-D), the Target copy will already have it's constraints set up to target the duplicated Modifier.

Images for reference
Image 1: Here you can see the setup of objects and the constraints. The Target is already hidden and is selected in the Outliner. Note the position of the hole in the Cube.

Image 2: Now if you move/rotate/scale the Modifier object, the Target will move/rotate/scale accordingly.


How to avoid gap after merging two objects I tried to merge two objects A and B, before merging, I use the snap tool to snap each other perfectly along the edges as shown in the screen shot, After merging, the A and B become one object, then I selected them all by hitting "A", then beveling, I found the "Green X" area are beveled which I don't want to have, what should I do to make this face become one piece so there doesn't have any bevel in between?

Left White Mesh. A Cube with loop cuts and one face [extruded] in the z direction.  Thus having the edges you might need to control bevel operation.  Next 2nd White Mesh Selected. Edges selected and the bevel operator used.   These meshes are intended as crude facsimiles of yours.
At this time we think having a fresh start is easier than [join] operator.  Or at least equivalent.
Possible option. 3rd from left Blue image. Faces selected and [Face Dissolve] operator used for a ngon, on both sides. Yellow image on right. Inset faces.


Mirror across 2 axis and only get two objects? I want an object mirrored across the x and y axis but I don't want 4 copies of it.
Is there a way to do this?

I have already tried rotating it around the center point using the array modifier but problems arise when I need to rotate the object relative to the center. Its copy doesn't rotate because it is bound to the empties transform.

I want to be able to modify it like a mirror.

It took me hours to figure out how to do this. But I figured it out.
Step 1: Place the object you want Rotated/Double mirrored at the location you want.
Step 2: Add an empty at the point that you want the rotation to take place.
Step 3: Add a mesh to the same coordinates as your empty. Then go into edit mode and delete all the vertices.
Step 4: Add a boolean modifier to your empty mesh and select your desired object as a unity target.
Step 5: Add an array modifier to your empty mesh and set the offset to be the empty you created in step 2.
Step 6: Rotate the empty to whatever angle you desire.
Bam you have a rotated copy but get to keep the origin of your original object.

It also works with as many as you want.


Strange issue regarding procedural textures I am fairly new to this software and have been experimenting with the interface for the past month. Recently I wanted to create an object with a voronoi texture but something strange is happening. The texture splits in half in inverts the 2nd half. I have looked up online to have found nothing discussing this problem. The normals on the object are all fine and I have even pulled up a new file just to test it. Here are some screenshots of what is happening. I'm sure the answer is fairly simple most likely a setting I accidentally activated. Thank you.

You have to connect the texture through the height input of a displacement node first - see below:


Why an object looks darker after Applying Scale and how to fix it? I was trying to create a symmetric wall by doing:

Shift + D to duplicate the wall on the right side and move it to the left.

Change the Scale of Y of the duplicated object to -1.

Ctrl + A to apply scale.

And the color of the object changed.

How can I change it back?

Blender does not fix surface normals(vectors defining surface direction) automatically when you invert the geometry so they are pointing the wrong way - to the inside of the object. The best thing to do would be to flip the normals:

Note that you need to be in edit mode and have the geometry selected. You can also reach this function from Faces menu that can be called with ctrl+f, you can just hit f once the menu is called - that's a very quick way to reach the function.

You could also use Recalculate Outside(ctrl+n) or Recalculate Inside(ctrl+shift+n) functions, however this might lead to undesired result if you have a mesh that has normals already set up in some particular way or if you are working with geometry that the automatic algorithm may not be suitable for (for example simple planes might confuse it since it cannot determine where the outside should be and if you have a few disconnected planes in one object that might be a problem). Most people will advise to recalculate normals in this situation, however it is a lot more logical to just flip them instead if you know that the problem is caused by inverting the geometry(scaling with a negative value).


How can I Unwrap this high poly model? I am trying to UV unwrap this high poly model, however it is not working correctly.I tried putting seams on various edge loops but didn't work. Although, by looking at the UV Map, it looks somewhat fine to me, however the texture looks so messy. Plz Help!

-Base Model

-Resulting UV map using SmartUVProject

-Checker Texture Applied based on the above uv map

Try the Cylinder Projection mode, just make sure that you are in an orthogonal frontal view.


How to zoom in and use the scroll orbiting with a 1mm object? I have a 1mm sphere and can't use zoom or scroll to navigate properly, to be clear, at first it was impossible to zoom in, then I change the view port scale to 0.001 and again to 1000, after that I was able to zoom in, but not too close of the object.
The other issue is with the scroll orbiting, when I hold Shift the movement is really slow and without Shift too fast, is really hard to control.
I have some objects in a normal size (about 10cm) and need to work with this to scale, when I changed the view port scale to 1mm I couldn't zoom out to use the bigger object.
I'm using Blender 2.81

I had the same problem to zoom into 1mm sphere and to solve it you should select the object you want to zoom into then click /. This works like a charm


How to check if object is cycles light source? My first idea was to get the surface type of the material. If this is an emission shader it should be a light source, but I can't find something in the python documentation to get the surface input.

You can do this by getting the material and checking if there is a node called Emission in the node tree, like this:

import bpy
obj = bpy.context.object
nodes = obj.data.materials[0].node_tree.nodes
if "Emission" in nodes:
    print("yes")

Likewise, you could also check for a EMISSION node by using this instead:

for node in nodes:
    if node.type == "EMISSION":
        print("yes")

That way if the user had changed the name it would still catch it.


Poly-count for final render? So, the poly-count feature in the bottom right-hand corner reflects viewport data.

If I want to see the count post-modifiers (the final render value) how would I do that? I have a rather large scene with many modifiers hidden/lessened to avoid lagging and crashes and want to see how large my project really is before I hit render.

John

Blender, sadly, does not currently calculate the poly-count the final render quality of a mesh object. I tried going into the rendered viewport. It shows the final surface quality of the objects, but the count does not change to the amount of vertices in the scene. I hope that Blender has that feature in later editions.


Objects disappear when looking through camera When I go to camera perspective, there are parts of my object that I can't see. I tried adding and deleting my camera a lot of times and positioning it so that the objects I would like to see on my camera view will be seen but to no avail, I still get the same problem.

What could be wrong with my camera set-up?

I guess this is a clipping distance issue. Select your Camera, go to the Camera Data tab and check the End value of your Clipping Range.

Blender 2.8x

Blender 2.7x


Rotate Individual Origins Of An Array Of Faces With Proportional Editing On I am trying to rotate an array of faces with with proportionally edit on:

Each face needs to rotate on its on individual origin.
Proportional editing should gradually diminish rotation from the first to last faces.

I am blocking out the vertebrae of the human spine.

L1 faces (the unhidden faces) need to be rotated and L2 - L5 should inherit this rotation but L2 - L5 must inherit the rotation in diminishing amounts and must rotate on their individual origins.

How do I do this?

I don't totally understand but if your trying to rotate on the faces origin just change pivot point to individual origins.


DWG to Blender, how can I import I use software to produce kitchen visuals that use dwg files, does anyone know how I can get this file into Blender, is there a free converter or any other way so I can try to use Blender to render?

I look forward to any feedback

Convert them in DXF

DWG is a cad standard format, but it's propetary so it's unlikely that you'll find a direct importer soon. I would save those file from the cad application in the DXF format and then import those.

Blender has a built in DXF importer that works quite well. You just have to enable it from the user preferences.


How can you create a 2d fluid/paint animation effect? I'm trying to create an animated version of this image, sort of like a cartoony paint-mixing effect.

My first and simple approach was to screen-record a fluid simulation toy (there's plenty on the internet) and apply a blur and a color-ramp. The effect is OK but it's limited as it cannot create blobs of color "floating on their own", they are always tied to the intensity of the original image.

I've also tried the Texture Synthesis add-on's style transfer feature, but it doesn't really work.
Another option would be procedural texture nodes. I.E. distorted texture coordinates to alter a colored image or just animated noise textures with a color-ramp on their own. However, these techniques may be limited in some ways (the distorted image will get blurry and using a color ramp would have the same problems as before).
Finally, there could be a way to do that with particles, turbolence and dynamic painting, but I'm not very confident with particles in blender.

You can get something pretty close with the mix of 2 Musgrave (or other textures):


trying to create this texture with blender for 3d printing I'm trying to recreate this texture on blender for 3d printing however I am having difficulty achieving the raised parts of the hollows.The below image is the closest I am getting. Any tips?

You can use the Tissue add-on for this.

Create a quad mesh with the contours you want, then create a tile object that is a pit.

Select the tile object, then the contour object and press the Tessellate button. A new mesh will created with your perfect pits where each quad face was.

You'll want to keep the Scale value low, and enable the Merge option so each tile will be connected.

You can then smooth the shading and add a SubSurf modifier to get something very close to your reference photo.


Volume through glass in Eevee? Is there a way to make volume visible through a glass object in eevee?

Sure. Just use this node arrangement for your glass. Pay attention to the blend modes highlighted on the right:

EDIT - My bad, I didn't see you wanted a refraction component. Adding it is easy, just add  a Refraction BSDF and use another Mix Shader to combine it with the existing glass shader. See below (Note - I used a sphere in the image because the gem doesn't refract so well - surprisingly).


Is there a way to control the axis that a force field applies force? Is there a way to control the axis that a "Force Field" applies force? I'm specifically trying to constrict the force to the x & y axis not the z axis using the "Force Field" on a Cell Fractured Object. More force in the green and much less in the blue.

You can constrain the spherical force of a field into a cone or a tube, but these are directional.

To achieve the equatorial emission you require I recommend placing a
force field in the middle to distribute particles.
Then 2 more force fields above and below at the polar regions. They
will repel the vertical emitted particles.

Note that in this demonstration I have turned off the initial Normal emission speed.


Creating realistic plastic with parting lines? I'm trying to understand how to model/render realistic plastic in Blender. The part I couldn't figure out how to create yet is the parting line (the line where the plastic mold connected during the molding/injection process, like in this image:

Can anyone explain how to achieve this efficiently in Blender?

Thanks in advance!

Here is a way to do it, you could make the parting with a simple extrude (but you could as well do it with a Bump node). To make the plastic material you could mix a Diffuse with a Glossy node. To create the small wave bumps and the logo, use a MixRGB (Add mode) to mix a Wave texture with an Image Texture, and plug the MixRGB into the Normal sockets of the Diffuse and GLossy.


How do we assign a second material to selected faces in 2.8? I'm trying to assign a second material to top and front faces (using 'assign' button in the material collection, as explained here). But instead the faces become transparent:

They are transparent in the preview and in the rendering as well. If I remove the second material from the collection (slots?), the faces are visible again.

Things I did:

Reinstalled Blender to be sure.
Swapped materials for faces, faces with material from slot 2 are transparent regardless of material in slot 2.
Added a third slot, and linked faces to random slots. Slot 1 always work, other work randomly, not always the same which work.

Using Blender 2.81a, with a default new scene, cube and default material except base color.

File: http://pasteall.org/blend/index.php?id=52755

This is a known issue when using multiple materials with a number of older GeForce, Quadro and other end of life graphics cards even though they seem to meet the minimum requirements.

  Blender Known Issue: Drawing error with multi-material object. Faces disappear or showing artifacts with 2 or more material slots applied to same object. When trying to use a second material or more on an object, the faces where it is applied become transparent or in some cases they are distorted as black rectangles that stretch to the origin (this second occurs above all with more complex models than a cube). It happens in Blender 2.81 as well as in Blender 2.82, but in Blender 2.80 there is no such error.

While the bug report lists multiple cards, the list is not exhaustive (I have this issue on my card, the GeForce 9800 GTX+, which is not listed). The core issue is the recentness of the video driver. In the case of NVIDIA GPUs, they have to be able to run NVIDIA drivers greater than v400. The highest driver that I can install on the GeForce 9800 GTX+ is GeForce v342.01.

I can confirm that as listed in the bug report, I can use multiple materials in Blender 2.80 without a problem.


How to access the OTHER half of texture? (after applying mirror modifeir to a textured half) I am new to Blender, and have created and textured (painted) a symmetrical model using the mirror modifier (this character is 99% symmetrical in shape and colour).

Now I want to do some further work on it as a NON-symmetrical object, with textures and geometrical changes on one side only. But I have no idea how to do this.

Is there a way to generate a new completed texture from this image? Preferably retaining the relative position of the UV mesh on the texture I made? I'd prefer to avoid creating a non-symmetrical texture from scratch, as this object requires a highly detailed texture that needs to be 99% symmetrical. It also needs to be low-poly.

Cheers.

Apply the mirror modifier. If you dont apply it before unwrapping, both sites will be overlapped (usefull if you want symetrical textures).

Hope it helps.


Extrude edge along roof angle I'm trying to extend an edge from the existing roof face axis.
How can I do this? I want it to go all the way down to the lower part of the building. It must connect there (I want a edge there too so the remaining right part of that lower building will be cut off).

You can create new transform orientation for that edge.

Select side face of the roof. In the N panel create new transform orientation (you can create it pressing Ctrl + Alt + Space, as Gonzou mentioned):

The created orientation should be selected as active. If it isn't, in Alt+Space menu select this orientation (it will be called something like Face). Switch to Edge selection mode, select your edge, extrude it, cancel moving by Esc and start grabbing pressing G twice.


Blender 2.8 rig not fully updating on render I know 2.8 is still in beta mode so I was just wondering if anyone else is having this same issue and if it will be fixed at some point. My rig has lots of drivers attached to it. For some reason the 2.8 version of blender is really slow at updating the location of the mesh around the armature when it moves. Sometimes I have to double click the time line for it to fully update dependencies. When I go to do a render, it can forget sometimes also. Like I said, I know it's a beta, but has anyone else noticed a slow armature registry and is this a known issue? If so, I hope they fix it because my rig works great in 2.79 Didn't they do a full rebuild of the bone system?

The problem is caused by collision, if you have multiple collision on a armature it causes this problem. normally the armature should have priority but something gets mixed up there.

As soon as I remove all collisions it worked like expected.


How to execute python code after each stroke painted in image editor? Is there any possibility for that? Modal operator seems to be not suitable for that

You can achieve this by using a scene update handler that monitors the state of the active image in the image editor.

For this technique to work you need to:

Create or open an image in the image editor window on the active screen.
Save your image to an external file once.
Also: the script will save any change to file immediately. If you don't care about that, this solution can work for you.

The example below illustrates how you can set a new random paintbrush color after every stroke.

import bpy, random

def run_if_img_changed( scene ):
    im = None
    # References the active image in the image editor
    for a in bpy.context.screen.areas:
        if a.type == 'IMAGE_EDITOR':
            for s in a.spaces:
                if s.type == 'IMAGE_EDITOR':
                    im = s.image
                    break

    if im and im.is_dirty:
        ## Replace the bit in this if clause with your code
        print( "Image changed!" )

        # Set paintbrush to random color
        bpy.data.brushes['TexDraw'].color =  [ random.random() for c in 'rgb' ]

        ## End of replaceable sample code

        # Save image so it will no longer be dirty
        im.save() # This line will crash the script if you haven't saved the image to a file yet

bpy.app.handlers.scene_update_post.append( run_if_img_changed )