MSGBUS drops subscriptions on new or reload blend file Any ideas why the subscription via msgbus to property changes (node/attr) are dropped while starting a new blend or reloading a blend file?

I use msgbus to subscribe to changes to a node name (in the sverchok blender add-on) and I setup these subscriptions once in the register() of one of my nodes that need to monitor such changes. Everything works fine after I just launch Blender.. however, once I reload a saved blender file or create new blend the subscription does not work anymore. Reloading the scripts fixes the problem (since the subscription call is re-run).

(see here a video version of this description: https://youtu.be/-KwFKuxbnJs)

    VIZ_NODE1 = sverchok.nodes.viz.vd_draw_experimental.SvVDExperimental
    VIZ_NODE2 = sverchok.nodes.viz.viewer_idx28.SvIDXViewer28

    subscribe_to_list = [(VIZ_NODE1, "name"), (VIZ_NODE2, "name")]

    def msgbus_callback(*args):
        message = args[0]
        print("msgbus_callback: ", message)
        # propagate the messsasge to all layer nodes
        layer_nodes = [n for n in bpy.data.node_groups['NodeTree'].nodes if n.bl_idname == "SvViewerLayerNode"]
        for node in layer_nodes:
            print("propagate msgbus callback to:", node.bl_idname)
            node.viewer_changed_name()

    owner = object()

    def subscribe_to_viewer_changes(subscribe_to):
        # listen for changes to the "name" property of any node of viewer classes
        print("layer_nodes_subscribe_to_viewer_changes: ", subscribe_to)
        bpy.msgbus.subscribe_rna(
            key=subscribe_to,
            owner=owner,
            args=("Viewer node name property has changed",),
            notify=msgbus_callback,
        )

    def layer_nodes_subscribe_to_viewer_nodes_name_changes():
        print("layer_nodes_subscribe_to_viewer_changes")
        for subscribe_to in subscribe_to_list:
            subscribe_to_viewer_changes(subscribe_to)

   ...

    def register():
        print("Registering the SvViewerLayerNode classes")
        _ = [bpy.utils.register_class(cls) for cls in classes]

        layer_nodes_subscribe_to_viewer_nodes_name_changes()

```

The bpy.msgbus.subscribe_rna() is not persistent and will be removed when loading a new file. A persistent application handler, can be used to subscribe to the message bus when a new file is loaded. The example code below demonstrates this by appending a persistent handler load_handler to bpy.app.handlers.load_post.

This answer also contains a more detailed example of msgbus in an add-on.

import bpy
from bpy.app.handlers import persistent

# For more information see source/blender/python/intern/bpy_msgbus.c
# and https://developer.blender.org/P563

# Object that will store the handle to the msgbus subscription
subscription_owner = object()

def notification_handler(*args):
    print(f"Object: {bpy.context.object.name}, Location: {bpy.context.object.location}, Args: {args}")

def subscribe_to_active_obj():
    # What the subscription is for, in this example the active object.
    # Note that for properties it may be necessary to use `path_resolve`
    # as shown in https://developer.blender.org/P563
    subscribe_to = bpy.types.LayerObjects, "active"

    # Subscribe to the msgbus to call the handler when the key is modified.
    # Please note that not every UI interaction will publish an update,
    # despite modifying the key you've subscribed to. For instance, when
    # subscribed to `bpy.types.Object, "location"`, changing the location of
    # an object through the move tool won't call the handler automatically,
    # while updating the location property in the "Tranform" panel in the
    # sidebar will. The publishing of an update can be forced through
    # `bpy.msgbus.publish_rna()`.
    # The "PERSISTENT" option ensures that the subscriber remains registered
    # when remapping ID data, it does not mean that the subscription remains
    # persistent when loading a different file. This can be accomplished with
    # a persistent application handler that is called on file load.
    bpy.msgbus.subscribe_rna(
        key=subscribe_to,
        owner=subscription_owner,
        args=("a", "b", "c"),
        notify=notification_handler,
        options={"PERSISTENT",}
    )

@persistent
def load_handler(dummy):
    subscribe_to_active_obj()

# Register the handler, ensures that the subscription will happen when a new
# file is loaded.
bpy.app.handlers.load_post.append(load_handler)

# Subscribe to the active object for the current file.
subscribe_to_active_obj()

## Explicitly notify subscribers of changes to this property
# bpy.msgbus.publish_rna(key=subscribe_to)

## Clear all subscribers by this owner
# bpy.msgbus.clear_by_owner(subscription_owner)


Merging nurbs sphere with cylinder I want to merge the nurbs sphere with a cylinder as shown in the image below. I am a bit new to blender and very unsure how to go about doing it. The way I learnt to merge two objects is with ctrl + j but this does not work in this case.

Here's how I'd go about it:

Add your UV/Nurbs sphere.

Go into 'Edit Mode' and select the top faces then delete them like so:
EXAMPLE

Go into edge mode and, whilst holding 'ALT' click the one next to it select the ring:
EXAMPLE

Press 'E' then 'Z' to extrude that ring a little bit on the 'Z' axis
EXAMPLE

Press CTRL+R to add about 3 loop cuts (scroll on mouse to increase number of cuts. For a sharper connection add 3 cuts or 4 depending on what you want.
EXAMPLE

Using the 'Ring Select' method I described above, select the open ring and, again, extrude it up a little.
EXAMPLE

Now add a SINGLE loop cut, as we did before, but this time, when you've done it, press CTRL+B to bevel it - using your scroll wheel to add 3 or 4 new edges.
EXAMPLE

8.Move them up so that they're just below that top edge.
EXAMPLE

Now select all of those top vertices and move them up to the desired height.
EXAMPLE

Once again select that top open ring using the 'ALT' and click method.

Press 'F' to cap it.

Go into face select mode and select that new face.

Press I to inset that face by about 0.004, pretty much a tiny amount. You can change the values in the bottom left...
EXAMPLE

Now add about 8 edge cuts, or as many as you need so that there are an even number of edges in-between the top and bottom of the cylinder.
EXAMPLE

Come out of 'Edit Mode' right click you mesh and choose 'Shade Smooth'

Now add a 'Subsurface Modifier' and change the 'Levels Viewport' to 2 or 3 depending on what you'like.

You should now have this result:


alpha texture madness Blender 2.79

windows 8.1 x64

I have made an earth with a few textures.  Then I place a slightly larger sphere around the earth, and put clouds on it.
When I turn on the alpha channel of this larger cloud sphere, there are very bad artifacts in the 3d view.
1) the spot where the specular highlight should appear on the earth is completely erased
2) The area around the clouds is very blocky and bad, sometimes punching holes in the earth behind mesh under it.

I am attaching the .blend.

What is going on here?

It's known problem in blender. And BF working with it. Look how this will be look like in 2.8, in Eevee:

But now. You can switch render engene to Blender Game, and change Alpha Blend type to Alpha Anti-aliasing:

It looks better.


Python: Select faces of a certain size? I have a complex mesh that I want to select its "large" faces only, as the mesh has considerably large faces and much smaller ones. Is there a way I can write a script to select faces that are larger than a certain amount in Blender, Imperial, or Meter units?

Bmesh Version

Simple test script, run in edit mode. Rather than a particular size, which is a little tricky once scale is involved, for example sake, selects faces 6 x larger than average face area.  ... find the max, and select all faces over a certain percentage of that or.... use the sorted list to select n biggest etc etc.

Note this doesn't take into account mesh deformed by modifiers.

import bpy
import bmesh
context = bpy.context

FACTOR = 6
ob = context.edit_object
me = ob.data
bm = bmesh.from_edit_mesh(me)
avg_face_area = sum(f.calc_area() for f in bm.faces) / len(bm.faces)
print("avge face area: ", avg_face_area)

# biggest is last member of faces sorted
#faces = sorted(bm.faces, key=lambda f: f.calc_area())

for f in bm.faces:
    f.select = f.calc_area() > FACTOR * avg_face_area

bmesh.update_edit_mesh(me)

A run on Suzie


I have two objects, and in UV Mapping, one has a value of UVTex, while another has UVMap Whenever I try to join the objects together, the UV Map is entirely messed up, to the point where all of my objects' faces are one vertex.  Should I not join the two right now, and do it later, or should I find a way to get the value to be the same for both.  If someone could give me some advice as to what to do here, that'd be great.  Thanks! (I use cycles render.)

I had this issue before. Rename both UV maps (on the mesh properties panel) to have the same name, then join (ctrl+j) the meshes and both UV maps should be preserved.


Character modeling:Front view model is not aligned with Side view model I am new to Blender.I am following a tutorial found on youtube.I have created a model for my character's face in front view.But it is not aligned with side view/right view.That means, it's position on the right view is so much below the character's body let alone in the exact position on the face where it should be.Can I align it or should i start over?


Relief Detail Not Showing In Eevee I textured my model in Substance Painter and exported the textures to Blender. Material seems working overall but Relief details that i made using alphas in Substance are not visible in Eevee. They are visible when I use Cycles however.

I solved it by replacing the Displacement node with Bump node and connect it to Normal node input on BSDF. Here is how my node editor looks like now;


Possible to connect an actuator to a Python controller in BGE? Like you can connect a And, or Or controller between a sensor and an Actuator, but does it makes sense to connect a Python controller to an sctuator?
In that case, what would it take to trigger the actuator: a True value returned by the Python module? (if the controller is in module mode, I believe a script doesn't have a return value)

And by the way, is it possible to get a Sensor's value (eg. a property) in a Python controller it's connected to, or are sensors just triggers?

It depends on what you want to do with the python controller. It can just be triggered and do something, but it can also read the data of sensors and activate actuators. It doesn't matter though if your controller is in Module mode or in Script mode. Also scripts don't return something (no matter in which mode they're running). They only read data and manipulate.

Controller

But to do anything first you need to know the controller. After importing the bge module (import bge) that is needed for almost everything you want to do in bge, you have to get the current controller your script is executing from. cont = bge.logic.getCurrentController() From now on you can get the sensors and actuators attached to the controller and the object the controller is in.

Sensors

Besides activating controllers they can be read from scripts. There they can either gather data or read if the sensor is active. But to do anything you need the sensor. sensor = cont.sensors['SensorName'] does that. Listing every attribute would be too much. So here's a page where you can look everything up. Generally this page (http://www.tutorialsforblender3d.com/) is worth taking a look at. And you can't only read the data, but also manipulate the properties of the sensor. It's generally like any other attribute (thus sensor.attribute = value). But what you probably need the most is knowing if a sensor sends a positive pulse.

if sensor.positive:
    #do something

is what you're looking for.

Actuators

You get the actuator the same way you get the sensor: actuator = cont.actuators['ActuatorName']. Again, you should take a look at the page to know how to manipulate the actuators through the script, this time at the actuators. Activating the actuator is done through the controller: cont.activate(actuator)

Object Properties

Last but not least there are the game properties in objects. The properties you need the most are the ones in the object your controller's in as well. So we first need to get the object: own = cont.owner
Now to read or edit it's game properties you need to use own['property'].
So var = own['property'] reads a property and own['property'] = var edits the property.

Conclusion

Yes, you can connect sensors and actuators to a python controller and read their data or activate actuators. Also you can read and edit an object's properties.


Black Seams When Rendering Normal Maps in Cycles as in the images appears: the first picture is the bake normal and rendered, and as you can see it appears some "seams" around it and with a low height, and in the high poly model you can see the height that it has, so what could be the problem? i ensure that the simple node setup its fine and correct setup.

this pictures shows the optimized model,baked normal, and node setup

this is how it looks all the high poly model details...

It's just a problem with the aliasing, Blender can't bake with anti-aliasing, you need to bake a  very large texture and downscale after to reduce aliasing, or try your bake with xnormal or other software


Is it possible to scale and rotate the 'image for clone tool'? I have the same question as the user hooliganzo from blenderartists.org, I copy his question here.

"In the UV editor under paint menu with clone brush selected. I can select an image under the paint menu, move that image around over the UV and click on the UV map to paint that texture on the UV texture. The problem is that I can't figure out how to scale or rotate the clone source image.

Here is what I am talking about

I can move it by holding RMB and that is it. I've tried pressing S and R by itself and I've tried it while holding RMB. I don't know if it is even possible but it seems like something that would be implemented."

The answer is "no", you cannot rotate the clone source in the Image Editor. But an alternate is available that DOES allow you to rotate and scale your image source, and that is by loading the clone source instead as a Brush Texture in the properties panel while using the TexDraw brush (default texture paint).

The Texture then needs to be set to 'Stencil' in the tool bar Texture panel. Zoom out, and then move the stencil with RMB, scale it with Shift-RMB, and with Ctrl-RMB you can rotate it. The same thing can be done with the Texture Mask set to Stencil, but use Alt-RMB to move, Alt-Shift-RMB to scale and Alt-Ctrl-RMB to rotate.

This same set up works in the 3d view for painting directly on your 3d textured object. Have some fun!

edit: Also you can use the Stencil Widget by Kgeogeo that allows to use a lot of controls on the stencil texture/texture mask


Inset creating strange, bulky result please excuse my rather vague title, I have no idea how else to describe what I am having here, I hope with the screenshot and maybe further questions from your side there can be a solution found to this.
Now to the matter: I am following a tutorial, here is the link:
https://www.youtube.com/watch?v=6Yxrke72isQ
In this tutorial that guy just used the inset tool to make this roundish edge of that object in question and when he does it it is a smooth line, while when I do it I get separated bulky things which I do not understand, since I was following every step thoroughly.

I hope you guys know this issue and can share your knowledge with me.
Thanks for the attention.

You must unckeck Individual.

See the image below with the Individual checked:


Blender 2.8.2 Crashes on Startup (Windows10) - Not enough video memory? Update: Also tried 2.78 - It seemingly gets little bit further but still hungs up before accessing the program.

I just installed Blender 2.82a off the Windows64 installer on my brand new PC and it crashes upon starting. No error visible at all.

I had previously chosen to use the OpenGL renderer (figuring it would better suit my video card). I'd like to try choosing the DirectX one instead but I can no longer find where you are able to choose.

I also tried uninstalling and installing Blender 2.7 to no avail. Have also installed the latest Python just in case, but that was no good, either.

I did a debug memory dump on the cmd.exe and the results are below.

My system configuration is found here: https://www.dropbox.com/s/m80bionqd0qfipv/blender_system_info.txt?dl=0

A more detailed debug output is here:
https://www.dropbox.com/s/i7ulibwgmgm2hlw/blender_debug_output.txt?dl=0

Any tips would be much appreciated!

Specs:

Windows 10
Intel Core I9-9900
Asus rog strix b360-f
Geforce RTX 2070 Super with latest Nvidia drivers (445.75)

Microsoft Windows [Version 10.0.18363.752]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\Diego>"C:\Program Files\Blender Foundation\Blender 2.82\blender.exe" --debug-memory --debug-gpumem --debug-all > results.txt.
GPUTexture: texture alloc failed. Likely not enough Video Memory.
Current texture memory usage : 0.00 MiB.
GPUTexture: texture alloc failed. Likely not enough Video Memory.
Current texture memory usage : 0.00 MiB.
GPUTexture: texture alloc failed. Likely not enough Video Memory.
Current texture memory usage : 0.00 MiB.
I0407 23:31:42.917873 11880 blender_python.cpp:184] Debug flags initialized to:
CPU flags:
  AVX2       : True
  AVX        : True
  SSE4.1     : True
  SSE3       : True
  SSE2       : True
  BVH layout : BVH8
  Split      : False
CUDA flags:
  Adaptive Compile : False
OptiX flags:
  CUDA streams : 1
OpenCL flags:
  Device type    : ALL
  Debug          : False
  Memory limit   : 0
GPUTexture: texture alloc failed. Likely not enough Video Memory.
Current texture memory usage : 0.15 MiB.
Error   : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF66F0C7295
Module  : C:\Program Files\Blender Foundation\Blender 2.82\blender.exe

Debug on Blender 2.7a is as follows:

Microsoft Windows [Version 10.0.18363.752]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\Diego>"C:\Program Files\Blender Foundation\Blender\blender.exe" --debug-memory --debug-gpumem --debug-all > results.txt.
AL lib: (EE) UpdateDeviceParams: Failed to set 44100hz, got 48000hz instead
C:\b\blender\source\blender\gpu\intern\gpu_texture.c:655: Pre Texture Unbind'' -> GL Error (0x0505 - GL_OUT_OF_MEMORY): Out of Memory
C:\b\blender\source\blender\gpu\intern\gpu_texture.c:655:Pre Texture Unbind'' -> GL Error (0x0505 - GL_OUT_OF_MEMORY): Out of Memory

OK I figured it out. I was connecting my display to the motherboard's HDMI port instead of my video card!

I couldn't access my Nvidia Display Properties as I "Didn't have an NVIDIA GPU attached to my display" so I suspected that was related, and when I fixed that, Blender also worked like a breeze. No wonder it couldn't properly find video memory, etc.


Fluid Simulation is not working when a object is used as fluid obstacle I am trying to simulate the fluid in a pipe. The fluid obstacle object (pipe) is converted to mesh from a path. I have set a fluid inflow at one end of the pipe and fluid outflow at one end of the pipe. When I try to bake the fluid domain it stays as a cube and nothing happens.

Just as a test, I created a simple pipe (converted to mesh from a path) in another file and tried to flow the fluid through the pipe, it was quite slow and sluggish as compared to the simple pipe extruded from a cube.

Is the failure in the fluid simulation is due to more complexity of the obstacle object or some problem with setting of fluid objects?

Aside from making the resolution high, you would need to subdivide the fluid, and increase the fluid speed and duration to match your animation. I.e. if you are running a 500 frame animation at 50fps, set the fluid time: (1 to 500/50). This will match the fluid speed to your animation so that it doesn't go slower than normal. Lastly, if you don't have the computer memory to run the sim at a high resolution, scale up the objects while keeping the domain at the smallest you can. It needs to be bigger than the fluid objects, though.


Python get shader tree in headless mode? I was able to get CompositorNodeTree with this code in headless mode:
scene = bpy.data.scenes['Scene']
print([y.name for y in scene.node_tree.nodes])
print(type(scene.node_tree))

Now how to get ShaderNodeTree?
If I were able to get ShaderNodeTree, I would just do:
shader_tree = get_shader_tree()
image_node = shader_tree.nodes["Image Texture"]
image_node.image = bpy.data.images["my_image.png"]

but blender seems to not store shader tree any where in data, how can I do it?

Context:
I want to generate synthetic image dataset of 10 000+ images with different lighting. For lighting I used sun object and set HDRI with image texture connected to background nodes in Shader editor. (Like most of the tutorials suggest).
In order to automate the process of generation, I need to substitude HDRI image in Shader Editor.
Because I don't have powerfull GPU on my PC, generation takes more than a week to render all images. However I have a Ubuntu server with very powerful GPUs, and I want to move rendering process there, here is where the problems come up:
In order to update ShaderNodeTexImage, I need to have access to ShaderNodeTree, but without GUI it's not possible to switch context.area.ui_type to "ShaderNodeTree" because ui_type is not present in headless mode.

I found out that each object has shader node_tree. In order to manipulate HDRI, I need to change Shader Tree of World object.
Shader Tree is attached to World object too, here is how I get Shader Node Tree of world object in headless mode:
bpy.data.worlds['World'].node_tree


"No camera found in Scene" error I just started blender and one of the main things you have to do is to render to make an animation, but I can't seem to do that. Whenever I click Render and then render image or render animation, at the top of the screen it says 'No camera found in Scene "Scene". I don't know why this is happening.

I don't know any other reason, except you have no camera in your scene.

You can add a camera by: Shift + A  > Camera.

Or maybe you have a camera in you scene, but it is switched off for render. Check the little camera icon on right side in Outliner.

There are Eye for visible in viewport, arrow to prevent selection, and a Camera to toggle visibility in render.


How to Export correctly a standalone Game? I've finished the game I made and I wanted to export as runtime.

Firstly I installed the 2 necessary addons.

Then I read a couple of threads here and packed all into .blend and then made all external data relative. Afterwards I moved that .blend into a new empty folder and exported as runtime.

From the first look only the video-textures did not work but after I manually moved them to the folder where the executable is they were loading correctly (I guess making files relative had something to do with this working).

Now I moved the whole folder to a new pc( with the same OS-Windows10). I could not run it. So I downloaded blender and python there, in case the exported file is not like an executable(although it is .exe) but it still did not run.

Gave me a message like "contact the creator of this software".

So I think I messed up somewhere, and this brings me to my question. What are all the steps to export a BGE game so it can run to a new pc? And what are the requirements of the new pc to run it?

Edit: Tried running it, into a 3rd pc and it ran fine. This time the 3rd pc had OS-Windows 7(64bit). The 2nd pc that did not run it was 32bit and the pc it was created was 64bit. Anything I should know there?

You only need one addon, is "required" that you have everything (textures, videos, others blends, sounds, etc.) in the same folder as your primary blend.

This highlighted files will be create when saving as runtime and they are required to be in the same folder of the .exe, if you are using only one blend and have already packed all external data you still require all that new files.

If you have this type of texture problem that I had while writing this answer:

Notice the next block is not in the same order of the gif

First i open the "blend file" and make paths relative and no change (but lol i has editing the wrong file...) so i pack all into blend and again no chage, then i almost realize and i set the textures names again then pack all and save the file and no change (lol). Finally i change de name of the file to load the want edit and the textures were there:

Disclaimer

I do not know if by repeatedly packing, make the blend file bigger.

Notice the file that i exported to run time is diferent from the one with the textures problem.
In the case of only one file after make the pack or repack, export it again to run time but this time dont need to check the copy of bundle and dlls.


Can't find subdivide for Blender 2.9 I'm a complete noob. I was following this tutorial - https://www.youtube.com/watch?v=mGRt24fYYWU
and nothing happened when I pressed cntrl + 4 so I've been looking for "subdivide" but every tutorial I look for has it in different places that don't seem to exist. For instance it's not in the object context menu when I right click.

In order to use the subdivide tool, you must first be in Edit Mode.

Select the edges you want to subdivide, or hit "a" to select all
Go to "edge" tab in top left next to what mode you are in
Hit "subdivide"

For more reading, here is the Blender Subdivision Documentation
Hope this helps, good luck!


Rigging eyes parented to armature offset I have an armature and two eye balls objects, and I created the eye bones eye.L/R to have their tail in the center of the eye object, and parented the eyes to the bones, but at some point, it got offset.

The most weird thing is that the eyes appear at a different Z-value, even though the bones are exactly in the same spot, and the eyes real Z-values are identical.

If I unparent the eyes from the bones, they snap into exactly where I want them.

I have some IK and eye targets going on, but that doesn't seem to affect this.

What did I do wrong?

Please see the blend file:

The easier and correct way to do it is using the Copy Location object constraint as shown below:

this will fix your problem.

I noticed also that your Pose Position is different from your Rest Position, where the bones are rotated. To make the eyes roll with the bones I added a Copy Rotation as shown below:

This is the end result:

In Rest Position:

In Pose Position:

Updated .blend file can be found here:


How do I import a Blend file from another project without losing its materials,shapekeys in the imported version etc. I download an eye from blendswap and tried to append it to another project but lost all the information on it except the mesh itself. What i really want is a way to import the model with its textures once so i don't have to separately import the textures re-texture the eye.

Probably you've appended a mesh, which relates to vertices edges and faces only.

If you append an object instead, you will have all the textures and others attributes.

If your object is maden of different spare parts, select all objects you need (meshes, armatures, texts, curves, ....) make a group (Ctrl+G) and append the whole group.


How to figure out which parts of a track don't have enough markers I'm tracking a shot where none of the markers stay in frame the whole time, so I make up for the markers lost by adding new ones. I make sure there's at least 9 active markers every frame, but it still tells me I need 8 common tracks on each keyframe. How can I figure out which parts of my shot don't have enough markers?

You don't need the markers to stay in the frame for the duration of the shot, but you do need to have at least 8 successful trackers for a section from which blender can solve the scene.

The range of frames used for solving can be set in the solve section Keyframe A and B

If you can't decide which range of frames is best, you can let Blender decide for you by enabling the Keyframe option on the solve tab.

Please read through the following link: How can I get better results when doing camera motion tracking?


Connect hair particle to emitter mesh I'm trying to create whiskers of a hairy animal, and I can't found a way to keep the whisker's hair particle close enough to the mesh.

Here is an illustration:

It's not a mesh instance, I'm using the Cycles Hair Rendering with a "curve segment" primitive and "Thick" shape.

Is there a way to get rid of the offset between hair's start and the emitter mesh?

I've tried to reduce the velocity and increase the length, but both seems to do the same, increasing offset.

Well, I finally found what goes wrong. It's simply due to the particle settings: I checked "B-spline" in the "render" section, which interpolate hairs shape using B-spline, and induce a shift between the root vertice of hair and its actual rendered root.

I thought using this setting be useful to have smooth shaped hairs, but in fact using "Curve segment primitive" (Cycles Hair Rendering panel) is sufficient and works great !


Deleting an object from the outliner Not sure of correct term, but, how do you delete a layer such as the 'body' layer.

Once again, not sure of correct name for this, but the (244) should read (1). How is this deleted or changed?

That's not a layer view even tho it looks like one if you are coming from other software. The view you are looking at is called the Outliner and those are objects in your scene. To delete an object in Blender, you can go the the 3d view, select it and use the X key. From the outliner, right click the entry and choose Delete. Further reading — How do I delete an object?


Depth information from pair of stereo images I've been considering how to use Blender to extract depth information from a pair of images of the same subject (Whitby Abbey) but would appreciate some help in getting started. I've found a couple of previous questions that didn't seem to have a suitable answer (eg, Generate Z-Depth map from Stereo Image-Pair (just like nuke occula)).

My thinking is to use the pattern matching of the Motion Tracker to match up points from one image to the other and measure the parallax and calculate the depth to eventually generate a mesh.

I'm thinking what I need to know is can the motion tracker be used to match sections from one image to another and how could I go about this? What I want to do is to use Python to pick a point on one image and create a marker with specific dimensions and search area and get it to match it up to a point on the second image and return the coordinates of each.

Has anyone done anything similar? Any ideas, hints, tips, good starting points?

EDIT : The goal is to be able to sample hundreds (perhaps thousands) of points and to use the resultant measurements to build a mesh which could then have the original images projected onto it to produce a 3d representation of the original scene.

EDIT2 : What I really want to know is the following :

1) How can I use Python to create a Motion Tracking Marker - including setting its parameters such as size, search area, etc.
2) How can I use Python to position the marker on a specific frame
3) How can I use Python to trigger the marker to search for a matching pattern in the subsequent frame.
4) How do I get back the resultant offset between its location in one frame and the next.

I do have some limited experience of running Python within Blender and using bpy - and the maths involved (I'll be ignoring any complications such as camera distortion) - I'm just a bit lost in how to get started with interacting with the motion tracker.

Obviously, once I've got this part working I'll then need to start looking at how to use that information to programmatically create a mesh and potentially look to create an add-on - but that's another question.

Depth estimation from images is a well established field and Blender is not the software to go for. Look for keywords like 3D reconstruction, structure-from-motion, multiview stereo, stereo reconstruction, stereo depth estimation.
Typical approach will be to detect SIFT (or some other) features, match them, compute relative orientation of the cameras and then use something like semi-global global matching. The code you can find, for example, in OpenCV.
Look at this tutorial, which creates a disparity map. There is also stereo_match.py in OpenCV-Python samples. For feature matching look here.


Normal map baking artefacts I created a simple Hight-poly and Low-poly geometry. when baking Normal, I get strange artifacts. I tried to change the settings, extrusion,used cage. without result. Explain how to deal with them. maybe I'm doing something wrong. Blender_2.83 (2.8-2.83 - working same)

I found the problem. You need to bake 32 bit image (and save in 16 bit PNG for example)


Camera focal length settings to match a Kinect I have a question about the camera setting in the movie clip editor.
I am trying to copy the characteristics of a Kinect camera in Blender, but do not have much knowledge in photography.
All I know is that Focal Length must be 525. I configured this value in Blender, but the result is not right.

I changed the Width of the Camera Sensor to see what happens and obtained a different outcome. But I have no idea what values I should set (and if it is really this setting that I should change) to the camera to correspond to the real one.

According to the specs found here the Kinect has a horizontal viewing angle of 57 degrees.

Set your camera accordingly in the lens section:


Unicode font support in Blender I have checked if there is an article on this subject and i found none, Unicode fonts support languages that have letter joint connections, like Arabic for example. While blender can support Unicode fonts only that it doesn't create the text shape 100% connected, it overlaps the letters to mimic joint letters just like illustrator or any vector based software, but in the end result you end up with overlapped vector creases and unwanted results. When rendering you get flickering shaders that gives you bad rap on your project especially when you deal with typography animations that has loads of text in it.

here is a representation of a Unicode in blender and its results.

this is the result after rendering text using Unicode font.

You could try to convert the text to mesh Alt-C in object mode. After that switch to edit mode and select Remove Doubles from the Tools where you can adjust the Merge Distance.


Spaceship exhaust light So I'm trying to have my X-Wing and Tie fighter exhausts light up like the ones below.

Currently, they just look like this which isn't that nice. The material is just a red emission for the Tie fighter and a yellow emission for the X-Wing.

Anyone got any ideas on how to accomplish this effect, would it be something I would do later in After Effects. Also, how would I go about creating the laser beams like the ones in Image 1?, I was thinking of just using the saber plugin for After Effects but they never look that nice.

Thanks in Advance

3 things that you have to keep in mind:

You have to use the Filmic Color Management
The engine emission shader must be very bright and just a bit desaturated
You have to add a Glare node in "Node Editor" > "Compositing Nodes"

For the laser beam I've made this setup

The laser beam is just an elongated "drop" with a very bright green-yellow material. I've made the beam to move rapidly forward and i've enabled the motion blur option.


How to render this matcap in cycles? I would like to render a material similar to this. been trying all day, but can't come close. I tried searching for a similar material online (like plastic or rubber) but to no avail.

There are lots of ways to do this. Here's one of them:

The Value node determines the softness of the highlights.


Texture not showing in viewport The texture are not showing in 3ds viewport
how can i solve?

thanks guyz

Update:
Details of Material/Texture

thanks

Update:Attached file
Suzanne.blend

Last Update:
It works when i put an light and the style view on Material =D

thanks a lot man!

Welcome Tiago!

Try changing this to Material (not texture):

After that, add a light to your scene, should work :)


How can I make this arm accessory? I want to make some sort of arm accessory/ cover, but I don't know how I should approach it. Here is a reference picture.

All of them are a cylinder sculpted with multiresolution modifier. Here is what I have:
In the first picture it looks quite close to what I intended but I can't make the holes in it. (because of the sculpting, so I made another one).

In the 2nd attempt I deleted some faces, but forgot about the holes.

Here I could make the holes before sculpting the cylinder, but I destroyed them while making it closer to the object I had in mind ....

This is the raw cylinder with holes in it..
I've tried using the shrinkwrap modifier but it didn't do the trick for me

You can paint the holes with transparency. Basically, as you already did.
Bake the normal map from the Multires and then texture the accessory.
Use the alpha channel (or create a separate mask image) for Alpha slot of the Principled BSDF (or use a Transparent BDSF and a MixShader). Add some metal rings. That's it.
I had made something similar. Looks like this:
Low-poly mesh with rings (low poly circles + Solidify and Subdivision modifiers)

Textured with transparency (no baked normal map yet)

You can even pull a ribbon through the eyelets :-)

The ribbon is just flat plane with a Solidify and Subdivision modifier. In fact, it's not one part but several "V" parts.


Where is the Viewer node? Where is the Viewer node located at? Blender manual says it is an Output node but it is not under output.
I have blender 2.77.

Regards,
Koreenium

The Blender Manual is right. There is a viewer node under Output, but it's in the Composite Node Editor. I bet you are looking in the Material Node Editor.

To get one in the Material Node Editor, you have to activate the Node Wrangler add-on, then you can use Ctrl+Shift+LMB to create a temporary Viewer Node.


How do I close unwanted windows? The top two tabs won't close. I've tried and can't seem to find out how to get rid of them on my own.

There is a way. You must have all margin lines aligned to be able to close your top tabs. For example, Img 1 will close, but Img 2 and Img 3 won't.

Img 1:

Img 2 & 3:

To close your windows, collapse the top Info bar to the left by grabbing and dragging the hashmarks at the bottom-left, to the left. Then, grab the hashmarks at the top right of the bottom Info bar and drag upwards. Lastly, grab the divide line between the top of the 3D Viewport/Outliner and drag it upward to condense the Info bar.


Animation nodes: custom falloff shape? Is there a way to make your own custom falloff in animation nodes besides the default sphere or directional falloff?

Yes. You can use Custom Falloff node to make your own falloffs. For example we can make Mesh falloff using BVH Tree and Custom Falloff node.


Workbench renders quite slow I'm cutting a project in the blender "Video Editing" tool, and I am working on my rough cut. To be able to send it and watch it outside of blender, I'd like to render it with the "Workbench" renderer.

When I simply hit play in my timeline (and make sure to clear the cache with Ctrl-R) I can watch my cut in real time, it renders immediately.
But when I render my animation with "Render -> Render Animation" it is a lot slower. It is nowhere near real-time rendering. I'd say it takes about half a second for each frame.

I've set the Sampling to "Single Pass Anti-Aliasing" for both, the Render and the Viewport settings but it didn't change much.

Is there something else I'm missing?

My viewport and the rendered version also look identical from what I can see...

I figured out that using the Workbench renderer was the wrong way to approach it. Using View -> Sequence Render Animation was what I needed.


Why can't I select mirrored faces? So I've mirrored the faces to make a mouth, but can't select any of the mirrored faces, it's as if they are ghost faces.

I've tried selecting faces, going into edit mode and object mode, But I'm new to this app so I don't ave a lot of knowledge about it:

You cannot select mirrored faces. If you want to select them, you need to apply the modifier and from this point you can make the 2 half different.


How to generate realistic shadows on a shadowcatcher of a single object at a low elevation angle? I've been working on a Blender model (using Blender 2.79, but I've also tested in 2.91.2 and got the same result) with the goal of producing a realistic shadow image for an airplane from any angle. I'm using Cycles render engine, have imported my airplane model, and have a ground plane marked as a shadow catcher. I'm also using a Sun lamp with size 0 because I want crisp shadow edges. My lamp and camera need to be at the exact same location to generate the kind of shadow image I'm looking for.
My issue is that when I try to generate a shadow from a low elevation/grazing angle (around 30 degrees) I expect to see a long, stretched-out shadow on my shadow catcher. However, in reality I only see the shadow in places directly blocked by the airplane, meaning if I layer the outline of the airplane over the shadow image they are identical.
Does anyone know of settings I can change to get more realistic looking shadows?
Thank you so much for any help!

Answering the question from ZargulTheWizard's comments - since the sun lamp and camera were in the same location, no shadow with perfectly crisp edges would be visible to the camera. To get the shadow images from the specific angle like I wanted, I left the lamp at the specific angle to create the shadow and then moved the camera directly overhead (0, 0, height) the object to capture the "stretched out" shadow effect.
Again thank you so much everyone for your help!


UV Unwrapping is messed up because of a vertex leading into the wrong ending my UV Unwrapping is messed up because of a vertex that leads into the wrong ending creating a triangular face (which is not the best thing, as I followed some tutorials saying it). (I think thats the problem)
So the top left line should lead into a new vertex and not the same as the top right one.
Thanks in advance!!
I try to showcase it in the following Images:

Yes that is your problem and you can fix it by selecting the stray edge in Edge mode and dissolving it by pressing x and by selecting Dissolve Edges.

Next use knife tool k and draw the missing edges.

Accept the cut by pressing Enter.
Last select the newly created vertices and move them to better location by double pressing g and sliding them closer to the edge.


Tracking long panning shots I need to track the camera in a very long panning shot. Because the start frame and end frame don't have common reference points, I am only able to get fragmented track points. I can detect a camera pattern in the graph view but when I try to build this, the average error is too high.
Is it still possible to track a shot like this?

Yes, this is possible, although you will need to use the tripod solver. Also, you will have a difficult time doing a 3d scene reconstruction, because blender can't track depth in a panning-only shot. Also, make sure there is no zooming, as blender doesn't handle that correctly as of yet. Finally, make sure you have a decent number of solid keyframes (10ish) at each frame, and that the trackers are getting disabled AS SOON AS they begin to deviate (or be "obscured" by the edge of the screen).
Here are is the "Ultimate" BSE answer on motion tracking (required reading for anyone interested in blender's motion tracker):
https://blender.stackexchange.com/a/42332/28015


name depending on the position on a line I seek a means (python or other) to name objects aligned on an axis (in the example: z-axis)
I want all the objects that have:
the highest value on the z-axis is called "name_1.nnn).
the smallest value is called "name_2.nnn)
...
I have a lot of line so it takes a long time to do it manually!
addons like "name panel," "patch renaming" do not do what I want.

Sorting by z and x location

Simple script to sort all the objects in a scene named "Cube[.nnn]" by -z location and x location.  Added a tolerance of 0.0001, any cube with a z within is considered in same row.  The .nnn extension is the index in the order.

import bpy

context = bpy.context
scene = context.scene
# all cubes in the scene
cubes = [o for o in scene.objects if o.name.startswith("Cube")]
# row tolerance
TOL = 0.0001
if cubes:
    #sort them by -z , x loc
    cubes  = sorted(cubes, key = lambda o: (-o.location.z, o.location.x))
    row = 1
    z = cubes[0].location.z
    for i, cube in enumerate(cubes):
        if abs(cube.location.z - z) > TOL:
            row += 1
            z = cube.location.z
        cube.name = "Cube_%d.%03d" % (row, i)

To name them similarly to the convention in the q, could

cube.name = cube.name.replace("Cube", "Cube_%d" % row)

To make sure global locations are used, use cube.matrix_world.to_translation() instead of cube.location.

Or if the objects have differing origins, could use the bounding box centre as a location.


How to highlight intersection of meshes? I am making an animation of a molecule.
How can I highlight the intersection of spheres as shown in the below animation???

I tried volumes, but it is not showing the intersection prominent like this.
(Can we do it with Boolean)

Thank you so much in advance. :)

Yes, booleans can be used here. It should be noted that booleans can be rather glitchy in many cases. There are ways to mitigate them, but the methods I know of won't apply very well to the type of animation you're looking for.

Create a large cube that encompasses all of your objects. Then, apply two Intersect Boolean modifiers, one for each of the intersecting objects.

The first boolean will cutout the cube into something that resembles one of your objects (I say resembles simply due to the glitchy nature of booleans), and the second intersect will take the cube (that now is one of your objects), and cuts out whatever is not touching the second.

Here's a quick demo of that:


Colours in OpenVDB volumes *For more detailed information; see below
I am working with (OpenVDB) volumes in Blender, which I use to create animations. This is an example:

Both sides are different .vdb files.
Now, I want to make it so that both volumes have a different colour. Conventional is that the one has a red colour and the other one had a blue colour. I tried changing the blackbody tint in the principled volume node. This works quite alright, but also creates quite a problem. As seen in the picture below, the blue lobe becomes much smaller than the red one and the original. I have no idea why, so I think this is intrinsic to the colour (blue gets absorbed more per definition, I guess).

Currently, the Blackbody tints are set to [H, S, V] = [0, 1, 1] and [0.65, 1, 1]
An option could be to "play" with the other Principled volume settings of one of the volumes, but this changes the characteristics of the lobes, which is not prefered.
Does anyone have advice on what I can do to give the volumes different colours while appearing both just as big?
*More information:
We are working with molecular orbitals, of which .vdb files are created. These are density clouds.
We have tried splitting the files in different scenes and then altering the RGB curves of the scenes differently. This is not an option since the mixing of those scenes does not give the wanted (and real) result.
The other values in the Principled volume node are:

Density = 100.0
Density Attribute = "density"
Blackbody Intensity = 8.000
Temperature = 170000.0
Temperature attribute = "density"

The Principled Volume shader automatically picks up some details from attributes (eg, 'density' or 'temperature' and the Blackbody input can use this to generate the volume. This means it's not possible to change the Hue of the generated volume other than the Blackbody Tint - which effectively 'filters' the colours (multiply the RGB channels) - which loses some of the colour information.
The solution is to move the Blackbody colour generation outside of the shader and use the Emission sockets in place of Blackbody Intensity.
For a standard fire simulation this can be achieved with the following nodes :

Here the 'temperature' attribute node takes the place of the 'Temperature Attribute' in the Principled Volume node. The Multiply converts from the 0-1 range of the attribute into Kelvin (1.0 maps to 1000K) and the Blackbody generates the corresponding RGB values. The Hue Saturation node can be adjusted to change the hue without affecting the detail (change Hue from 0.5 to change the colour as desired).
Note that a maths node has been added to raise the 'flame' attribute to a power of 3. This seemed to be required to match the same intensity as that achieved when passing 'flame' directly into the Blackbody Intensity (presumably some conversion takes place within the Principled node itself).
You should be able to take this set up and replicate your results by using the 'density' in place of the 'flame' and/or 'temperature' attributes.
Here's an example of a standard Flame simulation with purple flame (Hue 0.2) to demonstrate the result :


How to create a "Rounded Grids" effect like in MagicaVoxel I can export a 3D model from MagicaVoxel as an OBJ file and import it into Blender no problems. The colours come UV-mapped onto a 256x1px PNG file.

I'm trying to get Blender to render this effect where each 'voxel' in the model has distinct rounded edges, like this:

I created a bump map image like so:

and then added a new texture to my material.

I set the mapping to "Generated" instead of UV. I set this to a Cube projection.

I got the scale right by setting the Texture Space like so:

Now when this new texture's Influence is set to Diffuse Color, I see this:

so the positioning seems correct.

However, when I set the influence to Geometry Normal, I see this:

What am I missing here? I guess this is because the Normal Map uses the RGB values to set the normals so I'm missing a dimension of displacement? If I try to use "Displacement" instead I get this:

Do I just need more of a gradient on my tile image? Or am I doing something more fundamentally wrong...

UPDATE:

Here's what the mesh looks like - it's not individual cubes.

Another Update
It really seems like a bug to me - if I can see the image mapped correctly as a diffuse color texture then why wouldn't it apply the corresponding bump map?

I've uploaded my packed .blend file here: https://www.dropbox.com/s/q3m23wurzeyqv19/rounded-grids-question.blend?dl=0

UPDATED ANSWER 1

Yeah, it might be a bug, you could report it into the bug tracker.

Here's the best workaround I could find:

set the influence to diffuse
create a second uv map (a quick Lightmap Pack should be fine)
bake into a uv-mapped texture (Bake mode: Textures)
now you can use this texture (in Cycles as well!) for the bumps

Cycles renders look better anyway, so you could consider this an improvement instead of a sad workaround :)

ANOTHER, EVEN BETTER, WAY TO DO IT

An hour later an even faster method occurred to me, where you don't need Blender Internal at all:

export-import as ply (the smaller faces in ply correspond to the original "grid")
add a second uv map.
when you actually unwrap it, just select "Reset" - this assigns the full UV space to each face
use your original bump texture, which will be assigned to each grid face

ORIGINAL ANSWER

The simplest way to do this is to add the Bevel Modifier to all of your cubes - you have a lot of control without messing with materials and textures. Increase the segments of the beveling until you are happy with the result.

The following question can help you to do this efficiently: Add the Same Modifier to Multiple Objects at Once?

If the OBJ format export-import creates triangles from the quads, then the bevel modifier could have problems. See this for converting back to quads: How do I convert a triangle mesh to a quads one?


Hide parts of mesh in weight paint mode? (v2.90) I'm rigging a fancy coat, and part of the shoulder mesh is hidden by a giant lapel. I hid it for Edit mode (selected the mesh to be hidden and hit H), but that didn't seem to hide it in Weight Paint mode also. A 4-yr-old answer on Reddit says I can use face or vertex masking to hide this part of the mesh; where did it go in v2.90, or how can I hide parts of a mesh while still being able to weight-paint freely across the visible mesh? Thanks!
EDIT: The tooltip for the little box and "point on box" icons in the upper left say those are face and vertex mask selection for painting. That will indeed hide the lapel (which is roughly the height of the distance between the shoulder and pelvis bones), but it doesn't seem like I'm able to edit beyond a specified range, which doesn't entirely help.

My mistake was no selecting enough (e.g. everything else) vertices to have editable in Weight Paint mode. After hiding the desired mesh, selecting everything still visible with A make all vertices paintable.


Is there a way to Inset in the opposite direction (not Outset)? Is there an operation similar to inset that creates faces in the opposite direction? That is, instead of creating faces inwards, they create faces outwards?
A normal inset operation:

What I would like:

This can be done using the addon "Offset edges".


How can I remove multiple overlapping vertices? I'm having trouble removing vertices that are on faces

Is there a way to remove all of these at once?

I'm not sure I understand your question, but I believe you are asking how to remove overlapping vertices, or how to get rid of obscured vertices under a face.

For the first case: Press A to select everything in the scene. Then press w. A menu will pop up, and one option will be "Remove doubles." "Remove doubles" gets rid of all overlapping vertices.

For the second case, I would go into wireframe mode(press "z") and check if I could get rid of the problem manually by selecting and deleting the vertices. If that does work, I'd select around the problemed area using circle select(press "c"), and then bring up the delete menu(press "x") and select "limited dissolve." On the left-hand side in the toolbar tab, there will be a section that says "normals" with an adjustment bar. Fidget with the adjustment bar to see if any condition works.


How to add buttons from "Overlay" section in custom panel? I'm trying to add "Normals" section in custom panel

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

        overlay = bpy.context.space_data.overlay

        row = layout.row()
        row.prop(overlay, "normals_length")

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

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

if __name__ == "__main__":
    register()

Please help me! What am I doing wrong?

I think the problem is trying to add settings for the 3D view outside the 3D view.You can place it in the Sidebar.

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 = 'VIEW_3D'
    bl_region_type = 'UI'

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

        overlay = bpy.context.space_data.overlay

        row = layout.row()
        row.prop(overlay, "normals_length")

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

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

if __name__ == "__main__":
    register()


Desaturated video after rendering I use Blender's video editing capabilities and noticed that the resulting video seems to have less intensive colors:

The one on the left is the original, the right video was rendered with Blender.

The original video is in a mov container and  ffprobe says this about the video stream:

  h264 (Constrained Baseline) (avc1 / 0x31637661), yuvj420p(pc, bt709)

I added the original video in a new video editing project, and did the following:

defined a rendering range
set this in the output properties:

container: Matroska
video output quality: Lossless
encoding speed: Good
audio codec: AAC

Is there a way I can avoid losing the color intensity?

Here's a link the original video.

Blender version is 2.82, running on Arch Linux 5.6.12.

Following Leander's suggestion, I created some PNGs from the original video file with ffmpeg -ss 00:30 -i MV* -t 00:01 images_%03d.png.
Then I imported one of those images into Blender, and exported it again. Color was set to RGB, 8 bit color depth, compression was 15%:

Left: extracted with ffmpeg. Right: imported and exported with Blender.

Since all outputs and original video opened in QT and Blender is "desaturated" in the same way, I would say that it is more like wrong interpretation of colours in VLC. There is also noticeable contrast in VLC that totally flatten black parts (hairs) = loose all the rest of details that wasn't destroyed by camera and compression already.

Original video and rendered VSE PNG inside Blender ...

... they perfectly match (top row on bottom row with blend type - Different). I used curves to bring contrast in extreme values to see result better. Completely black.

BTW also your screen of PNG's match perfectly.

But result differs when the same data (video and render is opened in VLC.

Rendering into QuickTime H.264, opened in QT, produce differences only due compression artefacts.


Installation addon in Blender 2.78 In would like to install an addon, but when I try to enable the addon I get an error message "Import error, no module named 'myname'.

In previous versions of Blender I had no problem in installation.

The filename is not allowed to include "."

So my_addon_10.py is correct, but not my_addon_1.0.py.


How to share/copy Grease P. materials from one Collection item to another? (2.80) How to share/copy Grease P. materials from one Collection item to another? (2.80).

There must be a way!

I found that copying a layer from one object to another also allows you to import all the materials present on that layer. Maybe it can help.


Animated objects as hair particles I rigged an object and animated it, and have set it as a hair particle (dupli object). It displays correctly, but animation is not being passed on... How do I make hair particle objects perform animation?

Note: I am aware that animation will be synchronized across all particles and am okay with that.

You need to have your animated model and hair object on the same layer, or it won't update in the viewport (it will work only in render).


Can you make an object always follow the surface of another mesh with some kind of projected line? For an animation, I want to set up a bug moving along a tree branch blowing in the wind, which involves complex curves deforming. Previous methods don't seem to work for this, but I remember seeing in a blender game that someone used this kind of projection downward from a character to always hit the surface of any mesh that was locally below it.

I came up with two methods which might help you. See this blend file for an example of both of them:

This is what the results look like (the deforming cube is shrinkwrap method, the curvy one is the curve method):

Curve deformed by curve and used as path

Create a 3D curve to define the branch (and use Bevel and Taper Curves to give it thickness etc.)
Animate the branch curve any way you like (I used hooks, but it should be irrelevant)
Create another 3D curve to serve as a path for the bug and painstakingly put curve points around the branch curve's resulting mesh and don't forget to adjust the tilt in case you want the bug to around the branch
Add a Curve-Modifier to the bugs path and choose the branch curve as deformer and make sure you check the button so the modifier is applied to the curve points, not the resulting mesh:
Add a Follow Path Constraint to your bug and choose the path for the bug
Done!

Shrinkwrap-Contraint

This one is a bit simpler and might be sufficient depending on the complexity and strength of your branches animations.

Create a 3D curve to define the branch
Create a mesh for the branch
Add a Curve-Modifier to your mesh and choose the branch as curve deformer
Animate the branch curve any way you like (I used hooks, but it should be irrelevant)
Add a Shrinkwrap-Constraint to your bug and choose the branch mesh as target


Array object offset to make a trapezium like shape i'm trying to make a set of diamonds 7 diamond wide and 21 diamond long, with a slight offset so that the line grows longer (but only length, not number of items) the more you go down the seven colums of 21 dimonds.
Any idea how i might do that ?
So far, i tried with a first array of 21 down Y, then a second array of 7, along X, which makes a nice rectangle...

but I can't seem to make the offset bigger and keep it symmetrical...
help ?

Assuming you want all your diamonds the same size, a simple approach would be to use Vertex Instancing, one way or another.
More Destructive:

Create a plane, scaled in Edit Mode to your 1x3 dimensions
CtrlE > Edge menu > Subdivide the horizontal edges with 5 cuts, and the vertical edges with 19 cuts
In the plane's Object tab > Instancing panel, set instancing to Vertices..
.. and CtrlP parent your gem to the plane.

You should now have a gem at every vertex.

You can now give the plane a Simple Deform > Taper modifier, down its long axis.
You can X Delete > Only Faces the plane, leaving you with a non-rendering wireframe.

Less Destructive:

Instead of using a plane, Create a Single Vertex at the origin.
You may have to enable the shipped  Add Mesh: Extra Objects add-on, (or just borrow a vertex from another object)

Give it Constant-Offset Array modifier, in X, count 4, and another in Y, count 21

Give it a Mirror modifier across X, ensuring 'Merge' is checked.

The rest is as above, using Vertex Instancing, and a Taper modifier.

The second method leaves your arrays live, so you can change the count/spacing at a later stage, if you want to, but single verts can be a bit more fiddly to work with in the viewport.
If you needed your gems to get bigger towards the bottom, you could consider a particle-system emitted by vertex instead, and use a gradient texture to control their size.


Subdivision modifier doesn't work on some edges I just started blender and I have a basic problem often when I use subsurf modifier. Most times it works well but also occasionally some edges wouldn't be smooth. For example, I was doing a tutorial this time making a faucet in the bathroom. I made this model simply extruding a circle. Then I added the modifier. But one round of edge is sharp as before like in the picture. It may be a simple mistake or misunderstanding but as I just started learning, I can not really figure it out :( It also often happens when I add more shapes into models. I appreciate your help so much!

Yeah, there are several double vertices. You can check by Alt-leftclicking the questionable edge, and move the now selected edge loop down.

To repair, select all vertices in edit mode, and click Mesh > Clean up > Remove Doubles.


Lighting for a outdoor scene in cycles After creating this image I received comments on the poor lighting.
That scene is lit with a sun lamp. The single sun lamp creates very flat and direction light, the way I thought a day time outdoor scene would be lit.

This question mentions using a hdr image to light the scene. Is there a good lighting setup for outdoor scenes, without the use of a hdr image?

First things first: "good" lighting is highly subjective, and depends on the look or mood you want to portray.

I'd say that in most cases, a sun lamp is what you want. Also pay attention to

Size
The size setting controls the size of the lamp, which indirectly controls the softness of your shadows. This is very useful for getting e.g. a soft overcast look, or a hard and sharp desert sun look.

Here's a comparison of a very large sun and a very small sun:

Direction
The direction light is coming from plays a very important role. By using this together with strategic arrangement of your scene, you can highlight the parts you want while leaving others in shadow.

Here's a comparison showing the difference a simple change in direction can make:

Also don't forget that you can change the "altitude" of the sun, e.g. for dramatic sunsets/sunrises.
Color
Sunlight isn't white (unlike my previous examples :P).
I like to use a blackbody node to set the color temperature of my sun lamps in kelvin, e.g. for golden sunset lighting or blue and rainy overcast daylight.

According to wikipedia, sunlight is approximately 5,500 K around noon and closer to 2,000 K at sunrise/sunset. Note that this only applies to sunlight scattered through the atmosphere, sunlight above the atmosphere is approximately 5,900 K.  And of course you can adjust these numbers to whatever suits you best.

Here's a comparison between a low angle small sun at 3,000 K  and a larger sun at 6,500 K

The sky
The light coming from the sky (sunlight scattered through the atmosphere) plays an important role too (e.g. giving shadows that bluish tint). I'd recommend using an HDRi as an environment texture, but for lighting purposes the procedural sky texture can work well too (just make sure you align it).

For display purposes you'll want to make sure your sky texture matches up with the rest of the attributes of your lighting, e.g. a sunset for a low color temperature, cloudy for a large lamp size, and of course direction.
Other light sources
Other things can emit light too. This can help make things seem more "alive" and less flat.


How send HSV value to color picker? How send HSV value to color picker in Blender from Python console?
By default we can send only RGB :(

You can use the mathutils.Color type to convert HSV to RGB:

from mathutils import Color

c = Color()
c.hsv = 0.0833, 0.4, 0.5

print(c)
# roughly Color((0.5, 0.4, 0.3))

If you want to assign the color to a RGBA property (4 floats), you need to either do:

bpy.context.object.color = c.r, c.g, c.b, 1.0 # 1.0 is alpha

or a bit ugly looking tuple concatenation:

bpy.context.object.color = c[:] + (1.0,)

Alternatively, import the Python standard library module colorsys and use its conversion functions:

import colorsys

colorsys.hsv_to_rgb(0.0833, 0.4, 0.5)
# (0.5, 0.39996, 0.3)


how do you create the stretched effect on clothes when you move your rigged body I was creating a horse and the leather strap it wears on its neck, which connects to its head. The problem I ran into is, when I move the horse's head up or down, in real life the strap would get stretched, so I could not figure out how to create that effect. I have tried attaching it to a neck bone using constrains, however the strap would just fall off the neck when the horse's head raises, because the strap was not being stretched.

Is there a method where you can say tie one end of the strap to the back of the neck, and tie the other end of the strap to its head, and when the head moves, the middle area of the strap would just stretch like it would in real life?

I've included the picture of the situation.

Thank you for your help.

You can create extra bones for the strap and use the stretch to constraint.
You will need to create at least 2 bones per strap, one that is parented to the head, and is located where the strap is tied to the head (this one is the target) and another that is parented to the neck, that runs along the strap *this is the strap bone). The strap bone should have a stretch to constraint targeting the target bone.

The strap should be weight painted to the strap bone, the target bone should not deform the mesh.

You can also make a chain of bones for the strap with a stretch to constraint on each bone. To get this to work you will need to reduce the influence slider to some value less than one on each bone except the last (this can require a bit of fiddling to get right though). I would recommend trying one strap bone first though.
Alternatively, if you want the strap to curve a little you can also look at bendy bones


Animating Dynamic Paint with noise texture so I'm trying to recreate this effect
https://twitter.com/Erisdraw3D/status/1056931358185086976

and I've gotten as far as having the white area around a rock, but I've been struggling with animating the area where the brush touches the canvas. Eris gives a few notes on how he did it, but I haven't been able to follow them. Does anyone have a more detailed step on how to use noise texture to only affect the Brush area of effect?

Thank you

It sounds as if you've done most of this already.. but will illustrate anyway..
The Canvas
A plane, subdivided sufficiently for resulting texture resolution.

Format: vertex colors, as per your example, no effects (Drying, etc)
We're only interested in the Paintmap

The Brush

Color, White, this is just going to be a mask, Alpha: 1, this example isn't overlaying anything.
Wetness: 1 -  the full 'load' of paint should be available immediately
Proximity will do, we can't see inside the rocks
A Color ramp for falloff. A nice soft falloff will expose the waviness of the noise in the material, gradually decreasing away from the rock. Also provides another adjustment for the final effect.

The Brush, on its own:

The Nodes
Here, the Brush color is used as a multiplier on an animated Noise texture, before the product is put through a threshold in a Color Ramp, as part of the river's material.

If you've UV mapped your river, you may want to use that texture coordinate.
The Y location in the Mapping node is keyframed to make the Noise 'flow' down the river
An Attribute node is used to pick up the vertex color layer. Just enter its name in the text field.
Strictly, I probably should have used the 'Fac' output of the noise node for a 0 to 1 output, but clamping the multiply and tweaking elsewhere seems to be enough

The result - tweak the brush Falloff, texture scale, threshold in the Color Ramp, to vary the effect.


Particle System does not stick to the mesh if the mesh is moving (global,local coordinate-system?) I want to create something like a fire elemental, so I have to work a lot with the smoke simulation. In the flow objects I use FlowType: Fire. Now I've created a nice burning head, which is pretty easy, because the fire raises just straight to the top. And now I want burning arms too, but I have no idea how to give the fire the matching direction. I'm using a particle system to control the direction, but as soon as I rotate the mesh or something the particle system does not rotate with the mesh. I think the particle system is in the glocal coordinate system, but I would need it in the local coordinate system, so that it sticks with my mesh.

I hope I could clarify my question for you, thanks a lot for your answers.

It sounds like an issue you get when the modifiers are in the wrong order.

The modifiers are applied from the top down. In this example the particles are generated then the armature deforms the mesh which leaves the particles behind.

Check that the modifier for the particles or smoke is last in the list. Use the little up/down arrows to the right re-arrange the order.

You may want to alter the gravity settings for the particles to alter their direction. Particles usually fall down by default, you also only need a lifetime of one frame for them to generate smoke. Force fields can also be used to control the flow of particles and smoke.


Why can't I bake any kind of functional normal map? I first noticed this issue when trying to bake a sculpted base mesh man to a retopologized one. I can't seem to achieve any kind normal bake that works at all. I've tried following multiple step by step baking guides on Youtube as well as the instructions in the Blender manual itself.
I've tried baking everything from the most complex shapes to smooth shaded high to low poly spheres. I've even tried exporting both high and low poly meshes to Xnormals for a different result with no luck. I'm sure its something simple and obvious, but I have been struggling with this for months. I prepared this hansom devil to demonstrate my problem.

This is the .blend file if you want to take a look.

Switch from Blender 2.8 to 2.7 or 2.9, because 2.8 may be buggy with regard to baking.

Create a new image for the normal, enable the 32 bit Float option:

Your bake Extusion value is much too high, bring it back to 0.1 (or give your Ray Distance a value of 0.1):

In the Shader Editor, use a Normal Map node, not a Bump node.

Bake:

The low-res without the Normal map:

With the Normal map:


How to create dota 2 assets ? (Steam Workshop) I want to model, export and compile an asset made in Blender to the game Dota 2, which tool(s) do I need and what are the settings?

Installing the tool to export to Dota

To export your model into Dota you will need to export it in .DMX with the addon "Blender Source Tool": http://steamreview.org/BlenderSourceTools/ (don't unzip it)

To install the add-on go in File > User Preferences... in the Add-ons tab click "Install Add-on from File..." and select the .zip. Type "Source" in the search bar and make sure it is enabled.

Importing and editing a game character from Dota

You need to import a character, your model won't compile if it's not attached to the armature of it. You can find the heroes of the game here:
http://www.dota2.com/workshop/requirements

Import the SMD files with the add-on if there is only an FBX, they often have a bug with the scale of the bones, if this happens read my post bellow on how to fix it.

To import your SMD files you can use shift and left click to highlight the files and import them all at once. Each SMD have the armature but it will be imported once.

The model will be laid down horizontally and be very big in the viewport, you can orient it correctly and apply the rotation but you will need to keep the same scale when exporting. You can scale the bones to 0.01 to model your assets.

In this example I am adding the head of Suzanne on top of the head of the heroe Alchemist.

To attach it to the armature, select the model you have made first then the armature, then press Ctrl+p and select "With Empty Groups".

To bind the model to a bone you need to go in the property menu, in the Data tab with a triangle as an icon, in the Vertex Group menu. You will see every bones listed, to order them alphabetically click on the black arrow pointing downward then click "Sort by Name".

In edit mode select the vertices you want to bind to a bone, I select the entire Suzanne head, stay in edit mode and in the menu I select the head bone and click Assign with a Weight of 1 (1 = fully connected).

Now to test it I select the head bone in Pose mode and move it, the model now moves with it, if not check if it is connected to the correct Vertex Group.

Exporting your model

In the property menu go in the Scene tab, it's the third tab from the left. Scroll down to Source Engine Export. Set the path where to export it. For the format make sure it is DMX. Change the DMX Version to the highest numbers: Binary 9 and Model 22.

Note: you can't name your DMX, you must name your asset in the "n" menu. The file will take the name of the active selection.

You can also create a basic normal map to test your model, by creating an image filled with the color RG: 0.502 B: 1.

Compiling and testing in game

To test your asset in Dota 2, right click on the Dota 2 game on Steam and go in Properties. Click on the DLC tab and check Dota 2 Workshop Tools DLC, steam will automatically download it.

When you will launch Dota, a pop-up window will ask you if you want to launch the game or the workshop tool (if it doesn't appear it means the download isn't finished), select the second.

Click on Create New Item, then Hero Item..., select your hero and slot that your asset will replace, then click Select.

Name your asset you can't use uppercase and spaces.

Import the normal map. For the color map (diffuse map) you can use a basic color texture to test your model and silhouette.

For now set the Specular Intensity Mask with RGB at 0.1 because on some heroes the asset is too shiny and a Rim Intensity Mask at RGB 0.2.

If you get an error during the compilation here are the things to check:

Your asset must be attached to the armature even if there is no bone weight.
Your asset must have UVs.
Your asset must have a material (Cycles or Blender Render).
If the asset isn't visible make sure you have reseted the scale of the armature with Alt+s.
The color or normal map are missing.
The texture resolution and polycount are too high, but this is just to publish your asset, it will compile without the correct values you can check the values in the hero download page.
You haven't export in Binary 9 and Model 22 version.

You can play the different animations, by default it's on idle and the Preview in game will launch the game.
Do a test in the Dota map, remember that most details are seen from the top view, remove unnecessary details.

Textures

For the textures use a suffix, for example alchemist_head_color.tga. Use the TGA format and the texture resolution of the hero requirement page.
Here are all the suffixes in the same order than the Workshop settings:

_color.tga (I explain how to create this texture here: How to generate a fake hand painted texture (Blizzard like), Borderlands effect or Pixel Art effect)

_transparency.tga
_normal.tga (base RG: 0.502 B: 1)

_detailMask.tga
_fresnelWarp.tga
_metalnessMask.tga (RGB: 0 = non metallic, RGB: 0.6 = metallic)

0:

0.6:

_selfIllumMask.tga
_specularMask.tga (RGB: 0.22)

_rimMask.tga (RGB: 0.2 = non metallic, RGB: 0.6 = metallic)

0.2:

0.6:

_tintByBaseMask.tga
_specularExponent.tga

Valve has made a post with advice on texturing: https://support.steampowered.com/kb/9334-YDXV-8590/dota-2-workshop-character-art-guide
More informations about the different maps: https://support.steampowered.com/kb/3081-QUXN-6209/dota-2-workshop-item-shader-masks

Fixing the bones (if an FBX is used)

When the SMD files aren't available the only option is the FBX. In this format the bones aren't oriented and scaled correctly, but we can export a .DMX from Source Filmmaker.
In Blender import the .FBX an delete the armature, the character will lay down, orient it correctly, you can apply the rotation. If you change his scale don't apply it.

To download Source Filmmaker go in your Library of games and change the Games menu at the top to Software, you will see Source Filmmaker, do not launch it from there because you won't have access to the Dota assets.

Launch the Dota Workshop tools and click at the bottom on "Launch Custom Game Tools".

A window will open called Asset Browser, click on the Source Filmmaker icon at the top it will launch it.

Create a new session, name it whatever you want.

Open the Animation Set Editor tab at the top left and click on the "+" icon then click on "Create Animation Set For New Character".

Then choose your heroe, it will appear in the viewport.

Now do a right click on the heroe name followed by a 1, it is the first line and select Export > Animation. This will export your model in his default pose with his armature, you can name the file heroename_rig_fix for example.

Import the asset it's a .dmx. Go in Pose Mode, it's important that you use this mode and not the Object Mode. So in Pose Mode select every bones with "a" then press Alt + g and Alt + s, the armature will be horizontal and on the side.

In Object Mode orient the rigging to match the heroe then apply the rotation.

Select every meshes of the heroe and in the modifier tab assign the armature, if the mesh doesn't move it means the armature is oriented corectly. In Pose Mode the character should move with the rigging.

Create a courrier

Default courrier model: http://media.steampowered.com/apps/dota2/workshop/courier.zip
More informations: https://support.steampowered.com/kb_article.php?ref=8986-WRAZ-1046

Courrier requirement:

Two courriers one on the ground and the other flying each with a LoD1 and eventually a LoD0. You can use the suffix _model for the one on the ground and _wind for the other
LoD0 (optional, used for the portrait): 3500 triangles
LoD1 (in game): 3000 triangles
Texture resolution: 512x512
Animations: Spawn (ground only), Idle, Run, Die
Special bones: attach_hitloc (where the attacks land), left eye, right eye

Create a ward

Default ward model: http://media.steampowered.com/apps/dota2/workshop/ward.zip
More informations: https://support.steampowered.com/kb_article.php?ref=8799-WLXN-3860

The observer ward and the sentry ward share the same mesh and UVs, the only difference is there texture. What differentiate them the most is the color of the eyeball, this is why it must be big and visible from above.

Ward requirements:

LoD0 (optional, used for the portrait): 2000 triangles
LoD1 (in game): 1500 triangles
Texture resolution: 256x256
Animations: idle, idle_alt, run, spawn, turns, wings_die, wings_idle, wings_run, wings_run_alt

Particle effects

More informations: How to create dota 2 assets ? (Steam Workshop)

The following heroes require effects for their weapon(s): Abaddon, Anti-Mage, Bounty Hunter, Doom, Ember Spirit, Juggernaut, Kunkka, Phantom Assassin, and Skywrath Mage.

You must create a contour of you mesh with an higher vertex count than your weapon for an higher precision.
Export the DMX separately, use the same name than the weapon and add the suffix "_fx".


Animating objects while simulating water I can animate objects, move them, rotate them, etc and create an animation from that.  I can also create a fluid simuation, bake that and create a little video from that.  But now I want to create a wave simulation where I have a tank of water and the tank is rocked up and down and the water inside "sloshes" from one end to the other.  Then I can play around with timing and angle of the contain being tipped to create some cool waves.  But I am having trouble mixing a fluid physics simulation with the animation of the tank holding the water.

Either I'm missing something or it's a lot harder than I think it is.

I read online that I need to first bake the water simulation and then I can animate other objects.  But that doesn't make sense because tipping the container will change what the water does - and baking the simulation kinda makes that impossible, right?  Any help would be greatly appreciated.

You should be able to keyframe your Obstacles and then Bake. Make sure your tank never passes through your Inflow, if you have one, or is smaller then your Fluid can fall into, if you are doing it that way.

Here is a tutorial on animated Obstacles.


Parts of my fingertips are not moving I don't know why this is happening. I am very very new to blender or any 3d modeling with rigs.

Anyone who could help me?

looks like the thumb(all 3 bones) is not parented(connected) to the palm bone,so the thumb won't move but the other finger should move looking at the rig.
give me more details on how are you trying to move the finger tip and other bones


How can i link my mesh I have icosphere subdivide and separated. I have duplicated one mesh and separated from the sphere. Selecting all the mesh and the separate mesh i press ctrl+L to link. But the result is the mesh rotate. I want edit the link mesh which is separate so that all the mesh with icosphere follow.

The closest I came to what you probably want is this:

First, you need a new master mesh, because yours is not aligned to one of the main axis. So, create a new one. I used a simple little plane.

Now, link all meshes as you did before. And also as before, all meshes will look at the same direction as your master mesh.

Next, add an empty at the center of your Icosphere. This will be the look-at point for all meshes. So add a Track To constraint to one of them, select your empty as target, and switch To to Z and Up to X.

Last, select all your meshes with the constrainted one as active, and Object > Constraint > Conpy Constraints To Selected Objects.


weird bone axis/rotation problems (from blender to UE4) i'm quite new, to unreal engine en blender. (installed both 1,5 month ago)
and i start working on my first game/interactive experience.
and i have run in a lot of problems sinds ;p (of course ;))
but now i have this problem where i can't find a solution to.
i'm not quit sure of the problem is in blender or its a problem in the unreal editor.
so i hope you guys can help me out with this one. :)
here i have a download link to this pictures, blender file & the fbx file: https://we.tl/t-0vUF3JDmJz

so here the problem:
i have made this model in blender (image 1A):

a skeleton and a animation with it (image 1B):

witchs i wanted it to import into UE4, and at the first sight, everything lookt alright (image 2A):

but as soon as i start the animation, things started to look really weird (image 3A, 3B & 3C):

i think UE4 or blender has done something really weird with the axis of my bones.
and if i take a look at the skeleton tab, i think i can see the axis's of my bones (or the bones them self) out of place (image 4A & 4B):

so i went back in blender to check de axis from my bones and meshes, and as far as i can see the axis's for the bones and meshes are there perfectly in place (as it should be, because of using the "shift+s" methode) (image 5A & 5B):

i have searched a lot on the internet but unfortunately i can't find the solution for this problem.. :|
and i really running out of options here.. :(

I'm using: windows 7, blender 2.80 & unreal editor 4.20.3

so if you know a solution, please tell me! ;D
really big thanks already for reading and thinking! ;)
gr grover

PS: i'm from the netherlands and i'm really bad at speaking and especially writting english, so srry if i made this hard to read! ;)


How to view from the Lamp’s perspective? I would like to be able to view the scene from each light’s POV. Is this possible in a simple way, without having to parent a camera to each light and look through each camera?

Non-Camera objects including lamps can be used as cameras objects in Blender.

Select the light you want and make it the active camera (CtrlNumpad 0), then manipulate it as you would a camera for positioning / rotation / etc...

You may also want to enable Lock Camera to View, so you can use regular view manipulation to place the camera.


Some vertices are still showing in object mode I'm not sure why these vertices (color green) still showing even in object mode.

You can download the file if you want.

You only have 3 faces, therefore some edges are floating and are visible in Object mode. You need to correct this.


Animation nodes - How to make an object face camera yet let the object rotate around its normal? Imagine an object, for example a Cube.

Now Imagine the Camera.

Imagine that, whatever the position of the camera is, you always want (a certain face of) the Cube to face the camera.

This means that the normal of the Cube's pointing-towards-the-camera-face will change.

Now at the same time I would like the Cube to rotate around its (Z-)normal ... such that it is spinning around at a constant speed (the input can be the animation's timeframe).

I have been trying for days but I can't make it work.

Also note that non-animation-nodes dynamic ways to let an object face the camera (e.g. Object constraint and Track to) do not seem to make it easy to let the object, at the same time spin around itself ...

MWE

Please download the MWE-blend file ->

Parent the camera to the object, in this case, the cube.

Simple as that.


How to rotate texture I am making a rim that should look like it is made of aluminum (CNC turned).
How can I rotate the texture in such a way that it looks like it was actually turned CNC?
In the direction of the red circle with the arrows.

I don't know how your object is rotated, but instead of setting Scale X to 200 in the Mapping Node, try Scale Z with 200 and X and Y at 1 (or maybe only 0.5) and change the Texture Coordinate from Generated to Object. If Z isn't correct axis, try setting Y to 200.
And if you're going to color your object, you don't need that Mix RGB node, because you're just flipping black to white and vice versa. But since the Noise Texture generates an even distribution of the 0 to 1 range, flipping the colors doesn't make much of a difference.
On the other hand, the Height input of the Bump node converts greyscale values to height information - so it's best to use the Fac output of the Noise Texture instead of Color.


Mantaflow - creating smoke out of fluid particles im trying to implement mist in my water scene, to do it im trying to use spray particles as a way to generate gas, but yet didnt find a way for it to work. I know it is possible in FLIP Fluid addon but dont know how its done either. Any suggestions will be great, thanks

Because the secondary particles are actually particle systems, it is possible to set them to render as an object. The object it renders are would be a smoke inflow object. I haven't tried this yet, so let me know if this works if you end up trying this.


What is a good way to get rid of fireflies in renders? (cycles render) I was rendering some scenes and the little white dots just don't go away. I find they are primarily there when i have some light shining on glass or even just a normal diffuse. Lots of people say different things. BlenderGuru says put the 'Indirect Clamp' up, but that doesn't seem to work.

Thanks!

Use the lastest version of Bleder 2.79.

You can find a denoising panel.

See the image:

See the link in Blender manual.


How do I make volumetric light fade to nothing I'm trying to make some beams coming out of the headlights to give the render a bit of atmosphere but I only want it to come out the headlights so I created an area in which to do so but it fades from the desired blue light to a white haze rather than to nothing. I've put a couple of vague reference images. I added a couple of area lamps just in front of the actual headlights as I still wanted to see the blue and the details in the headlights (as there is also another light source but more dim inside the headlights). Do you think perhaps it would be better to make particles for the light to bounce off?

Thanks in advance

The issue is that your volume scattering domain is interacting with all of the other lights on the scene. To make it the less visible you could use a gradient texture node and a color ramp (as detailed in this answer), or you can do a quick trick at the expense of realism by suppresing shadow rays for on the volume scatter object and disabling volume scattering rays in the rest of the lamps.

Select the object you are using as container for volume scattering and disable Shadow in the Ray visibility section of Cycles settings.

(also get rid of the volume absorption and add shader nodes you are using in the materials)

Then disable visibility for volume scatter for all of the other lights on the scene (so that they do not interact with the volumetric rays).

Another issue with your file is that you have a very low number of bounces for the headlights of your vehicle (Area and Area.001). In the settings for bounces bring up the value to 1024.

Lastly, know that you are going to need a lot of samples to render the image (don't rely on the denoiser, it will smudge your image)

I rendered a preview using branched path tracing using 300 AA samples and 900 for volume. But you might need more samples to get a clean image at the 8.7k render you want to do....

An alternative to this is not to use a mesh for volume scattering, and use volume scattering in the world and use cone lamps in the headlights instead. (all other lights still need to be disabled for Volume Scatter rays). This will give you a more natural effect, as in real life, where light beams are visible because of the suspended particles in the air. You will the shape of the beam will be more natural and it will interact better with the scene. All this at the expense of more samples and rendering time.


Luxrender - How to select API 2.x? I've searched around for a way to preview a Luxrender render in Blender's viewport but cannot seem to find the solution to this error. When I click the render mode for the viewport it comes up with:

  ERROR Viewport rendering is only available when API 2.x is selected!

I'm just setting up a Mac and aren't too familiar but having just downloaded the latest LuxRender1.5 and installed LuxBlend, I see the API choice is not called API2.x, rather it is called LuxCore API (experimental) so I am assuming this is the 2.x
Here is a screenshot:

EDIT: But be aware that there may be performance issues when using the viewport. This post mentions and gives some explanation:
https://groups.google.com/forum/#!topic/appleseed-dev/YZ5dR9qvUV0


How do I use multiple columns in my add-on UI? In the add-ons I am writing, I can only put one entity per line. I would like to be able to put multiple of them in one row. Is there something that allows me to do this?

The image from ArchiMesh is what I am aiming for:

UILayout.column_flow

Perhaps the easiest way to have a 2 column layout  is using the column_flow layout,  set to 2 columns.

Replacement draw method for Text Editor > Templates > Python > UI Panel Simple

11 add cube operator buttons by way of example

def draw(self, context):
    layout = self.layout
    cf = layout.column_flow(columns=2, align=False)
    for i in range(11):
        cf.operator("mesh.primitive_cube_add")

Changing to 3 columns.

cf = layout.column_flow(columns=3)

cf = layout.column_flow(columns=3, align=True)


Colors are off, outside of blender the colors of my renderings look off (brighter / less saturated) outside of blender. – compare the image in the finder (left), and in blender (right):

how can I make sure the results look just like in blender?

edit: more info

this is on late 2016 macbook pro. and I'm talking about the built-in display:

the rendering looks the same in finder and photoshop. also using exr as output format does not seem to make a difference.

Update September 20, 2018 - Filmic now Supports Apple DCI-P3!

You can download the branch for testing here. It will get merged into the main branch after a little time for testing.

Original Answer

The issue is that Blender isn't designed for your MacBook Pro 2016 nor any model beyond it. I have brought up this point many times, but no one cares.

The reason is that the RGB coloured lights in your MacBook Pro are different to the sRGB standard coloured lights. Blender's camera rendering transforms (displays and views) are designed solely for REC.709 based displays. Blender simply sends values that are encoded assuming REC.709 flashlights at the display, and when those lights aren't REC.709 colours, the results are completely broken.

macOS assumes imagery without an ICC profile attached are sRGB. This is close to how the imagery is designed to look, when viewed through Preview, as Preview will properly transform the imagery to the DCI-P3 based lights in your display.

So what is the problem, exactly? Blender is showing you incorrect colours while working within it. In order to properly get a 1:1 WYSIWYG within Blender, the developers would need to integrate a series of camera rendering transforms designed for your display, as well as fix Blender's areas where it isn't properly colour managed.

With a little effort, you could test the values in the development branch Filmic Blender. Sadly, I haven't had time to update the entire configuration to support Apple P3 displays, but the basic values are in there for testing.


Blender animation to UNITY Im sort of new to blender and i have made a animation that has something disappearing half way through the animation like so-
I created the disappearing rock affect by key framing the eyeball in the top right of blender
When i ported it over to unity though i get the full animation with the rock still there! How do i go about fixing this issue thanks!

I believe it's best to just make this animation in Unity itself. How did you import this animation to unity? Legacy? Was the rock animated seperately? if it was, you could add a script to it, that plays the animation and then destroys the rock gameobject, or you could make an animation in unity and make the gameObject invisible.
one way of coding that in C#:

    Transform.Find("Rock").gameObject.enabled = false;

or, if you've made a prefab of the rock, you could just destroy it, and spawn it again if you need it:

    Destroy(Transform.Find("Rock"));


How to export multiple objects/materials to Substance Painter? So I created a spaceship in Blender, made out of 5 individual parts (i.e. individual meshes). And I UV unwrapped all of them. Then I exported it into fbx.

However, in Substance Painter, I only get a single texture set and all the UV maps are stacked on top of each other.

Hence, the question is how to properly format the Blender output to get several texture sets in Substance Painter?

I think you need to assign different materials in blender for each part of the mesh you want a different texture set.


Particles not spreading evenly over surface, they are clustered at two points (Donut tutorial) Overview in viewport: https://i.imgur.com/cQ0tnkt.png
Top part of Particles properties: https://i.imgur.com/RRFSFwj.png
Outliner overview: https://i.imgur.com/YKWGV8g.png
Look at the short sprinkles. They are clustered on the left side and right side of the donut. Maybe something with the Count settings? Not too sure.
Blender 2.92.0
Part 2 level 2 of the tutorial https://www.youtube.com/watch?v=aZ5ungDgFNc

Oh gosh I think I solved it I ticked "Pick Random" under the Collection setting in Particle properties!  Looking at Andrew's tutorial he hasn't got it ticked and you can kinda tell he has the same issue it just isn't very noticeable on his donut.