Need help with gas particle simulation I am new both with blender software and in the forum (btw I am spanish, sorry for my english)

I have to do a gas simulation for a science project with blender. I need to create a box, and create some "molecule" particles inside. Until here I don't have problems. But then I have to make the particles move all around the box:

moving in a linear way each one in a random direction.
colliding and bouncing with the box, without friction
colliding between them
in every collision, the consequent rotation.

I am trying as hard as I can, but I always have these major problems:

gravity is messing everything up. Particles have to move randomly, and in linear way, gravity induces curvature in the movement, and that's critical at the first frames.
I cannot make them collide both with the box and between them. Only one or the other...
Also I am having some problems in lighting, even with few particles it is taking too much time to render.
I made a sphere where the particles are emitted (in order to shoot them in all directions) but when I render, the sphere always appears, I set the material only with transparency.

Finally, if you want, I link you here a youtube video wich reflects what I want to do (but improving the video quality) https://www.youtube.com/watch?v=lzkOoSG8YKI

Thank you so much for your attention.

Final result

Sorry for the gif quality.

Overview

You can use Rigid Bodies simulation to achieve something similar. I'll write an overview of methods I've used. Ask if you need more steps.

Each bold text could be treated as a keyword for searching in Blender Manual.

I will use metric system for measurements.

You result may vary. Slight differences in models could bring some problems (or not) as "physics" in Blender isn't real physics.

  Remember to Apply Scale for every object.

World

Turn off Gravity (or set it to 0).

Speed will control... Speed of animation.

Steps per second and Solver iterations will increase quality.

A box

Model:

Simple Cube 2x2m with Inverted Normals. I've assigned two materials to it. One for base color and one for front face (Transparent Shader).

Rigid Body:

Set Type to Passive and Shape to Mesh. Change margin to something around 5cm, this should help with keeping molecules inside the box. Friction to 0. We don't want any.

Molecules

Model:

Again, nothing fancy. Three Spheres joined together with assigned two materials. Size around 13x8x8cm. Duplicated couple of times. Duplicate it after setting Rigid Body values.

Rigid Body:

Similar to the box but. Type is Active, Margin 1mm or none, Mass 1g.

"Activator"

I've used Force Field > Force with keyframed Strength. At frame 1 Strength is -0.3 and at frame 10 it's 0.

Such setting allows us to pull molecules to the center of the box and after 10 frame Force Field is deactivated and molecules are living on their own. You can also try positive value to push molecules but this could bring some problems and molecules will be pushed outside the box.


Easy way to run python script in blender python console? When I press "run script" with a python script in the Text Editor, it runs, but seems to spawn some new invisible python interpreter. I'd like it to run in the Python Console that I already have open. Is there a way to do this?

As it stands now, I'm copying and pasting from the Editor to the Console, which sure is tedious.

In Blender 2.80 and higher, you can use as_module().

In the above example, an unsaved text editor shows this code:

def myTestFunc():
    print('This is my test function, running')

print('This is my test module, running')

Then, in the Blender Python console on the left, you can import this:

myModule = bpy.data.texts[0].as_module()

Note that since this is my only text file, I've used texts[0] to reference it.  If you had multiple, you would reference by name, such as texts["Text"] or similar.

Note that anytime the source code changes, you will have to re-run the as_module() command again to pick up the changes.

Finally, I can call functions from the module I imported, like so:

myModule.myTestFunc()

This uses the variable name that was assigned by the as_module() line, and looks for a named function within that module to call.


Visible seams on the mesh This mesh has a seam on it.
When I apply texture on it the seam is visible.
How to fix this issue?
I also share the file

Go into edit mode > Select All with A > Right click > Merge > By distance.


close hole in rounded shape I have a very easy (maybe silly) question, but I cant get it done....

How can I close hole like above (or bigger) mantaining the round shape?

Use a Grid Fill option. Select the edge loop around the hole, then press Spacebar and type Grid Fill. Play with its settings in a Tool Shelf's operator panel (T).


Is there a way to add a new element to a mesh in the action editor? I'm making a few animations for a character in a racing game, run, walk, die and also a win animation in the win animation I want to add a medal around the characters neck, is there a way to do this in the action editor without making a new mesh with the medal in it?

You can add an intermediate bone, which deforms the medal. On the first frame of the winning animation it will simply have a scale keyframe at (1, 1, 1). On all other actions you keyframe it to a scale of (0, 0, 0) effectively hiding it.

Otherwise create a separate object, which the game engine can show/hide.


Can I use Blender in a slow-motion video workflow? I am capturing video on my Canon 7D at 60fps with the intent to play it back in slow motion at 24fps. There are some Linux-based programs that will do this, but they are usually kind of buggy and I'm running Windows mostly now. How can I convert a 60fps video into a slower (2.5x longer) video at 24fps?

You can import the movie into Blender and then export it with a different framerate using this technique:
1. Import the movie
Open up a "Video Sequence Editor" in a fresh Blender-scene. You should see something like  below:

Click on Add > Movie and select the movie you want to convert. Make sure that the Blend-option (open the panel on the right with N) is set to Replace and Start Frame is 1 (see picture).
2. Export the movie
Then you go to Render Settings:

Make sure that you have selected the correct Resolution (the one of the video) and the slider is at 100%. Set the End Frame to the same as the Length of your video (seen in the picture 1 below Start Frame). Select the correct Frame Rate (24?) and the right format (I selected AVI Raw but it can be everything you like). Hit that Animation-button or Press Strg+F12 to render.
If you have any questions, feel free to ask.


Walk cycle movement using Rigid Bodies I was just thinking if it was possible to make a person walk if I make the walk cycle and then just make it interact with the terrain using rigid bodies or something of that sort. The basic idea is to not animate the movement of the object, let physics do the work.

If the above mentioned is not possible please suggest a way to animate a walk more easily.

I think you can. But you can better make the animated rig a dynamic body with capsule bounds in collision bounds. try to ajust the hight so the feet will touch the ground. to do this, just move the origin of the rig. Now just use programming with velocity motion to make it walk and try to change the animation according to the speed you want it to walk. Cause with physics like that, I think it wil lag a lot because it will try to sufficate with the underground. And in that case you should use triangle mesh bounds witch ask a lot more from your pc / mac / linux thing.


Facing the issue of setting the origin I hope, you all guys are having a good day. I am trying to make a rounded wall for well and to set its origin to the middle of the rounded wall. I have tried all the things from setting the origin to geometry and solely placing the origin point to the middle. But all in vain. edit: Its wireframe has been in the rounded form in all that struggle. I will be thankful if I get some help. It's blender 2.8

It's not perfect to see in the screenshot, but isn't the object just circled around the world's origin (where the 3D cursor is at the moment)? So did you try going to Object Mode, right-clicking the object, then in the context menu choose Set Origin > Origin to 3D Cursor?
EDIT: Or maybe it's not circling around the world origin. What about selecting the vertices that are furthest on X and -X as well as the ones furthest on Y and -Y. When they are selected, Shift+S > Cursor to Selected, go to Object Mode and like suggested before, set origin to 3D Cursor?


map editor blender game engine i want to create map editor inside blender game engine, i know python,

I created game assets and i want to put them on terrain i created before, but the question is how...

How to make object add on the surface of terrain not in air

i would split the map editor up in two parts, Terrain editor and Prod editor.

For the Terrain i would do it with textures maps, so when you edit the terrain you are painting on Bump,Normal,Spec,Diff and so on.

For the prod you need to make a inventory like menu, and then Edit object "add/remove" in a RTS like way.

This might be a quite big project, but if you split up the problems in smaller pieces i think it can be done, and it will make it way more convenient for other ppl to help you with it.


Spreading micromirrors evenly across surface of a helmet model (Particle effect, procedural, instancing) I am doing a pre-visualization of an art installation. It looks a bit qwirky ;)
It is to remember the fall of the berlin-wall etc. etc.

So it will be old helmets plated with small mirrors arranged in a very large ball / flower.

BUT the question is, how do i get the tiny mirrors to spread evenly without clipping into each other on the mesh evenly?
I wanted to do that effect for a long time already on a couple of projects.

I thought i could instanciate the micro mirrors onto the surface with a particle emitter and use the normals of the surface etc.
OR alternatively spawn at each vertices a mirror plate. Yet it would be very hard to make them even like a disco ball.

Do you have any ideas? here is a video of the status quo (sorry for the quality) VIDEO of the status quo

The first original helmet looks like this:

i tried your question.
Though i think from the method it is very much like extruding individual faces right? Not entirely sure how it does it ;D to be honest.

here is the result, i believe because of the (rather unclean) mesh topology I can not go that route if I would have to make all faces evenly first.

MAYBE: i could use something like cloth simulation? I could make a "fabric" (just joined mirrors as plane ) and stitch it to the surface? Does anyone has experience with it?

You can use the Tissue addon.

The addon will tesselate a given shape on a mesh.

Select a tile, shift select your mesh, and use 'tesselate':

From that, if you want to modify the original mesh, you can come back to the tesselation and refresh it.


How to find image coordinates of the rendered vertex? I have a simple mesh of a cube.  I would like to know what are the coordinates of each vertex in the rendered image (i.e. for each 3d vertex I'd like to know it's pixel coordinates).  Is there a way to do this?

Clarification:

I'm experimenting with a pose estimation algorithm (i.e. finding out the 3d pose of the object) from a (set of) 2d image(s).  Instead of taking an image of a real object with a real camera I synthetically render the image of a cube using blender.  In this way I know the pose of the object and the intrinsics of the camera, so I can easily validate the results of the pose estimation algorithm.
Pose estimation algorithms usually require to provide them with world points on the object and the corresponding image points.  So what I'm looking for is a way to produce a dump of correspondences of the 3d point <--> image point as a byproduct of the rendering procedure.
Thanks,
Alex

This script gives projected the 2D pixel coordinate from a 3D world-space location.

The (0, 0) origin is the bottom left of the image(common for math, OpenGL and Blender in general).
A negative Z return value means the point is behind the camera:

Example:
# Test the function using the active object (which must be a camera)
# and the 3D cursor as the location to find.
import bpy
import bpy_extras

scene = bpy.context.scene
obj = bpy.context.object
co = bpy.context.scene.cursor_location

co_2d = bpy_extras.object_utils.world_to_camera_view(scene, obj, co)
print("2D Coords:", co_2d)

# If you want pixel coords
render_scale = scene.render.resolution_percentage / 100
render_size = (
    int(scene.render.resolution_x * render_scale),
    int(scene.render.resolution_y * render_scale),
)
print("Pixel Coords:", (
      round(co_2d.x * render_size[0]),
      round(co_2d.y * render_size[1]),
))

See the Python Source-Code if you're interested in exactly how this works.


Can I change the default color for Relationship Lines? Sorry but I didn't found where to change the default color for relationship lines (for constraints and parents) among Theme settings. Since I really really need to do so in the current project. Thanks in advance!

Yes you can, but not on their own, this uses the themes wire color which is also used for many other unselected wire-frame data in the view-port. (See: 3D View -> Wire)


Thoughts on Building a Blender-Oriented PC The rendering time on my laptop is starting to become absurd in order to get a decent looking scene. I am looking at building a pc that is well suited for blender. What components are the most important? Most of my projects are rendered using cycles, so a Nvidia graphics card is a must plus lots of ram. But I want some more information, like what cpu (Amd?)? What graphics cards would you recommend? If you have the time could you list a couple different builds such as premium, budget, ect.?

I know that there are other ways of lowering the rendering time (i.e. better poly management), but I have been looking to build my own rig for a while.

Thanks Guys!

Note

Although this question is about hardware we need a canonical answer on this!

Canonical posts for hardware questions?
Answering vague support questions (once)?

Answer

Mike Pan has started a thread on BA and collects benchmark results in a sheet.
Be careful because the benchmark results may differ due to different Blender versions and Cycles performance has been optimized.

A few things to consider:

GPU

Cycles uses CUDA and is provided by NVIDIA only.
A single system designed for Cycles should be focused on maximum number of shaders kernels (CUDA cores) on the GPU. When you use shaders written in OSL the scene can only be rendered on the CPU.

Nvidia model numbers start with a digit for the generation 5,6,7

 oldest    540 < 550 < 560 < 570 < 580 (fastest, 512 CUDA cores)
           640 < 650 < 660 < 670 < 680 (fastest, 1536 CUDA cores)
 newest    740 < 750 < 760 < 770 < 780 < 780Ti (fastest, 2880 CUDA cores)

You could find something like 590, this means AFAIK the two 580's have been connected.

GPU RAM

If you use many big textures the RAM of a 1.5GiB card could be the limiting factor more is better.

CPU

Baking, preparation of the scene is calculated only by the CPU. According to the benchmarks I guess Intel is to prefer.

i3 2 Cores (slowest)
i5 4 Cores
i7 4 Cores + Hyper-threading (fastest) Hyper-Threating adds approx. 10-20% of performance.

Server CPU

A Xeon-CPUs an E3-1231-v3 (4-cores) costs a bit more than an i5 but comes with Hyper-threading. . There also costly CPUs like E5 available Depending on the motherboard you can add 2 of them (Socket 2011) having hexa(6), octa(8) or deca(10) cores (plus hypertheading which adds ~10% performance) but they cost > 1.250$ (Sep. 2014).

System RAM

Should start at 8GiB, 16GiB would be suitable for most use cases.

Realated Resources

Blender Cycles performance benchmark - more CPU cores vs higher clock frequency benchmark
Cycles versions speed comparision

Some numbers from my machines for Mike Pan's BMW:

Blender v2.71

i5-3470@3.2 GHz 02:50.00
CUDA GeForce GTX 660 Ti 01:12.65

Xeon E3-1231@3.4 GHz 01:36.48
CUDA GeForce GTX 580 01:08.23

i7-2630QM@2.0 GHz 03:39.96
CUDA GeForce GTX 560M 03.00.87

You find a lot more results at:

Blenchmark benchmarks-overview


Sculpt hard edges mouth I've been trying to sculpt this mouth in sculpt mode but I can't get the surface to enter enough inside the head or make the more detailed sides... Is there any tip on how to 'maximize' the sculpt brushes? Or any other tip would be very helpful, thanks a lot!!

I'm not very much into sculpting, but you can try the Layers tool. Make sure you are in Subtraction Mode (the minus-button on the top) and set the falloff type to Constant.
But to make the edges so smooth like in your reference, you would need a hella lot of vertices, which can be performance-eating.
This is the closest result i achieved with sculpting lol:

You could try it with Bump Maps. I have to admit I haven't done this myself, but i've seen a colleague doing this. Basically you use an image with black an white values (black = low, white = high) as your source for the heights.
I think you would have to paint your mouth in grey tones and a sharp edge on a white background and plug in certain nodes in the shader editor.
I found a pretty short, but on-point-tutorial on this, which i can recommend (warning, it may be a bit fast): https://www.youtube.com/watch?v=_dU3DONwSzU


Unable to select more than one armature single bone in edit mode I have created two armature single bone and I need to parent one of them to another. For doing this I am trying to select both of them in edit mode but in vein. I am able to select them in object mode but not in edit mode. The reason I am selecting this in edit mode is because both of the single bones has many extruded single bone meshes and I need to select only the master one from which all the other are extruded.

Thanks,

Varun

I think you have to join the bones in object mode CTRL+J, then you can go to edit mode to parent them.


How can i drop my mesh on floor with rigid body I have a floor and mesh (pen). Im dropping the pen on the floor. Floor is set to passive and pen to active. Added collision-on to floor. When the pen is not dropping on the floor. Its flickering in air. I want to add some few 8-10 pens on the floor so that it get collision with floor and with each. other.Any suggestion how it works.

Ok, I tried a few options and got a fairly stable simulation. Here is the result:

Steps:

Scale the ground and pen up by 100 (physics simulations work better with larger objects. Also, the floating came from the constant collision margin of 4 cm which means that objects will already collide when they are 2*4 centimeters apart. While this value can be changed, it is better to scale the objects up)
Apply the scale on the pen with Ctrl+A > Scale
Set the origin of the pen to Center of Mass (Volume) (a wrong origin can mess up simulations)
Use convex hull as collision shape (should be precise enough in this case. Mesh shape causes glitches)
Use box as collision shape for the ground (except if you want to use a different shape)
Finally, you might want to increase the Rigidbody simulation steps (Go to Scene Properties > Rigid Body World and increase Steps per Second and Solver Iterations, e.g. to 600 and 100)


Bezier masks for use with groups of shapes? I'm using Blender to do some 2D, shape-based animation.

Everything you see here is a Bézier shape. To animate the mouth and eyes independently, I add holes to the head shape and then stack the eye and mouth parts below it with an orthogonal camera.

This works OK, but it's not perfect. For one, I have to make sure that none of the inner shapes peek out from behind the head shape. I also have micromanage the hole shapes whenever I change the outer head shape, e.g. to prevent edge contact and self-intersections. Instead of making holes, I wish I could simply add a mouth-shaped mask to the mouth group and then animate the mask independently, but it seems impossible to do this. I know that I could convert the paths to meshes using Alt+C and then add a boolean modifier, but this would no longer allow me to modify the control points. I've also seen approaches that use the compositor to create masks, or that use render layers to create portals, but they all seem far too heavyweight for use as simple masks.

Is there any way I could apply a Bézier mask to a group of shapes in Blender?

One thing that could work, or at least give you inspiration, is adding control points hooks, perhaps, I tried this setup:

Here I created two stacked bezier shapes, the upper "Holed" similar to yours.

Then I selected each upper shape control point, and created a hooks to a new empty.

After that I hooked also lower shape control points, one by one, to the nearest empty created before.

Note: here the lower shape control points had same x/y position than the upper "hole" ones, so it was easy, you may need to arrange things differently (more "safely") to allow different setups to work...

See how it works:

And, from the top view:

Here is my example .blend  (sorry, had to edit your question and remove accented char from the title to get the url accepted by the hosting service)

Hth.


How to clear unused linked-data (libraries) quickly I've got several assets files, which for some reason have unused linked-materials (from external other files). This results in a big list of useless "Libraries", visible in the Outliner, "Blender file" type of information.

I tried to delete the materials by hand, with Shift + Click on the "Unlink datablock" button, save the file, then reopen it, but materials are still there.

However, I tried to change the path of the linked libs by a non-existing file, directly in the Outliner, then saved the file and reopen it (twice). It worked. But too long and fastidious way to do that...

My question is : is there a quick way (with scripting or via UI) to auto-unlink unused things ?

Blender does not save unlinked datablocks. Thus linked datablock always has a user in the file it was linked from. To remove from your scene you must first click the make local button  and then it can be unlinked


Aluminum Foil Texture I'm trying to make the Payload Adapter Fairing of a Falcon Heavy rocket, which has a foil texture. I like what I have so far, but I think it could definitely use some work.

This is my node setup for the material, using an image of foil I found online.

This is the result I got; it looks a little better with good lighting, but the bump is still visible.

Here is the reference.

I think it's realy important that you put the matalicness all the way up. this would mean that the matrial is treated like a metal witch makes it way more realistic. after that you can just use the map you are already using as a bump map. and than you can play with your roughness and specularity and see what you like.


Normal Map + Micro Displacement = Bug? In experimental render mode I tried to combine micro displacement and normal map. This has been a common workflow for high Quality materials in other 3D applications.

While I can render normal map in supported mode:

in experimental mode it turns object very dark (this is not the issue of object/tangent space, you still can see object little bit)

not much changes when I add displacement

turning normal map off, the objects reappears with displacement, I miss the fine detail of normal map however

Small remedy is that you can plug bump map into normal shader node, this adds the finer detail, I find bump maps much inferior to normal maps however.

I have reproduced this bug with other normal maps too. I have double checked that normals are set to non-colour data. Is this well known and reported bug, or am I missing something else?

Thanks a lot in advance.
File:
enter link description here

It seems as of version 2.79, displacement node, Adaptive subdivision (experimental mode) cannot be combined with normal map node. Workaround for now is either using only bump map or switching off the adaptive option inside of subdivision modifier.

This bug is not noticeable when using simple plane: (probably here tangent space is same as object space)

In case of a sphere, shading artefacts appear when combining Normal Map and Adaptive Displacement

Unfortunately I now have the file in version 2.8 only
http://gofile.me/2mjhf/tn9buuTmU

Node setup in 2.8:

Correct me if I am wrong, but it seems like developers were aware of this bug and changed it in the upcoming version 2.8. Since that is around the corner I can live with the 2 above mentioned workaround in 2.79 until then.

Thanks


How to add Brushes in 2.8 Trying to add brushes to blender.

Following this tutorial but nothing is the same anymore, I am using 2.80 latest build.

Trying to add these brushes, but I cannot find anything on how to add in 2.80. Thought I had it once but they disappeared once I click on one.

Click Append in File menu
Browse file \ Brush and select brushes you need (b for box select)
In Sculpt mode click on brush preview image and select one

Updated:

Brushes will be saved in you curent file.

  Thought I had it once but they disappeared once I click on one.

That mean you have not saved your brushes in Startup file. If you need these brushes in each your project - you need to save they in Startup.

Be careful - with brushes all other data (objects, UI and so on..) will be saved as Startup! Preferably create New file, import brushes and then save Startup file.

Blend file with brushes


Rendering faster the transparent areas in Cycles So, is there anyway to render faster the transparent areas of a 3D animation?
For example: my background is transparent and most of the image will be transparent, but for some reason Cycles takes minutes to render these transparent areas.

Branched path tracing is significantly faster on empty background areas since it limits initial samples and instead gathers multiple subsamples: What is branched path tracing and how is it useful?

Some effects such as depth of field or motion blur may need a lot of initial samples anyway though, so branched path may not always be faster. Additionally, it consumes quite a lot of extra memory when running on GPU, so it can easily put a scene over the edge of fitting in VRAM or not.


Why I can't find my mesh in menu? I wrote the script, begining looks in this way:

bl_idname = "mesh.tree_add"
bl_label = "Trees Generator"
bl_options = {'REGISTER', 'UNDO', 'PRESET'}
bl_space_type = 'VIEW_3D'
bl_region_type = 'TOOL_PROPS'

I installed my script from User Pref. menu and checked this box:

but still I can't find my script in menu called by Shift+A. Also I can't find others extra objects. But I can find it by SPACE menu and it work correctly. Any ideas?

You can't find it in the menu because you didn't add it to the menu. Menus don't automatically pick up new entries based on the class properties, you have to write code to add them:

import bpy

def add_menu_item(self, context):
    self.layout.label("Added this line")
    self.layout.operator("mesh.tree_add")

bpy.types.INFO_MT_mesh_add.append(add_menu_item)


Animating creation of a model? How would I go about animating the modeling process of a model? I can keyframe location, rotation, materials, etc. just fine, but not deleting faces from the model or modifiers as they are used, or hiding faces. What would be the best way to approach this?

To be clear, what I am wanting to do is animate the transformation of an object from a primitive to a complete model smoothly. A picture of a simple model as an example is below, I'd like to animate the entire process with each detail between steps 1-6 (scaling, deleting faces, modifiers being added and applied) and visible to the camera.

You could try saving your model at various points that you'd like to show, and then import/link them all into one file, and keyframe their visibilities in that file.

Get all your objects into one file.  Import them if you don't think you'll need revisions.
Select the object you'd like to show first.  Get to frame 1.
Hit the "Eye" icon in the outliner to make the object invisible.  Keyframe that object's visibility.  (Hit "I" on the eye icon in Outliner).
Advance to frame 2, make the object visible again, and keyframe it again.
Advance however many frames you'd like this object to be visible.  Let's say 24 frames.  On frame 24, keyframe the visibility again.  Then on frame 25, turn the visibility off, and keyframe it.
Open up a NLA window, select that object, and press the 'down' arrow to push the action onto the stack.  That just enables the NLA to manipulate actions.
Load up your other objects, and load them into the NLA editor.  Just keyframe your un-keyed objects to get them to show up.
Select another object's track, and from the NLA menu select Add >> Action.  Select the action from the first object you keyed.
Repeat step 8 with the other objects.

Hopefully that makes sense to you.  To see a rough idea of this setup, check this out: http://pasteall.org/blend/40878


Beginner: How to make a mirrored "recesses'' in a shape of a spheres into an object mesh? I am complete beginner and since I dont know how to properly ask the question, I am not having luck with googling it. I can show you what I mean with pictures.

I am trying to make an egg shape with spherical holes in its mesh, but cannot really figure it out. Reference picture of the "holes" is this:

The following method works better when the faces are evenly spaced quads

Add a sphere
Go to edit mode
Press "A" to select all faces
Press "I" once or twice
Scale the individual faces down
Press "E" to extrude all faces
Press "S" to scale the faces to the center
After scaling it towards the sphere center apply
Add a Subdivision Surface Modifier

I just found a tutorial that has another nice method: https://www.youtube.com/watch?v=nJXsgan3Juc


Help I can't figure out why this won't unwrap correctly The unwrap has edges connecting two pieces when I don't think it should and i can't figure out why. There is also a floating circle which is part of the seam. I've tried cleaning up the mesh, but i'm still missing something. Thanks guys!
owl.blend1
owl.blend

There's a face within your mesh which shouldn't be there and the edges don't connect properly.


Importing Rigged Character and animations to Unreal Engine 4 as a title says, I have a problem when importing, mainly, animations to unreal Engine 4. The main problem is, the animation is scaled differently to the character.
When I import the animation I also get the warning: "Imported bone transform is different from original. Please check Output Log to see detail error".

I have searched for many many solutions from people with similar problems, but so far I cannot find a solution that works. I am at a loss here.

Here are the export setting I use for the mesh+rig:

https://i.imgur.com/nDFz4fs.png

https://i.imgur.com/7V5alEz.png

https://i.imgur.com/dmHbaC4.png

For the animation, I select only the armature and export it with selection only, same settings as above, except for animations:

https://i.imgur.com/KLZv72p.png

And when Importing to Unreal Engine 4, the character:

https://i.imgur.com/rPHvZzv.png

And the Animation:

https://i.imgur.com/6iNbgXd.png

I had the same issue.

With me, the cause was that I had some objects selected (in Blender) that were not part of the animation. Exporting only "selected objects" (as per FBX export menu) that meant that my erroneously selected mesh was also selected - and was interpreted as a separate 'skeleton' in UE4. This 'skeleton' could obviously not be matched and gave the error ""Imported bone transform is different from original" on import.

Correcting the selection of meshes before export in Blender solved the issue in this case.


Compositing/render question Im working on an project in which i modeled a stargate and a jumper (spaceship from stargate). I also have some video footage in which i want to place my models. The tracking and camera resolving is done.

Now i have on the one side the problem, that i want some tears/scratches on the ground where the stargate is grounded in (i tried a uv map on the ground (background layer) and created there one with some scratches but in the result there is nothing rendered) - so i tried it with a plane in the foreground cause i thought if the uv map is transparent except of the scratches.. doesnt worked as well. so how i realise this?

the other problem is, that the spaceship should come out of the stargate - so it is animated but should "appear" (like that https://youtu.be/tNSiS9wN-GI ) the problem is, that i dont know if i can use this that easy cause he uses dynamic paint and a node to check greater or lower 1. may you guys have an other idea.

i use cycles renderer, so a lot of solutions i found doesnt work :/

To animate the puddle jumper coming through the stargate you could use a boolean modifier to hide it behind the event horizon.

Create a cylinder big enough to enclose the puddle jumper and place it behind the stargate.
Add a boolean modifier to the puddle jumper and select the previous cylinder as the object and set the operation to difference.

Disable the renderability of the cylinder so that it isn't seen when rendering, or you could give it a transparent texture.

Edit:
The easy way doesn't always work. As the boolean modifier doesn't always give a good result with some meshes, it can be better to do it in compositing. By giving the hideout mesh an object index you can use it to create a mask in the compositor. This answer explains using an object ID to composite multiple objects together.

First you want the background to be transparent, by enabling transparent in the film settings (part of the render settings).

Enable Object Index in the render layers.

Then give the object an index number.

Now in the compositor you can add an ID Mask node and connect that to the IndexOB and set the index number to match the number you set for the hideout object. The little box in the mix node will combine the alpha from the render and the mask.


How Split Face Normal after 'make edge' between vertex in N-gon I just start trying to 'make edge' between vertex in n-gon. but when I select the first half of the face, it still select the whole face. How do i split the face (*green X sign) into two different normal? Thank you :)

To split the face select 2 opposite vertices on the face and use J button instead of F button, in your case you created an edge on top of the face.


My keyframes doesn't appear on the Dopesheet at all? My dopesheet's keyframes doesn't appear at all, when i add a keyframe a kind of orange rectangle appears between the keyframes but i can't see the actual yellow dot that are normally on the software.
Please, if someone knows what to do please tell me, i would be really thankful.

In the header of the Dope Sheet you have selected to show only animation channels that have errors:

De-select this to show your keyframes.


Particles disappear if I modify any parameters I seem to have a problem with particles in cycles. I'm using 2.79. I can create a particle system and use an object as the particle, but whenever I change any parameter (number of particles, rotation, etc.) they disappear not only from viewport, but also from the render. Also, when I enable the Rotation box and tweak the orientation trying to randomize it, it doesn't work, and after a couple of infructuous modification, particles disappear too. I need to know if this might be a bug or user error.

I must say particles are being used for a still image, so I am using the first frame both as the start and end of the particle emission. I have done this in the past with success, but now it won't work.

Thank you in advance.

Thank you very much. Problem is solved, I was not working at the first frame, but further into the animation. I went back to the first frame and everything works as expected.

Every time you change parameters for particles, the cache for the simulation needs to be updated (re-cached).

For Blender 2.79

Press Alt+A to run the simulation again.

In Blender 2.8

Move to the first frame of the timeline (or the first frame of the simulation) and press the space bar


After importing svg, [mesh from curve] creates annoying results? I have created some top views of buildings from AI CC2015 with simple paths, exporting to SVG files.

After importing in Blender 2.73, I want to extrude them to make buildings. I pressed Mesh to Curve & *Tris to Quads. Some of them look just alright, while some of them become weird with overlapping faces.

Is there anyway to clean/fix this? Thanks in advance.

Make sure there are no overlapping segments in your curves before conversion, otherwise remove doubles after conversion to mesh.

Before conversion to mesh make sure your curve is set to 2D and the Fill is set to either just Front or Back, not Both

Also have in mind that converting curves to mesh will always lead do triangulation, and not all curve shapes can be filled entirely by quads, nor without NGons.

Also, if your curve had wholes in them, additional edges will appear, because the mesh structure doesn't support islands. That means there can't be totally disconnected groups of edges sharing the same faces, like in tha building with the whole in the middle.

See this answer for more cleanup techniques


How can I name a layer? Can I name the layers with customized names, or something like that? If not, is it possible to add different colors to every single box?

As far as I know, you cannot do such modifications in the layers table of the 3d window header.

Solution: Enable the Layer Name addon.

You can then change the layers names. You'll find the Layer Managment tab in the Tool Shelf (T).


Texture Mapping Not Moving with Model? I’m getting to the rigging stage of making this character, and something about one of my materials is getting messed up when I move her.
Her eye’s material has a gradient that controls what part of her cornea is opaque black and what part is transparent. It’s supposed to be completely opaque at the top and gradually become transparent at the bottom so the iris can show through. However, when I move the character the gradient doesn’t follow the model. It gets mapped to the cornea on a global level rather than moving with the object.
I’ve a screenshot of of what happens when I move her. The gradient should be top to bottom on both eyes. I included the section of my shader nodes that control how the gradient is generated. Can anyone help me figure out how to make the mapping stay consistent while the object moves?
Cheers

Object mode takes to account object position in space, use the texture coordinate "generated" output.


How do I blend textures of joined objects? I'm trying to make an ammo pick up. But as on the picture, the bullets and the bullet caps are separated by the line where they join.
I'm still new to blender, is there a way to merge them together into a single texture?

If you can add an image of the wireframe, that would be helpful.

The short answer is that you'll need to make the mesh for the bullet (top) and the casing (bottom) connected. Once you do that, there will be a less noticeable seam.

That having been said, normal ammunition has a very distinct seam between the bullet and the casing. If you make the bullet orange-ish and the casing yellow-ish, it'll look like a real bullet.

If that's not what you're after, then you should explore how to model the bullet and the casing together as one mesh. One approach might be to delete the bottom half of the spherical bullet (the part that I'm assuming is hidden inside the casing). Then extrude the bottom ring downward into a cylinder. Then close the cylinder at the bottom. This will result in a bullet and casing that are one piece, and might make your texturing job easier.


Bad render of smooth surfaces (cycles) I have a blend file where smooth surfaces are somehow rendered in a terrible way (full of black spots, rough edges, bad reflection.. the works).

If I export the object (fbx) and import into a new .blend file, everything is fine
In non-render modes (Solid / Material mode) everything looks butter smooth

So the issue seems not to be with the object, but rather with the render / other blender settings - but I can not fine anything wrong!

Any help is greatly appreciated :).

You can find the file <>.

Warner

Change the end clip view parameter (N Panel) to something smaller.
before :
after :


Joining objects in Blender 2.8 causes the objects to disapear I created multiple objects in Blender 2.8 using the Bezier curves and converted them to Mesh using the Object->Convert To->Mesh from Curve.

Now for whatever reason when I select all of the objects in object mode and do "Ctrl+J" to join them, 5 of the objects disappear and I'm left with only one.

I tried to replicate this again, but it's working fine for all of the other objects I try to join, it only acts like this for these 6 specific objects. I tried to select them and export them and then re-import, but for some reason blender is exporting only 80bytes for the STL, not sure if it's related or not.

When I go into the edit mode, I can see that they're all "Mesh" instead of "Curve" why is it acting like this? I never have faced this issue before, maybe I enabled some kind of 'property' for the object that causes this? Thanks!

Here is the Blend file:

This looks like a bug. But you can use a helper object, to merge these objects.

Add a Curve Object. ⇧ ShiftA > Curve > Bezier
Go into edit mode ↹ Tab and delete X the selected control points leaving you with an empty bezier. Exit edit mode ↹ Tab.
Select all other objects with the border selection B. [Make sure, that the newly created (empty) bezier object stays the active object.]
Merge them with ⎈ CtrlJ.


How to snap object local rotation to its nearest global axis with python I want to rotate my object to its nearest global axis with python.
For example if the rotation of the object is more towards +x global, then the object rotation should snap to global +x rotation.
Hope you all get it what I want to achieve.
I don't have any code to show because couldn't figure it out how to start logic with.

Snap closest local to global rotation.

Example of use, object with some arbitrary rotation, can see the local axes from the widget and the global axis from navigation widget, rotates in this case such that Z axes match
The columns of the 3x3 rotation matrix of the world matrix of an object is its unit vector global axis alignment.
Find the minimum angle between any and the global axes.
Create a rotation matrix from the difference between the vectors with minimal axis and transform the original.
import bpy
from mathutils import Matrix
from bpy import context

ob = context.object
mw = ob.matrix_world.copy()
R = mw.to_3x3().col
I = Matrix.Identity(3)

diffs = [locl.angle(globl) for locl, globl in zip(R, I)]
idx = diffs.index(min(diffs))

M  = (Matrix.Translation(mw.translation) @
      R[idx].rotation_difference(I[idx]).to_matrix().to_4x4() @
      Matrix.Translation(-mw.translation))
ob.matrix_world = M @ ob.matrix_world


Blender Exposure not affecting output on OpenEXR File So I'm using this physicall starlight & atmosphere addon,
a wonderful addon, but it requires to change blender's addon to -6 to look good.

I'm working on VFX industry, so i need to renderout OpenEXR and ACES colorspace, (ACES isn't the problem here, i've checked using sRGB, same problem)
after making a beautiful scene with the addon, then leaving it to render overnight, then boom everything is overexposed.
I've done some research, and somehow blender's OpenEXR Output doesnt read the exposure we do.
Viewport with -6 exposure: (how it should look)

Rendered image:

it literally looks like the file output ignores the -6 exposure, and just renders with 0 exposure
so, I'm trying to renderout OpenEXR file with exposure changes affecting the final render

So it seems I got fooled by the "viewed" image,

I think it's blown up ,and unusable image
but after I put the EXR Image to Davinci Resolve, all the information is still there,
the image is not exposed correctly ofcourse, but the information is still there,
we will need extra effort to re-expose the image.
Before exposure fixing:

After exposure fixing:

so the conclusion is, while the view is super blown out,
if we render in OpenEXR 16bit or 32bit, the information is still there
and we can just pull and correct the exposure using the "hidden" image information


How to shrinkwrap without losing sculpted details I want my sculpted model to follow curvature of a sphere but after applying shrinkwrap modifier all the sculpted geometry gets lost (picture 1). How do I set the shrinkwrap modifier so the model only bends accordingly to chosen curvated surfaces? Is shrinkwrap even a correct tool for that? If not, what is the best method to achieve my needs? (I also attach my blend file)
Thanks a lot guys.

I downloaded your file and found a way to achieve the result you want.
You need to create a lattice object and give it enough subdivisions for it to be conformed to the surface of your sphere. Then put only the bottom half of one of your leaf inside the lattice.

Then you can use the lattice modifier on your leaf to reference the lattice object you just created. Finally, apply the shrinkwrap modifier to the lattice object and it works. Now, you just have to repeat the process for the second leaf. I should also inform you that I had to scale up your objects to make it work since they were very small.
This forum post helped me : https://blenderartists.org/t/project-object-onto-another-and-keep-the-thickness/600541/5
Here's the modified scene :

The Result :


My feet armature looks off center in pose mode but fine in edit mode. Why? When I am in pose mode my feet armature looks like it needs some tweaking but when I go into edit mode it looks ok to me. Why is that? .Blend -----> https://pasteall.org/blend/42eadce5e53d48daa57d90a7e60fc83c
Pose Mode

Edit Mode

There are 2 reasons here why the bones position is not the same in Edit and Pose mode.
First off, you've moves the bones in Pose mode. To reset select all bones and press AltG (AltS and AltR to reset scale and rotation).
The second thing is that IK bones will always point towards their controller (i.e. their Target) as soon as you switch to Pose mode, you'll see what I mean. For example for the bone called Angle.L the target is the bone called Ankle_IK.L:

if you enable and disable the Ik constraints:

So if you don't want the IK bone to move when you switch into Pose mode, you need to correctly align its target in Edit mode (or align it to its target):

Note that as you have a chain of several IK bones you'll need to do it for all of them.


How can I use colours to separate texture node treatment? I'd like to do three things:

Make the Red area glossy
Make the Green area roughly diffuse
Make the Green area appear higher than/on top of the red area (bump height).

Basically I'm looking for a procedural/node technique I can use to treat areas separated by color (or alpha). In the pictured set-up I'm using red and green (as I thought splitting colors to RGB could be a solution), but I'd like the solution to be used with any colors required.
Any clues would be gratefully appreciated :)

With two different known colours you can use the Separate RGB node:

The R output of the node already give us a map of the red areas (full white=1)

You can use the mask both in a Bump Node and in a Mix Shader node.

If you would like to implement a similar process with every possible colour you can set up a Node tree capable of recognize where a given color is.

Basically you have to mask where the the color that correspond to the shader to mix is on the map by masking individually each component. Starting from the HUE values we check with math nodes where the subtraction gives almost = 0.

Than we can copy this node also for the Saturation and Value...ehm...values! By multiplying their output we are running an Logical AND operation, so at the and we'll have only the places where all three parameters have the same values.

By making a whole group of these operations you'll be able to match each colour to a shader simply by giving the color to pick:

Here's an example of usage with files made by an external application such as the SciFi Helmet by Michael Pavlovic. You can pick the colour from the Colour Id mask directly from the render preview.


How to set specific sample spacing (meters in between each pixel) for a Blender Cycles Render I'm trying to set the resolution sample spacing on my rendered images as the number of meters in between the center of each pixel using Cycles render engine. For the sake of the example, let's say I wanted to output images where the real distance between the center of each pixel was 0.4m. This is different than the Blender -> Sampling -> Render parameter because that parameter sets the number of light paths to be sampled per pixel, not relying on physical distance.
Does anyone know how I could use a combination of the Sampling parameter, height of the camera, measured distance of objects with known bounding boxes in the image, resolution (image size), or anything else to set this value?
Thank you so much for any help!

I'm assuming Metric is set as Unit System and Meters as Length in Scene Properties tab. If you're using any other unit, including those from Imperial system, simply convert the values calculated below as meters to the unit of your choice [Blender also operates on meters and converts them to other units if necessary ].
Using Orthographic camera, Blender takes the longer of the output dimensions and treats it as unit_scale * orthographic_scale meters. So increasing either Unit Scale or Orthographic Scale increases the area visible by the orthographic camera. Since Blender automatically scales objects when you change the Unit Scale, you can see the change by observing the grid in Top Orthographic View:

So for 200x100 dimensions, 1.0 unit scale, 1.0 orthographic scale, 200 pixels represent 1.0*1.0 = 1 meter and 1 pixel represents 1/200 = 0.005 meters or half a centimeter. For 100x500 dimensions, 2.0 unit scale, 2.0 orthographic scale, 500 pixels represent 2.0*2.0 = 4 meters and 1 pixel represents 4/500 = 0.008 m or 8 mm. Assuming square pixels here.
pixel_width = pixel_height = unit_scale * orthographic_scale / longer_output_dimension
You have output dimensions and target pixel dimensions (distance between centers of pixels), but you want to calculate the orthographic_scale, so you can multiply both sides of the equation by longer_output_dimension and then divide both sides by unit_scale to move them to the other side:
pixel_width * longer_output_dimension / unit_scale = orthographic_scale.
For 512x512 dimensions, 0.4 m pixel width and 1.0 unit scale:
orthographic_scale = 0.4 * 512 / 1.0 = 204.8.
Step by step example
Let's say we want to duplicate (yes, not delete) starting cube a few times and make sure cubes are aligned to pixels. Therefore, pixel dimensions should equal cube dimensions - 2 m, and axis-aligned distances between cubes have to be multiples of 2 m.

Press Numpad 7 for Top Orthographic View.
Select the cube. Press SHIFT + D to duplicate it, hold CTRL and position it. Repeat a few times.

Select the original (center) cube, press / to center view on it, then CTRL + ALT + Numpad 0 to set the camera to active view and / again to exit Local View.

Since each cube should correspond to one pixel, in this example we can fit everything in 5x5 dimensions, so let's set such dimensions in Output Properties tab
Press Numpad 0 for camera view, select the camera and in the Object Data Properties  tab change its type to Orthographic. Set the Orthographic Scale to 2 * 5 [2 m cube dimension times longer output dimension] - Blender will accept a simple expression like that.

As you can see, cubes are aligned to pixels.


Where are the Rigid Body Tools in Blender 2.8 I'm looking for the Rigid Body Tools that used to be accessible on the Tool Shelf in Blender up to 2.79. Since the removal of the shelf, I can't seem to find it in Blender 2.8 anymore. Here's the menu I'm looking for:

Where are these options hiding these days?

You can access through the horizontal menu bar > Object > Rigid Body. I don't know if there's another way.


How to assign FloatProperty, EnumProperty etc values through script I have been googling this and can't find an answer.
I defined a float property that creates a number spinner in my UI that allows me to move an object back and forth. I would like to clamp this value dynamically so I can't use the built-in FloatProperty clamp values. The code below should work, yet it seems to reset the value to the default value when it should get clamped.
def SetPos(self, context):
    self['left'] = Clamp(self['left'],0,1)

def register():
    bpy.types.Object.left = FloatProperty(name="left", default=0.34, unit="LENGTH", update=SetPos)

Another issue is that I don't see how to change an enumproperty through script. I can see in the python console it just assigns the string value to the prop like
bpy.context.object.myEnum = 'BLA'
but when I do an assignment like that myself, the UI does not update.

The update method will be invoked every time you try to modify the value of this property, like a callback function. The manual do warn about infinite loop when your update method constantly do something to props.
As your code, each time you update a new value, you set the value instead of check the value then set. So each time you invoke update method, blender will trigger another update function since you "set" value that is supervised by Blender system.
Not sure how to avoid this behavior but you might check the condition first then change the value:
def SetPos(self, context):
    if need_clamp(self['left']):
        self['left'] = Clamp(self['left'],0,1)
    # so next time this method will do nothing

Or just use setter and getter function:
Property Definitions (bpy.props) — Blender Python API


How to simulate reflection of people in a 4 meter parabolic mirror to show that they won't appear upside down? Answers to the Space Exploration SE question Which Apollo “mystery” was said to be finally solved by a better rendering engine? demonstrate that sometimes a correct rendering is the best way to address a problem.
A question I've recently asked in Astronomy SE Why are these telescope mirror makers not upside down? (Daniel K. Inouye Solar Telescope) can probably be quickly, convincingly and definitively addressed with a quick mock-up in Blender.
While I've used it in the past it's mostly from the Python scripting size, I have never developed any aptitude mousing my way around even though it looks easy.
So I thought I'd pose this as a related but different question here, and if answers here can also be used as guidance to how one might produce an answer to that question, all the better!
I will then give it a try myself, but I'll be slow and if someone beats me to it there, great!
The mirror in question has a diameter of 4 meters. It is f/2 meaning the focal length is $f=8$ meters, and Wikipedia tells us that the height of the mirror as a function of radius should be:
$$h_p(r) = \frac{r^2}{4f} $$
This can also be fairly well approximated with a sphere of radius $2f$ or 16 meters which can be generated in Blender without an equation, but just for completeness:
$$h_s(r) = 2f - \sqrt{4f^2 - r^2}$$
It's an off-axis paraboloid, but not very much off-axis; just enough so that the secondary is not directly intercepting the sunlight illuminating the primary, in order to reduce diffraction effects.
Question: Based on perspective cues and relative sizes in the image (e.g. handrail in front has larger apparent size than people's heads in back): How would one go about simulating the reflection of these people in a 4 meter parabolic mirror to show that they won't appear upside down?

The linked question in Astronomy SE:

The new open access Solar Physics article The Daniel K. Inouye Solar Telescope – Observatory Overview is the first of several papers about the new state-of-the-art solar observatory. For more info see Phys.org's Solar telescope releases first image of a sunspot
Figure 4 of the paper is shown below. It is the 4 meter primary mirror viewed at an oblique angle with several people in clean room garb standing behind it.
We can see their reflections in the mirror as well. The geometry is similar to people standing on the opposite side of a reflecting pool.
What struck me is that this differs in an important way; the people are not upside down!

Why not exactly?
Would the people see the camera upside down then?

It looks like the photo was taken from fairly close to the mirror based on the strong perspective scaling from foreground to background objects.

(Figure 4) The 4-meter primary mirror (M1) after coating at the AMOS coating facility on Haleakalā.

The mock-up works with Cycles ray-tracing, straightforwardly.
One approach .. You can create the parabolic surface directly, as ShiftA > Mesh > Math Function > Z Math Surface. Perhaps it's easier to extract the profile from a ZX function, curving in only one direction:

.. and having deleted all except the vertices: X>=0, Y=0, spin it with a Screw modifier.

Give the disc a 100% metal, pure White, 0 Roughness, mirror-surface.
The right-way-up virtual image is visible only from certain camera angles.. (if you play, you can see the hall-of-mirrors slide from wrong-way-up to right-way-up).

Maybe, for perfection, you could calculate the ideal normal of the mirror as a function of object-space XY, and plug that into the shader, to get rid of any artefacts resulting from the linear interpolation between vertices.. but for a demo, that doesn't seem to be necessary.


Dynamic Topology Very Slow I've been following this tutorial, and at about 22:45 he uses the grab brush to create the neck of our character.

At this point, using the grab brush brings Blender to an absolute crawl: it takes a second or two for the screen to redraw. Per the tutorial, I've been using dynamic topology; if I turn off dyntopo, speed returns to normal.

I understand that for a large enough mesh, dynamic topology will eventually slow down, but I thought this was at the millions of vertices point; my model only has 48K verts.

This is on a reasonably powerful computer (Xeon E5-2687W, dual 1080Ti video cards). It's running Linux (Ubuntu 18.04), and GPU acceleration for rendering works. This problem persists with Ubuntu's Blender packages, as well as the Thomas Schiex 2.79 and 2.80 packages.

How can I resolve this issue and get decent performance with dyntopo enabled?

I've made the file available here.

Update: I've been experimenting some more, and it seems that this is only a problem for the grab brush: the other brushes can all do dynamic topology without slowing down.

Update 2: actually, looking more closely, enabling dynamic topology for the grab brush doesn't seem to actually create any new topology. This screenshot shows the mesh after using the grab brush (with dyntopo enabled) to pull out the neck on my model:

Is the grab brush not supposed to create any new topology when dyntopo is enabled? Reading the manual, this might be what's going on. If that's the case, it seems like I can just disable dyntopo for the grab brush? How can I then create new topology on the parts of the mesh that I have moved with the grab brush?

Do you have active modifiers on the object? Some modifiers will recalculate on every mesh change that occurs during dynamic sculpting.


Is there a way to animate a spot light's SIZE and BLEND? I want to change a spot light's attributes over time: I want to change its "Spot Shape": including both Size and Blend. Is this possible? If so, HOW?

You can keyframe just about any property by hovering over it with your cursor and pressing I.

Just go to the frame where you want the animation to start, set the value you want it to start at, and hit I with your mouse over the property.  Then go the the frame where you want it to end and repeat the process with the ending value.


How do I connect vertices with a curve, then subdivide into more vertices that exactly match that curve? I have a shape that approximates a curve with a few line segments.  I'd like to make that higher resolution while maintaining the EXACT same curvature. The segments are different lengths, so if I just subdivide and push them out, I'll either be either eyeballing each one, or (if I select them all at once) they won't be moved out proportionally.

I'd like to take the guesswork out of it.  I was thinking that I could have Blender connect the existing vertices with a curve, then convert that curve back into line segments, and finally replace the original ones with the new ones.  Should I be writing a python script for this?

Note that the edge that I'm messing with is actually a complicated beveled edge across two meshes, but I'm hoping that a general solution to a simpler problem can be extended to the more complicated scenario.

So the above is me halfway through AC's method.  I don't know if this is the most efficient way, but I selected the edges I wanted, used P to make them a new object, did the modifier on the new object, then joined it back with the original without moving it.  I then connected the outlying vertices and so far so good.

Another glitch I noticed is that the vertices of the top and bottom of the bevel aren't aligned well.  But, this is a problem in the source mesh and not appropriate to include in this question.

You can apply a subdivision modifier to your mesh (You can also do that with a curve).

It will keep the same curvature.

You can also convert you mesh into a curve, change it the way you want, apply some subdivisions, and then reconvert that into a mesh.

Edit: You can increase the smooth value of the subdivision (on the left side, where you can set the number of subdivisions) or you can use the vertex smooth option in EditMode (on the same panel as before).

A.C


Can we render a sky layer with transparent layers? I am using a transparent alpha in the shading menu, while rendering my layers, so I can later composite them together.

Question is, is there something like a sky layer that would go on the bottom?

Possible fork of this question - 2. is there another way of compositing two layers on top of each other? Can I pull an alpha from a layer with the transparent option off?

The easiest solution to this is to do a third render without any visible objects and Alpha set to Sky in the shading properties in the render menu. Once that's done, alpha over your sky background just like you have done already between the two scenes.


Render vs Viewport render discrepancy I tried following this tutorial , but my render on the left isn't as whispy as the viewport render.  Is there a setting I'm missing?
https://youtu.be/EVj1fETtuN8

In your render the hair particles are not subdivided enough, check if these 2 settings match - first is for render, 2nd is for viewport:

Also in your render it seems there are more hairs rendered, that may be due to children particles and that only a percentage of them is displayed in viewport:

Lastly if you set the same amount of samples for viewport and render, you should get the same outcome:


Duplicating a group - (right now it just puts it as a sub group when you do) First you make a group from 3 items
When you select the "entire group"
When duplicating The following happens:

The items are not in a new Group.
I can understand that when you copy items inside a group.
That you want them to stay inside.
But would be good if you select entire group specifically.
That it copies it in its entirety.

Or am i missing something?

If not.

Is there a quicker way then instead of having to remove them first.
Then adding to a separate new one?
Gets very tedious after a while :P

After using Shift+D to duplicate the group it will indeed create those ugly copies. No, go to Objects > Group > Remove From All Groups. Then just regroup them.

All the objects of interest should've stayed selected.


How to smooth the face after boolean modifier applied? The face is not smooth out after I applied boolean modifier and after shade smooth.

The ngons create artifacts, try this solution (quads only):


How can I Z-combine multiple render layers I have a problem while compositing my render layers. There is a butterfly that goes through a jungle (images as plane). It appears on the foreground, and goes to the background followed by a camera.
So I created a render layer for the butterfly alone, and other render layers for the jungle in order to color grade elements separately.
The problem is that my butterfly moves in depth. I don't know what is the best way to composite my render layers ( I am new to compositing in blender).
I tried to do that with the Z-combine node but it gives me strange result, see the images below:

It may be the wrong method? What about masking the butterfly with the alpha channel of foreground render-layers? I don't know how to do that.

I think that I found out the solution. I thought that the order you plug render layers didn't matter, but I was wrong.

Here are two screenshots : one in the right order (foreground render to background render-layers)

Another in the wrong order (butterfly still plugged first, but followed by background render-layers and and at last foreground render layers).


Scaling Question On Blender 2.79b I just started learning Blender yesterday and I'm stuck in scaling. I was trying to recreate a tutorial by Blender Guru creating this coffee mug but early part i cannot do what he is doing.

While trying to scale the bottom of the cup, mine will constrain but Blender Guru's on scale sideways and do not constrain.

I'm finding it hard to expalin here so I put together a side-by-side video of my attempt and the original tutorial.

In this video, LEFT SIDE is my attemp and the RIGHT SIDE is Blender Guru
https://youtu.be/ATWzqG_Kf_k

Like Duarte posted in the comments it seems that your pivot point is off.In the video you posted it seems that your pivot point is set to 3D Cursor.

You can set your pivot point in the view port menu. In the tutorial you are doing the pivot point is set to Median Point.


how to repeat an object on a path? I am trying to model a wooden bench with planks.

The origin of the path and cube matches. I have applied the Rotation and Scale to the Cube.

I added a curve modifier and it works till now. But when I add array modifier to it, I don't get the effect. Here is a screenshot:

You should move your Array Modifier above your Curve Modifier, however, you also have the wrong option selected in the Array Modifier.

Your Array Modifier is set to "Object Offset" to calculate the array copies. As the curve and your array object share an origin, this makes no sense.

You need to untick "Object Offset" and tick "Relative offset" instead.

Then you can either manually set the number of array objects that you need or change "Fit Type" to fit to the length of the curve (a new box will appear allowing you to select your curve).


How can I constrain a bone to follow another bone from the same armature? here's my question, simply and straight:

How can I make a bone follow (location and rotation) another bone from the same armature? Imagine a character with hand resting over the hip, I need to move the hip bone, and make the hand follow it.

What I already tried:

Creating an empty, vertex parenting it in the hip's mesh, and from the hand bone create a CHILD OF constrain to the empty. Not working.
Creating two empties, vertex parented one to he hip, and one to he hand, and adding rotation and location constrains (because copy transforms constrain doesn't have OFFSET) and struggling with the local space and the offset to pose the hand. This kind of works, but it looks to me that there must be a simpler way, the struggle with the OFFSET and the local/ world/ wherever space is insane.

Any thoughts how to make it in a simple way? I'm coming from Maya, and I'm used to constrain between rig controllers all the time (controllers in Maya are nurbs curves, not shaped bones), so there is no trouble with the hierarchy as it is with Blender bones.

Please, let me know if you need additional explanation.

Thanks a lot!

Done! It turns out I was trying to add the constrains in the OBJECT CONSTRAINS tab, instead of BONE CONSTRAINS. I'm glad it way my fault because of my lack of experience with Blender.
Sorry for my ignorance and thanks for your help, you were right, you can make a bone child to another bone in the same armature with BONE CONSTRAINS! :)


What is this pattern at the bottom of the default cube? Start Blender, hit Tab to enter edit mode, orbit to see the underside of the starting cube. The bottom face is marked with a grey pattern, unlike all the other faces of the cube. What does this mean? I haven't seen this pattern in any images or videos in tutorials.

It is the 'active face', which is the face that was selected last.

This can be useful for actions like transforming, where if you change the 'Pivot Point' to 'Active Element' you can scale towards or away from the 'active face'.

'Vertex' and 'Edge' selection modes also have 'active' elements and will display the last selected element lighter than the others. Object mode also does this when you have multiple objects selected, which can be used to (among other things) copy settings from the active object to the other selected objects.


Export add-on error: rna_uiItemO: operator missing srna 'x.y' I have a Blender add-on working well to perform an export. I try to upgrade it to Blender 2.80. I fixed some problems (https://github.com/petitg1987/UrchinEngine/commit/a07e6390caa4b231a8c463fc6bb5661cd4f0e6a7#diff-54ba6c537268c77d122862a62df64238) but now I'm stuck on this error:

rna_uiItemO: operator missing srna 'export.urchin'
/home/greg/.config/blender/2.80/scripts/addons/io_export_urchin.py:741
Traceback (most recent call last):
  File "/usr/share/blender/scripts/modules/bpy_types.py", line 758, in draw_ls
    func(self, context)
  File "/home/greg/.config/blender/2.80/scripts/addons/io_export_urchin.py", line 741, in menuFunc
    self.layout.operator(ExportUrchin.bl_idname, text="Urchin Engine (.urchinMesh .urchinAnim)", icon='BLENDER').filepath = default_path
AttributeError: 'NoneType' object has no attribute 'filepath'

Here is the source code:

class ExportUrchin(bpy.types.Operator):
  """Export Urchin Engine (.urchinMesh .urchinAnim)"""
  bl_idname = "export.urchin"
  bl_label = 'Export Urchin Engine'

  exportModes = [("mesh & anim", "Mesh & Anim", "Export mesh and anim"),
                 ("anim only", "Anim only", "Export anim only"),
                 ("mesh only", "Mesh only", "Export mesh only")]

  filepath: bpy.props.StringProperty(subtype='FILE_PATH', name="File Path", description="File path for exporting", maxlen=1024, default="")
  exportMode: bpy.props.EnumProperty(name="Exports", items=exportModes, description="Choose export mode", default='mesh only')
  meshScale: bpy.props.FloatProperty(name="Scale", description="Scale all objects from world origin (0,0,0)", min=0.001, max=1000.0, default=1.0, precision=6)

  def execute(self, context):
    global scale
    scale = self.meshScale
    settings = urchinSettings(savePath=self.properties.filepath, exportMode=self.properties.exportMode)
    saveUrchin(settings)
    return {'FINISHED'}

  def invoke(self, context, event):
    context.window_manager.fileselect_add(self)
    return {"RUNNING_MODAL"}

def menuFunc(self, context):
  default_path = os.path.splitext(bpy.data.filepath)[0]
  self.layout.operator(ExportUrchin.bl_idname, text="Urchin Engine (.urchinMesh .urchinAnim)", icon='BLENDER').filepath = default_path #Line 741

Full source code: https://github.com/petitg1987/UrchinEngine/blob/master/3dEngine/io_export_urchin.py

Could you please help me to understand the error ?

The registration of the operator was broken. The bpy.utils.register_classes_factory() generates a register() and unregister() function for all supplied classes, but doesn't call them. There was also a , missing in the class tuple.

classes = (
    ExportUrchin,
)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    bpy.types.TOPBAR_MT_file_export.append(menuFunc)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    bpy.types.TOPBAR_MT_file_export.remove(menuFunc)


Why does my object become so rounded when adding a Subsurf modifier? So, I've got about... 2 hours of Blender Experience as of right now. I did try searching for the answer to my issue in a few different places, but I'm not totally sure I know what to look for.

This is my object:

And this is what happens when I apply the Subdivision Surface Modifier:

As you can see the lid becomes significantly more round. I know I'm doing something wrong, but I'm not sure what. Should the lid be a separate object? Or is the issue something else entirely? I apologize if this is a really stupid question.

There's a few different things you can do to fix this, and there's loads of tutorials about it.  I know Blender Guru has done one including the relevant info about subdivision modelling, but there's others as well.

Still, linking something isn't directly answering so I'll do that as well:

The problem here is a lack of controlling geometry.  The control mesh that the subsurface is generated of will tend to produce a very rounded subsurface whenever it has a sharp corner, and you can control that by adding extra geometry near the corners.  (Specifically you are constraining the size of the rounded corner by adding the extra supporting geometry - it's still there, just very small, effectively a bevel now instead of a huge rounded corner)

The first thing to do is add edge-loops, by default with ctrl + R in edit mode.  If you have the subdivision surface displaying in edit mode this is much easier.  Push an edge loop near the top of the bottle lid and it will look much much closer to the original.  The two downsides to this technique is that it adds geometry and it takes some manual work to put the loops where you need them, but the main advantage is you have perfect control over where that extra geometry goes and exactly how sharp each edge becomes.  In some cases Inset faces (I in edit mode) is also useful for this, especially with faces such as the top face on that mesh.

If you have a big mesh and want to automate more, you can use a bevel modifier with an angle limit before (above) the subdivision surface modifier, and this will effectively add edge-loops for you.  Keep the bevel low resolution as the subsurf will already be adding more geometry, but play with the offset to adjust the 'sharpness' of the result. This is a lot faster than adding loops manually, but you usually end up with even more added geometry, and you have less control over where exactly unless you fiddle with marking bevel weights and such and I usually find it's easier to just do it by hand at that point.

Lastly and almost least effectively in this particular case, you can use edge creasing (shift + E in edit mode with edges selected) to pull the subdivision surface closer to the control mesh - but this often fails with circular shapes such as the one you've got here, especially with ngons, and for this mesh I wouldn't recommend it.  It's a useful thing to practice with as it gives you better control over subdivision surfaces in general but there are some shapes it just won't help with much - experiment with it on this mesh and you'll probably find it's either not helpful or that your lid ends up looking weirdly polygonal.  If you ever do have to do this, removing the ngon and using grid fill or some other method for filling in the top will probably work better.

You can of course combine these methods, and often some combination will produce the 'best' result, though it's up to you to determine which set is worth the effort.


How to designate a viewport for one camera? If I have multiple cameras in a scene, I would like to choose a 3D view and dedicate a camera to it.

I would like a single 3D view when I choose camera view, Num+0, it will ignore my other camera selections and always show the view of 1 specific camera no matter what. Even if I use that 3D view for other view modes modes it will always come back to the same camera for camera view. Even when animating to switch cameras won't affect the 3D view. Like a monitor directly connected to that camera.

How do I set that up?

Blender only allows one active camera in a scene and numpad 0 moves the view to the active camera, so you can't setup a different camera view for each viewport.

You can setup as many viewports as you want and you don't have to be viewing from a camera in each viewport. Blender includes an addon called stored views which gives you a way to bookmark multiple viewport locations, this can provide an easy way to set a viewport back to a desired viewing location, similar to what you would get from a camera.


How are scripts from commandline executed to state it right away, I'm a complete beginner to scripting in blender.

I have a simple python script to change the text of a text element. The script works when run from the scripting tab in blender but does nothing in commandline.

content of the script is

import bpy

bpy.data.objects["custom_text"].data.body = "hello 123"

and invoke it on the commandline with

blender -b test.blend -f 1 --python ./test.py

but the text in the rendered file comes out unchanged. I have no idea what the problem is, does the selection of the object not work, is the script executed at the right time (before rendering), does the setting of the data not work, ...

The script is currently executed after rendering. The order of CLI command matters for Blender. If you put the --python flag before -f it should work as expected.


How do I UV unwrap and texture onion-like object? What would be the best method to UV unwrap and texture an onion-like object?

It doesn't have to be an onion specifically, it's just an example. I'm talking about all the objects that are spherical in shape and have distinctive parallel lines following the surface from one pole to the opposite pole, converging around both poles (like watemelons etc.).

I'm mostly interested with image-based texture solutions, not procedural ones.

The photo is Creative Commons licensed image taken by flickr.com/photos/user-colin/

You want to UV unwrap it such that you get a square/rectangular UV island. Then you can use an image texture that is setup for polar coordinates. The trick with a sphere is that you have to remove the single vertex at each pole to unrwap it properly.

Create sphere.
Delete vertices at each pole.
Set viewport to ortho mode and view the sphere directly (front or side, no angle).
Unwrap via sphere projection. Your UV island should be square.
Create a polar coordinate image texture (features run from top to bottom).
Apply to texture using UV coordinates. I've used a Texture Mapping node to increase the X scale so that it tiles more horizontally.


How do I set weight painting brushes to limit total vertex weight to 1? I'm using Blender 2.8!
I was wondering if there any way to set the weight brush so that if a bone controls a point (or group of points) with a strength of 1, it will automatically remove the strength influence on the point from other bones to 0?

In my line of work, no point should ever have a weight value more than 1. So things like two bones affecting a point with a strength of 1 should never happen.

I keep seeing this nightmare on tutorials where they have to guess which bone is affecting their vertexes and manually remove the influence from all other bones aside from the one they want to controlling the vertexes.

I was just wondering if there was another way.
Thank you so much for your time!

The auto-normalise setting in the brush menu will make it so the total weights on any vertex that you paint are adjusted to sum to 1. This has bee in blender for a long time, see https://docs.blender.org/manual/en/latest/sculpt_paint/painting/weight_paint/tools.html.

The menu options is here in 2.8:


How to make the camera follow an object's trajectory in 2.8? Hi everyone i'm trying to get my camera to follow an object, after looking at tutorials I've tried using the constraint "track to" however it only make the camera look at the object not move along with it.

Give your object a Copy Location constraint with your object as Target, click on the Offset option so that you can still move your camera the way you want.


Applying array modifier to multiple items I want to create a "wheel of fortune" type wheel.

To do this I created a single segment that could be shown multiple times. It consists of a slice, some edge poles and a text.

I then planned on duplicating this using the array modifier. In order to apply an array modifier to all of these things (to have multiple instances), I parented them to an empty.

I then thought I could apply the array modifier to the empty. But this does not seem to be possible. What am I thinking wrong?

Use the following settings for the Array modifier and be sure to add the empty for the Object Offset.  Note that the Modifier should be added to the object that is being duplicated and not the Empty.

Now rotate the Empty


Sculpting window is not displaying "zbrush style" shader? I am not seeing the brown (clay) shader in sculpt mode (blender 2.81). What am I missing?

you have to switch to matcap :

After you have to:


Imported object into unity lighting not working correctly So the jist of it is I'm trying to get a toon shader to work on imported object from blender, I get this terrible looking jagged lighting in unity.

( the left tombstone ignore the one on the right )And I dont think it is the shader because I will put the default surface shader in unity on the object with the same jagged result.

I've talked with both unity and blender people and haven't been able to resolve it. From what people tell me the normals are all correct on the model.

I've played with smoothing and auto smooth in blender but the top image is the best result I have gotten.

The import settings in unity dont seem to help much either. The top image set to the following import settings.

And setting the Normals to Import gives me this.

I dont know if this is the right place to post this but like I said I have a feeling (With my limited knowledge of unity and blender) that this is a blender/ import issue because the official unity surface shader gives the same result.

Any help, links or advice on how to get that jagged lighting to be smooth is greatly appreciated

Real-time lighting and toon shading are both very dependent on mesh geometry since smooth shading only applies to shading with vertex normals and not raytraced shadow calculation that only accounts for vertex positions. With toon shader you are going to need more subdivisions on curved surfaces.

So now you have a 180 degree arc expressed in 5 edges. Try making the arc with 9 or 19 subdivisions and you will see the quality improve.


UV flipping material I need a way  to flip the UVs in a material depending on the angle of the viewer.

I'm creating an NPR character that looks like this:

The eyes and mouth are textured billboards:

They look incorrect if viewed from the wrong side of the face:

I want the UVs to automatically flip when viewed from the left side.
I had some limited success by cross-multiplying the normal and view vector, but that works per-fragment, not affecting the object as a whole all at once:

I think to make this approach work I need both the angle of the view/camera, and the angle (world coordinates) of the mouth object. But I haven't been able to find a way to input them into the material nodes.

Any clues at all would be appreciated!

Here is what I came up with:

A bone, parented to the character's head bone, that points at the camera using the "Track to" bone constraint
A value input in the material node setup with a driver applied, driven by the rotation of the camera tracking bone
If the rotation of the camera tracking bone is negative, flip the UVs.

I use a "less than" node to threshold the value to 0 or 1 depending on if the rotation of the camera tracking bone is positive or negative (i.e. if the camera is viewing the left or right side of the face). Then the other math nodes change those thresholded values to either -1 or 1, which when multiplied with the x value of the UV input will either flip the UVs or do nothing.

I hope this crazy thing proves helpful to someone else!


Parenting with Automatic Weights- Bone Heat Weight Failure I am new to 3D. I cannot get the mesh to parent with the armature using automatic weights. I think that the problem might have to do with how I built the mesh. When I try to parent with automatic weights it tells me that there was a heat weight failure with one or more bones. Any help on how to fix the issues is greatly appreciated. Here is a link to the project.

https://www.dropbox.com/s/80qf74qspkzbjff/tripodV1B.blend?dl=0

The main cause of that error is when there are overlapping/duplicate vertices and/or intersecting parts.

I would suggest a couple of things.

First, your model has a huge number of faces. 287k faces for an object like that is quite a lot. The large number of faces is making it hard for blender to tell which vertex should be assigned to which bone. I would suggest making the model with way less faces and using a Subdivision Surface modifier to make it smooth. Unfortunately that would me remaking your model but it will save you countless headaches in the future. Using the decimate modifier set to unsubdivide with 6 iterations can do most of the work for you, but it doesn't seem to work on the legs very well.

Second, automatic weights is not going to be the best way to rig your tripod. Your tripod is made of a number of segments and each segment looks like it should be parented to a single bone. Automatic weights will assign each vertex to the nearest bone(s) and thus you will have multiple bones controlling each segment and the segments will bend and deform. Instead, I would suggest parenting with empty groups and manually selecting each section of the tripod in edit mode and assigning it to the appropriate vertex group. Hovering your mouse over a vertex and pressing L will select everything connected to what is under your mouse which will save you time selecting each section.


How can I copy soft-body settings to other objects? I am trying have 400 flower petals to float and fall delicately to the ground. After getting unsatisfactory results with particles and so I am trying with soft bodies. I cannot find a way to copy all the settings from a master pestle to the other pestles. I also want to add a force field to each pestle which I also cannot not copy to the other pestles.

I have tried the copy addon but it only copies  certain modifier settings and not force fields settings etc. I have no idea how to write a python script and to be honest, it strikes me that a simple thing like copying settings should be a basic tool. On the other hand, maybe my method is all wrong and i can do it another way.

When I look at the tools in the physics panel, they work very seperately and I presume that under hood they are very seperate. This is a real shame as it limits dramatically what can be done beyond quite simple effects. I wonder if anyone has looked into moving the physics panel to a nodal based system (only a neophyte like me can suggest such an idea). Also the outliner is really limited in managing elements. it would great to be able to delete modifiers from multiple objects in one go. For the moment I cannot find a way to do that either.

Any thoughts are most welcome.

Despite the settings being presented as a unified collection, there is some inconsistency within the physics settings. The force field, collision and rigid body settings adjust object properties, while the others are modifier properties. While the distinction may seem small it alters the location of settings when trying to access them from python.

If we set obj = bpy.context.active_object then

# force field settings -
obj.field.strength = 1.4
# collision settings
obj.collision.stickiness = 0.4

While modifier properties belong inside the modifier settings data -

# cloth
obj.modifiers["Cloth"].settings.mass = 0.4
# soft body
obj.modifiers["Softbody"].settings.friction = 0.6

We can create a short script to copy the soft body settings from the active object to selected objects.

import bpy

"""
Copy soft body settings from active object to selected objects
"""

srcSoftBody = bpy.context.active_object.modifiers['Softbody']

def mod_copy(source, target):
    for attr in dir(source):
        if attr == 'effector_weights':
            mod_copy(source.effector_weights,target.effector_weights)
        elif not attr.startswith('__'):
            try:
                setattr(target, attr, getattr(source, attr))
            except:
                pass

for obj in bpy.context.selected_objects:
    if obj is not srcobj:
        mod_copy(srcSoftBody.settings,obj.modifiers['Softbody'].settings)

With some small adjustment this could be adapted to be used for other physics settings. While fluid and cloth should work with adjusting the modifier name, smoke and dynamic paint have settings in multiple groups, eg instead of settings smoke uses domain_settings, flow_settings, and coll_settings


Several Missing Tools I seem to be missing several tools in Blender 2.62, or at least I'm not able to get to them the way the manual says they should be accessed. For example:

According to the Help file, the Bevel Tool is supposed to be accessible either with the Hotkey of CTRL-B or W > Bevel, or from Mesh > Edge > Bevel while in Editing mode, but it's not there. Nor am I able to access the Knife tool.

Any ideas where they've gone?

The knife tool is in 2.62, however it's nothing like the modern knife tool. It was rewritten into it's modern form in 2.63 with the introduction of bmesh.

The Bevel tool was also added in 2.63, after being missing since 2.5x.

However both these tools (and many others) have been improved enormously since then, so I highly recommend updating to the latest version.


Can't fully rotate object with quarternion rotation enabled In the process of animating, I have come to realise that my rig is doing a strange twirl, which isn't desired.

It's very easy to emulate, simply open a new file and set the cube's rotation setting to Quarternion, and then keyframe it at it's base position, and then keyframe it 360 degrees around any axis. When you hit play, it doesn't rotate.

EDIT:

Thanks to FFeller for pointing the idea of intermediate keyframes, which solve the problem on the basic cube, but on my rig, which was generated by rigify, it still applies. It seems eerily similar to a gimbal lock problem, but aren't Quarternions supposed to solve that problem?

As such, how can I solve this problem, as more intermediate keyframes don't seem to work.

Quaternions are only in the range of -1 to 1, and so 0 and 360 (and 720 and 1080 etc.) are basically identical.  That's why the cube doesn't rotate, because it has nowhere to go.

Quaternions also generally take the shortest path. That's why you need multiple keyframes. The algorithm might be deciding that it's quicker to go back the way you came vs. go forward, which gives you undesirable rotations.  More keyframes should solve it.


Laser beam through fog I am modeling a laser light in Blender, but I am not sure how to get the results i wish to have. The result should look like the Picture:

http://www.marthagarzon.com/contemporary_art/wp-content/uploads/2010/02/mccall6.jpg

Use an image as the texture for a lamp. (See Avoid distortions when creating projector effect)

and add volume scatter to the world (or create a mesh around the scene as voume scatter domain) so that the beam becomes visible.

Click on the image to enlarge.

More info on volumetric lights and scatterning here and here


Warning: 'CLASS_NAME' doesn't have upper case alpha-numeric prefix I always get the following error

Warning: 'ABC_Fbx_PT_Panel' doesn't have upper case alpha-numeric prefix

But I don't really get why...
That is my code:
import bpy
from bpy_extras.io_utils import ExportHelper
from bpy.props import (StringProperty, CollectionProperty,)
from bpy.types import (Operator, OperatorFileListElement,)

class WorldOriginExport(Operator, ExportHelper):
    bl_label = 'Export'
    bl_idname = 'test.world_origin_export'
    bl_options = {'PRESET', 'UNDO', 'REGISTER'}
    files = CollectionProperty(name = 'File Path', type = OperatorFileListElement,)
    directory = StringProperty(subtype = 'DIR_PATH',)
    filename_ext = ''

    def draw(self, context):
        layout = self.layout
        layout.use_property_split = False
        layout.use_property_decorate = False  # No animation.
        sfile = context.space_data
        operator = sfile.active_operator

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

class ABC_Gltf_PT_Panel(bpy.types.Panel):
    bl_space_type = 'FILE_BROWSER'
    bl_region_type = 'TOOL_PROPS'
    bl_label = 'glTF Embedded / Separate'
    bl_options = {'DEFAULT_CLOSED'}

    def draw(self, context):
        layout = self.layout
        layout.use_property_split = True
        sfile = context.space_data
        operator = sfile.active_operator

    @classmethod
    def poll(cls, context):
        sfile = context.space_data
        operator = sfile.active_operator
        return operator.bl_idname == "TEST_OT_world_origin_export"

class ABC_Fbx_PT_Panel(bpy.types.Panel):
    bl_space_type = 'FILE_BROWSER'
    bl_region_type = 'TOOL_PROPS'
    bl_label = 'FBX'
    bl_options = {'DEFAULT_CLOSED'}

    def draw(self, context):
        layout = self.layout
        layout.use_property_split = True
        layout.use_property_decorate = False  # No animation.
        sfile = context.space_data
        operator = sfile.active_operator

        if operator.fileType == 'GLTF_SEPARATE':
            layout.enabled = False
        elif operator.fileType == 'GLTF_EMBEDDED':
            layout.enabled = False
        else:
            layout.enabled = True

    @classmethod
    def poll(cls, context):
        sfile = context.space_data
        operator = sfile.active_operator
        return operator.bl_idname == "TEST_OT_world_origin_export"

def register():
    bpy.utils.register_class(WorldOriginExport)
    bpy.utils.register_class(ABC_Gltf_PT_Panel)
    bpy.utils.register_class(ABC_Fbx_PT_Panel)

def unregister():
    bpy.utils.unregister_class(ABC_Fbx_PT_Panel)
    bpy.utils.unregister_class(ABC_Gltf_PT_Panel)
    bpy.utils.unregister_class(WorldOriginExport)

if __name__ == '__main__':
    register()
    bpy.ops.test.world_origin_export('INVOKE_DEFAULT')

The part before _PT_ must be uppercase alphanumeric to suppress the message (no special characters).  You can use whatever for the part after it though.
You could rename your classes to :
ABC_PT_Gltf and ABC_PT_Fbx. The _PT_ part means it is a panel class so there is no need to write it again afterwards in my opinion.


How can I simulate blocky smoke? I'm trying to make an animation of blocky smoke, as if simulated in a grid like cube pattern, so when looking at it, it would look as if it was made out of smooth, cubic, Legos or, Minecraft blocks.

I'm using 2.79.

There is a way, but it's rather complicated and it's not based on the smoke simulation engine, therefore it's also inaccurate... But I'll show it anyway :)

Create a particle system on your emitter

First of all, apply rotation and scale to your emitter (Ctrl+A), then add a particle system to it.

Particle systems, especially of the fluid type, are VERY sensible to their parameters, so you'll have to go through trial and errors by yourself. For an object the size of the default Monkey, these values work well (pay attention to the highlighted ones!):

If you need deflectors, use objects with Physics > Collision (give them some Damping, like 0.8).

Try the different parameters and play the animation until you're happy with how the smoke particle spread. At this point, bake the Particle Cache.

Create a cube for visualization

We won't render the particle system. Instead, we will use the density of the particles as an input for a volumetric cube.

The trick is all done in the cube material. It first divides the world in blocks; then it checks, for each block, the local density of particles. It uses this density information to choose the opacity of the volumetric shader.

Here are the nodes:

The blend file

Is for Blender 2.81. You won't be able to open it with 2.79. The instructions, however, should work well regardless.


How to turn off pressure sensitivity for grease pencil with a tablet? How to turn off pressure sensitivity for grease pencil with a tablet?

For Wacom tablets (I don't know about others) you can set pressure sensitivity at OS level using the control panel (not blender's user preferences). You can customize the behaviour for different applications, so you can have blender have specific settings to your particular needs.


Make Camera System Look at Empty I have a camera System that is supposed to look at the empty in my scene. It should only move, not rotate. It should rotate in two parts. One, the actual sensor body and the other, mount plate. Rotating these two parts the camera should be pointing straight at the object. I assume this should be done using constraints.

blend file

This is exactly what the Locked Track constraint is for.

First you need to set up your camera objects. Parent the lens to the mount. Then the mount to the base. This hierarchy will enable you to get the motion you are looking for in all the pieces.

Add a Locked Track constraint to the lens object.  Notice the axis the lens is pointing on (you may want to turn on axis display in the object tab of the properties window) in my example it is looking down the Y axis. So it is tracking along the Y, and rotation is locked to only the X axis.

Add another Locked Track constraint, this time to the mount object. It has similar settings, except that the rotation is locked to only the Z axis.

Blend File

As a bonus step add a Limit Rotation constraint to the lens object, to stop it from rotating through the base. If your camera is looking along the same axis as mine, then you only need to limit the X axis.


Subdivision surface modifier issue I'm following Blender guru's Anvil tutorial. After using Boolean I cleaned up the extra vertices. Edge flow looks fine on my mesh.

However, when I apply a Subdivision Surface modifier my mesh becomes really messy as if something is wrong with the edge flow.

Can you guys help spot the problem?

Mesh topology:

Subdivision issue:

Even though your edge flow looks good from the side, the base of your mesh is apparently made by a single big N-gon.

Compare the subdivision of a quad base vs a n-gon base:

You should remove your base face and replace it with carefully created quadrilaterals.