Topology question (square hole in cylinder) I have a cylindric shaped mesh with two faces that has been extruded into the cylinder. I am using subsurf and the extruded part is naturally curved due to the subsurf.
I need the extruded part to be almost 100% cubic and not curved. I know i am probably doing this wrong but right now i dont know any other way.
Creasing doesnt give a decent result so that is out of the question. Model it another way? Interesting but how?
Or maybe there is a solution to my problem?

I have added a screenshot to ilustrate.

This kind of topology will work fine for a 16 vertex cylinder, a bit more complicated for a 12 vertex cylinder:

There's a trick to avoid pinching with the Shrinkwrap modifier:

Create a cylinder at the exact same place and with the exact same diameter. Hide it.

On your original cylinder, create a vertex group around the square hole.

Give your cylinder a Shrinkwrap modifier with the hidden cylinder as Target and Vertex Group > Choose the group you've created.


Can I make a smear frame from the blender? https://hocuspocus-studio.fr/tools/product/overmorpher-world-space/

The link above is a plug-in of 3dsmax.
I'm an animator. That's why I need a smear frame

I'm about to change my main tool with a blender.
But if it's not possible smear frame, I can't get out of max.

Please help me.

If all the animation is done using the grease pencil, it is quite simple. Enter sculpt mode and you can use any of the brushes to smear the drawing at will.


Mark a point on a sphere I am wondering if possible to mark known points (different colors or like this) on a sphere and getting its coordinates in image plane? I need that for an idea to model a fisheye camera. Any suggestions?

You could give one or more faces of a sphere a different material (to make the faces smaller subdivide the sphere). Then you could render the scene and press the left mouse button make the coordinates show up.

First add a sphere and two materials with different colors. Then switch to edit mode and change the selection mode to faces.

Now select one or more faces and the second (in this case red) material. Press Assign to assing this material to the selected face. To see the selected material in the 3D view select the shading mode Material.

Render the scene and press the left mouse button on one of the colored points. The (image) coordinates are shown at the bottom left corner of the image view.

Here is an animation of the whole process.


Frame Dropping vs AV-Sync? What exactly is the difference between the Frame Dropping and AV-Sync options?
I understand that they both drop frames in order to make the playback closer to real-time in the 3D view, but how does AV-sync make it more synced to the sound than frame dropping, if they're both just dropping frames to get the correct frame rate? Is there any time when I should use frame dropping instead of AV-Sync, if they both get the correct frame rate?

As far as I can see:

No Sync just tries to play back every single Frame no matter if it causes lags or time shifting problems with the Audio or the actual physical time.
Frame Dropping drops Frames from the ViewPort Animation Playback to match up with the actual Frame Rate being used
AV Sync skips Frames from Video Footage in the VSE so that Audio and Video in the Image Preview Sequencer Mode stays in sync


Is it possible to execute copy/paste operations using Blender interface? this may be a weird question. I started rendering my animation on my school computer and I left it overnight. How forgetful I was! I set the rendered images to save to the tmp folder not the folder I created. So now when I go to the 'output' section on the render tab and clicked on the folder icon next to it, I see all my rendered pngs but the thing is that I can't drag all the pngs to the folder that I created. I also can't access the tmp folder on the windows computer manually itself as I don't have an administrator password. So I'm wondering is there a way to drag all the rendered pngs out from Blender program itself to the folder I created?

The 'output' section on Blender I know it does say 'tmp' now that is because I'm now starting to render again.

Rendered PNGs

Blender can't copy and/or move files.

One way of doing it though is to open the files as a image sequence using the video sequence editor.

Press Add->Image

Select all the images of your Render and add them to the editor.

You can press "b" for box select to make it easier.

If you now use the same render output setting (except fo the output path)
You can animate this and get your images saved in another folder.

How this works:

Blender opens up the file from the path you saved your animation in. You should be able to read it.

By adding a image sequence in the video editor it overlaps the current scene and does not render it. Your images get saved to a different folder.


animate audio spectrum onto a sphere using animation nodes? So, I'm trying to make an audio visualizer by applying a frequency spectrum onto a sphere.
(1st attempt at a visualizer using displace noise maps and audio baked to f-curves https://www.dropbox.com/s/b1dpi0hqu8icffz/visualizer%20v1_clip.mp4)

so, I'm using Animation nodes 2.1 and Blender 2.79b

I've been able to replicate this fantastic tutorial: https://www.youtube.com/watch?v=8PkdH_GXpQE, but translating the method onto a sphere is proving difficult.

can't seem to figure out how to get the data to work with a sphere. trying to get a ring of vertices and have them scale outwards?

Can anyone offer any guidance or assistance?
thanks

I shall show how this can be done in 2.8, but the same applies for older versions. You just transform/multiply your transformations (In this case a circular distribution of matrices) with a scale matrix composed from the frequency bins on one vector component:


can makehuman/MB-Labs be used to make a SPECIFIC human face from photos? I've been trying to use either of these two tools to create a model, in this case, based on the actor Pete Postlethwaite. Now, I'm not a very good artist, which is why I was trying to use these tools to generate this model, and a whole slew of others I need.
I cannot seem to get the model in either tool to look anything like the source. Naturally I'm going to blame my tools first instead of the craftsman, so I'm wondering if it is "possible" for a skilled artist to actually make the generated models look close to what they are supposed to look like, or are the tools only for generating "generic" characters?

Bonus points for being able to provide a link to some sort of information on how to do what I am trying to do. (Yes, I've read the manual for MB-Lab and have been screwing around with makehuman for over a year watching various tutorials and what-nots)

Tools like this are best viewed as a starting point, they are generally designed to provide a broad range of human shape variations rather than specific ones. Every human is slightly different and it is infeasible to provide parametric controls sufficient to capture all this variation.

The idea should be to start with major proportions and work down to finer details, getting as close as you can in the tool and then switch to sculpt/manual modelling etc to refine. Textures also make a big difference, and neither makehuman or mb-lab provide much here, you may want to look at projection painting from photos if you can find some that are good enough.


My Normal Map makes my material black When I apply an image texture to my material its fine.
But when I Connect a Normal Map The objectis black in rendered view.

Without Normal Map

With Normal Map

Also how do you add a .blend file in your posts?

Make sure you set your normal map textures color mode to non-color data.

You have to do this in the texture settings AND in the properties panel of the cycles material node graph panel


Importing camera tracking data from external sources I can currently export camera tracking information from my own program (outside of Blender).

I would like to import this information into Blender. How do I do this? I can export the tracking co-ordinates in ASCII format as text. Is there any plugin to import them even with changing to a different format (.fbx etc.,)

Any pointers to help me get going?

How about the following function? You would just need to get your ascii data to match the XYZ/RXRYRZ.

import bpy
import bpy.types
import time
from mathutils import *

# positions and rotates an object (globally) and create a keyframe
# at the given frame#
# Change the rotation mode to your liking.
def animate_object( obj, x, y, z, rx, ry, rz, frame_number ):
    obj.location = Vector((x,y,z))
    obj.rotation_mode = 'XYZ'
    obj.rotation_euler = Euler((rx,ry,rz))
    obj.keyframe_insert(data_path="location", frame=frame_number)
    obj.keyframe_insert(data_path="rotation_euler", frame=frame_number)

ex:

cam_positions = (
    ( 1.56,3.13,-1.83, -4.20,-2.58,-3.48 ),
    ( 1.74,3.19,-1.63, -4.40,-1.95,-3.67 ),
    #...
    ( 2.01,3.03,-1.57, -4.32,-1.61,-3.64 )
)

cam = bpy.data.objects["Camera"]

frame_number = 1
for frame_number, cp in enumerate(cam_positions):
    animate_object(cam, *cp, frame_number + 1)


Does a game engine runtime work on all operating systems? Do game engine runtimes work on all versions of windows? Would it work on Linux and OSX too?  I am assuming it only works on Windows but I would like to know for sure.

Also, would it be possible to burn it to a disc?

No, the output is dependent on the OS that you called it from (Blender 2.6 Doc)

If you executed make runtime on Windows, then the output is a Windows executable (and various DLL files). This package will only work on Windows.

Running the same function on the Mac will give you a Mac .app file, etc.


heightmap from textures and hight poly mesh to apply to low polly mesh? i want the height map from the textures but I also want the heightmap from the high poly mesh so I can apply it to a low poly mesh. I want both in one heightmap but I don't know how to. please help

The basics:

Apply your texture as a normal map to your highpoly mesh.
Unwrap the lowpoly mesh and add an image to it (to bake to).
Select the highpoly, add the lowpoly to the selection (important to do this last). Bake normals.

With images:

Highpoly + lowpoly meshes

Test render of highpoly + texture

a voronoi texture applied as normal map

Bake setup and result.


Why is the Array Modifier offsetting this object by 1 in the Z axis when the Z field says 0? The screenshot below says it all, really. The object is offset in both the X and the Z axes, though only the X axis says 1. No other modifiers are on it, no constraints, no locked axes, and I can't think of anything else that would affect this. How can I make it stop doing this?

You have rotations and scaling settings that are interfering with the Array modifier.

Press Ctrl + A with the object selected in Object Mode and click on Scale in the menu that comes up to set the default scale of your object to its current size, and repeat this with Rotation to set the current rotation of your object to the default rotation.


Unwanted purple background with image texture When i add a texture image to the background of the world, an unwanted purple color comes with. I don't know how to delete it (the purple color). I see it in the preview before adding the texture image from my folder. After adding the image, the preview is OK but if i render my 3d view i have always this purple color with my image. Somebody has a solution ?

(with blender 2.74)

Thanks for your help.

Matthieu

P.S : My light is not purple and it is not a duplicate. No files are missing and i don't use blender render but cycles render.
I can see my image in the preview window. My problem is : when i assigne a texture the background is a mix with purple color and my texture. I don't want this purple color !

I think it's a bug. It works great with my older version of blender (2.66a).

The rest of the environment outside of the window probably doesn’t have a texture on it since you’re trying to use window space for the mapping. The purple is probably being emitted from the environment dome that’s outside your camera view


Realistic Aluminum Material In Cycles? I need help, making a realistic looking aluminum material,  like in the pictures below. I would like to only use procedural textures within Cycles.  No external image textures.  Can anybody,  who figures out, how to make this aluminium material,to post his node setup, so, I can see how you did it. I wasn't able to do it, even after searching up online.

The pictures of what I would like the material to look like are shown below.

And

And

Thank You!

Here's my latest render.  I'm not fully satisfied with it yet, but it's close.

Here is the node setup:

Click to enlarge.

It's basically an Anisotropic shader with a little bit of straight gloss, then a very light Fresnel component.  I then used a stretched noise texture to mix in a very small amount of diffuse (to make some cracks more pronounced) and apply a bump.  I've also created the below node group for a very fine grain, which is also used for bump mapping.

Note: the Translate and Scale group nodes are homemade equivalents of the corresponding parts of the mapping node.  They are explained here.

Like I said, I'm not quite happy with it yet.  In particular the flat end needs better texture coordinates for a circular bump (I'm having trouble creating a procedural radial blur) and the inside needs less anisotropy.


How to curve a cylinder I am new to blender and I want to curve a cylinder like in the image below
Any help will be appreciated

The basic way to do it is to switch to top view, select the edge, put your 3D cursor where the center of the rotation is supposed to be:

Select the Spin tool:

Rotate the edge, use Ctrl to constrain to 10° by 10°, tweak the Operator box parameters if necessary:

You could also use a Curve modifier but it will be a bit slower


How to make a mask for voronoi texture (with randomness)? click to enlarge
I created mask from gradient texture with rgb mix node but it cuts some voronoi cells in half.
edit: i need the voronoi position to act as a mask..so it didn't cut the voronoi cells.
any other solution is also great if it didn't cut the cells.
my english is bit rough..feel free to edit it

The new Voronoi texture conveniently gives you a 'Position' output, which gives you (in 2D ) the X and Y coordinate of the center of a shading-point's cell.
So, if you don't want to cut your circle-'pixels' in half, you can use the distance of the whole cell from the texture space's origin to create a mask of whole cells, rather than the texture space itself.

I've scaled the whole texture down, so the cell-resolution is high enough to capture some circular curvature.


Execute a specific action on the first run of the script? Id like to execute different action on the first run of the script

for example the first try i want to execute:

Print("First Hello")

and on the second run.

Print("Hello World")

i don't understant how to do this, because if i store a variable within the script itself every run the variable will be redefined.

i tried something like this, playing with a new stored variable within blender,

    try:
        bpy.context.scene["Auto-Copy Start"] += 1

    except:
        bpy.context.scene["Auto-Copy Start"] = 1

and it can totally work. for example

try:
    bpy.context.scene["Auto-Copy Start"] += 1
    Print("Hello World")

except:
    bpy.context.scene["Auto-Copy Start"] = 1 #that mean its the first run
    Print("First Hello")

But if i save the file and re-run my script it will not work anymore with the saved file, this technique work only for the first run once per file only.

Or i want the first run to execute the first code per blender session. Is this possible ?

Use the window manager

Window manager properties only exist for a session, whereas scene properties are stored in the file.

It's good practice to avoid try except clauses. If a custom property "xxx" on object ob is defined, it will be a member of ob.keys() and can be tested for with "xxx" in ob.keys()

import bpy
context = bpy.context
wm = context.window_manager

if "new" in wm.keys():
    print("Not New")
    wm["new"] += 1
else:
    wm["new"] = 1
    print("New")

May also be an idea to investigate using a non persistent  on-load handler. (Remove the decorator from the example)


where is bone X-ray in 2.82 I can't find that option in 2.8. where is it?


time at the corner of the animation node editor? What is the significance of the time displayed at the corner of the animation node editor? Is it the time period of the loop the node editor is executing?

The time at the corner is the total execution time of the node tree. It is usually measured in milliseconds.

Increase the number of divisions in your grid node and you will notice that the time increases because more processing is required.


Trouble combining multiple objects in the same mesh just having a little trouble combining the 4 bodies in the attached image so I can continue to sculpt. They show up as being a part of the same mesh, but will not blend together in sculpt mode. Thanks for your help!

-MC

Blender 2.8 edits all selected objects

  "They show up as being a part of the same mesh,"

A new feature of blender 2.8 is the ability to edit more than one object at once.  When entering edit mode, all selected mesh objects toggle into edit mode.

Going by the outliner in screenshot this is the case.

There is no need to separate them again.  Separating adds the newly separated object in object mode, so it appears to work, but is probably unnecessary

To edit one at a time, toggle out of edit mode, select only one object and toggle back in.


Close hole after using screw modifier I am trying to create a specific kind of look on a mesh, as to be seen on the following picture:

https://www.bz-berlin.de/data/uploads/multimedia/archive/00375/Merida2_375848a-724x432.jpg

Doesn't have to be 100% accurate, since it won't be too close in the final render, but I still want that swirl effect at the end parts of the bow.

In the picture you can see my attempt to screw two vertices, connected via an edge, to create a similar effect, but whatever I do I end up with a distorted spiral, or with a big hole in the middle. Any idea how I can close this hole? Or maybe a smarter way to get by?

Thanks already! :)

You could do it with a circle or with Grid Fill, but it really depends on your goal, what are you supposed to do with this spiral?


Blender object and armature jumps up from surface I am working on animation and I have an object and an armature. When I go from object to edit mode the object moves up above the surface. And when I go from edit to object it moves down. See images and mode.

Object Mode

Edit (move up from plane)

POse mode moves down same as object.

Found Ctrl + A  on pose resets the position.


loop cut then extrude into object I try to loop cut 2 times on a cubic, then switch to front view, use box select to select the middle part, then extrude -1 around z axis into the cubic. but the output looks like below:

Obviously, the two border face not been extruded as expected. I know boolean modify works for this case but I wish to use extrude.

If i understood the question are you looking for this. No need to remove doubles or delete extra mesh. This addon do the best.

With the Default cube sub divide it twice. With the edge selected scale to Y axis. Select the top 3 Faces and with the Destructive Extrude Addon
Push it downwards. Holding control key you can align with the edges.


When I switch from single to image sequence of an openEXR image sequence in the Compositor Panel, the backdrop disappears In a new blank scene, I open up the compositor dragging my multilayer OpenEXR sequence in. I can succesfully see a tiniy preview in the Image Node with the correct backdrop, but when I switch from single image to sequence, it disappears.

I attach 2 screenshots. Thank you all for the attention.

EDIT: I can't even use a File Output node, everything is correctly set up but there's no export in the folder (and a very fast render as nothing is calculated).

SOLVED: My OpenEXR multilayer has 10001,10002,10003... as suffix numbers. This means that the "offset" ot the Image Node must be set as 1000, to reach the frame 1,2,3 etc... Only importing the OpenEXR from the node folder, selecting all the images and clicking import, has forced Blender to automatically set the offset at 1000, resolving this issue. Of course this could be done manually.


Improved explosion: possible to nest smoke domains and apply them to mutually exclusive emitters? I've been following an explosion tutorial. Blender's quick smoke results are very impressive but I'm trying to mimic artillery explosions I've seen on youtube in several places. In particular, I've noticed that the blender quick smoke simulation seems to put smoke first and has a rounded outer edge rather than ragged, spiky flame. I've experimented a little and, even with high particle velocities, the outer puffs of smoke look a bit like fragments of cauliflower or broccoli. Here's my explosion:

Having carefully studied that second video I linked above, I've identified these distinct stages, the first of which is not provided by the Blender quick smoke simulation:
Stage 1: Extremely fast, bright, symmetrical initial flash of flame, like a white-hot blob of plasma with spiky outer edge. Dust instantly kicked up from ground for some distance (fast shock-wave? vibrations passing through the earth?)

Stage 2: Initial flash burns off almost instantly, often rising very quickly and sometimes leaving thin vertical column of wispy smoke. Secondary billowing, expanding cloud of black smoke appears. In a lot of these videos, you can see an expanding outer shockwave like an optical distortion in otherwise clear air.

Stage 3: Black billowing smoke ignites, filling with billowing, globular flames which cause a rapid second expansion emanating sparks. Sometimes additional, assymetric reignitions/expansions occur. Fragments and chunks appear, flying radially outwards. This additional burning usually reinvigorates the explosion, giving additional outward impetus to fragments and chunks of detritus, propelling them through the air with renewed speed. This is the main fiery body of the explosion.

Stage 4: Secondary ignition completes, burning itself out and leaving mixture of black/gray/white smoke clouds. Many more fragments and chunks now visible flying outward.

Stage 5: Aftermath. Flames gone. Chunks and fragments fly outward, falling to earth. Smoke dissipates.
QUESTIONS:
It looks like I'll need to do some kind of combination of two explosions but I'm confused about some things:

Why create a plane below the explosion and then on the physics tab choose collision? Why is this necessary? What does it do?
When you select some emitter and add object->quick effects->quick smoke, does this generate smoke from all the particles emitted inside its domain volume? Is it possible to have one domain nested inside another and each of the two smoke domains connected to different, non overlapping particle emitters?
Does a quick smoke+fire simulation act as a light source? In my picture here, the shadows of the two columns are totally unaffected by the explosion. I'm hoping to render a night scene where the explosion is the only source of light. If I need to create a light source inside my explosion, it should clearly be a point light source. How would I make the intensity and size of this light change over time?
Is there some way to generate random fragments/chunks flying outward that are leaving a trail of smoke? These should be pointed and not cauliflower/broccoli shaped. The space shuttle explosions come to mind.

Any assistance would be much appreciated!

Why create a plane below the explosion and then on the physics tab choose collision? Why is this necessary? What does it do?
The plane below the explosion will prevent explosion products (ie, the smoke and flames) as well as particles from moving below the floor. (As commented by @vklidu the 'ground collider' doesn't need to be flat if the ground is uneven - for more realistic ground collision - or, if flat, you can actually use the boundary of the domain itself.)
When you select some emitter and add object->quick effects->quick smoke, does this generate smoke from all the particles emitted inside its domain volume? Is it possible to have one domain nested inside another and each of the two smoke domains connected to different, non overlapping particle emitters?
By default, the smoke domain will act on all smoke emitters and effectors. However, within the Domain properties there is a Collections setting that lets you set the Collection used for Flow and Effectors. Leaving these blank will use all Flow and Effectors in the scene for this Domain. However, setting it to a specific Collection will restrict it to using only that Collection.

Note that if you have multiple domains you should ensure that they are at slightly differing locations/scales so as to avoid z-fighting issues at their boundary faces.
Does a quick smoke+fire simulation act as a light source? In my picture here, the shadows of the two columns are totally unaffected by the explosion. I'm hoping to render a night scene where the explosion is the only source of light. If I need to create a light source inside my explosion, it should clearly be a point light source. How would I make the intensity and size of this light change over time?
This depends on your render engine. For Cycles, yes - it will act as a light source by default. For Eevee you need to enable volumetric emission by way of the Irradiance Volume Light Probe.
Is there some way to generate random fragments/chunks flying outward that are leaving a trail of smoke? These should be pointed and not cauliflower/broccoli shaped. The space shuttle explosions come to mind.
You can model the fragments and use Rigid Body or particle system to eject them from the explosion. Making them emit smoke should leave suitable trails if you have sufficient timesteps to give sufficient precision for their velocity.


Chest deformation low poly This is my low poly

Here a shot

Don't look hands, i'm finishing it these days.
I would like to understand one thing, making me crazy.
I'm trying to check if my low poly was made well for animation (topology of vertices, the shape of muscles in particular the back the shoulders and the chest/pectorals)

Now it seems working all pretty well except one thing: PECTORALS and AREAS NEAR THEM

Here the situation

If i move my upper arms down the deformation is this one

Now it isn't so impressive but the mesh of chest goes inside the shoulder in point 1 and in point 2 it deforms inside the body. I have tried weight paint but i don't think it's the definitive solution. I have doubts for my mesh and vertices.

Now my question is:

1)Is a problem of topology? (i have followed a very useful tutorial for doing that in particular this picture) Too few vertices? I think 5800 for a low poly was too much^^

2)Is a problem of my mesh: did i make pectorals too bad, too large or something near the chest isn't right?

Can someone help me??

Here the link of my file

That should be a weightpainting problem.
As far as I can see you have more than enough mesh for the deformation in that armpit area and your geometry looks clean, too.
Weightpainting can be a pain in the butt and takes a lot of time to get it right.
I never weightpainted in Blender, but usually 3d programs can display the weights in different colors so you can see more clearly what's going on with your weights.

Hope this helps you a little :)


Scaling a Cylinder scales other layers too? So I'm following this tutorial:

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

And at 43 Minutes in, he's putting a cylinder into the ground. I try to replicate this, but scaling or moving the cylinder also scales and moves the ground layer. I made a video explaining my situation:

https://youtu.be/9P0pyaOD78k

Any help is appreciated, thanks.

You have proportional editing turned on. When both objects are within the influence radius, (the white circle around your mouse) the objects will be affected. Pressing O (the letter O, not zero) toggles this on or off.


"No Render output node in scene" rendering a simple animation I am trying to render a simple animation - a donut sliding across the counter, and
"no render output node in scene" pops up. I have tried everything I have seen online to fix this and nothing works. I am working in Blender 2.8. I would attach the file, but I do not know how.

This means you're using Compositing nodes but haven't fed anything to the output node or don't even have one.
Either you don't need compositing, in which case you just open the compositing editor and uncheck the use nodes option in its header, or you connect some output node.

The usual one is the Composite:

A simple one, you just plug whavetver you want to have at the end in its Color input. That's basically a node saying to blender "I want this as a final result". There are plenty of other outputs nodes you can try too. But that's the one you will use more often than not.


Script - How to add UV map for each object in scene? I need a script which will add a second UVmap with "map1" name for all my objects in scene.

I tried :

import bpy
for obj in bpy.context.visible_objects:
    uvt = obj.data.uv_textures
    for m in uvt:
            obj.data.uv_textures.new("map1")

But this does not work. Any ideas ?

Add UV to all mesh objects in scene

Note: for 2.8x replace uv_textures with uv_layers and add (name="yourUVname") in .new()

import bpy
context = bpy.context
scene = context.scene
# all meshes on mesh objects in scene
meshes = [o.data for o in scene.objects
        if o.type == 'MESH']
# add a new "map1" UV to each
for m in meshes:
    m.uv_textures.new("map1")

Note could be done in list comprehension with

uvs = [o.data.uv_textures.new("map1") for o in scene.objects
        if o.type == 'MESH']


Why Alpha clip don't function? I'm following ducky 3d tutorial - https://www.youtube.com/watch?v=SlizedfuIN4&list=RDCMUCuNhGhbemBkdflZ1FGJ0lUQ&index=6 - But when I turned on alpha clip it didn't work, what I could do? I set up eevee and bloom, motion blur, screen space reflection and ambient occlusion. Please help me

Try setting blend mode to alpha blend
Screenshot:

If it does not work then try this:

Keep the blend mode to alpha blend
Replace translucent BSDF to transparent BSDF


I cant give a wave modifier to fluid domain. Help? I have an issue and I am really desperate right now. I am trying to give a shake to my liquid. I have a tube filled with a liquid. The tube is my domain and my liquid is at rest at the beginning. I want to give domain(tube) a wave modifier to vibrate the liquid inside of it. But when I give my domain(tube) a wave modifier, I also must give it an effector otherwise it won't affect the liquid. As you know, I can't select the "domain" and the "effector" at the same time. What should I do?
(My version is 2.82)

The domain is just the area where the water/smoke simulation should be calculated.
You can add another shape (inside the domain) as an effector/collision to manage what you are asking for (for example the wave modifier to move the fluid).
I'm not sure that the wave modifier is the best way to give the water a shake..
check this simulation (I did not used the wave modifier, I just animated the internal cube, the one that is set as effector):


How to make a material for glossy Wood To start off I'd like to learn how to model a wooden rectangle.

I know how to manipulate the object and get the shape I want but I really don't know how to get the texture of wood. The look I'm hoping to achieve is a wood that has a glossy finish over it. Maybe I'm taking the complete incorrect approach to this, but as of now I have a simple rectangle and am very open to suggestions!

(The following is an explanation on what I'm doing if you're curious)
I was given the opportunity to make an animation for a school, and am starting to just now get into animation and graphic design and need some help starting this.

I've been using the Blender to make things like HD animations by making a 'cartoony' looking fire affect rolling off of letters. I now would like to have a wooden background and have a fire carve the kids names into the wood.

If your final project is destined to be for Blender's Game Engine, you're really jumping in at the deep end.  If it's just to create an on-screen demo 'live' whilst still in Blender, or producing a video for each name, you've still got a long way to go if starting from scratch.

With the latter in mind and your query as to how to make wood shiny, I've included this example with some text 'burnt/engraved' into it's front surface to at least show you what is possible using plain vanilla Blender and OpenGL rendering.

The 'shinyness' such as it is, was achieved by placing a few 'Point lights' about and upping the specular setting.

The Blend file (complete with textures) is attached so you can wander within and see how it's put together, experiment etc.  Something to kick off from.

Making the oblong look like wood needs "Texturing".  Have a look at the Blender file attached along with some YouTube tutorials on the subject.  There's plenty available.

You might also take a look at this: What order to texture a 3d object?

(Blender version used: 2.77a)


Mirror modifier creates an object inside another Mirror modifier creates an object inside another.
I need a Mirror modifier to correctly create mirrored object.
How to fix this?
This screenshot shows my problem. Mirrored ear piece spawns in original object.

I need ear piece to be mirrored is the same place but on the other side.

You can mirror around a different object. For example if you select the headphone band as the mirror object it will use that to mirror around instead of the origin of your object.   If there is nothing handy to mirror around create an empty and put it in the midpoint of where you want to mirror.  In your case I would imagine the headphone band would work for you as the mirror object.


how to make the black hole disappear? The bottle is simple glass shader and the desert is a deformed plane mesh with thickness. But as we can see, the bottle buried gives a really weird look of deep black hole. I want to get rid of this black hole with filling it with sand. How can I achieve this?

The first step is to make a cavity in the sand.  I can't tell from your image if you've done that or not.  I used the Boolean Modifier (to save time) in order to make this hole the same size as the bottle, but you can also model it which would be more beneficial in the long run:

Adding more bounces to any of the Light Path inputs will result in longer render times and has diminishing returns.  I would set the Transmission bounces to around "5" since there's little difference beyond that:

What you really need is a node setup that will allow you to adjust how much shadow is cast on the ground and in the hole.  This node tree has been around the block a few times and it's still just as effective.  Adjust the Multiply factor to remove shadow caused by the Glass Shader.  Zero is full shadow, one is no shadow:

Here is the final with a factor of 0.8:


Texture painting in blender In sculpting mode you can switch between relative and constant detail, which determines if the stroke is affected by the distance to the mesh.

Is there something in texture painting that gives a similar result? I use thexture paint to create bumps, tthe issue is that i sometimes have to zoom in on the mesh. The problem is that it changes the size of the strokes effect.

In the 3d view, Texture Paint is not going to allow you to switch from screen space to relative space like you can in sculpt mode yet - but the work around is to use an Image Editor to paint in along side your 3d view so that you can use the consistent pixel size there.


How to animate text being revealed on the screen An animation of an object appears under something small or invisible to camera

From my experience text objects do not work very well with booleans (due to some letters in some fonts being non-manifold).

This is a method that can be adapted to work on anything:

You need to create a gradient mask for your material that will "stay static" despite the object movement (you do that by using object mapping and adding/subtracting the object's position from it):

link to full image

Great thing about a mask is that it can be faded on the interface.
The Add node is just driven by the text position.x.
The mask is used to mix Transparent and any other shader.
If you need to place such Text somewhere you need to parent it to something first and move it through parent.

This is the result:

And the blend file:


Override a material on a Linked object (2.92)? I have a character that is linked into a Scene as a collection. I want to change an input value of a nodegroup in one of the character's materials, preferably without making the whole thing local. Of course, I cannot access the materials of a linked collection in the usual way.
I am looking for the best way to Override or proxy or whatever else I need to do in order to get access to the material. And I'm going to need to be able to do this to every material in the scene, of which there are many (but I can write a script to mass apply whatever method.) I'm just trying to avoid having to make it all local because then my files will be multiple gigs in size.
Is there a way to do this?

There are several ways to do this.
Using Object color.
This is quite limited way but it's easy.
You can use object color in node editor and the tricky thing is then you make an instance of the object it will use an object color of the instancer, replacing the original object colors.
So here is the workflow. You use an object color in the node tree:

Next, then you instance the object, use object color to set color for all objects inside the instance:

For this method, no proxy or overrides required, but you are limited to one RGB+Alpha color per instance.
Using Drivers
One of the solutions is using drivers. Let say, I have a character, and I'm going to drive the color of his clothes:

So I created a bone, that will drive this color. Then I pressed RMB on Y Location of this bone and select copy as new driver:

Next, I pasted this driver in Fac field:

Now, then I move this bone color makes blue.

That's all. Then you will use your character via proxy or library override, you will always make a local copy of pose, and changes in this pose will drive color in material.


some kind of dynamic and localized subdivision surface modifier - type algorithm? In a previous, excellent answer it was proposed that it might be helpful to subdivide some triangles in my mesh at certain times during the animation to prevent them from overlapping adjacent faces when the mesh is very highly distorted. It's best to look at the question and answer there now.

OK you're back. The trajectory of the ~10,000 vertices of the original icosphere mesh are pre-calculated and stored in a NumPy array. A "badness" detector could search for highly stretched edges, but then what? If it inserted real vertices, I think it might be tricky to try to remove them later, and keep the rest lined up with NumPy. I could try to figure out a way to script that, but I wonder if there might be other ways, or possibly something existing in Blender already?

I am re-linking @TLousky 's image here:

Well, as I originally suggested in the previous question, you can always try using the Remesh modifier.
It dynamically generates a clean mesh with ~equal size quads out of the volume of your mesh.

I'd recommend using the smooth mode and an octtree depth of 7 or more to get accurate reconstruction of your mesh.

ADDED: It also helps to add a smooth modifier on top of the remesh modifier, because the mesh generated by the remesh modifier is still a but funky due to the issues with the original mesh.

Here's a code snippet you can add to your script:

myObject.select = True # Replace myObject with a reference to your actual mesh object
bpy.context.scene.objects.active = myObject

bpy.ops.object.modifier_add( type = 'REMESH' )
m = bpy.context.object.modifiers['Remesh']
m.mode         = 'SMOOTH'
m.octree_depth = 7

bpy.ops.object.modifier_add( type = 'SMOOTH' )
m = bpy.context.object.modifiers['Smooth']
m.iterations = 26

It's not exactly what you asked for, but might do the job nontheless.

ADDED: You only need to add this modifier once, of course (it will adapt to changes in your mesh), but it will slow down your script considerably, since the remesh modifier takes quite a bit of time to calculate, especially in the higher octtree_depth levels.


Why are this characther's hands not mirrored while I model it? I'm trying to learn how to model a little boy and I got stuck. Infact I'm not able to understand how to align the hands. I've tried both,in edit mode and in the object mode,but the left hand is always not parallel with the right. How can i fix this little problem ? I attached a picture to show you.

1st turn off clipping in your mirror modifier.

In object mode be sure to ensure that rotation and scale are applied Ctrl + A.

Next turn off increment snapping Shift + Tab.

Next set your cursor to the origin of the body.
With the body selected as it is here: Shift + S, Then Cursor to selected.

Next Apply your 3D cursor to the origin: use the . key on the qwerty not the Numpad.

Then Re-Apply the modifier settings.

From the screen-shot above you have a lot going on, so these steps may not be the right answer, but they are definitely worth a shot.

If this still does not work for you, please attach the blend file, so the community can take a look and see were the problem resides.

Hope this helps,

RRiggs


Why do my objects disappear from certain angles when played in the BGE I am new to blender and I was wanting to make a FPS game using the BGE.
I have my character and rig setup with the right arm a different object so it can move freely while aiming.
    I set up my camera in front of the seprate arm and when I played the game, the arm disappeared. When i viewed the arm from different angles and played the game, the arm appeared as normal. Does anyone know why this happened? I have some screenshots to help explain the problem.

The first image is the Normal view.
The second image is Viewed from first person.

Thanks in advance.

I'm not entirely sure why this is happening.

However, I found that joining the arm mesh to the rest of the character mesh (with ⎈ CtrlJ) (and joining the two armatures, also with ⎈ CtrlJ) fixed it.

My first thought is that the BGE's view frustum culling was hiding the arm, but if that's the case, I'm not sure why it doesn't also hide the entire character..


My object have weird lines Check my hat.

What can I do?

===>> Blender files: Here and here.

Some faces of your hat mesh are badly oriented. Select all in Edit mode and press ctrlN


Render Layers Without Displaying Them In 3D Viewport I wam new to blender. I have a large forest I would like to render. Blender gets extreme lag and usually completely crashes when I display the whole scene. I split the forest into multiple layers. Is there a way to render all the necessary layers without displaying them in the 3d view?

Yes, this is possible, however there might be better ways of handling this.

Disable Lock layers to scene in the 3D view > Header.

Now you can set the Scene layers in Properties > Renderlayers to the layers you want to render (in this case, 1, 2, and 3)

Note that only layer 1 is visible in the viewport.


Adding operator to the toolshelf? I'm just starting to learn scripting in Blender with Python. I made a simple operator following the quickstart intro on the Blender documentation:

import bpy

def main(context):
    for ob in context.scene.objects:
        print(ob)

class SimpleOperator(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.simple_operator"
    bl_label = "Simple Object Operator"

    @classmethod
    def poll(cls, context):
        return context.active_object is not None

    def execute(self, context):
        main(context)
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

    # test call
    bpy.ops.object.simple_operator()

It then says

  Once this script runs, SimpleOperator is registered with Blender and can be called from the operator search popup or added to the toolbar.

But how do I add it to the toolbar?

To add it it to the toolbar, simply have your class inherit from bpy.types.Panel, and call the class functions, the key one being draw(). You choose a space_type, a region_type and the context in which the panel should be shown.

You can also reference the example below the one you are using. BlenderCookie also has a tutorial that covers this.

See the modified code

import bpy

class SimplePanel(bpy.types.Panel):
    bl_id_name = "object.simple_operator"
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOLS"
    bl_context = "objectmode"
    bl_label = "Simple Panel"

    def draw(self, context):
        layout = self.layout
        col = layout.column(align=True)

        col.label(text="Objects in the scene:")

        col2 = layout.column(align=True)
        for ob in context.scene.objects:
            col2.label(text=str(ob.name))

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

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

if __name__ == "__main__":
    register()


Frozen poses after rendering animation I have rigged character and I want to make an animation. I set few kayframes with different poses. It shows up correctly on the timeline. And when I move the timeline character moves the way I desired. And here is the problem. When I render the animation [button render animation], all I get is frozen (almost) character without any movement. Almost, because bones with wiggle bone addon move on their own, the same with particle hair. To summarize, after rendering is done I have frozen character with jiggling body and dynamic hair - the movement of the bones I set on the timeline is non-existant.
I use blender 2.83 and eevee. The problem appears both when I use png format as well as any movie format. To answer questions, I don't think it's the problem with output directory, because blender renders animation - even with frozen bone movement. Also, I set start and end frame correctly - be it 10, 15, 20 frames. Kayframes are visible on the timeline - made with both auto keying and insert kayframe: LocRot. Rigged characters move when I move the timeline, it's only problem when I try to render it as animation. When I render it's as animation all I get is bunch of frames with characters frozen in one pose, but when I render random frame as image - I get correct pose that matches with the timeline.
Could it be possible that I have bugged pose mode? I made a test - I added sphere to the scene and in object mode I set movement of it (up and down). And it rendered it as animation correctly. Sphere moved up and down. It seems that animation works with everything (moving objects, simulating dynamic hair) - except the bones.

Ok. I found the reason of my problem. It was wiggle bone addon. It seems that you have to bake animation of wiggle bones and then turn it off, otherwise you will get frozen animation of any other bones.


How to write a script that executes a list of commands only if a specific object is already inside the scene: Easy question I think! I was wondering how to write a conditional in a script so that a list of commands runs only if an object IS NOT inside the blender scene currently.

For example if "Cube" is already in the scene I want the script to do nothing. If there is no object name "Cube" I want a list of commands to run. I feel this should be pretty simple but I'm not really good with syntax at the moment.

More Specifically(EDIT): I am making an operator button that is added to a tab in the tools section. When the operator button is pressed by the user I only want it to perform a set of commands IF there is not already a object named "Cube" inside the scene. Something like: if bpy.data.groups "Cube" = False: bpy.ops.mesh.primitive_cube_add. I know that is the wrong syntax so I am looking for the right way. Does that make sense?

Thanks in advance!
Best,
Brad

Don't recommend addressing by name.

Using name as a sole variable to lookup objects in blender is fraught with danger.

If you really do only want to test  for the original, and named "Cube" cube object there are two conditions to look at

cube_in_blend = bpy.data.objects.get("Cube") is not None
cube_in_scene = context.scene.objects.get("Cube") is not None

If cube not in blend then

if not cube_in_blend:
    bpy.ops.mesh.primitive_cube_add()
    cube = context.object

will result in both being true. If the cube is in file and not in scene

if cube_in_blend and not cube_in_scene:
    cube = bpy.data.objects.get("Cube")
    context.scene.objects.link(cube)

links the object named "Cube" to that scene.  There is no guarantee that it has 8 equal length edges, 4 equal area faces and other props expected of a cube.

Alternatively

Just like a scene has a camera, context.scene.camera can set it up to "have a cube"

bpy.types.Scene.cube = bpy.props.PointerProperty(type=bpy.types.Object)

And in scene with cube can be set via

scene.cube = scene.objects.get("Cube")

Using method outlined in answer to Limit "prop_search" to Specific Types of Objects and modified to associate a particular cube with a scene. The cube is chosen from file objects that have a name beginning with "Cube". The cube is linked to the scene if not already.  For the case where there is no cube in the scene could add the add primitive operator in the markup.

import bpy

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

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

def scene_mychosenobject_poll(self, object):
    return object.name.startswith("Cube")

def link_to_scene(self, context):
    if self.cube and self.cube.name not in self.objects:
        self.objects.link(self.cube)

def register():
    bpy.utils.register_module(__name__)
    bpy.types.Scene.cube = bpy.props.PointerProperty(
        type=bpy.types.Object,
        poll=scene_mychosenobject_poll,
        update=link_to_scene
    )

def unregister():
    bpy.utils.unregister_module(__name__)
    del bpy.types.Scene.cube

if __name__ == "__main__":
    register()


What is the best practice for moddeling complex structures? Using a single mesh, multiple meshes or multiple objects? I want to make a model that is big enough to have characters walk around and inside of it. I already have it roughed out (see picture), but now that I want to add detail (windows, railings, pipes...) I was wondering what the best way to do this is: keep the entire thing as a single mesh, make the details as separate meshes in the same object, or make them different objects altogether? What sections are the best to separate out?
Related to that: how do I keep everything together when the big thing is animated?

Model of the big thing. The total height is 20m. Around the 3d cursor is a human rig for scale.

You can make things as separate objects, if you'd like. When you do so, use parenting.
You can still do it as one mesh, its up to you how you want to go about things. Eventually, you'll use bones and you'll need to use parenting then.
https://www.youtube.com/watch?v=o5f18T7Rjmc
https://www.youtube.com/watch?time_continue=73&v=GS452KMVWKA&feature=emb_logo


How to use snap option in object mode? Trying to use the snap functions, I don't really understand how the "part to snap" option works in object mode and how to accomplish a precise snap.

Closest is working as expected.
and 3. Center and median : I couldn't notice the difference. I would await "center" to snap the origin on the target (that's the case in all my test), but then "median" should snap the "middle of the mesh" to the target ? At the end, on my computer with 2.68, both do the same. Wrong configuration or bug ?
"Active", the one I need the most. I would await it to snap the active vert/edge/face in the mesh. But it does like "Center" and "Median", it snaps the origin to the target :/ Maybe the "active thing" is the object and not the vert at that moment, but it makes no sense to have 3 different options that do the same and really not what is expected ? It works in Edit Mode.

What am I doing wrong ? If it has to stay so, maybe explain why and a way to accomplish 4) in object mode would be great.

Object Mode Snapping:

Center
When in Object mode, "Center" for snap means taking the current Pivot point setting of your selection, which also means the transformation center, not the bounding box center of your selection.
Median
As for "median", it means the same as the Pivot type Median.
Median means a sort of center of gravity of the selection. The behavior is most obvious with an  asymmetric selection:

There is one way to get the same result by using "Center" and "Median" snapping,  which is when using Center snapping mode, if your Pivot point setting is Median, then it behaves the same as when using "Median" snapping mode.
In any other case, they will not be same unless your selected objects are distributed perfectly even with each other.
Vert/edge/face

Vert/edge/face are only available in Edit mode. So, don't think about it in Object mode, when in object mode, unless you are using "Closet" as snap target (available for vertex). your snap target "Active" will only be the origin of the one you selected last. Furthermore, make sure you do have a object that is selected and activated, otherwise blender has nothing available to snap, but to use "Median" point as the alternative one.

I hope I've tried my best to answer every point in your question. Of course, if any question, just throw it here, we'll try to offer further help. :)

P.S.: If you really need to snap certain element (vert/edge/face) in Object mode, you may consider switching to Edit Mode first, place/snap 3D cursor to wherever you want, then go back to Object Mode, using Center as snap target. Then switch Pivot point to 3D Cursor, which may behave as you expected.


Subtract tool in Weight Paint doesnt work on some specific points When I try to subtract these particual vertexs it doesn't work . It happens for all other arms as well.

You selected the face mask for weight painting. In this mode you can only tweak faces which have been previously selected in edit-mode.
Click on this icon :


I can't seem to sync the audio and video! Even when I put AV sync in the option, it seems to go out of sync at any time. Also, even when I put a full video in Blender it cuts it off. How can I fix this?

A video strip is a sequence of still images, the time it takes to play them is determined by the number of frames played per second. The closest an audio clip has to fps is samples per second, so is always played based on a time measurement.

By changing the frame rate setting in the render settings, you vary the length of time the video strip takes to playback but not the audio, to keep the video and audio in sync you need to have the frame rate match the original video settings.

The easiest way to know that the frame rate is wrong is in the sequencer, the video and audio strips will only be the same length if the frame rate is correct.

To get the audio in sync with the video, set the correct frame rate. If the video stops early that means you need to increase the end frame to match the length of the video.

When you add a video strip to the sequencer there is a Use Movie Framerate option that will set the frame rate to match the video for you but you will still need to set the desired end frame.


how to process 3d models in blend4web well I want to implement on click changes in my blender model through html and blend4web.. kind of like dress up games where object changes on click.. Can we do that using blend4web web player?
please give the answer soon

Yes you can do this in the Web Player by leveraging the Logic Editor.
See the example
https://www.blend4web.com/apps/webplayer/webplayer.html?load=../../assets/interactivity/inherit_material.json
The corresponding source Blender file can be found in the free SDK.


Why is my footage smearing out towards the border on rendering an image? Dumb question - tracking footage, having border smear problems...
So, just tracking some of my own footage for the first time and as I'm approaching my first test renders, I've encountered some weirdness with the boarders of the image - smearing in previews, transparency in render. Obviously, this is not my intended result!

The footage is from an iPhone 4, resolution 1280x738 w/display resolution of 1280x720.

I've a horrible feeling I've set my proxies up wrongly - and that I should immediately know what the problem is here... but I cannot remember the solution! Can anybody jog my memory?

Maaaan, I'm feeling stupid...

--Rev

The smearing on the edges is perfectly normal if you are undistorting. It's most notable when the lens distortion is the pichcushion type. Blender is deforming your image, and it fills the missing parts with the color of the last pixel on that row or column, since there is no other way to reconstruct the information of things outside of the image limits.

Here's an exaggerated example to illustrate the point:

Other programs do give you the option of making the edges transparent or black. Blender does not (As far as I know).

To solve the issue you do have a couple of options:

1- (The lazy and lossy option): Resize the undistorted image in the compositor so that the smearing at the edges doesn't show.

The downside is that you'll loose some information and the image might degrade with the re-scaling.

2- Work with undistorted proxies as a reference to create your 3D scene, but for the final render bring back the original (distorted) video
and distort the 3D scene to match the distortion of your lens:

You loose no information and your 3D scene will follow the distortion of your original video.


Need game piece to auto-deselect after moving I need a selected game piece to be automatically deselected after being moved, (as opposed to being deselected when selecting the next piece.)

Current Script

The reason I need this change is because: after a piece is moved, it will move again, and again, as many times as a new tile is selected. If a player tries to rotate the board and does not click completely off the board in empty space to deselect, then the piece moves when it shouldn't.

To line 46 add the lines (indented to match line):

deselect_piece(cont.owner['activeTile'])
cont.owner['activeTile'] = None


Smoke hi-res fire artifacts in Cycles? When rendering smoke/fire simulations with cycles I sometimes get some random lines/artifacts on my render. Do you have any idea what might be causing this?

There are also some issues with transparency, but luckily they are not too noticeable.

Here are my rendering settings:

I'm using 2.77 rc2 and tried both CPU/CUDA. I've had similar artifacts with previous versions and CPU rendering.

Edit:

I've discovered that the issue is caused by Smoke High Res:

The issue is caused by Smoke High Res. It was fixed by applying the scale of the smoke domain (Ctrl+A)


What is this G button function in blender called(happens in Edit mode)? https://www.youtube.com/watch?v=dGVMXyZNCQY

My shadowplay is acting up so its low rez for some reason(i set it as 720p)...

Basically if you recreate the rentancle(i had to do it for my project model i am working on) and press G button multiple times in edit mode(but in order for this to work you have to select same edges i had).

What is this blender function called? Is it similar to google sketchup follow me function?

If your edges turn yellowish, this is the function i got/found and i cant find any info on it....

This is the Edge Slide function. Selecting an edge and pressing G two times will enable this. It allows you to manipulate edges along other edges, scaling then accordingly to maintain the overall shape while moving the edge. An example can be seen below on my mesh:

Hope this helps.

EDIT:
On your video, in the bottom left corner, you can see you have "Vert Slide" enabled. This works similar to Edge Slide.


2d animation keyframes not showing up The keyframes for 2d animation is not showing up, even when im in object mode no keyframes are showing up. And they are no youtube videos that show this problem. Anybuddy know what to do`?

I had the same issue, but I'm good a pushing buttons.


Hexagon Sphere (wait!) with specified number of hexes? Have read the many posts on hexagons to a sphere, with the icosphere -> subsurf -> node removal and limited dissolve which gives me a (mostly) hexagon tesalated sphere.

BUT

it determines the number of hexagons based on the initial icosphere settings and they are basically twice as many or half as much as I need.

Changing subsurf doesn't help obviously as only one input provides hexagons.

So I need 352 hexagon faces on my sphere (yes, inclusive the 12? pentagons too)

Anyone have any ideas?

Many thanks in advance!

The shipped add-on 'Add Mesh: Geodesic Domes' gets pretty close with the settings as shown:

Use X > Limited Dissolve to get rid of the triangulation of planar regions, leaving you with hexagons and pentagons.

Faces:362. 350 hexagons, 12 pentagons.


Handlers on Graph Editor I have some bezier keyframes on an animation.

The normal behavior is having two handlers (A) with a smooth path on the two sides of the node.

I can "freeze" the movement by zooming and shrinking the second handler, zooming and shrinking. (B)

But how can I have two independent handlers?

I found some related questions about handlers

Blender graph editor bezier

But I do not want an "automatic" mode, so I can make a "cartoonish" look.

This one is not even answered.

Setting bouncing curve in graph editor

To have two independent handlers, select the vertice, press V > Free. Is that what you want?


How to control object's path follow speed based on its position I am trying to animate a rollercoaster. For now I have a cube following the Bezier path of the track. I need the cube to change its follow speed based on its height. (the higher it is, the slower it is).

How do I control follow speed based on the height of the object? Keyframing is not an option as the relationship is too complex.

I tried this with animation nodes, however height is affected by position on curve, which is affected by speed. Trying to control speed by height creates a paradoxical loop. Is there a way (in animation nodes or otherwise) to use the cube's current height, to determine its rate of change of position on the curve in the following frame?

Sidenote:
I have an expression for speed (from physics energy formulas):
speed = (200 - (2 x height))^0.5

One way to do it is to use a discretized implementation instead of a parameterized one. We store the parameter (location along spline) of the object in a custom property. At each execution, we increment that parameter by the velocity that we can compute from the relation you provided above.

The divide node is a unit conversion which you can replace with whatever you need. Note that Uniform has to be used when sampling the location for obvious reasons.

A useful addition is to add a condition where the parameter is set back to zero whenever the frame is equal to or less than one so that you can play the animation as much as you want.

A similar condition can be added to cube location.


Material disappears while object is deselected Basically when I have the object selected it looks perfect and the moment I select anything else it vanishes, this only happens in material view and rendered view, I have absolutely no clue what I could have done to cause this.

From the screenshots it appears you're seeing the OpenGL masking effect.

The pink container's outer walls are semmi transparent and masking the portion of gray plate that's behind it.

Parent the outer container to the gray plate then unparent it again.  (child = pink container)

If that doesn't fix it, try ticking/unticking both objects' "Transparency" box. That's in the properties (cube icon) at right, way down to the "Display" tab.


Can't find the "Default" tab usually located next to "Compositing" I am a new user of blender. I want to know how to find the "Default" tab usually located next to "Compositing". I cannot seem to find it. Thank you.

(I am using Blender 2.8)

Have a great day.

Hi and welcome to Blender community :)

You can use the 'Layout' view as default. The things that changes is that are shown by default some tools focusing on each type of work you will be doing. For me, 80% of my time I use in the 'Layout' tab. Script and Sculpting are for more specific works. But if you feel lost you can go over this '+' icon right next to the other tabs and add the tab you are looking for. Hope it helps


Export .obj file with png texture I'm playing around with Google's new Augmented Reality SDK.
Their example project contains an .obj file but its' textures are not in a .mtl file, put a .png file; no .mlt file at all (example for an Android robot model below).

From a little research I take this is not the 'standard' procedure of exporting a model / it's texture in the .obj format from Blender (or similar programs).

Is there a way to still achieve this (textures in .png instead of .mtl) with Blender?

The .mtl file is only a material definition file which contains references to textures.

if you want to export obj with .mtl and textures you need to make sure you follow these steps:

In your OBJ export menu:

Make sure material export is ticked

Set the path mode on COPY

You will see that in your target folder you now have

An obj file which contains your mesh information
An mtl file which contains material definition
All tetxure files referenced in the .mtl


What 3D texture formats does OSL support? So I'm playing with OSL right now, and have had a lot of luck in the past with texture and most of its key-value optional parameters. I've moved on to texture3d, which uses voxel formats—a great idea—but I can't find any documentation as to what voxel formats Blender supports.
I tried VDB, which is what volumes export to by default (also a voxel texture format); but can't tell if it's actually reading the file or not. I'm definitely not getting the shape I expected.
My code is as follows:
volume voltex(string filename = "", point uv = 0, output color cOut = 0, output float aOut = 0.0) {
    color cTex = texture3d(filename, uv);
    cOut = cTex;
    aOut = cTex[0];
}

Filename is set to "///data.vdb", and this file does exist in the project's directory.
But, when I tie the node to Principled Volume, I get an error-pink with no variations on transparency or color. No issue loading the file is reported in the terminal.

The little round grey cloud in the above image is the imported volume of data.vdb; these two objects should be at least shaped the same way. I might be missing something obvious.
Is OSL's texture3d function fully supported? For which formats does it work?
UPDATE: It seems that volume shaders don't really handle UV coordinates in the same way; I'm using object-space coordinates now and having some results. However, the question of which file formats qualify as voxel textures remains.

OK, I've done it. In a sense.
The first and foremost thing to mention is that, as of the moment, Blender does not seem to support any voxel formats on an OSL level. I'm sure it will eventually, and the framework for texture3d seems to work fine; but there aren't any valid inputs. Someone please correct me if I'm wrong.
However, intrinsically, a voxel texture can be thought of as an array, along an additional axis, of pixel textures. I've successfully described a 3D shape by determining the z-height of the voxel I'm looking at, using format to create a file name of %03d.png, and looking the texture for that plane up in a directory. It runs very efficiently.

My specific code, so far, is as follows.
volume tex3d(float t = 0.0, point p = 0, int frame_count = 0, vector dimensions = 0, string path = "", output float aOut = 0) {
    //align point to [0, 1] square
    point st = (p + vector(1.0))/2.0;

    //find frame by comparing against z-dimension of volume
    int frame = st[2] / (dimensions[2]/frame_count);

    //Get our file name, so we can pull a texture from the directory
    string sz = format("%03x.png", frame);
    aOut = 1.0 - texture(concat(path, sz), st[0], st[1]);
}

Ideally Blender will eventually support both VDB, as it already exports to it; and Field3D, which is an open sourced format by the same people who put OSL together. For now, this will do nicely.
Notably, the voxel cloud still does not match the blurb in the corner; this is because I drew it by hand. There's likely a way to convert VDBs to a sequence of PNGs, but I haven't done it as of yet.


How to add a displacement map on a plane using procedural textures with a layer mask I have mixed two textures together using black and white values from a noise texture which is connected to a color ramp.
How can I apply a displacement map on a plane so that either the texture "A" or "B" is the limiting factor that determines
which parts are affected by the displacement modifier within a plane? I want to use a mask layer to adjust the intensity
of the displacement with a noise texture, but at the same time limit it to only some parts of the texture combination.
I have applied a rough displacement on my scene which covers the whole plane, but I'm asking this beacuse I want to
add some fine details with two (displacement) modifiers. I know you can assign vertex groups to mark off the affected area,
but in my case that's not possible, for you can't see any textures in a vertex select mode and it forces you to select them
randomly.
There's a link below to give you a better idea about the problem. Areas which I want to add some extra displacement to are
marked as red.
Link: https://drive.google.com/file/d/0B4NHszZHPR_1OVFEWEt2UkdON28/view?pli=1

A solution not using the Displace Modifier:

In Cycles, using the Displacement Input Socket on the material Output, you can control the displacement with a combination of texture nodes.

In this example of a simple (subdivided and UV unwrapped) plane, the wave texture is combined with a voronoi texture using an image texture of the letter A as the mix factor. In other words: the voronoi texture will only displace the parts with the letter A.

Note that this is a true 3D displacement of the geometry, not just a bump map:

As of version 2.75, this is only possible using the Experimental Feature set in the Render controls

and enabling True as the Displacement Method for the mesh.


How to correctly drive a normal node with lamp rotation? I'm trying to use drivers to allow a lamp rotation to dictate the direction of my normal node. The problem seems to be that the sun can rotate from 0-360 degrees, but the driver has a limit of 0-90 degrees, so the rotations do not match up. Is there any way around this? Thanks!

This is a bit tricky, since the value range of the normal vector is (-1, 1). But you appears to control it by object rotation, which circle range is from 0° to 360°. It doesn't make any sense to add drivers between them.

You can use Mapping node to control the Normal vector output, driven by the object rotation (in degrees or radians). However, Blender internally uses Radians instead of Degrees, that's why you'll see the driver value shows in both radian and degree system.

So, you need to do some radian calculation for the driver expression. In this case, on the newly added Normal node (with the "control ball"  UNTOUCHED), you need to add/subtract a half circle for it, which equals pi.

Example file:


Array not in square shape When i increase the count. The shape of array is not square. The corner are getting curve shape & the shape of the mesh some have square some tilted etc.

Using Curve modifier inevitably leads to some deformation.
In this case, try the following.

Change curve spline type to Bezier
Move the handles a bit closer (that will correct the geometry)
Increase the curve resolution to 128 (that will improve corners)

Change Spline Type to Bezier and move the handles a bit.

Increase Curve resolution to 128 to improve corners


Can an animation be made interactive? I am relatively new at blender with maybe a years worth of experience on and off. Basically i have been using blender primarily to create good quality animations of product assembly and disassembly and good quality rendered images. I do this by importing STL files off Inventor (CAD) and re-assembling them into blender with blender's own constraints.

I have created an animation with text about how to set up an electrical component on a product through blender. Basically the animation shows a control panel of an electronic devices's screen then plays the product moving with the associated screen displayed on the device in the screen.

Ultimately what i would like to know is if the devices's control panel can be interactively operated by the viewer like a simulation and have the animation respond accordingly to the controls. I understand that this may be going into the blender game engine side of things which i know nothing about. So just a point in the
right direction will be a huge help.

I would also like to know if the animation i have already created can be combined with the blender game engine side of things if it is to go that way.

Below is a screen shot of the control panel (top right corner) and the product that i would like to see react to the controller.

Any help is greatly appreciated.

what i would like to know is if the devices's control panel can be
  interactively operated by the viewer like a simulation and have the
  animation respond accordingly to the controls

Yes, this is possible. Think about it like a menu with buttons. As the BGE uses 3D scenes for renderings the buttons can be anywhere in the scene.

  I would also like to know if the animation i have already created can be combined with the blender game engine

This depends on what the animations are doing. Not all features of the Blender animation system are supported.

The major difference is that you play one action per object. This means when you want to play actions (or one action) that involve several different objects you need to play these actions at each of that objects (and start them at the same time). There is no "global animation" as in Blender.

Remarks:

I strongly suggest to play around with the BGE and see how logic gets defined.


Selecting - how to differentiate "elements"? In the attached test_bag.blend file, the bag has several parts: front, back, base, etc. How does one select an individual "part" of the bag without selecting others?
For example, select only the front or back or interior part.

Further, I would appreciate a link to, or in depth tutorial of, selecting/selections; -- beyond the basic tutorials on utube, et.al.
TIA

https://dl.dropboxusercontent.com/u/3504807/test_bag.blend1

There are two ways in edit mode (↹ Tab):

Press L while hovering the mouse over the part of the bag you want to select. This will select all the geometry which is connected to the part under your cursor.
Select some geometry (e.g. with  RMB), then press ⎈ CtrlL. This will select all the geometry which is connected to the existing selection.

If you want to separate the parts into separate objects, then press P> Loose parts in edit mode. This will separate disconnected parts of the object into their own objects.


How do I change the default color of a new object? I add a new cube to the scene, but it's teal and I want a different color:

I assume it should be in the User Preferences, but I can't find it.

I discovered I had MatCap Shading enabled, so all I had to do was turn off MatCap here:

3D View -> Properties (N) -> Shading -> turn off Matcap


Viewport render image > How to render custom background color? I want to render my viewport. I know how to do that.
I also know how to change the background color of the viewport.
Unfortunately both solutions i know (gradient color in preferences and this guy here:

won't be rendered.
Is it possible at all to render the viewport background color somehow?

It should work just fine.
This is the way I do it:

Viewport shading overlay > Background > Viewport (adjust to your needs)
View > Viewport Render Image
Done


Rendered video pulses to lower quality and back to high quality In my output video there a pulse that occurs after the number of frames specified in the "GOP Size" setting. With the setting of 18 that I have in the image shown below, the pulse occurs every 18 frames. During this "pulse", the video seems to move to a lower picture quality and then quickly returns back to a high quality.

Here are my output settings:

If I set "GOP Size" to zero, the picture quality of the video degrades substantially. The maximum value for "GOP Size" seems to be 100, so the pulses occur a little over 3 seconds apart.

Is there anything I can do to alleviate this?

Any idea what I might be doing wrong?

The problem may be caused by some sort of glitch in the encoder included in Blender. The poor quality can be avoided by using lossless output. In v2.71 this is done by choosing H.264 format under Encoding, and ticking the Lossless Output box.

Here is a detailed video explaining lossless rendering in Blender.


How to give objects clickable labels in Blend4Web? The Blend4Web Planetarium Demo has text labels that expand to show more info when clicked. How can I make these?

These labels are called Anchors.

Here is the section of the Blend4Web Manual that explains about them.

The object to be given an Anchor must be an Empty, so if you don't have an Empty selected the option will not be available in the menu.

Here's where to find the Anchor settings (for an Empty):

The above screen shot was taken from the Planetarium Demo you mentioned. The source files are included in the Blend4Web SDK, so you can see exactly how it was done: /blender/interactivity/solar_system/solar_system_en.blend


What's the most reliable way of converting a material into reusable code blocks? I'd like to convert certain materials into executable python code without having to re-code them from scratch each time.
While doing some initial experimentation on the principled shader, I realized that there are a lot of different attribute types and sub-attributes to handle eg. ShaderNodeBsdfPrincipled.input collection is holding 23 different structs:
<bpy_struct, NodeSocketColor("Base Color") at 0x7fe51de9b0d8>
<bpy_struct, NodeSocketFloatFactor("Subsurface") at 0x7fe51de9b2a8>
<bpy_struct, NodeSocketVector("Subsurface Radius") at 0x7fe51de9b478>
...

and calling dir(ShaderNodeBsdfPrincipled) yields:

['doc', 'module', 'slots', 'bl_description', 'bl_height_default', 'bl_height_max', 'bl_height_min', 'bl_icon', 'bl_idname', 'bl_label', 'bl_rna', 'bl_static_type', 'bl_width_default', 'bl_width_max', 'bl_width_min', 'color', 'dimensions', 'distribution', 'draw_buttons', 'draw_buttons_ext', 'height', 'hide', 'input_template', 'inputs', 'internal_links', 'is_registered_node_type', 'label', 'location', 'mute', 'name', 'output_template', 'outputs', 'parent', 'poll', 'poll_instance', 'rna_type', 'select', 'show_options', 'show_preview', 'show_texture', 'socket_value_update', 'subsurface_method', 'type', 'update', 'use_custom_color', 'width', 'width_hidden']`

Q: Is there any clever python trickery using "magic" object attributes or anything in order to store and restore the nodes, their attribute values and ideally all node connections as well?

If anyone would like to have a material for testing purposes, the following blend contains some kind of production setup (from Camera projection without generating UV's?).

Make a dummy material with each node type of material.
Following on from the suggestion in comments by @MarkusvonBroady  couldn't resist....  Am waiting to see the excellent material serialization answer from you know who,
Pretty much zip the material node / inputs / outputs etc against a newly added default of same type,  and add to string buffer when not same. Have ignored any read only property and select.
Code and test Run.
import bpy
from math import isclose

LUT = dict()
BLACK = [0.0, 0.0, 0.0, 1.0]
WHITE = [1.0, 1.0, 1.0, 1.0]
ul = f'#{"-" * 44}\n'
buffer = []

def cmp(v1, v2):
    return (
        (len(v1) == len(v2))
        and all(isclose(*v) for v in zip(v1, v2))
    )

def vformat(nums, n, indent=8):
    nums = [f"{d}" for d in nums]
    return f",\n{' ' * indent}".join([", ".join(nums[i: i + n]) for i in range(0, len(nums), n)])

def fes(collection, prop, data, size, indent):
    output(
        f'{" " * indent}{collection}.foreach_set(\n'
        f'       "{prop}", [\n'
        f'        {vformat(data, size, 8 + indent)}\n'
        f'        ])'
    )

def groups_in_tree(node_tree):
    for node in node_tree.nodes:
        if hasattr(node, "node_tree"):
            yield node.node_tree
            yield from groups_in_tree(node.node_tree)

def group_io(n):
    output(f'node = nodes.new("{n.bl_rna.identifier}")')
    output(f'node.name = "{n.name}"')
    sockets = ("inputs", "outputs") if n.type == 'GROUP_INPUT' else ("outputs", "inputs")
    for skt in getattr(n, sockets[1]):
        if skt.type != 'CUSTOM' and skt.name:
            output(
                f"skt = group.{sockets[0]}.new('{skt.__class__.__name__}', "
                f'"{skt.name}", '
                f')'
            )
            output(f'skt.name = "{skt.name}"')
            dv = skt.default_value
            val = dv[:] if hasattr(dv, "foreach_get") else dv
            output(f"skt.default_value = {val}")
    output()

def colorramp(a, b):
    n = len(a.elements)
    output(f'ramp = node.color_ramp')
    compare(a, b, fstring="ramp.{k} = {va}")
    locs, deflocs = [0.0] * n, [0.0, 1.0]
    cols, defcols = [0.0] * (n << 2), BLACK + WHITE
    a.elements.foreach_get("position", locs), a.elements.foreach_get("color", cols)
    n = n - 2
    if n:
        output(
            f"for i in range({n}):\n"
            f"    ramp.elements.new(0.0)"
        )

    if not cmp(locs, deflocs):
        fes("ramp.elements", "position", locs, 1, 0)

    if not cmp(cols, defcols):
        fes(f'ramp.elements', "color", cols, 4, 0)

def mapping(a, b):
    output(f'map = node.mapping')
    compare(a, b, fstring="map.{k} = {va}")

    for i, c in enumerate(a.curves):
        n = len(c.points)
        pts, default = [0, 0] * n, [-1.0, -1.0, 1.0, 1.0]
        n -= 2
        if n:
            output(
                f'for i in range({n}):\n'
                f'    map.curves[{i}].points.new(0.0, 1.0)\n'
            )

        c.points.foreach_get("location", pts)
        if not cmp(pts, default):
            fes(f"map.curves[{i}].points", "location", pts, 2, 0)

def output(*args):
    s = " ".join(args) if args else ""
    buffer.append(s)

def compare(a, b, fstring="{k} = {va}", sockets="", i=0, ignore={'select'}):

    props = (
            (k, v)
        for k, v in a.bl_rna.properties.items()
        if (not v.is_readonly or k in ("mapping", "color_ramp"))
        and k not in ignore
    )

    for k, v in props:
        va = getattr(a, k)
        vb = getattr(b, k, None)

        if v.type in ('FLOAT', 'INT'):
            if v.is_array:
                if not isinstance(va, float):
                    va = va[:]
                if vb and not isinstance(vb, float):
                    vb = vb[:]

        if va != vb:
            if v.type == 'ENUM':
                va = f"'{va}'"
            elif v.type == 'STRING':
                va = f'"{va}"'
            elif v.type == 'POINTER':
                if k == "parent":
                    va = f'nodes.get("{va.name}")'
                elif a.type == 'GROUP':
                    return output(f'node.node_tree = groups.get("{a.node_tree.name}")')
                elif issubclass(v.fixed_type.__class__, bpy.types.ID):
                    va = repr(va).replace(f"['{va.name}']", f'.get("{va.name}")')
                elif k == "mapping":
                    return mapping(va, vb)
                elif k.startswith("color_ramp"):
                    return colorramp(va, vb)
            name = f'"{a.name}"' if hasattr(a, "name") else i
            output(fstring.format(**locals()))

def pnode(n, dummy):
    if n.type in ('GROUP_INPUT', 'GROUP_OUTPUT'):
        return group_io(n)
    nodetype = n.bl_rna.identifier
    default = LUT.setdefault(
        nodetype, dummy.nodes.new(nodetype)
    )

    output(f'node = nodes.new("{nodetype}")')
    compare(n, default, fstring="node.{k} = {va}")
    for sockets in ("inputs", "outputs"):
        for i, (a, b) in enumerate(
                zip(
                    getattr(n, sockets),
                    getattr(default, sockets),
                )
        ):

            compare(a, b, fstring='node.{sockets}[{name}].{k} = {va}', i=i, sockets=sockets)
    output()

def material_to_text(m):
    try:
        dummy = bpy.data.node_groups.get("DUMMY")
        if not dummy:
            output("import bpy")
            dummy = bpy.data.node_groups.new("DUMMY", "ShaderNodeTree")
            output("groups = {}  # for node groups")

        if hasattr(m, "use_nodes"):
            # material
            for gn in set(groups_in_tree(m.node_tree)):
                material_to_text(gn)
            nt = m.node_tree
            output(
                f"\n"
                f"{ul}#  Material: {m.name} \n{ul}\n"
                f'mat = bpy.data.materials.new("{m.name}")\n'
                f"mat.use_nodes = True\n"
                f"node_tree = mat.node_tree\n"
                f"nodes = node_tree.nodes\n"
                f"nodes.clear()\n"
                f"links = node_tree.links\n"
            )

        else:
            # group
            nt = m
            output(
                f"\n"
                f"{ul}#  NodeGroup: {m.name} \n{ul}\n"
                f'group = bpy.data.node_groups.new("{m.name}", "{m.bl_rna.identifier}")\n'
                f'groups["{m.name}"] = group\n'
                f"nodes = group.nodes\n"
                f"links = group.links\n"
            )

        for n in sorted(
            nt.nodes,
            key=lambda n: [n.location.x, n.location.y]
        ):
            pnode(n, dummy)
        if nt.links:
            output("#Links\n")
        for l in nt.links:
            output(
                f"links.new(\n"
                f'    nodes["{l.from_node.name}"].outputs["{l.from_socket.name}"],\n'
                f'    nodes["{l.to_node.name}"].inputs["{l.to_socket.name}"]\n    )\n'
            )

    except Exception as e:
        print("There has been an ERROR")
        print(e, e.__traceback__.tb_lineno)
        return False  # failure

    if hasattr(m, "use_nodes"):
        bpy.data.node_groups.remove(dummy)
    return True  # success

if __name__ == "__main__":
    m = bpy.context.object.active_material
    material_to_text(m)

    text = bpy.data.texts.new(m.name)
    text.write("\n".join(buffer))

Test Run on default "Material" with base color set to Red.  AFAICT Generates the material in test file linked Ok.
import bpy
groups = {}  # for node groups

#--------------------------------------------
#  Material: Material
#--------------------------------------------

mat = bpy.data.materials.new("Material")
mat.use_nodes = True
node_tree = mat.node_tree
nodes = node_tree.nodes
nodes.clear()
links = node_tree.links

node = nodes.new("ShaderNodeBsdfPrincipled")
node.location = (10.0, 300.0)
node.inputs["Base Color"].default_value = (1.0, 0.0, 0.0, 1.0)

node = nodes.new("ShaderNodeOutputMaterial")
node.location = (300.0, 300.0)

#Links

links.new(
    nodes["Principled BSDF"].outputs["BSDF"],
    nodes["Material Output"].inputs["Surface"]
    )

Revision
Unlike Madonna and @Gorgeous not so much of a "Material Guy".  TBH I'm a sub-feather-weight when it comes to blenders materials and nodes, so this was a nice little excersize for me.
Ultimately the idea, as I see it,  is to be able to copy a material via a script in one blend, and re-create it in another.
Default Values.
Have kept the verbosity down a bit by not outputting default values. Could turn this off with a flag.  Since non-default values are determined from a newly instanced copy they will be non-default at time of creation. As noted if the defaults change, will need to run script again.
Node Groups
Prior handled a  group node by simply pointing the node tree  to its bpy.data.node_groups item. Instead this version makes a copy of each node group used in the material. Was a very easy step, since nodes of both is a collection of nodes. To make sure the new group is used in the generated material by means of  a dictionary groups  to associate new with old name
groups = {}  # for node groups

#--------------------------------------------
#  NodeGroup: NodeGroup.001
#--------------------------------------------

group = bpy.data.node_groups.new("NodeGroup.001", "ShaderNodeTree")
groups["NodeGroup.001"] = group

could turn this on or off to use existing node groups.
Curves and Ramps.
Wired it up to generate mapping and colorramp nodes.  Used foreach_set which enables to add an arbitrary point for each extra (over default) and set from a list.
Color Ramp
node = nodes.new("ShaderNodeValToRGB")
node.location = (-345.2741394042969, 142.6455841064453)
node.parent = nodes.get("Frame")
ramp = node.color_ramp
for i in range(4):
    ramp.elements.new(0.0)
ramp.elements.foreach_set(
       "position", [
        0.0,
        0.25,
        0.45396339893341064,
        0.6530487537384033,
        0.7999999523162842,
        1.0
        ])
ramp.elements.foreach_set(
       "color", [
        0.0, 0.0, 0.0, 1.0,
        0.41859403252601624, 0.000635193195194006, 0.0, 1.0,
        0.0, 0.006493096239864826, 0.21146051585674286, 1.0,
        0.14895662665367126, 0.17292265594005585, 0.2819954454898834, 1.0,
        0.5389295816421509, 0.18324723839759827, 1.0, 1.0,
        1.0, 1.0, 1.0, 1.0
        ])

RGB Curve
node = nodes.new("ShaderNodeRGBCurve")
node.location = (211.58743286132812, 275.4912414550781)
node.parent = nodes.get("Frame")
map = node.mapping
map.tone = 'FILMLIKE'
map.clip_max_x = 0.8999999761581421
for i in range(5):
    map.curves[0].points.new(0.0, 1.0)

map.curves[0].points.foreach_set(
       "location", [
        0.0, 0.0,
        0.15146341919898987, 0.4256756901741028,
        0.24731720983982086, 0.7837838530540466,
        0.4675609767436981, 0.5506754517555237,
        0.5421952605247498, 0.8445945978164673,
        0.6585365533828735, 0.5608108639717102,
        1.0, 1.0
        ])
for i in range(2):
    map.curves[1].points.new(0.0, 1.0)

map.curves[1].points.foreach_set(
       "location", [
        0.0, 0.0,
        0.3512195348739624, 0.6621621251106262,
        0.5926830172538757, 0.3581080138683319,
        1.0, 1.0
        ])
for i in range(3):
    map.curves[2].points.new(0.0, 1.0)

map.curves[2].points.foreach_set(
       "location", [
        0.0, 0.0,
        0.16463413834571838, 0.581081211566925,
        0.5004880428314209, 0.5777024626731873,
        0.7858536243438721, 0.28378361463546753,
        1.0, 1.0
        ])
for i in range(1):
    map.curves[3].points.new(0.0, 1.0)

map.curves[3].points.foreach_set(
       "location", [
        0.0, 0.0,
        0.6782926321029663, 0.4425675868988037,
        1.0, 1.0
        ])

Frames
Added  the frames and set as parents to respective nodes, haven't wired up re the location changing, as demonstrated by @Gorgeous.


Why is my final rendered image brighter than the viewport render? I was working on Blender Guru's beginner tutorial.
When I was rendering final image, I found that rendered image is way different from viewport image, in which I was checking for light setting. Render image looks way brighter than viewport's. How can I correct this?

Render setting has not changed from default
Exposure is 1.00
Ambient Occlusion in world setting is off.
Surface strength is 0.8.
Color is HSV 0.78, 0.16, 0.228.
Color management is 0.
Gamma is 1.0.

If you have some extra light, turn it off in render in the Outliner or under Object Properties/Visibility:


Can't move Mesh with Armature I have read a lot of treads with the same problem. And I think I have tried to make everything. But Can't still get it to work.
I'm new to Blender.
Working in Blender 2.90.1
I have made a character and pressed Ctrl + J. So it's only one mesh.
Added the Armature
Parented with auto weight so the Armature is pareting the Mesh.
And when I go in to Pose-mode and click on a armature och moves it, the mesh don't follow.
Blendfile:
https://easyupload.io/ofledn
What am I doing wrong?

I don't know how you did the parenting thing, but your problem is fixed if you select the mesh, go to Properties > Relations and change the parent type from object to Armature.

Re-parenting everything all over again, it works fine!


How do I stop the object I used as part of a boolean from rendering? I want to add a small cut for my bishop. So I have used boolean difference modifier but when rendering it renders the cube also, but I want to create a notch there. Please tell me how to remove the cube from my piece.

You need to disable the rendering of your object:

in the outliner menu on the right, click on to enable the rendering toggle switch

then just turn it off for your object.


Change Blender Render Save Default to RGB from RGBA Is there a way to change the default for saving a render to RGB instead of RGBA? This saves me disk space when working with renders that don't have an alpha-channel anyways.
I can't find anything on it under Edit > Preferences

You need to save your preferences as a startup blend-file.

Create new default blend-file
Change the image format settings in Output Properties > Output
Save the blend-file
State the blend-file as the default startup blend-file Info Editor > File> Defaults > Save Startup File

Make sure you're in the saved blend-file when you state the blend as the startup default!
Note: I'm not sure if this overwrites previously saved blend-file defaults.
Unfortunately I think not. But it should for all future saved blends.


Does the camera angle matter when rendering a model or 3d animation for unity I want to help someone with making a game, and since they dont need any programers i may as well help them with other things. But my problem is the camera angle, i think it will affect the model/animation because you would of only rendered that angle. So im kind of confused because im wondering if i should just send them the project. Even though he wants the volentiers to use maya, but then i saw, in the list of things he needed help a layout of export settings for BLENDER say that the settings have to be like that.

This is the link http://puu.sh/kn93D/61fc4326d6.png
And next to the link it said; If exporting from blender use these settings.

In short, the camera viewpoint doesn't matter at all. What they're asking for is not an image. They're asking for the actual model.

You're thinking of sprites. Some games use sprites, which are individual images that are rendered for a certain number of viewpoints. The original StarCraft uses sprites for all the movable things.

Other games use actual 3D, which are animated in the game engine and can be viewed from any given perspective. StarCraft II and Fallout 4 use actual 3D instead of sprites.

Your thinking about "sending them the whole project" is on the right track, but they can't use the Blender file itself. They've asked for an FBX, which is a format for storing the whole 3D model, its textures, its UV maps, and some other things. It's a lot like an OBJ or PLY, if you're familiar with those. This will let them use the whole model in the game.

In this case, the camera that will be viewing the model is not in Blender, it's in the game. So the camera in Blender doesn't matter... just make sure you don't include it in the export ;-)

You should also definitely check out the B.SE chat room: http://chat.stackexchange.com/rooms/8888/the-renderfarm

There are several folks there who are making games with Blender and might be able to help you with more specific questions that might not be appropriate for the actual site.

Have fun!


Crash when undoing a custom operator I'm trying to create a tool to help me manage my hierarchy. I have this operator which creates an empty object, that i will use for parenting later on.
This works fine, but blender crashes when i undo this operator.
Steps to reproduce:

Run this script
Click on the "Create Empty" button
Undo (ctrl + z)

This crashes blender with EXCEPTION_ACCESS_VIOLATION
import bpy

class CreateEmptyOperator(bpy.types.Operator):
    bl_label = "Create Empty"
    bl_idname = "wm.create_empty"

    def execute(self, context):
        parent = bpy.data.objects.new("Empty", None)
        bpy.context.collection.objects.link(parent)
        return{'FINISHED'}

class MyPanel(bpy.types.Panel):
    bl_idname = "OBJECT_PT_my_panel"
    bl_label = "My Panel"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

    def draw(self, context):
        self.layout.operator("wm.create_empty")

bpy.utils.register_class(CreateEmptyOperator)
bpy.utils.register_class(MyPanel)

What can I do to avoid the crash?

If you want the Undo / Redo system to work with a custom operator, you need to add bl_options = {'UNDO'} when defining the class.
Your script then becomes :
import bpy

class CreateEmptyOperator(bpy.types.Operator):
    bl_label = "Create Empty"
    bl_idname = "wm.create_empty"
    bl_options = {'UNDO'}

    def execute(self, context):
        parent = bpy.data.objects.new("Empty", None)
        context.collection.objects.link(parent)  # Use the current context when available instead of bpy.context
        return {'FINISHED'}

class MyPanel(bpy.types.Panel):
    bl_idname = "OBJECT_PT_my_panel"
    bl_label = "My Panel"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

    def draw(self, context):
        self.layout.operator("wm.create_empty")

bpy.utils.register_class(CreateEmptyOperator)
bpy.utils.register_class(MyPanel)