How to use mirror ball to light a scene? I'm interested in inserting 3D rendered objects into a real scene in a photo (and eventually video) and using image-based lighting.  I took the following photo of a mirror ball (pretty low-res):

I then tried following this tutorial which was one of this only resources I could find giving step-by-step instructions for mirror balls:

switch to Cycles
go to the World tab
add a Background surface
specify Environment Texture
open the above sphere.jpg
select Mirror Ball
select Vector = Mapping
select  Vector = Texture Coordinate > Generated

This generates the attached garbage.  Why, and what should I do instead?  I'd like to stick with mirror balls since they're much faster/easier to capture than a 360-panorama.  Thanks!

Update: here are the results after following Spencer's answer, before (original) and after—still seems kinda fake (any tips?), but it was fun for a first stab.

Some details:

I just pointed the camera from the front view
I left the background transparent and gimped it in later
I clicked the Smooth button under Shading on the left toolbox or else the monkey looked extremely polygonal
I added Glossy BSDF material on the monkey
I added a Sun light - not sure that that helped actually

First of all, you need to use the .hdr or .exr formats instead of .jpg. No matter what tool you used to capture the image, .jpg as a format can only hold red, green, and blue channels that go from zero to one. You can imitate some dynamic range with judicious use of RGB curves but for the best result you will need an image that has high dynamic range and was saved in .hdr or .exr format, since those are the only formats Blender reads that are meant to handle such data.

Second of all, besides that you are mostly setting up the environment correctly. The only additional step you need to take is to enable Multiple Importance Sampling for the world. This property is found in the Properties panel, under the World tab, under Settings, and it will make your render converge more quickly. You should always turn this on unless your environment is a constant color, in which case having it off will save a little bit of render time.

If you look at some balls from the Front view, you will see that the garbage portion of the image is clearly visible in the background, but everything that's in the image of the mirror ball is reflected correctly onto whatever geometry is facing the viewer. This situation is ideal because it puts all of the details from the mirror ball onto the geometry, where it can do its job by looking good.

If you want something else to show up in the background besides mirror ball trash, there are a few ways to do it. The first option is modeling most of an environment so that the background isn't visible. The second option is to set the background to Transparent in the Properties panel->Render settings->Film, which will make the background transparent so you can composite or paint one in later. And, finally, the third option is to use the Input->Light Path node to show a background image to the camera and the mirror ball environment to the objects in the world. Here's something like what you might get from such a setup:

You can use any sort of image, photo or matte painting you like here, as long as it looks good and makes sense in the context of your render.

The next problem you'll run into is that you might not want to render with the camera aligned to the Front view. So, you need to rotate the environment texture around until you get all of the mirror ball trash in the background of the camera's view. You can use the Vector->Mapping node for this. The Z rotation will rotate the environment around the Z axis, which will usually get you the result you want.

This all gets much more complicated for animation because you have to interpolate between a sequence of mirror balls to get a result that fits in with your real-world footage, and you would have to animate the Mapping node which might be possible with drivers but probably wouldn't give you the perfect result you might be looking for. For rendering animation that's going to be composited with real-world footage I therefore prefer equirectangular maps that were digitally stitched together from carefully bracketed, Macbeth-chart calibrated HDR photographs of the set, as the amount that you have to animate the Mapping node is minimal and you don't have to use an image sequence for the environment texture which Cycles doesn't support in a straightforward way.


Distorting one corner of a sculpted wall I am completely new to Blender and only know a few basic things. I have a problem that I cannot figure out. I basically need to take a long rectangular 3D wall and distort only one corner of it so the top line becomes a diagonal line. In photoshop, the tool is called "distort", not WARP. You can basically grab one corner and distort it while the other 3 corners stay in tact. Is this even possible in Blender? Please help if you can. Note: I did this sample photo in Photoshop so it's a little different. Thank you in advance, Brian

There isn't any Distort tool in Blender since mesh is not an image and it can't be transformed that easily however you can work with modifiers and edit mesh data depending on another mesh, basically transforming one according to vertices of another one.
First prepare the dummy mesh which will be used as a cage
Add a cube or extruded plane (since in your case wall object is flat surface) and scale it so that it roughly matches your wall but is slightly bigger. Note that dummy object has to be closed one (no holes and preferably as little details as possible; default cube should do fine). Position it on the same place as your high density wall object (like when baking normals to lowpoly).
Then grab the high density mesh you have and add a Mesh Deform modifier to it
Since it requires vertex group enter Edit mode, select all vertices and add them to new vertex group (shortcut Ctrl+G).
Then in modiifier settings choose that vertex group, select dummy object to act as transforming cage.
Finally in Mesh Deform modifier settings click Bind
Note that this operation can take a while depending on mesh complexity and hardware resources you have.
Then once it's binded in Object mode select cage object, enter Edit mode for it, select vertices in one corner (to match your example) and grab them towards another corner. High density mesh will follow their transformation.

Note that additionally you can hook vertices of the cage object (cube) to an empty  and grab empty in Object mode in order to skip entering Edit mode for the cage (which can be computational heavy operation).
See more about Mesh Deform


Multiple gpu render fail: illegal adress in cuCtxSynchonize()(device_cuda_impl.cpp:2077) I keep getting this error when i am doing viewport cycle render.
My gpu is 3090 2080ti 1060.
 F12 render working fine but viewport render pops out that error
I was try to fix it by

Replace GPU
change card slot
different order gpu
try to plug one gpu and run it ( all card renders fine)
try many blender version 2.79b 2.80 2.83 2.90 2.91 2.92 2.93(beta)
non of them suddenly not working!

I remember that there was window major update and, looked up what is installed recently.
There is one update, and it called Servicing Stack 10.0.19041.925.
This window update can't be roll back once installed.
There is no way to delete this, so I can't test this that causing issue
to this Blender CUDA issue.
maybe, this is Window update issue, or Blender issue, or my GPU issue, or PCIE slot issue?
Or anyone having same kind of issue after window servicing stack update?

Okay I found out this this cause issue.
if anyone having this issue. try to off this if it on.

They are located at Window setting -> graphic setting.


Does Blender create large cached files on Mac computers? I am still new to Blender (less than 1 year), and have read this post indicating that Blender sometimes creates large cache files.

The user - and thread - are regarding the use of Blender on a non-Mac machine. I have a Mac computer, and I immediately wondered if Blender had been creating large cache files on my computer over the past year I've been using it. It's generally a thing that creative apps don't really tell you until you find out at your own expense (cf Photoshop, Premiere Pro, After Effects...)

So, does Blender create cache files, and if it does, where are they located in my system?

Is there a limit to the size of these files or total size of the folder that I can define?

Also, is there a way to purge these files from the GUI, and what kind of outcome / impact will purging these files have on my current workflow? (will I lose baked physics, etc)?

The cache files that you are probably referring to are BVH cache files created during rendering with Cycles render engine, if the Cache BVH option as been activated for the current file.

Unless you specifically activated this option Blender should not be storing those to disk. I don't think you have to worry too much though, as far as I know it has been removed from Blender 2.77+, so if you are running the latest version it may not even be available since recent optimizations have made it obsolete, I think.
The setting could be found under the Properties Window > Render Tab > Performance Panel > Final Render > Cache BVH.

Under Windows, if running the Zipped standalone Blender version these files end up in Blender/2.##/Cache folder I think, for standard system installations they probably end up in Blender's user preferences folder under AppData in the current user's profile folder. I have no idea where these may end up in MacOS, but guessing from Windows location they will probably be stored in your user profile folder too, right next to where your user Blender preferences are stored.

Other than that, the only cache files that Blender stores are physics, simulation and mesh caches that result from baking fluids or other mesh deformation data, but these are explicitly created by the user and require manually configuring paths through the Blender UI, so you will like know where they are stored. Most often they sit right by the side of the corresponding Blender file, and are regarded as user content, not garbage.


Gaussian Blur Blender Material Node I was wondering if there is a way to do Gaussian Blur effect on a generated texture in blender. Currently I blur images by mixing gain and then subtract them from the vector but this creates more a a distortion effect.

I tried finding a way to average pixels but I this does not seem possible in the node editor.

Does anyone know how I can tackle this problem?

You can go to the compositor and add a blue node, set it to fast gaussian and enable relative, then set the x and y values to suit your needs.
Make sure you connect an image pipe to it though... if your using Images, you can find an image node in inputs category in the composition menu


Eevee bloom effect covers my texture as camera gets further away from the object I have a star mesh that has a Texture on it for the mouth, which is just a black curve for a smile. The star's material has a translucent shader and the star has a light inside it, creating a glow effect. However, this causes my mouth to fade out as you move away from the object. Is there a way to stop this from happening? The yellow-mouth material is assigned only to mouth area and the Material is assigned to the rest of the object.

OK a few mn to spare to take a crack at it:

The basic concept is to render the smile on a separate layer and overlay it over the bloom effect using Compositing.

In this example, I used a curve instead of a texture for the smile. A texture could still be used as long as it is rendered with some transparency around the smile.

Remove the smile texture from the star material
Check the Film/Transparent box, this allows to do compositing properly

Create your smile using a curve and beveling it. Use a black emission shader. Parent it to the start
Create a 2nd Layer just for the Smile. We'll use this collection to render only the smile in the second layer

Make sure to enable Environment on your main render Layer

Create a second render layer and disable the main collection, leaving just the Smile collection enabled.

Composite the environment and the two layers using Alpha over nodes

Now the smile should remain visible no matter how far the star is or how strong the bloom is. Note that since the composite effect is only applied at render time, the Viewport bloom will still cover the smile if the star is far away.


Import SVG : immediate crash I am trying to import a .svg from Inkscape 1.0 : it's a simple text that I have converted into a path.
Then I open Blender 2.83, try import .svg, and then I get an immediate crash from blender.
I have a "path" .svg, the module import .svg active. Any idea for why it goes wrong ?
Here is the link : https://1drv.ms/u/s!AlnEmWLfODePgX4Xj7Kb381bn9pT

Solution : I removed the flatpak version and install again using snapd !


My object's grey colour has disappeared Ok so I'm new with blender, as I was working on my project the object disappeared. The grey colour of the object disappeared. I can still see it just not the grey colour. Think I must have clicked or pushed something because Ctrl+Z doesn't work.

Just push Z in wireframe, which is where you are. ShiftZ from while in the rendering view will put you back in solid viewpoert


Mixing texture paint and exported UV png changes color of png...? I'm trying to mix a basic texture I made in the texture paint mode, and a transparent png I made from the 'export UV layout' option. They technically both appear, but the transparent one has changed from a blue-black (which I want) to a brown (which I don't want...) and I'm not sure why. I attempted to just plug in a hue/saturation node to quickly alter the color but it alters the color of the supposedly-transparent png background. Because of this, I had to plug in an invert node which ostensibly fixed the problem and made it transparent again, but the png is still brown. Here are some pictures...

The symbols are meant to be tattoos, and they're mixed with the plain beige texture paint. Is the beige what's changing the color of the tattoos? Without the invert node, it looks like this...

Thanks in advance!! I'm sure it's just something small and random I've missed. I'm still pretty much a noob.

Turns out the answer to "why is it brown" is that the subsurface scattering color was pink and I had the slider turned up really high. -sigh- It's always something little like that isn't it

EDIT: here is a screenshot of what it looked like after I altered the subsurface color


Actual speed of object on curve It is possible find the actual speed of object animated along a curve at a specific frame?

The object has a follow path constraint and it is animated by offset. I'm making a car animation and it would be useful to know this.

I can get the curve's length by Curve Length Add-on it's in the description of this tutorial.

I figured it out, I must measure the distance between one frame and multiply it by (scene fps)*60*60/1000, the result is in km\h (one scene unit is one meter).

An automatic solution would be better though.


Photogrammetry using blender to Create a Dense Mesh and automatically texture them Photogrammetry is the basic requirements when you are working with rocks and other nature assets.

I searched the whole internet in order to find out if there is any tool which can help me in that. To my surprise, there is not a free and open source tool which can do that and support Windows 7 32 bit processors.

So, as we know blender has camera trackers which can be used as markers to create a light mesh (convert markers to vertices). but the problem is that there is no such thing which can help me to create dense mesh cloud and automatically triangulate them in order to be used.

So, my question is that is there any way to create a dense cloud and can be used to texture the models?

VisualSFM, Insight3D don't seem to help me with that.

So, if there's no anyway, so \how much manual work is required for that?

I want to create a mesh of a human head and few rock and tree pieces.

As others stated on the comments Blender is not the tool to create cloud points from images.

I doubt there is any free, paid or open source photogrammetry tool that works on a 32 bit OS. Photogrammetry would require a more powerful platform, as it  will generate huge amounts of information to create what you call "a dense mesh cloud". A 32bit machine can only deal with 4GB of memory (and that includes the Operating system,that will take at least one GB, leaving you with only 3GB of ram to work with). But even if by some miracle hack you would be able to generate generate objects on such platform, you will hit the limits of the hardware before you can manipulate any of that information.

3D modeling and rendering can be very demanding for any computer, a common mistake folks make is to creating projects that are more ambitious than the resources available to them.

Think of an alternative, more realistic or down to earth way to create what you want within your available means.


What is the quickest / best way of duplicating an object with children, so that the children are also duplicated? What is the quickest / best way of duplicating an object with children, so that the children are also duplicated?

I am able to grab the parent object and move it around in the 3D View and the child follows fine, but unless I go into the Outliner and RMB click on the parent and choose "Select Hierarchy" to select the parent AND the children before I duplicate, only the parent gets duplicated. I would like to know the quickest and best way to grab the parent object and all children in the 3D View and duplicate it without too much hassle.

In other words, is there a way to Select Hierarchy in the 3D View instead of having to use the Outliner?

You can do this by using the 'Select Grouped' menu, triggered with Shift+G.

Select Parent.
Shift+G> Children.
Shift select parent (by default it will be deselected when the children get selected).
Shift+D to duplicate.

If you are doing this multiple times you can open the toolbar(T) and check 'Extend' after doing 'Select Grouped', so the parent remains selected when the children are selected. Any future selection of the children will respect this 'Extend' setting.


Why is the rotation gizmo not working in 2.74? When I left-click using the Translate or Scale gizmo it translates or scales according to axis, as expected; however, when I left-click close to the colored circles of the rotation gizmo, it doesn't rotate the object and just moves the 3D cursor.

Is it a bug? If yes, is there a standard way of reported such bugs (I've seen the blender.org/forum is closed)

It's not a bug, you can imagine this widget is something that's used by an incredible amount of people and is heavily tested. But this issue has cropped up from time to time and depends heavily on the graphics card drivers used.

Try Setting "Selection" in User Preferences System Tab from "Auto" to "OpenGL Select" or "OpenGL Occlusion Queries"

The keyboard shortcuts for the transform tools are G, (grab), R (rotate), and S (scale), often they are more convenient, in combination with their follow up keys x, y, z to select the axis..


blender automatically closes while rendering I have to render a single frame and it's almost done every time for up to  80 percent and closes all of a sudden and that's totally screwing me up I set frame size to 1920*1920 and 100 percent render quality can someone tell me what's the exact problem

Maybe this helps

In 2.8, Blender crashes while rendering trees

Start Blender with debug options to log what is Happening


Export an individual object for every frame of animation I am creating simple animations and need to know if I can export the individual frames as individual files to be rendered in a secondary rendering program?
So I would need individual .obj or .3ds to import into Maxwell Render.

You can export individual frame as individual obj files.
Goto>>File>>Export>>Wavefront (.obj)
Select a folder and then check animation checkmark on the left.then click Export OBJ


why is no motion is occurring between key frame? I've set two keyframes for an image to move on the y axis. Hopefully this can be seen in the screenshot i've shared:

however on play back the picture is in one position set by the first keyframe and without gradually moving on the y axis it just jumps to the new position on the second keyframe?
How can I I change this ?

Many thanks

Hm, from your screenshot I see, that your keyframes are the same (gray line between them), so I except no motion between them.

But why one frame changed? I think it just cashed, and if you press "Refresh sequencer" it resorted to it actual (no-animation) position.

So make sure, that you put keyframes correctly


Set the color of faces in python efficiently I have two cubes obj1 and obj2 and I have a list which has a pair of face numbers of each object. So for example, mylist looks like that [(1,5),(2,5),(2,3),(1,4),(2,1)], where (1,5) represents face number 1 in obj1 and face number 5 in obj2, and (2,5) represents face number 2 in obj1 and face number 5 in obj2 and so on.

I wonder how using python I can assign a material of color red to those faces in the list, while the rest of the faces not in the list will be assigned a metrial of color green.

I figured a way to do it in my below answer but it's very slow, so I wonder if it can be more efficient and done in a more efficient way as I run this function every frame.

This seems almost instantaneous and much faster than the original function above:

import bpy, time
from random import randint

start = time.time()

def paint( obj1, obj2, mat1, mat2, pairs ):
    # First assign the 2nd material as the active, default material for all faces
    obj1.active_material = mat2
    obj2.active_material = mat2

    # Add mat1 to both objects as the 2nd material slot (index=1) if not already included
    if mat1.name not in obj1.data.materials:
        obj1.data.materials.append( mat1 )
    if mat1.name not in obj2.data.materials:
        obj2.data.materials.append( mat1 )

    # Now iterate over the pairs and set material 1 as the active material for the selected faces
    for p in pairs:
        i1, i2 = p
        obj1.data.polygons[i1].material_index = 1
        obj2.data.polygons[i2].material_index = 1

    obj1polygons = [ p[0] for p in pairs ]
    obj2polygons = [ p[1] for p in pairs ]

    # Set mat1 as the material for all polygon indices not in the pairs list
    for i in range( len( obj1.data.polygons ) ):
        if i not in obj1polygons:
            obj1.data.polygons[i].material_index = 0

    for i in range( len( obj2.data.polygons ) ):
        if i not in obj2polygons:
            obj2.data.polygons[i].material_index = 0

faceCount = 512
redFaces  = 50

pairs = [ ( randint(0, faceCount - 1 ), randint(0, faceCount - 1 ) ) for i in range( redFaces ) ]

mat1 = bpy.data.materials['mat_one']
mat2 = bpy.data.materials['mat_two']
obj1 = bpy.data.objects['obj1']
obj2 = bpy.data.objects['obj2']

paint( obj1, obj2, mat1, mat2, pairs )
print( "Ran for: ", round( time.time() - start, 5 ) )


Fluid Simulator: odd behaviour. Cache problem? First of all: I am new to Blender. I installed it today. After a few basic things I wanted to try out the fluid simulator. The first simulation worked fine, just like in that tutorial. The simplest of setups: a not-too-big-sized cube as the domain, a small sube as the fluid. Baked it and watched the finished preview.

Then I started over (Ctrl+N), took the default cube and enlarged it a little bit. As soon as I changed the type of that cube to "domain", it took the shape of the former fluid cube. After I deleted the fluid-cache files manually, the cube stayed the way it was when I changed the type to domain.

Is this a normal behaviour?

And it obviously isn't enough to delete the fluid-cache files. After I hit "bake", the domain cube immediately changed its shape to the first fluid cube and stayed the entire simulation like this. It only "tried" to move a few mm, as it seems. Quittung the application and restarting it doesn't help. Somewhere the data from the first test-simulation remains somewhere on my system, which btw is a Win10 PC.

What am I doing wrong?

Data for fluid sims is saved to external files, if the current blend is not saved this will be in a temporary folder, it may also get a temporary path if the domain is created before saving the blend file, even if the simulation isn't baked before saving. While this should use a random path name generated each time blender is run, there is a chance of old temporary data being used, thinking it is the current sim data.

The path used for saving sim data can be found in the domain settings. You can change the path to prevent the old data being seen.

While other simulations provide options to clear the baked data, the current fluid sim does not.


Blender doesn`t render object I have an issue , I tried to google it and find it here on the topics but with no luck. The issue is that my object isnt`t rendered if I press the view port shading on "rendered" icon, but it does render if I press the Render active scene in the right side tab under render options. It renders other objects in other files just fine , but not this one. It rendered normal like 10 min ago, now nothing. In the left side where it shows the render time it just says  it took less than 1 sec to render. Btw my light source is a panel with emission. I also tried to add other light sources but with no change. What could be the issue ?
thx

I don't know it is your case, but I think you have a Render Border.

Go to View Clear Render Border.

See the image below.


Rigify Generate -- Deformation Bones vs. Armature? Why should I use deformation bones instead of just parenting w/ automatic weights straight to the armature? The octahedrals act as bones while adding keyframes... However would deformation bones possibly lessen the possibility of import export errors especially to UE4?

When you generate the rigify rig after adjusting the initial meta-rig and pressing generate in the armature tab (in the properties window), rigify genetates a host of control bones with ready made complex behaviors such as IK, foot roll, fist open/close, and many more.

If you're animating the deform bones directly, and ignoring all these features, you probably don't need to generate and can bind to the meta-rig directly.


BGE place object on 3D graph based on user input? I'm putting together a simple political graph for a friend of mine. For example, the x-axis represents economic freedom, while the y-axis represents political freedom, and the z-axis represents personal freedom. What I'm struggling with is having BGE ask the user three questions(or more in the future) for determining their political position on each axis, and then have an empty navigate there and spawn a sphere.

Here's a link to the file so far:

https://drive.google.com/open?id=0B6_5f6jmSaHOQ0g5RWxhRDBkWG8

I do not think the BGE is sufficient for text interaction or diagrams. It is possible, but not easy.

I suggest you look at something like presentation and/or table calculation applications.


Blender API (2.6), UI list of loaded images I'm trying to make something like map editor for my project. I'm rather new in Blender Python scripting and I have some troubles.

I made "Material" panel and I want to set "textureName" property for my object. What I need is to make some list of loaded in blender images (like in UV Editor you can load image and it appears on list).

In my panel I want just to choose one image and assign name of that image to my property. I can list loaded images by bpy.data.images but I can't dynamically add new images to property (for now I'm using EnumProperty assigned to bpy.types.Object.textureName). I was trying to make same UI widget like blender have (http://i.imgur.com/6VJVAsN.png) but I have no idea how it works.

Can somebody help me with this?

Adding a "real" datablock widget won't quite work and it's not possible (or at least not easy) to have a dynamically populated EnumProperty object. Fortunately, there is the prop_search() UILayout function. You can use that to assign the name of a datablock to a StringProperty variable. So, you should have something along the lines of this for that StringProperty:

bpy.types.Object.textureName = bpy.props.StringProperty(name="Texture")

With that done, all objects now have a new string property called textureName that defaults to an empty string. Now, in your panel, add something akin to the following in the draw() function:

def draw(self, context):
    ob = context.active_object

    layout = self.layout
    layout.prop_search(ob, "textureName", bpy.data, "images")

Of course, this only assigns the name of the texture to that StringProperty variable. You still need to write code that does something with this property.


How can I run blender from command line or a python script without opening a GUI? I'm interested in using Blender for producing images, 3d files, or calculating geometry on a server.

Can I make blender run a python script without opening a GUI?

If not, can I incorporate Blender's python API into my own python script without running a GUI?

Command-line / subprocess

You can use subprocess to run blender (like any other application) from python.
Use the -b / --background switch to run blender in the backgroud (GUI-less).
Use the -P <filename> / --python <filename> switch to load desired python script.

Or use --python-console to run python from stdin.

Example: blender --background --python myscript.py
See: https://docs.blender.org/manual/en/latest/advanced/command_line/arguments.html
As module
This is an experimental feature and not enabled by default, but Blender can be compiled as a python module.

This allows 'bpy' to be imported from python or other applications/IDE's which embed python


Cycles render for Facebook without color I am writing to you because I have a problem with files to use for 3D posts on Facebook.

I had done a lot of tests all using BLENDER RENDER: file had the color and the characteristics that I had set by the nodes, everything was ok but did not have the shine of the Glossy BSDF.

Then I changed the rendering engine in CYCLES RENDER, and checking from the rendered mode it has the shine I needed, I again exported my work in .glb for posts on Facebook, but so I see it all as gray as in the picture .

A) Can you explain to me why and how to solve?
B) Can someone tell me how to set a colored background?

Link to post (.glb) with Blender Render:
https://www.facebook.com/paginaprovaSynptc2018/posts/2189922261052625

Link to post (.glb) with Cycles Render:
https://www.facebook.com/paginaprovaSynptc2018/posts/2191151167596401

Thank you all

You have to consider that materials in cycles get translated. As the  glTF 2.0 Exporter documentation says:

  Blender supports two material settings: One for Blender Render and one for Cycles Render. Fortunately, the glTF 2.0 Materials can be simulated using the Cycles Render by implementing a custom node tree

You can't just write materials in cycles and then translate them, this will just not work. You have to use the ones provided by the repo.

This is really well explained in the documentation (I'm assuming you're using this exporter):

https://github.com/KhronosGroup/glTF-Blender-Exporter/blob/master/docs/user.md


Weird mesh deform when in object or pose mode Okay, so I have this weird deforming on my mesh when I'm in either pose or object mode. I didn't have any issues with the bones and I've reset the rotation to have nothing change. I'm guessing it has something to do with the armature? Any tips would be greatly appreciated.

EDIT: I've reset the pole rotation to zero like the other leg, which fixed the deformation. So it looks like this.. any tips would be great.

I fixed it by locking the IK rotation on the x-axis. The tutorial I was watching when I made the armature had me do otherwise.


How to randomise vertex position along an axis In Edit Mode I click on Randomize under Mesh Tools to randomise the position of vertices on a mesh:

What I've noticed is that this randomises the position on all axes. Is there any way to do the same randomisation of vertices but constraining it to one or more axes (locally or globally)? A mockup of the desired output is shown below in which the vertices are randomised along the global x axis.

You can use Proportional Editing set to a random falloff.

Basically, select the vertices you want affected, press Ctrl + I, to invert the selection, and then H to hide those vertices. Now, select a vertex of the ones left, press O, to turn Proportional Editing on, and, in the 3D view header, set the falloff to random:

Then, press G, to move, followed by one of X, Y or Z, either once or twice, to limit to the axis you want. Now, use the scroll wheel to enlarge the affected area so that all the vertices are affected and move the mouse until you get the results you want.
Then, press  Alt + H to show all hidden vertices again.


[obj.keyframe_insert, bpy.data.particles["ParticleSettings"].lifetime]; how to insert keyframe to an existed particle setting, e.g lifetime I am trying to randomize some values of selected objects in blender
How can I keyframe_instert of the active particle properties?
I can do it with clicking "I" of the desired area and it works (creates a keyframe)
I tried: (n
obj = bpy.context.active_object
obj.keyframe_insert(data_path='bpy.data.particles["ParticleSettings"].lifetime')
obj.keyframe_insert(data_path="lifetime")

gave type errors both
TypeError: bpy_struct.keyframe_insert() property "lifetime" not found

Set on the object that has the property
Python console code.  A default particle system has been added to a Plane that has context.
The lifetime is set to 10 and keyframed on frame 1.
>>> C.object
bpy.data.objects['Plane']

>>> ps = C.object.particle_systems['ParticleSettings'].settings
>>> ps
bpy.data.particles['ParticleSettings']

>>> ps.lifetime
10.0

>>> ps.keyframe_insert("lifetime", frame=1)
True

Notice the objects particle systems settings points to its data item in  bpy.data.particles which is the ID object that the action (typically bpy.data.actions['ParticleSettingsAction']) will belong to.


Fastest way copying from bgl.Buffer() to numpy array I have some rendered or processed pixel data in a bgl.Buffer() object and need it in a numpy array but that proccess seems to take very long. Here is what I have tried so far:
buffer = bgl.Buffer(bgl.GL_BYTE, WIDTH * HEIGHT * 4)
# render something into it
imageDataNp = np.empty(WIDTH * HEIGHT * 4, dtype=np.float32)

# now some benchmarks
imageDataNp = np.array(buffer, dtype=np.float32) # 7.05s
imageDataNp = np.asarray(buffer, dtype=np.float32) # 7.00s
imageDataNp = np.fromiter(buffer, dtype=np.float32) # 3.29s

imageDataNp = np.array(buffer.to_list(), dtype=np.float32) # 4.69s
imageDataNp = np.asarray(buffer.to_list(), dtype=np.float32) # 4.71s
imageDataNp = np.fromiter(buffer.to_list(), dtype=np.float32) # 2.80s

# create an image datablock as secondary buffer
if not IMAGE_NAME in bpy.data.images:
    bpy.data.images.new(IMAGE_NAME, WIDTH, HEIGHT, float_buffer=True)
image = bpy.data.images[IMAGE_NAME]
image.scale(WIDTH, HEIGHT)

image.pixels.foreach_set(buffer)
image.pixels.foreach_get(imageDataNp) # both lines together take only 2.05s

# answer from stackexchange by Sanoronas
buffer_list = bytes(buffer.to_list())
imageDataNp = np.frombuffer(buffer_list, dtype=np.float32) # both lines together take 1.28s

It appears like even setting and getting to and from a Blender image datablock as a "secondary" buffer ist faster than going directly from bgl.Buffer() to a numpy array.
One possible reason I can think about is that bgl.Buffer() is at the time of 2.92 still not supporting the numpy buffer proctocol as described in this post.
Is there a way to achieve something similar using only Python? I see that the Cookie Cutter addon by CG Cookie ships with an file bgl_ext.py which includes a function def np_array_as_bgl_Buffer(array) which appears to do exactly the complement to what I am trying to achieve.
An example file with the full code from above can be found here.

You can use the function np.frombuffer. However you first have to convert the bgl Buffer to a bytes list.
buffer_list = bytes(buffer.to_list())
imageDataNp = np.frombuffer(buffer_list, dtype=np.float32)

With your example file this method took 1.69s in contrast to 1.8s for your workaround.


Importing Mixamo's FBX in Blender I'm trying import the character with the animation and it gets scrambled, I tried a lot of settings but in the end, none of them worked. Other editors like Unreal's Engine Editor can import the file without any problems.

The file can be downloaded in here:
https://www.dropbox.com/s/i20wfur8e34i3a2/Sword_And_Shield_Slash.fbx?dl=0

Here's what happen when i try to import:

I also experienced this weird stuff and I was able to solve it.

Select the distorted object
Select Object Tab from Properties Window
Change Transform scale to 0.01
Change Transform X-axis to 90 degrees

Result:
https://www.dropbox.com/s/1yip15gm13dke1c/COnverted.blend?dl=0

Option 2: You may refer to this link if you don't want to do it manually. http://growlybearproductions.com/Blender/
Option 3: You may also change fbx import settings like this (Blender 2.76b)


blender 2.8 beta doesn't find opengl Blender 2.8 doesn't load on my windows 7 notebook. It only says several times:
"Warning! Ignoring untested OpenGL context profile mask bits. Warning! OpenGL core profile not available."
I already updated my Nvidia graphics driver. Is that still a development problem or is it my computer?

I had a similar problem, where it requires OpenGL 3.3 and the GPU doesn't support that version. Please provide GPU information to confirm, but if you've updated your driver, then it's probably an OpenGL issue.

How to check your GPU: https://www.quora.com/How-do-you-check-what-graphics-card-you-have-on-Windows-7


How to calculate a parent inverse matrix? Say I want to parent the default Cube to the camera from python without using an operator.

First part is easy:

Cube = bpy.data.objects['Cube']
Camera = bpy.data.objects['Camera']

Cube.parent = Camera

Now I want the cube to remain in place like it would if I used the operator. I assume I have to perform an operation on one of the camera's matrices and assign the result to the cube's matrix_parent_inverse, but what operation would it be?

Oh wow, that was embarrassingly easy.

Cube.matrix_parent_inverse = Cam.matrix_local.inverted


Export model transformation matrix I am a very basic blender user, I need to know if there is a add-on or a built in function that could export selected objects model transformation matrix (the matrix that contains the models scaling, rotation and translation information).

Thanks!

Alrighty, then this script creates a text file with the transform matrix [see answer here to understand blender's transform matrix format] of the active object as it is represented in blender. Just copy and paste it into a text editor window in Blender, save your blendfile where you want your text file to be created, and run the script:

import bpy
from os.path import dirname, join

if bpy.context.object and bpy.data.filepath:
    fname = bpy.context.object.name + ".matrix"
    fpath = join( dirname( bpy.data.filepath ),  fname )

    f = open( fpath, "w" )
    f.write( str( bpy.context.object.matrix_world ) )
    f.close()

Example:

For this transformed cube with the following transform values:

You get this result in the generated textfile:

<Matrix 4x4 ( 0.6416, 0.2411,  0.7263, -0.8912)
            (-0.8174, 0.1801, -1.0416, -2.1409)
            (-0.8864, 0.0084,  1.4863,  3.1665)
            ( 0.0000, 0.0000,  0.0000,  1.0000)>


how do i add mp4 files to edit? I have a sony handycam which is HD and I've been trying to edit some videos using Blender video editor but its not registering my video files anywhere. I saved them from my camcorder to my computer (on my desktop) but when I click open, they aren't there. I have files in avchd (which are apparently standard on this camcorder) and in mp4 formats. I have done the settings for mp files but its still not there. Please help me so I can edit my movies from my camcorder.
Thank you

You need to open the AVCHD file as if it were a folder (it is). In Mac: Right click, then "Show contents". You will see another folder, do the same with it. Then you'll find the *.MTS files. Those you can open and work with in Blender.

You can even change the extension "mts" to "mpg", but that's not necessary in Blender.


Apply texture to the full height of the UV Island? Full faces are unwrapped but it shows the texture like not the full height, please help!

.blend file

Took a look at your file. The texture appears that way because of the subsurf modifer. You have to tell blender there's a crease there by selecting the edges around the label and setting the crease to 1. See image:


Objects appear jagged in object mode this started randomly happening during a blender session. The image is a default cube immediately after opening blender

All graphics drives are up to date: NVIDIA GeForece GTX 1080

I set everything back to factory settings, that did not work so downloaded blender again, no luck

any help would be great - thanks

Ok 1 minute after posting I found the answer. I will answer my own question rather than delete in case others have the same issue as it is a easy one to miss.

Camera clip start set too high at .0001 now reset to .01 and all fine.

If admin want to delete my answer no worries. Thanks


How can I make honey drip down a surface endlessly? I am trying to recreate a concert visual of Ariana Grande's. The visual looks like a white liquid dripping down a wall. This goes on for 4422 frames. I tried with particles and and icosphere but it did not give me the dripping effect. What I am trying to make is a liquid dripping slowly down a surface that goes on for a long time. I will insert a photo. Someone please help![this is the effect I want. It drips down for 3 minutes]

Animated UV map:

One way of going about this is to set up an animated UV map. You will have to have a good material for your honey, and then you animate your UV texture mapping so that the texture appears to be dripping down the sphere.

Here I have started with a UV sphere and kept the default unwrap:

I've set up a simple material using only a texture for the base color. The effect will look much better if you also have normal and roughness textures. If you have the node-wrangler addon enabled (included in Blender, just turn it on in prefs), select your image texture and press CTRL + T to add the Texture Coordinate and Mapping nodes. Plug these into every image texture you end up using.

In terms of the actual animation, you're going to be animating the Y-coordinate of the Mapping node. I inserted a single keyframe at frame 0 with Y=0.0, and a single keyframe at frame 60 (or whatever the last frame of your animation is) with Y=1.0.

The reason you set the first keyframe at frame 0 even though your animation starts playing at frame 1 is so that you don't have two frames with the same position.

Make sure you set the interpolation mode for these keyframes to linear.

Here is a basic demo of the set up:


Copying these fluffy clouds? So, there's plenty of cloud questions and tuts out there, but none seem to give me what I want, or work in 2.8.

The guy I followed, this is what he came out with. The top left is his render, the top right is the model (done with metaballs), and the bottom is his nodes.

NOTE: the Flakey Bits node is just a Musgrave texture.

The exact thing he said was this: "Spent a while experimenting with a stylised cloud material. Now settled with a simple volume material with displacements, Voronoi for the bulbous shape and Hybrid Multifractal for little whisps, scaled and masked with Noise. Mesh created with metaballs, then converted to mesh." (Also 2.79)

Anyway I've tried recreating this, both in 2.79 and 2.80 with the exact materials, and the results, particularly the displacement, are nothing like this.

From browsing, I've found that lighting is a big part, so I've tried all kinds of suns, hdris, etc, but nothing is working...

Basically, what I'm asking for is someone to try that, and if it works, tell me what I was doing wrong (or how they did it), or if it's not working, try and come up with something that might.

If you need anything else, here's the link to the guy's page. Scroll down a little, and you'll see it.

https://blenderartists.org/t/isometropolis-pd/1132325/35

(Hopefully I've given everything you guys need), tell me if I haven't.

Any and all help is appreciated!

EDIT: pretty sure there's no difference in what happens between 2.79 and 2.80, but someone can feel free to point out that I'm wrong if I am :).

Well, I eventually figured it out.

Not quite sure what I was doing wrong, but I'll say what I did and post the .blend file.

Here's the image I ended up with.

It's not perfect, mainly the lighting I think, but I'm pretty happy. It matches the 'cartoony' cloud style I was going for.

I started out just making a simple cloud-shape out of metaballs.

I then more or less copied the node setup above, what I actually used being below:

I then added a subsurf modifier, set to 3, and two displacement modifiers, shown below.

For both displacements, I used an empty called iCloud to control the coordinates. The first texture was a Voronoi, shown below.

The second was a Clouds texture, /.

I then had two suns, one with a strength of 8, and a very slight warm colour. The second was mildly blue, with a strength of 2. They are both pointing down, slighty angled from different sides.

This was my final scene before rendering.

And that's how I ended up with my render! Might be a bit of a drawn out answer, but I know how long I spent desperately trying to find answers, so I wanted to help out anyone else as much as I could.

EDIT: Here is the .blend file.


Code behind the Simple Deform Modifier I would like to improve the documentation of the Simple Deform Modifier. Therefore, I have inspected the source code (click here to view online. The math is 'do-able'. For example: the transformation for the taper-mode is as follows. However, I have trouble understanding the coordinates

  float x = r_co[0], y = r_co[1], z = r_co[2];
  float scale = z * factor;

  r_co[0] = x + x * scale;
  r_co[1] = y + y * scale;
  r_co[2] = z;

I assume that the r_co[0] to ...[3] are the X,Y and Z-coordinates of the vertices. So, the tapering is scaled in the X and Y axes, with a weight from the Z-location/distance.

Is this Z-location/distance calculated from the origin of the mesh? It should be 0 at the origin  because vertices are not scaled in X & Y axes for the origin-plane.
What is the Z-location/distance of a vertex at the border of the mesh? It should be 1 because the tapering is at its max at that point.

So, are these R_co[0] ... [3] coordinates expressed in a number varying from -1 to +1, with 0 at the origin of the mesh? Is there any documentation about this?

Thanks.

After further research.

The Simple Deform modifier modes are in fact basic operations of rotating (Twist & Bend) and scaling (Taper & Stretch). The code for the Taper function is given above.

The calculation of the deformation is performed in the local coordinate system. The parameters r_co[0] … [3] are thus the local X, Y en Z coordinates of the object. Depending on the location of the origin of the object, these can be positive, negative or both. In the figure below, the origin is at the bottom of the object, so all local Z coordinates are positive.

Originally, the parameter Factor comes from the user (0.750 in the example) but is adjusted somewhere else in the code for the size of the object in the Deform axis. It is also influenced by the parameter Limits. In the example, the deform axis is Z and the object has a size of 3 units in this axis. So, the factor used in the function is 0.750/3 = 0.250; e.g. the total amount of deformation is spread over the entire deform axis.

So, all vertices are scaled in the local X and Y axis. The local Z-coordinate remains unchanged.
Following the given formula the deformed vertex is calculated as follows:

Vertex (-0.5,0,3);  -0.5 + (-0.5*(3*0.250)) =  -0.875
Vertex (-0.5,0,2);  -0.5 + (-0.5*(2*0.250)) =  -0.750
Vertex (-0.5,0,1);  -0.5 + (-0.5*(1*0.250)) =  -0.625


Why does my rendered video not animate? I have used Blender to generate a video clip using H264 and the clip works perfectly, however I need to add audio and some titles, so I have re-imported the clip into the video editor and added the other elements there.

The problem I have is that when I export the video, it is not animated. What is exported appears to be a single static frame rather than the animation that is visible when one opens the clip in a regular video player. Unfortunately the clip is not highly mobile, it changes quite gradually, so it isn't very obvious in the preview, but it doesn't look to me as though the preview is animating it either.

I'm wondering if there is something wrong with the time selection, but I can't figure out what is wrong with this:

I am completely new to the Blender-as-video-editor world so I might be missing an essential step, but like most matters for the Blender noob, I have no idea what that would be because the interface has ten thousand settings and every tutorial or document is discussing a slightly different version.

What do I need to do to ensure my video is rendered with animation rather than static?

After struggling with this for a while I switched to a different video editing tool ( I used KDEnlive ) and used that to put together the complete video. It worked perfectly with Blender's exported video and was quick and easy to work with. A Swiss army knife is very practical when you don't have a screwdriver, but if you do have one, use that instead.


How to save print-quality screenshots of the 3D view? My question may look somewhat similar for the ones already answered on different forums "how to capture high resolution screenshots of blender"; although I don't care about the user interface at all!

What I want is only to create a screenshot of the 3D View itself with only a single object, that has a matcap shader turned on, with a custom resolution, eg. 4000px*4000px.

Is this possible? If not possible natively in blender, is there a non-photorealistic renderer that uses only a reflection map (matcap) to produce an image in custom resolution? (atm I could not find one)

NOTE: If a Python script is available for saving partial screenshots at a given zoom-level, one-after-another it also works, I guess. (at least when I want to capture the model in ortho projection).

Have you considered the OpenGL render? You can set the resolution in the render tab, then just click the render button in the toolbar at the bottom of the 3D viewport.:

It then renders an image of the viewport (without the grid) that you can save. It also works with animation.

The render anti-aliasing settings are used so for a higher quality result you can set it to 16, since its OpenGL the additional samples are typically still quite fast to render and help to give a smoother final image.

Here's a 4K render done with the OpenGL render:


Explosion does not have a material When I went to start making the material for my fire simulation there was no material.
I am trying to create an exposion in Cycles and when I baked the explosion I went into the Shader editor to create the material, nothing showed up. I was selecting the domain when I did this, then I selected each emitter (I am using particles to control the explosion) and there was still nothing.
I am using blender 2.83.1 on Windows 10; although, this appeared originaly in 2.83 so I updated to see if it would fix it and it did not.
Image of explosion simulation from camera perspective and node editor with domain selected not having a material:

Make sue that you bake it by clicking on the domain and going to the physics tab and you should "bake" in settings.  If you don't see a bake option go down to cache in the physics tab and make the type modular and check "is resumable".  Hope this helps.  Just to make sure you also have to view it in rendered view.


Replicating the World Ambient Occlusion setting on a per-shader basis On the World tab, there's an Ambient Occlusion setting that allows you to sort of add indirect lighting to the scene. The manual says that this effect can also be applied on a per-shader basis using the Ambient Occlusion node.

The node in question has a Color and an AO output, and I understand that these can be used to create cavity masks and such. However... how exactly do I use this node to replicate the "add indirect lighting" effect of the Ambient Occlusion setting on the World tab?

More precisely, how would one go about integrating the Ambient Occlusion node into an existing material in order to replicate the World Ambient Occlusion setting (Factor + Distance) on a per-shader basis?

In simpler cases, AO node + Emission node + Add Shader node seems to do the trick. For instance, World AO with factor 0.1 may be reproduced in a shader as follows:

See also this thread on Blender Artists: thread


How to access the Kemap settings Preferences (Spacebar Action, Select Mouse button, etc) with python? I use a python script to set up some startup preferences like this:

bpy.context.preferences.view.show_tooltips_python = True

However, there is a particular set of preferences I don't know how to access, the ones in the Keymap section where you specify what spacebar does, what mouse click you use to select, etc.
How can I access these settings?

Search the source
With Developer Extras turned on hover over the enum and  choose edit source
This will open up (for me)  scripts/keyconfigs/blender.py
    # General settings.
    col = layout.column()
    col.row().prop(self, "select_mouse", text="Select with Mouse Button", expand=True)
    col.row().prop(self, "spacebar_action", text="Spacebar Action", expand=True)
    if is_select_left:
        col.row().prop(self, "gizmo_action", text="Activate Gizmo Event", expand=True)

Notice there is a generic property update method load(self, context)
def load():
    from sys import platform
    from bpy import context
    from bl_keymap_utils.io import keyconfig_init_from_data

    prefs = context.preferences
    kc = context.window_manager.keyconfigs.new(IDNAME)
    kc_prefs = kc.preferences

Ok then to the python console
>>> C.preferences.keymap.active_keyconfig
'blender'

>>> C.window_manager.keyconfigs['blender'].preferences['spacebar_action'] = 2

will set to the third option.  The item that matches that number is available enum definition of the the Prefs class.


Why Applying scale to my armature moves its position? I think applying scale means changes the Object data dimensions and makes object scale to 1 but why its moving my armature?

No Animations attached and no delta transformations present also.

It's because your armature has currently a pose, once you've applied the scale, go in Pose mode and reset the pose (AltR, AltS, AltG) and the armature will be back to its default position.
You've given your armature a pose, poses take the bones position in local space into account, if you apply the scale it changes the distances.


How Can I add an Object so that is not facing the current the view? I was following a tutorial on blender ( I dont remember which now, as I have watched a lot ). I some how  set up this feature and now I dont know how to turn it off.

Each time I apply an object in to my scene, it applies facing whichever direction my camera is facing. How can I get this back to the default of applying the object in the center?

Thank you in advance.

Look at the bottom left of your picture. See a box that reads Align to View?

Disable it


How to export hair as object and not getting huge file Im new in Blender, and i made hair and export it as mesh,  myhair.obj file. But the file is enormous big. First it was 600Mb khmm.. Then i added decimate node and maximum (minimum) with that optimisation my file is still around 30 Mb big, and when is imported to Character creator 3 program become very slow, unresponding and myhair.obj file is importing long time, few minutes.
Mesh has 176,120 vertices, Faces 261,590,Tris 344,470. Hair becomes big after making mesh from particles. And also lose some fine details after "optimisation" and they are still to big, obviously.
If enyone can help, please tell me what have i missed in the first time.

Unfortunately all "tips" I can give you will lower the quality of your result, but it will make the file size smaller.
Here is what you can do:
under Emission:

lower Number
lower Segments


The encoder timebase is not set I have several videos in the blender sequencer (2.79). When I select FFMPEG Video in "Output", the error "The encoder timebase is not set" appears.
 I tried every container and codec combination.

Thanks for your help!

I had to change the frame rate from 23.8 to 24 to back to 23.8 fps....


can't undertand what is wrong weight paint fingers hi, please someone can say me what's wrong? it's a file that i didn't open for two weeks, it worked well last time but now i have a problem with fingers. i added bones last time and i checked all the bones but no one except the right bones influence the fingers. why they deformate? how can i fast understand where is the problem?
EDIT: post another image, the right arm it's ok, the problem is the left. i can't understand.
i did a simple armature, then i worked with shape keys for face animations or biceps, i deleted them in the right way but have this. now i controll if i have older file of this

i solved reworking on the topology of the fingers, I didn't understand what happened but ok


How to fill a mesh with solid color Given a 3D model, I want to define different regions and fill each region with solid color (to distinguish)

Is there an easy way to do it?

My current solution is to first select faces under edit mode, then switch to vertex paint mode and paint use a brush. I changed some properties of the brush(large radius, reduce edge softness) but I can't make regions in solid color as I expected..

Please Help.

You can create multiple materials for the object in the materials tab of the properties panel.  Then, on edit mode, use the assign buttons in the materials tab to give the selected faces the selected material.  By default all faces are assigned the first material you create.

Note: the rendering properties of a material can be found in the surface rollout.  But materials, by default, have a gray viewport color, this can be changed for each material at the bottom of the material's settings.


extrude region (vertex normals) direction problem Following tutor4u video making a mic (part 2) I came upon extrude region vertex normals for the mic stand bracket.

Selecting extrude region vertex normals I attempted to add .1 and enter, but the extrude only moves down in the z direction. Also when I click on extrude region vertex normals with my mouse and slide the mouse over the working window the extrude begins (downward in the z direction) by my just moving the mouse in any direction on working window.

The video does not show any problem like I'm having, I'm sure I have all settings the same as the tutorial. I'm using Blender 2.79 (same as tutorial) only I'm using a mac computer, tutorial appears to be windows OS. I also made sure that I have no vertex duplicates.

If  your Pivot is set to 'Individual Origins', you can indeed get AltE > 'Faces Along Normals' in 2.8, or AltE > 'Region Along Vertex Normals' in 2.79, to fail as shown.

With the Pivot set to any other value, it works as expected.

This does seem like, at least, inconsistent behavior.. I haven't looked to see whether it's already been mentioned to developers.


My Light Has No Shadow Menu When I click on my light there is no shadow menu on the right as the image shows, I am wondering how do I get this menu back? I am currently running blender 2.8 on Linux. Thank you in advance for all your help.

You are using Cycles as your rendering engine. Only EEVEE has that shadow setting panel:

Things happen a lot between Cycles and EEVEE, beware of what engine are you using.


In Edit Mode, is it possible to invert selection? I wish to select areas of a mesh, but it would be much simpler to just select the ones I don't want selected (because they are easier to access), and then inverse the selection.

Is this possible?

This can be done with CtrlI or Select -> Inverse.

It detects which selection mode you're in, and inverts the selection by vertices, edges or faces appropriately.


Can drivers span more than one line? Is it possible to write Multi-line drivers? As I understand it, drivers just assign the given statement to a variable, so you couldn't have _expressions (which don't evaluate to anything) in there. Is there some way to go around this? If so, how?

Although the expression is one line you can call a complex function in that line, you have to define and add this function to the driver's namespace before using it.

here's an example function and how it's added to the Driver's namespace ( from the DOC ) :

import bpy

def driverFunc(val):

    return val * val    # return val squared

bpy.app.driver_namespace['driverFunc'] = driverFunc    # add function to driver_namespace

To see the already availabe functions and properties type bpy.app.driver_namespace[' in the python console and hit Ctrl+space

DOC link for more info


Purpose of the languages selector in the Python Console I tried to search for this up and down with no success..

In blender 2.8, for the "Python Console" editor type, under the "View" menu, there is a submenu named "Languages..." that expands with one only option, "Python".
As far as I know the only available scripting language is Python, and last time I checked there were absolutely no plans to ever include any other scripting language, so what would be the purpose of that menu?

Well, Blender has lots of submenus and options that serve no apparent purpose, so...

Anyway, Blender source code is managed by the Git version-control system which maintains a history of changes as a series of "commits".  In this case, the commit that added this menu is documented as follows:

commit ddeb9f8e24da6076ed76be1573cc152def5751ae
Author: Campbell Barton <ideasman42@gmail.com>
Date:   Fri Nov 6 23:53:40 2009 +0000

    - added console language type
    - separated python console from the interactive console
    - added shell console type (simple example)
    - console types are autodetected and can be selected in the menu

So, a decade ago, one of the lead Blender developers thought that having support for multiple console languages might be useful.

There's still some dead code around, so you can enter the following in a Python Console to get a Bash shell:

>>> bpy.context.space_data.language='shell'
>>> bpy.ops.console.language()
/bin/sh: 1: Syntax error: Bad function name
/u/buhr$

After this, "Python" and "Shell" will appear in the View->Language menu, and you can toggle between them.  Have fun!


What is GPU tile size contingent upon? I've read a lot about this but most of what I've found is anecdotal or personal experience.  My question is more about architecture.

The optimal tile size for GPU's is universally stated to be 256x256.  But all GPU's are different.  They have different interfaces, # of cores, memory, etc.  Why is 256x256 the universal constant?  If it's the memory interface, there are cards with 128-bit and 384-bit interfaces.  Would their optimal size be 128x128 and 384x384?

I've found that for my GTX-970 (256-bit), if I keep the multiplied tile size as close to 65536 (256x256) as possible, I always get the fastest render times.  But that number doesn't correspond to the number of cores (1664) or the amount of memory (4GB) on my card.

Ultimately, how is the optimal tile size determined for a specific GPU, architecturally speaking?

The infamous answer to this question is:
It depends
The 256 x 256 recommendation that is given many times is a very good starting point. In general it will lead to decent render times and sufficcient image update cycles while you're waiting for the render to complete. But as with any renderer, tuning this setting can indeed lead to speed-ups, depending on

the final render pixel size
the complexity of the scene
the tracing engine used
the GPU you're running the render on
how many pixels are irrelevant (because they don't sample anything, as there are no objects hit by the rays)
likely many more factors

The most important one is the final render pixel size. If you render super high res, having a smaller number of tiles to be computed in total can speed up the rendering. At a resolution of 1280 x 720, you won't see much of a difference. At 8.000 x 6.000 you very likely will. When rendering on our TitanX rigs, we tend to go to 512 x 512, sometimes 1.024 x 1.024 tiles with such resolutions to cut render time. Less complex scenes also tend to support bigger tiles better, but again, no general rule here.
The GPU merely matters in terms of what generation it is (Fermi, Maxwell, Pascal, etc), the number of cores, and the amount of memory present. Maxwell GPUs can to my knowledge benefit from bigger tiles, with the others I have no personal experience.
The tracing engine I only mention because of a "feature" in Windows: TDR Delay. If you Google that, you'll find heated discussions plus a Microsoft support page on how to set it. Basically, when you render, a work package is sent to your GPU (the tile), and the system waits for the results to come back from the GPU (the resulting sampled image at a certain number of samples). If Windows does not hear back from the GPU after 2 seconds (the TDR delay), it restarts the graphics driver - and kills the rendering while at it. Especially when using Branched Path Tracing, the answer time for the GPU increases by A LOT. That causes renders to fail. Reducing the tile size is one fix to this, setting a higher TDR delay value another.
Auto Tile size
An Add-on called "Auto Tile Size" is bundled with Blender, which makes setting the tile size more convenient. When enabling it, you'll however notice that it actually doesn't set the render tile size to 256 x 256. Istead, it tries to choose values which are close to this, but round them up or down, so that the image is split up into tiles of all equal size. See this example:

The Render Dimensions are set to 1280 x 720 pixels, the tile size is set to 256 x 240. Why? Because that gives the GPU 5 x 3 = 15 tiles of equal size to process. If you keep the tile size at 256 x 256, the last row of tiles will have a height of 208 pixels, as 720 cannot be divided evenly by 256. This is potentially, but not necessarily, inefficient.


How to model a frustum with specific radii? I'm working on a maths assignment and I need to create a frustum (cone section). My first thought was to use a cylinder, but I'm unsure how to do it. So,  could anyone explain, step by step, how to make such an object?

Press ShiftA and choose Add Cone:

Press T to show the Tool tab.

The Radius 2 will allow you to make the top flat.

Radius 1 is the base radius, and Depth will determine it's height.

Another option to access the tool's proerties is by pressing F6


How can I sculpt a small/fine line? In sculpt mode, using the draw tool, I can only seem to make indents in my object if the change is massive (i.e. taking a massive chunk out of it), if i set the brush settings to have a smaller radius or a stronger strength, barely any change is made.

Try the snake hook brush with dynotopo enabled.
The snake hook brush is designed to pull geometry into thin strands depending on brush size. Dynotopo is recommended because as you pull vertices out, it loses more and more detail until the tip of the line has only 1 or 2 vertices. Dynotopo will automatically create new geometry do you don't need to worry about that.


black and white hair texture to colored hair I have a picture with white hair and the background is black and i want to make the black background to be transparent and the white hair to be colored or even better if i could add another texture on top of this one and it applies only to the hair somehow. How can i do this? Im still not very good with nodes...

So, Here is the image i got

I assume that you already made a simple cycle material and UV wrapped your hair texture on your polygon hair.

Transparency

Since your picture is full black and white you can use it as an alpha mask to mix between your hair color and a transparent shader:

Add --> Shader--> Mix Shader

Add --> Shader--> Transparent BSDF

For the mix shader

Factor : your picture in an Image Texture
First Shader input : BSDF of the Transparent BSDF node,
Second Shader input : your color Shader, for the example I simply use a diffuse shader but you can make more complex shader to have a better result
Output of the Mix Shader to the Sufrace of the Material Output Node

Apply a texture

Now you can add a texture to your hair.

You can add pretty much any kind of color input, in my example case I used just a noise Texture and a color ramp as the input color of a Diffuse Shader, but you can use an Image Texture or any other input color.

Here is the node setup :


Color differs from Cycles render in Video Sequence Editor I've made a space scene, rendered it in cycles, and saved the animation frames as .png pictures. Than I used the Video Sequence Editor for making a video out of these pictures. But the result of the video isn't the same as the pictures are showing. It is more dark, the image texture of the spaceship looks also bad. And the light of the engines doesn't shine as bright as it was shown in the render view.

It does look like this, when I use the Video Sequence Editor just for making a video out of these photos.

Like this it does look with Alpha on 2200 (the glowing lights are looking very bad)

And I want that it does look like this. When I render it, it does look like this, but not in the VSE

You definitely have an issue in color management, specifically regarding transfer curves, but from the information you provided it is impossible to conclusively explain exactly why or how.

A PNG, if encoded correctly, should display as it was encoded in the VSE. If you somehow managed to mangle up the transfer curve when storing it in the PNG, via the "View as Render" awfully named checkbox for example, all bets are off.

So to properly diagnose this:
1. What were your render settings with regards to color management? Did you happen to check the "View as Render" toggle somewhere?
2. What file format did you save and how? For example, is it possible the file format was saved differently and merely labelled with the PNG extension?
3. What are the color space settings for both render and the VSE?


Restricting movement of vertices in blender So, when I move (lets use a cube as an example,) I move two of the bottom vertices in said cube, it pushes the two vertices above it, causing the entire model to deform.
My question, can I lock the two top vertices in place so there is no "pushing" when I move the bottom two?

Most likely you have accidentally activated the proportional editing, which has a range of influence adjustable with the mouse wheel.


How do you start a complex polygon I'm a beginner Blender user, and I'm sorry if this isn't the way to ask the question or if I'm even allowed to ask this question.
 I do have a little experience with Inventor, enough so to be able to make the item I am trying to make currently, but not enough to be called a pro.

So here's the shape in question:

I'm trying to get the really dark purple part, I can figure out sizing the pieces, but I don't know how to start the edges from a cube or plane without just making a cube and making all the shapes and boolean difference them out

I get that you are supposed to start with primitive shapes and go from there, but as mentioned earlier I can't figure out how to get a primitive shape to fit the middle.

You can use the poly build tool https://oldetinkererstudio.com/poly-build-tool-blender-2-8-quick-tip/


Help with IK Rigging I have IK rigged my model legs but this happens.

we all know that it suppose to go forward not backwards. Can someone help me . Thanks ^_^

You need to limit the IK movement for the bones. The parameters are found under the bone tab. Check the limit option for the proper axis.

The line signifies where the bone(s) will go to accommodate the IK and will change when you change the degrees. Set it where ever you like.


how to interpret the camera world matrix? If I check the world-matrix of a camera, that views the default cube from the negative world y-axis location:(0, -6, 0) I see

[1, 0,  0,  0]
|0, 0, -1, -6|
|0, 1,  0,  0|
[0, 0,  0,  1]

Can someone help me interpret the matrix? I understand the translation part, but which axes define the projection plane? I'm viewing in the world y-axis direction so the camera z-axis points there, but I expected camera z-axis to be the world -y-axis and camera x-axis to stay aligned with the world x-axis (true) and the camera y-axis to be aligned with the world z-axis.

In short, with blender, cameras we are viewing in the camera z-axis and we need to negate the camera y-axis to obtain the proper projection plane axes (we leave the camera x-axis alone)? I guess the camera arrow defines the camera "up" direction?

The solution is so obvious, I must be getting old :( Anyway, the world matrix of the camera is a transformation matrix, not a viewing matrix. To obtain a viewing matrix out of it, you need to invert (transpose) it and zero out the translation part.

Explanation:

We set all Euler angles of the camera to 0, so the local axes are aligned with the world axes (the "identity", non-transformed camera):

We see, that this camera is viewing in the negative local z direction, if we rotate by 90 degrees around the x axis we get the picture in the question. The columns of the world matrix being the transformed axes of the "identity" camera:

x column: [1,  0, 0]
y column: [0,  0, 1]
z column: [0, -1, 0]

To obtain a viewing matrix of the camera (for OpenGL, say), we need to transpose (write the columns as rows) and set the translation part to 0:

[1,  0, 0,  0]
|0,  0, 1,  0|
|0, -1, 0,  0|
[0,  0, 0,  1]

we can see the projection plane is formed by the world x- and z-axes, the local z-axis of the camera is aligned with the world -y-axis, but we view along the negative camera z direction, hence the world y-axis and so can see the cube.


How to increase visible area of a camera without side effects? I would like to increase visible area of my perspective camera, so that more content could fit in. I tried increasing FOV, but high FOV values made my image bend at the vertical edges. It seems that higher resolution values give me the desired result, but I want to keep default 1920x1080.

Is it posible?

To increase the visible area of theh camera without actually moving the camera (which would change the view through the camera) you can simply adjust the Camera 'Sensor Size' in the camera properties. See related answer for Change camera from rectangle to square by center


How can I import Gerber DXF pattern into blender? I have DXF files from Gerber which I want to import in Blender for 3D simulation. How can I do that?

In the info bar at the top left hand of the blender program try 'file', then 'import' the find AutoCAD DXF.

try it and keep me posted.


What kind of node is this? What kind of node is this?

Image from this blog post

Nodes can be combined to a Node Group, the parameters you listed are part of a Group Input in the old (pre 2.67) style Group Interface.

Each important in and output of a group of nodes can be wired to the group in- and output nodes to make them accessible when the group is collapsed.

The new style looks like:

Single Node nonsense example

You can collapse the view of a node group using the up-arrow button from the menu header, and expand it by clicking the icon right to the nodes title.


Program resolution is too small on the screen I just installed Blender and have a 2000x3000 tablet. I can't read the the labels on the program. Is there an easier way to do it rather than changing the laptop resolution?

Open File > User Preferences, under Interface adjust Display Scale


Fill a mesh of edges without adding new edges or creating non-manifold geometry I have a large surface of non-manifold geometry that I would like to repair. I have tried deleting the faces and then using fill. This roughly works but generates new edges and recreates a lot of the original problems.

Is there any way to only generate faces where all the edges are already there and to not create a face if the edge has already been used for two faces?

I am hoping it could recreate most of the surface and I can manually fix what hasn't worked.

This is the problem. From what looks like a fairly good set of triangles, using fill produces the following mesh. Lots of missing triangles. Some strange added edges added on the cliff face and lots of edges sharing multiple faces. I've used merge by distance to try and fix it any vertex troubles but it doesn't work. Decimate recreates the on-manifold geometry. Remesh loses a lot of the original data and creates holes.

Back to the original mesh, it looks like some triangles have two faces.

You can use the Fill Holes command for this.

In Edit Mode, select your mesh (Select > All)
Go Mesh > Clean Up > Fill Holes
Done


Mesh doesn't follow armature Can you guys take a look at the blend file and help me out?The mesh doesn't follow the armature and I tried to make it work all day.

https://www.dropbox.com/s/x2jzizxan8kilbl/Boxer.blend?dl=0

Thanks

Until the day arrives that we all have super computers... the meshes used for sculpting are not the ones used for animating. There are too many vertices which makes it cumbersome to rotate around, let alone animate. The automatic weights are not finding a solution - perhaps because of the high vertex count - and though you can manually add weight I don't think this is going to bring much joy.

My suggestion is to retopo a 'lighter' version which will be easier to work with.

Update: In response to Vlads comment below. The greatest concentration of verts are in the face. Selecting the face and AltP to separate it from the rest of the body. The headless body accepts the automatic bone weights and can be deformed by the armature. The obvious problem are the gaps that will form between the two objects.

It is always easier to talk after the fact but... finding a pose with a simpler mesh, earlier in the process, would have saved a lot of trouble.


Using Relative (//file) paths, Make All Paths Relative doesn't work I am looking for a way to use relative paths in Blender to link to external image, movie, etc... files. I assemble all of my .blend files on my MacBook (OS X Yosemite) and link to the images I've selected by connecting my Finder to a downstairs headless Xubuntu server, through which Blender can then create an absolute path. I then render using this server. However, I have been looking for a way around linking Finder and creating an absolute path, as I must be at my house to connect Finder. I've read that if I use a relative path (//file1), as opposed to an absolute path (Users/.../file1), I should be able to easily send an entire folder, assembled locally on my laptop, to the server, but I haven't been able to get this to work.

In an attempt to create relative paths, I remapped all of the paths in one of my existing .blend files to correspond to the same image textures locally in the folder on my computer where I store said .blend file. I then tried to use the File > External Data > Make All Paths Relative option, but all of my paths were still absolute. Any thoughts?

How Relative paths work:

If you are working on COM 2
Your .blend file references paths on COM 2 relatively
If your same structure & content then exists over on COM 1

THEN:

When you copy your updated reference content & .blend from COM 2 over to COM 1, everything should work fine.

If what you are really doing is:

Working on a .blend over on COM 2, using all of your references from COM 1 as something like: //COM1/A/HDPE_Plastic_Texture_001.png

Then relative pathing will not work inherently.

To give you a sense of how you could get it to work, I will demonstrate a few use cases, and it should help you understand what you would need to do in your particular case.

Use Case #1 (The best case):

Your .blend exists at the root of COM 1

SOLUTION:

REPLACE: //COM1/A/HDPE_Plastic_Texture_001.png

WITH: ./A/HDPE_Plastic_Texture_001.png

Use Case #2:

Your .blend exists in a sub-folder of COM 1 - such as //COM1/B/myWorkingFile.blend

SOLUTION:

REPLACE: //COM1/A/HDPE_Plastic_Texture_001.png

WITH: ../A/HDPE_Plastic_Texture_001.png


Best way to attach objects/armor to cloth I have a skirt with a cloth sim on it, and some pieces of armor. The top loop of the cloth is pinned to a rigged character, which I have animated to do a walk cycle. I want the armor to sort of hang from the cloth and follow it, but at the same time keep its shape.
What would be the best way to accomplish this?

You can create an empty and parent it to the cloth mesh using the "3 vertex" option, so that the empty will follow the average position of three selected vertices of the cloth mesh. Then you can add an armature and set a copy location constraint to the armor bone, pointing at the empty.


Object Edges Won't Scale Was trying to make house. Tried to scale one side of a rectangle by selecting the edges/vertices and scaling them but it seems it won't scale in the axis I want.

Tried to set settings to default and reinstalled it, the problem persists.

Do you know why does this happens?

A few things wrong with this: 1) you are selecting vertices, not faces. This would be so much easier to do by selecting faces. 2) You are trying to scale the face along the X axis. Since it can not get thicker along that axis, to move it, transform it on the X axis, don't scale it.


Unable to render animation with audio I'm completely stuck on trying to render with audio. I've made sure the audio codec is selected alongside FFMPEG, I've added the audio file in the video editor and I can hear the music when playing the scene but every time I render anything, I get no sound.

Any ideas please? I'm using blender 2.82

thanks,
Sal

Have you selected an audio codec for your output? Default is "No Audio"

Edit:
Ok, I just saw that you seem to have enabled a codec... Have you tried different codecs? Maybe you chose one that is not supported on your media player?

Alternatively: Have you tried re-importing the output video strip into blender?


Align viewport view to object/Move object to viewport view How do I align the viewport view so it is looking out of a selected object? How do I move an object to the viewport's view? This would be useful for placing some objects like lights where the viewport "camera" is, or aligning one object to another.

Viewport to object
To align the viewport to the object, select your desired object and hit CtrlNumpad0. This sets the selected object as the active viewport camera. Hit Numpad0 to return to your normal view, and return back to the object view again with the same key. Repeat this procedure on the camera when you are done in order to use the camera as normal.

Object to viewport
To align the object to the viewport, first set the desired object as your active camera and return to your view (steps above), then hit CtrlAltNumpad0 to snap the object set as your active camera to your current viewport view. You can also fly the view with ShiftF to move the object around with the view. You may need to enter wireframe mode by hitting Z (while not in fly mode) in order to see.

This is the same process you may already be familiar with when aligning the camera, but it also works on other objects.


difficulty mapping dice image to base cube I'm trying to do a simple exercise of making the default cube look like a dice. I've uv-unwrapped the cube, created a PNG file with dice sides which match, and now trying to get it to apply.

As you can see in the screenshot, I'm seeing the dice sides on only two of the six sides. I've created a material and assigned it to the entire mesh (or so I claim). I've loaded the texture image and assigned it with UVMap coordinates.

This is supposed to be stupid-simple, as easy as it gets (other than applying a single texture eg wood grain). Why am I seeing two sides only? It all appears to line up properly and I was expecting to see all six sides with their correct dot dice image.

Maddening!

Ended up being a lighting issue. Deleting the default point light caused all sides to appear.


"convert to" is not there in my blender 2.8 version In my blender 2.8 version the "convert to", which is present in Search option is not there.  What should I do?

Make sure you're in Object Mode with an object selected, otherwise the 'Convert To' option won't appear in the search.

Otherwise, in Object Mode with an object selected, you can find the option in the Object menu.


Can blend files be queued for animation rendering? I would like to be able to render several files one after the other, when I am not using my computer, e.g. at night. Is there a way of doing this?

Sounds like a job for Command Line Rendering. Sounds intimidating if you've never done it, but it's a simple matter of stealing someone's template and adjusting the parameters:

Windows: blender -b "C:\path\to\file.blend" -x 1 -a

Linux/Mac: blender -b "/path/to/file.blend" -x 1 -a

That's the simplest form of it which will use all the settings in the blend itself.
To make a cue of it, simply put '&&' between the commands:

blender -b "C:\path\to\file.blend" -x 1 -a && blender -b "C:\some\other\project.blend" -x 1 -a && blender -b "C:\yes\another\one.blend" -x 1 -a

To adjust settings like start and end frames, path of the outputed images/video, whether to render the animation or a single frame, check out the wiki page on Command Line Rendering.

It's also useful to tell it to shutdown your computer when it's finished simply by adding this at the end:

Windows: && shutdown /s /t 0

Linux/Mac: && sudo shutdown -h now

And here's one with start/end frame set, output path and format and shutdown when done:

blender -b "C:\En Passant\08-08\shots\s1\awake\awake.blend" -x 1 -o "C:\En Passant\bear_render\awake\img_#" -F PNG -s 119 -e 150 -a && shutdown /s /t 0

Note that if it doesn't recognize the 'blender' command, you just need to cd into the directory of the blender executable before it'll understand you. E.g:

Windows: cd "C:\Program Files\Blender Foundation\Blender"

Linux/Mac: cd "/home/user/Downloads/Blender"


How to stop a simulation that is lagging? Basic Situation: I let a simulation run, but maybe I put some settings too high. Every frame takes forever though it's still going. Every 15 frames or so it updates, but inbetween that it lags and I can't click anything.

How do I cancel the simulation/calculation without closing Blender and losing the progress it has made?

Thanks.

I have had this problem a countless number of times. The solution I always use that usually works is pressing the "escape" key on my keyboard while the animation is playing. This almost always works for me, and I hope it works for you. It also apparently stops pointCache bakes when the interface is frozen.


When using Dyntopo, is there a way to adjust how far each vertex is pushed or pulled? I am using dyntopo, and when I try to shape a square down into another shape that I want (torso, arm, etc.) it pushes some vertices too far down. Can I adjust that somehow?

You can press Shift+F to adjust the strength of the brush you are currently using.

You can also adjust the detail size with Shift+D
(This will display as a percentage or as a pixel count depending on the detail type being used.) The manual has an  explanation of each one.

Changing the radius of the brush with F as needed is also useful.


materials on cylinder have changed from workspace to render I'm working on a cylinder with 8 sections and when I have worked on other shapes before my materials have rendered fine, but with the cylinder as I click render my materials have disappeared or one has been pasted over each section shape.

There might just be a simple solution I'm missing, but I need help fast! much appreciated if anyone can thanks!

examples of what I mean:

Editing Stage:

Rendered Image:

Fixed it! I hadn't realised I needed to click on assign twice as I had only done it once and wasn't sure why it hadn't worked.

So it did end up being something simple that I'd missed


Why is my thin glass dome taking so much light away from what is inside? I made a rather simple roughed-up gold material which you can see here. It has nice highlights and looks OK on the teapot, it works a lot better with the actual mesh I'm using, which is a scan of a clay sculpture. Overall it gives a nice gold-leaf effect.

Then I made a thin glass display dome taking half of a sphere, extruding the equator down, and applying subdivision and solidify (0.001 thin, IIRC). I used a simple, all-white, all transparent Principled BSDF glass material with enough of a roughened up clearcoat to simulate it being a little greased up. You can find the blend file here.

However, you'll notice that the material under the dome is considerably darker now. It seems like less light is getting through the glass material. I mean, that's OK, I was expecting some light to get lost in the process, but this looks a bit much compared to some of the references I've been staring at for hours: the following, for example, is surprisingly similar to what I'm trying to achieve.

I tried fidgeting with the light settings, and the glass settings, and the light paths, I even tried to increase the max bounces, and change pretty much any number that seemed correlated to light but I couldn't get any closer to the effect I want. Increasing the intensity of the light is not a solution because it affects the rest of the scene. I thought of adding fake lights on the inside of the dome but that opened a whole different set of can of worms so I quickly retreated.

I can't shake the feeling that I'm missing something obvious. I've seen very similar scenes done so I'm confident this can be done. See this post for example, though I couldn't figure out exactly how to apply their advice to my scene.

Hints? Pointers to RTFM?

Notice in your reference image that there are multiple light sources clearly visible through the reflection on the gold egg. With any type of reflective/metallic object, having objects/lamps to reflect is important when trying to make the object not look flat.

I made a few changes to your scene to fix up the lighting:

I enabled smooth shading and auto-smooth normals on the glass dome, which also allowed me to reduce the number of subdivision surface iterations down to 2. That helped reduce render times a bit.
You should also consider moving the subsurf modifier on the glass dome before the
solidify modifier. When you apply the subsurf after the solidify
modifier, you end up flattening the solidify modifier by quite a bit.
I increased the size of the lamp from 0.1m to 0.44m. Glass refracts/and reflects light, so some of the light rays that would have struck the teapot without the glass would be refracted away from those points on the teapot as demonstrated by the shadow on the ground. That contributes to the perception of the gold being flat/dark. It also lets the light comes in from more angles, so more rays can strike the glass at points that make
them refract onto the teapot.


How to export mesh with normal map applied as OBJ or STL for 3D printing? Although I do have limited experience with 3D modeling, I'm very new (about 10 days) to using Blender 2.8

I learned how to export character models from Overwatch and import them into Blender. So far so good; I can see the mesh, the UV map, the rendering pipeline, and so-forth. I would like to export the mesh to an OBJ file or an STL file for my 3D printer's slicer to work with. However I realized that a lot of the fine details were missing. That lead me down a long dark tunnel of normal (bump) mapping, rendering, and displacement maps that left me more confused than before.

Below three images are attached. You can see that the exported OBJ is identical to the original object mesh. However the rendered image has a normal map applied that provides more detail around the muzzle of the blaster.

My question is this: Does Blender (or any other 3D editing program) have the ability to export an OBJ after applying the the normal map so that the fine details are captured for printing?

UPDATE: I attempted to apply the existing normal map as a displacement per @Duarte's suggestion below. The only effect was to completely distort the model. Fourth image below shows the result.

Object mesh:

Rendered model:

Exported OBJ file:

Normal map applied as displacement modifier:

Normal maps are an "effect" added on top of your model, visually changing the apparent normal (direction) of the surface at a certain point to simulate additional details.

This simulation affects shading only, like lighting, reflections effects and self shadowing (not projected shadows though). There really isn't any geometry or details there only distorted directions, so unlike displacement or bump these can't efficiently be added back as geometry.

Bump maps on the other hand store "height" values, in a black and white image. While these are also computed to affect normals only, they could optionally be used to move the mesh surface up and down according to black or white values and thus build crude geometry details, in a process often called displacement.

This process is also inefficient and a rough approximation of the original, it requires high amounts of geometry for a inferior quality result.

Bottom line is there isn't as far as I know an efficient way to add back details.

You could try and use the normal map in a displacement node, using the option RGB to XYZ and see if you get any decent results. It will require a subdivision modifier before it with a high count of subdivisions, but expect numerous artifacts and low fidelity.


How to install rotobezier in blender Good day!
I have upgraded to blender 2.79 version but still unable to find the add on "rotobezier". Please help in this context.

Would be of great help.

Thanks ,

Sachin Sharma

As noted in the link on @DuarteFarrajotaRamos' comment.

Rotobezier is part of blender now: It is no longer an addon and it does not have that name any more.

The functionality is part of how masks work.

To make dynamic masking, all that is needed is to create a mask and create keyframes for the control points. Also the control points for masks can be controlled using tracking points in the Movie Clip Editor.


Compositor altering images anti aliasing Compositor is altering the colors and anti aliasing of images. I have outputed 2 image sequences in png highest quality. One opengl and one freestyle render with alpha transparency.

When combining those image sequences in Blender (simple image sequence node with alpha over) the compositor is altering the freestyle image on load. It is altering the line thickness and some white lines (on the blue crystal) are appearing thicker and jagged now. If using the same input in photoshop the white lines appear correct and are way thinner.

Any insight on this problem? I have the feeling it is something with transparency.

Blender composer output

Photoshop output

The worthless format known as PNG.

Render using half float 16 bit EXR.

The issue is crappy unassociated alpha that is enforced with that abysmal format known as PNG. You could also use the "Convert Premul" option to properly associate the alpha channel.


How can I convert multiple mirror ball exposures into an HDR? I was hoping I could use Blender's compositor to merge multiple mirror ball exposures into an HDR.
I have 7 images, each with different exposures, all aligned, each square, 32-bit tiff format. Yet every time I run them through picturenaut it turns out to be ATROCIOUS. Is there a way to combine them into a HDR in the compositor?

I'm not looking for a tone mapped image; I'm looking for an actual HDR or exr for use as image based lighting.

Blender is not the right tool for this job. Not only will you have a hard time getting the functionality you need, but Blender's color management is fundamentally flawed, so even if you do get results, they'll be wrong.

A better tool would be Hugin. It's specifically designed for exactly the kind of thing you're trying to do (creating an HDR/EXR from a set of LDR images). It's free, open-source, and relatively well supported. Your task is smack-dab in the middle of what Hugin was made for, so you shouldn't have any trouble finding (modern) tutorials for that.

EDIT: If you REALLY want to do this in Blender, I'd be interested to see the results if you used them as textures on an emissive plane. If you ADD (not multiply) all the images together (mix node set to add, two images in; that mix node out to another mix node set to add, with another image in; and so on until you've added all the images together), you'll come up with... something. It'll definitely be higher dynamic range... and it'll definitely contain all the data.

Put that texture on an emissive plane, and render that out to an HDR. It's pretty kludgey, but I'd be interested to see what happens. Hugin is still the right answer, tho ;-)


Toggle Render Image / UV Image this is a basic question but I can't find any answer. It's driving me (a bit) mad.

When I press F12 the UV/Image-editor becomes my render-editor but how can I change it back to an UV-editor?

:)

It is your UV editor, it's just showing your rendered image.

See the image popup at the bottom of the pane, that says "Render Result"? Just click that, and select another image.


Hair Particles - Can I recalculate the initial rotation every frame? So i have an animated ocean, Shrinkwrapped a hexagon grid over it and spawning a buoy on every vertex.

I used hair particles en set the initial rotation to Normal-Tangent which works great. The issue I am having is that I can't get it to have the buoy recalculate the normal on every frame (only set its Initial Rotation) So the buoys don't rotate.

When I go to a later frame en change any setting it recalculates the normal again and it is good, but only for that frame.

Anyone have a fix or know a better way to go about this?
Thanks!

Sorry guys I already have to solution, I just had to check to regrow option.
Thanks anyway!