text:
Is there a way to know exactly how much time does it take to apply compositing nodes to each frame?
Is there any kind of add-on or method that calculates the delay of every compositing process? It'd be love to know how much time does it take to apply every node so, e.g you can decide whether it's a good idea to defocus in compositing or via depth of field. Thank you.

Hard to tell, it depends on so many factors likely the size of the image and the capabilities of your particluar hardware. Measure the time yourself.

@susu I know, but I'm talking about the time when it's already rendered. I mean the difference total time - render time = compositing time. Thank you so much for taking your time to awnser me :)

There are certain processes that are computationally more intensive than others, like blurs (blur, glow, defocus, motion blur, etc). But I believe the question should not be about time, but about the results you are after. Using depth of field in the camera yields a very different result than defocusing on the compositor.


text:
How to close windows on the interface?
I have never used blender before, and I don't know how to control the windows on the interface.

Ahah you are dragging the corners of the panels, actually increasing their number.
Quick dirty mode: see that long row of tabs up in the screen? Click one of those and you will have a cleaner view.
But you should learn to manage panels: so to remove panels, just click a corner again, one in between two panels that you want to unify, and move the mouse on the panel that you want to REMOVE. The other panel will take its place, and you will have one panel less.
Do this with all the panels that you don't want.
All those horizontal panels down there at the bottom of the GUI can be removed this way.
You have also activated the QUAD VIEW in the topmost panel. To deactivate it, go with the mouse cursor over that panel and press CTRL + ALT + Q.

Viewports can be legitimately frustrating.
If you just want to go back to default you can click this button:

Add a new workspace of the same type you were using, and delete the old one.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
Mesh shows up correctly in object mode but not in render view
I have a mesh that shows up correctly in object mode but not in render view. Here are some pictures:
This is in rendered mode and as you can see there is weird indentations.
This is the image in object mode (what I want it to look like):

I was thinking it could be the mesh has points extruded out a bit more than others but I checked and they were all level. So I was wondering what could be wrong. This is a picture of the mesh:

I notice that not all faces are quadrilaterals could that be the reason? If not how can I fix this?
Thanks!

It is possible that some of the normals are flipped. In edit mode press alt N to recalculate normals outside.

I tried that sadly it didn't work

Does object have any modifiers set to different values for rendering and preview? Or turned off for viewport but being on for render? Is there any object overlapping the shown one?

It is hard to help when you cut the images so tight. Are there other objects or collections that are hidden in the outliner?

The white dots make me think this is harware related, do you have an AMD graphics card ?

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Using sensor data as alternative for Motion tracking
I am not really sure, if am right here, but maybe you can help me out.
I am curious to know if there is a way, e.g. a smartphone app which tracks various sensor data while filming, so one can use them later on in order to create a 3D path in Blender or similar programs. That path could then be used for the virtual camera.
There should be enough gyroscopic data and acceleration data etc. to create such a path.
In theory this should greatly reduce the effort needed to create accurate motion tracking for visual effects.
Is there anything already out there for smartphones or potentially any tools for professional environments?

While this sort of a concept is a seductive idea, it has yet to see practical CGI usage. The reasons are complex, but in essence, as with the seductive ideas for keying, sub-pixels will always resist your effort like guerrilla warriors.
That is, the margins for error of data are so small, so thin, so slight, that capturing spatial data will always slip, slide, judder, or other such things because the image is never quite 1:1 with the data.
To practically achieve these sorts of things, several witness cameras tracking camera position can be combined with scanned / surveyed set positions, 3D point cloud scans, and footage tracking / bundling, etc. Accumulating camera data could be used as aids in this, but never a sole source of camera positioning.

(sorry for the link only answer...)
It is possible, but there is no "out of the box" solution for it at this point, but with clever coding, the motion data of a phone can be used to feed transformations into blender.

Read all about it in the following link:
https://medium.com/@JohnCoatesDev/visualizing-an-ios-device-in-blender-through-quantum-entanglement-ba8b6f0b47a5

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Rigid Body on falling Clock animation
I can't find any reference for creating this:

It works quite hard using chain & Rigid Body and it's done, but the rotated clock needle during clock is falling it's always failure.
I've used Connect/Rigid Body Constraint for a clock with the needle, but it doesn't stay as the normal. Should we always attach whatever the falling clock object & the needle also rotating clockwise?

tbh I didn't get much of your question... it seems you have a falling clock as rigid body, and some troubles on movement of the clock's needle...?

yes .. the clock needle should be attach but it cannot


text:
Crumpled Paper Cycles Texture
I'm trying create a crumpled paper material in Blender Internal. It's pretty easy, here's my result just using Voronoi texture with little setting:

But when I've moved to Cycles, it is not getting close in material nodes using Voronoi, Noise & Musgrave textures.
Just give me little step to make this crumpled paper in Cycles, I'll do the rest...
What I needed exactly:

i'm trying using material nodes add voronoi, noise textures, and musgrave but it's more like rock

Before anything else, subdivide your mesh into four even squares. Use the loop cut for this. Then subdivide the mesh 2 or 3 times (not with subsurf modifier).
Use the texture as a bump map for the tiny details.

Follow the order of modifiers and settings.
This will make big wavy displacement,then subdivide for more polys and then triangulate.

Make sure the displacement also uses the texture.

This is the main concept. You'll have to search the methods of displacement and bump maps in detail to get perfect results.

Why are your SubSurf and your Triangulate Modifiers below your Displacement? They have no purpose that way. Also, I'm sure you can find a better texture than one with watermarks.

Please conduct the experiment before making these conclusions that mislead other readers. The displacement needs to be on top so that it can create the waves of the paper. If the displacement goes below the subfurf, it will displace the subsurf mesh as well, creating a mess.The triangulate can go below or above subsurf depending on art direction.

And I used the texture posted above for clarity.

Sorry for not being clearer. I am confused with the Displacement Modifier being above the SubSurf, since a texture with the detail you are using won't really do anything to a mesh with only four faces.  I am confused with your Triangulate Modifier being below your SubSurf Modifier, since there is nothing further being done to the mesh. The triangles the modifier creates won't be seen; they'll just be in co-planar pairs and look like quads.

Ah, yes. I'm sorry. I failed to add that after I made four faces, i subdivided the mesh 2 or 3 times. I will make the edit.

What about the Triangulate Modifier?

To make smaller triangles. If it goes above subsurf, the triangles will be coarse.

The mesh is already triangulated before render...

You have to do it to understand what I mean. I'm moving the modifiers as we speak and they do create different effects.

I have done it. I'm not denying that it creates a different effect, it just seems redundant.


text:
How to make a sun in Blender?
How do I make a nice sun in Blender? I am not looking to change a lamp into the sun, I am looking for an actual sun that can be seen in my scene.
Back in high school, I had a project on making a sun but I forgot how it's done. Blender has had a dramatic change since then anyway so any help on making a sun in blender would be nice thank you.
Also, if there are different processes to doing this in Blender render vs Blender Cycles please, I would appreciate both ways explained.

I am Talking about a sun in a scene say like a sky and some ground and a sun in the sky in daytime. i hope  this helps

have you a link to any reference image for your particular case? that would help anyone to find a better hint...

I have one from highschool but its not that great ill get it

I would simply  use an HDRI image because it is the most realistic, though they don't allow you to reposition the sun.

After a bit of research and tweaking I came up with a simple answer to my own question using the blender internal render.
I used a UV sphere and change the materials a bit to create a good looking sun for my scene.
The material settings for my sun are outlined in red below:

Here's an alternate approach that uses makes use of some simple texture gradients for a procedural sky in the world texture. The "sun disk" part is what you're interested in here. This takes advantage of additive color mixing and color ramp gradients. It takes a bit of tweaking to get right, but has some potential. Since the sun disk size can be tricky to get right, it may be improved by adding a math node to it between the gradient and color ramp to improve the fall-off control. (Perhaps multiply or power?)


text:
Object looks different when rendering in Cycles
The object doesn't have any texture, only with color.
I changed it to Cycles and it looks like the following picture.
I have many objects and some appear this problem.

What is wrong with this apple?

Did you change it to cycles after setting materials in blender render?

I had change it.

It looks like there are two apples in each others with different materials. Check the outliner.


text:
Could not create a merge face
As shown in the picture, I've selected five vertices and pressed the F key. But every time I do this, Blender always said "Could not create a merge face."

Maybe that edge in the middle of your vertices is causing that issue...

You must create faces separately.

This should work... but 5 vertices? There are apparently only 4 bounding the visible triangles.. remove doubles?

Another way to merge two triangles into a quad is with Alt-J. Does that work?

You have two faces already.
You cannot create a face from that faces using  F .
I tried to dissolve the edge but no luck.
My solution:
Subdivide that edge and delete the vertex.
See the image below:

Try going to edge select and select the edges then press F


text:
How can I align the 3D cursor to a face / polygon with python
I'm currently trying to align the 3D Cursor to a face / polygon with python on Blender 2.8, to snap one object on the surface, but I don't know how can I achieve that, currently I'm using this as a test with the default cube, but it doesn't work as I expected:
import bpy
from bpy import context

scene= context.scene

obj = bpy.context.active_object
face = obj.data.polygons[0]

scene.cursor.location = face.normal
scene.cursor.rotation_euler = face.normal

rot = context.scene.cursor.rotation_euler.copy()
loc = context.scene.cursor.location.copy()

bpy.ops.mesh.primitive_plane_add(location=loc, rotation= rot)

Yes, I know, I can do this with the Blender's snapping functions, but I would like to know how can achieve this with Python.
Hopefully, could someone please bring me some help?
Thank you so much!

So, an important thing to know here is that a normal is only a vector, so it, in a way, represents a single axis of the rotation. The script below pretty much guesses an x and y heading and uses the z direction as the up axis for the cursor. Here, I'm finding the location and normal of the selected face and assigning it to the location and up axis of the cursor. I've simplified this script a lot. It doesn't use the bmesh data, which means you may need to make your face selection in edit mode, and switch back to object mode and then back into edit mode before you run the script.

import bpy
import mathutils

C = bpy.context
cursor = C.scene.cursor
obj = C.active_object
p = obj.data.polygons

#get the normal and center of the selected face
normal = obj.data.polygons[p.active].normal
center = obj.data.polygons[p.active].center

#generate a quaternion rotation from the normal vector
up = normal.to_track_quat('X', 'Y')

#set the cursor to the center location and rotate it to match the up vector
cursor.location = center
cursor.rotation_quaternion = up

And then back in object mode again carry on with getting the cursor location and rotation and creating the primative like in your example above:
#get the object world matrix
mat = obj.matrix_world

#generate the location and rotation
rot = cursor.rotation_euler.copy()
loc = mat @ cursor.location.copy()

bpy.ops.object.mode_set(mode='OBJECT')
bpy.ops.mesh.primitive_plane_add(location = loc, rotation = rot)

You have to get the object world matrix and use it to offset the center location because any vertex, edge, or face location will be based on a distance from the object center, not the world center. Of course, you don't have to use the cursor as a step in between and can just apply the rotation and location of the face directly using:
rot = up
loc = mat @ center

I think this works, but you should make it clear that the Cursor's rotation has to be in Quaternion mode

Similarly,
Had already put this together re, recent dupe to this question.
Differs in that it uses live edit bmesh for getting the active face, and also atm it appears that setting the cursor matrix has no effect.
import bpy
import bmesh
from mathutils import Vector, Matrix

context = bpy.context
scene = context.scene
cursor = scene.cursor
ob = context.edit_object
mw = ob.matrix_world

me = ob.data
bm = bmesh.from_edit_mesh(me)

f = bm.select_history.active
o = mw @ f.calc_center_median()
f.normal_update()
norm = (o + mw @ f.normal) - o

q = norm.to_track_quat('Z', 'Y')

M = q.to_matrix().to_4x4()
M.translation = o
cursor.matrix = M # does not work!! bummer

cursor.location = o
if cursor.rotation_mode == 'QUATERNION':
    cursor.rotation_quaternion = q
elif cursor.rotation_mode == 'AXIS_ANGLE':
    cursor.rotation_axis_angle = q.to_axis_angle()
else:
    cursor.rotation_euler = q.to_euler(cursor.rotation_mode)

Related:
On aligning the to the tangent to emulate NORMAL transform axis display
Align to face normal vector
Python: vertex normal according to World

I tried your version but it does not seem to aling to the normals properly, please see the image https://imgur.com/qBoWJ6A.png


text:
Cloth animation weird shelf
The top has been pinned and cannot move. From where does this shelf at the top of the skirt come from? I guess there is some form of repulsive force. How can I reduce it? Repel is set to 0. The shell remains throughout the entire animation.
EDIT: the effect remains even if I increase the mass to 10. The skirt does not fall over, so down is down.

Just a wild guess. If the body underneath is set to collision, the outer face thickness (margin) might be too high so the cloth vertices are pushed away. You would need to play with the collision settings of the underlying object or smooth the pinning weights. Cloth settings depend on the scale of the objects, so its hard to say without blend file.

1 blender unit = 1 m. The doll is 1.36 m exported from MakeHuman

Tried to play with the face thickness of the underlying body?

I changed the cloth collision parameters on the collision object that the cloth collides with from 0.008 and 0.003 to 0.002 and 0.001.

This solved the problem.

What parameters did you change? Your answer is getting flagged because it's a little short. If you could add some more detail that would be great :)

@CharlesL See the suggestion by user2859

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Timeline Jump Distance Change
Pressing Shift+Up arrow/Down arrow causes marker to move 10 frames in a given direction. This being in the timeline that is.
What I'd like to have it do is jump 12 frames to accommodate half second intervals.
Attempting to keep robust animations.

In User Preferences (Ctrl+Alt+U), go to the Input section. In the search field on the right, search for shift up arrow (be sure to set your Filter Type from Name to Key Binding). You'll find the binding for the Frame Offset operator. If you expand the operator, you should see a Delta setting in the lower right. It's default value is 10. You can change it to 12 (or whatever other value you want).

Oh, just saw this answer.  I guessed I missed it while writing mine, sorry!

Go to Blender's User Preferences by going to File -> User Preferences:

And now search for "frame" in the search bar.  The first two results will be "Frame Offset".  You can adjust the "Delta" value (the change that it applies) to the desired amount.  In your case, 12.

This also works for other values, such as the left and right arrow keys, should you wish to adjust them.


text:
Export a smoke simulation as a mesh
Please help me.... I am trying to export a smoke simulation as a mesh (I mean the smoke 3D volume) for 3D printing it! I cant find how to do that anywhere, does anyone know?
Thanks a lot! Sorry if it is unclear. It is hard to explain.
Emiliano

Smoke has no surface, so there is no definite way to make a mesh out of it. The only thing you might be able to do is to implement a marching cubes algorithm and export an isosurface.

Even if you could export the smoke, how the heck would you expect to 3D print it?

@Keavon I'm not sure I understand . . . If it's a mesh, couldn't you just print it like any other mesh?

@gandalf3 Smoke is not a solid object how would you print it?

@Qwertieϟ Isn't that the question? How to convert smoke to a mesh?

It seems to be possible.. See http://wiki.blender.org/index.php/User:Phonybone/Archive/Fire_simulation/tutorial

There's not an easy way to convert a smoke simulation into a mesh; not in Blender at least. I would suggest a different tactic.
Instead of using the smoke simulator, use the fluid simulator. They both use the same basic algorithm. You'll need to toy with the inflow, gravity, and initial force settings. The main difference is that the fluid simulator doesn't deal with turbulence and heat like the smoke simulator does; you'll need to fake it a bit. However the fluid simulator does generate a sequences of meshes as its output. Any of those meshes (stored as .bobz files on your hard drive) can be converted to a "proper mesh" that you can edit and ultimately export as an STL for printing.

Ok I'm late but I was wondering the exact same thing but not to 3D print it.
My idea was to make a nebulae (so a still smoke anim).
And I wanted to make it a 3D mesh with a volume shader to orbit around it without huge render times, since nebulaes don't move or evolve in realtime at least.
By reading the last answer I just came up with and alternative idea to test to make smoke a 3D mesh in Blender :

Make a smoke sim
Set up a Particle Flow field
Set up a Particle system with a decent/BIG amount of particles to "replace" the smoke voxel volume by particles driven by the flow field to get the same shape
Use the CubeSurfer Molecular Addon to mesh the particles, play with the 2 settings to get a good particle size/overall shape conservation ratio. We theoretically don't care if our computer suffers during that process since the goal is to get a model which will render fast, not an animation except for the camera by example.
Once we get a sort of "meshed-particles-smoked-shaped type of mesh" of a 3D flowing smoke we're pretty much good to go. But the material is not there yet (in my case maybe a point density or tweaked volume shader) but the problem remains. If it's for 3D printing now we are going to have all the particles as a single meshes which are actually overlapping and you don't want your 3D printer to print inner, useless, thousands of spherical meshes, it is a Waste of time and money.
Now everything must be baked if haven't already. I've never frozen a smoke sim but I've already seen it on YT and it must not be hard to find out.
Either way in our case we might just go on a still frame and start RETOPO some smoke (the cubesurfer meshing)!
Print or setup a cool volumetric nebulae shader

Note: All of this is just an idea that I got by reading this topic so I had to write it somewhere, still have to test it though.

Could you post some screenshots of the process and end results you got? Theoretical only solutions aren't very helpful for future users and hard to follow. Please try to use proper spacing for your future answers so they are easier to read.

I knew while writting that i wouldn't have the time to test it right now that's why i just wrote my idea. When i'll test it, i will put screenshots.Thanks for the corrections! I actually wrote it the way you corrected it but the comment got send that way and this is my first comment i created my account today to answer this topic.

Welcome aboard then, looking forward to your future contributions. Be sure to go through our help center to get a general idea of the site rules and workings. When you update your answer, remember to poke me so we can upvote it and you gain your due credit.


text:
How can I make this render more realistic
I'm having this project with a company that I have to make an animation for them, I've started learning Blender for this project and I'm still consider myself very noob in Blender, specially in terms of texturing and UV mapping.
I've rendered this shot just now, and I still think it's not exactly what I wanted.
Note 1: I'm using texture and bump for the ocean because the Blender ocean simulator is just killing RAM, and I can't get it done for the big scale ocean like this, is there anyway (or other ways) to make the ocean look real?

I have an underwater scene which I don't exactly know how i should make it look real, but I'm still trying. I'm having a very hard time getting the volume texture for underwater scene!

The other issue I have is the boat trails, currently I'm using an static image that looks like a trail, but it's an animation and the trail is static which makes no sense. What are the other options to create this trail?

I accept any comments, suggestions & criticism so please shoot!

You should put this on Blender Artist under "Focused Critiques" thread..

thanks @Jerryno i've just submitted it to blender artist, it's not showing yet , i think it has to be moderated

Yep I think if you are new there first 3 post have to be moderated then it works normally..

As @Jerryno said, this is a better fit for BA because it could be considered off topic here, as it is kind of opinion based or even to narrow. We prefer that questions on this site are objective and have a definitive answers, because it works better with the SE format.

Welcome to the site :) I think these can be formatted as valid questions, especially as you tried things out first :) But on this site we try to keep to one question per post. Try splitting your post up into separate questions (e.g. "how to get a realistic underwater volume shader" etc.). Also some of your questions might already have answers, or at least tips in the right direction.  See http://blender.stackexchange.com/q/26596/599, http://blender.stackexchange.com/q/3223/599, and http://blender.stackexchange.com/q/17787/599.


text:
Visual artifacts when seeing an object form afar in Edit Mode
I'm trying to model a double sided cabinet using metric units (if thats helpful) and I'm seeing both inside and outside faces without enabling wireframe mode or something like this. Does anyone know how I can avoid those artifacts? The problem appears only when I am relatively far from the object(but not so far) and only in edit mode and while using orthographic view.

Those generally aren't related to metric or whatever unit system, it's known as z-fighting because of too big difference in the  clipping values. See https://blender.stackexchange.com/questions/1385/shadows-along-edges-of-mesh-in-3d-view

Did you check clipping? https://blender.stackexchange.com/q/1385/26720

Thanks that was it. I had something like 10cm lowest and 100m highest as my clipping values


text:
Bake texture to another object
Not sure if this is possible, but I got a one object A, that is nice textured.
Another object had to be made, but it's a slightly different mesh, not that much though. (a few more edges, and vertices different bones, etc...) overall they look quite the same though. I cannot make the UV unwrap the same for object B.
And now, I wonder is it possible to bake the texture from A upon the modified object B, where B who would use the most nearby color of object A?

Yes it's possible, bake Diffuse baking pass and uncheck Direct and Indirect n bake settings, see https://blender.stackexchange.com/questions/102831/game-asset-texturing-high-poly-to-low-poly

Thanks for pointing that link

Select both objects (untextured last), in Render Options under "Bake" set Bake Mode to "Textures" and activate "selected to active"
https://www.reddit.com/r/blender/comments/1egnqp/how_do_you_transfer_textures_from_one_mesh_to/


text:
Brush library in Blender
I need to paint textures by hand in Blender (I currently use the 2.8 Alpha version).
I created several brushes from image texture, with different settings and now I would like to save them for later use in other scenes.
What's the process for exporting the created brushes (if possible)? Is there any way to create a brush library in texture paint/sculpt mode to view and select them easily? Kind of like in Gimp or Photoshop.

https://blender.stackexchange.com/questions/52483/how-to-import-brush-sets/

You don't export anything from Blender to Blender. You simply keep them in a .blend file and append them when you need (File → Append).
However, unused textures are considered as orphan data. In Blender, orphan data are not kept in the .blend file, so they disappear as soon as you close it.
So, in order to force them to stay in your library .blend file, you will have to open the outliner, switch to the orphan data view, and check every data you want to keep. (Those kept have a checkmark, those unkept have an X instead, click the mark to switch between.)

It works! Thank you! Is there a way to associate an image to each brush, instead of the draw icon for example? I won't be the only one using them and it would be great if we could see them in the display before selecting them

Under 'Overlay' in the tool properties, there is 'Custom Icon' and there you can assign a custom image for the brush.

One way to categorize your brushes, and store them with previews is the BlenderKit library. It only works online. You can upload and share your brushes, and there are already about 100 sculpting brushes by now, but almost no texture brushes. In Blender 2.8 it's inside blender already, for 2.79 you can download it from the site:https://www.blenderkit.com/get-blenderkit/


text:
Rendering resetting bones?
I'm trying to pose a set of bones for a character, but whenever I go to render the scene, all the bones reset. Once I exit out of render mode, the bones are still reset. I thought this had something to do with Blender not rendering armatures, but when I found a script to make the armature a mesh model, it would still reset.
Lets's say I move this arm here.

Trying to render

And... the bones reset.

Help?

Please show the timeline with the keyframes for the armature present in your question.

Make sure you have keyframed all bones.
Armature Pose Mode 3D View Window On Frame 123 (From your pic)
Select all
A
Insert Keyframes
I
Rotation.  Scale.  From the popup menu.
Render on the same frame 123

Please show the timeline with the keyframes present in your original question.


text:
The rendered image is different than what I see in the viewport
My render for this project continues to appear extremely zoomed in to the camera view. The first image is what the camera was supposed to capture and the second image is what was actually rendered. What settings should I change to prevent this?

maybe you've animated your camera? Please share your file: https://blend-exchange.giantcowfilms.com/

Your view is locked to this quad sphere, which I believe means your camera is not traveling along with your view as it should be with this option checked.  In fact you should not be able to adjust your viewport focal length from the N-panel if your camera is locked to view.

ive unlocked it but still gives me the same result


text:
Shader for reflective black plastic surface
After some research on how to model reflective plastic surfaces best I established this as my surface:

which I found in an older thread here: (https://blenderartists.org/t/cycles-glossy-plastic-material/582572/5)
If I turn the glossy BSDF dark there is no reflection what so ever.
What I want to achieve is something every close to this:

What are you trying to accomplish by mixing a difuse shader with a non-shader using fresnel as factor?

I would suggest you play with a princlipled shader, with a low value for roughness. Also play with the specular value. And keep in mind that highly reflective need an environment to be reflected by the surface. In that sense you are not lighting an object but lighting the objects that are reflected on the surface Read: https://blender.stackexchange.com/questions/48659/why-does-an-object-with-a-glossy-shader-render-in-black/50576#50576

https://blog.cmog.org/2019/09/04/photographing-glass-highly-reflective-black-objects-part-1/ and https://blog.cmog.org/2019/09/11/photographing-glass-highly-reflective-black-objects-part-2/

you can use a mix between Diffuse and Glossy, the color of the Diffuse is black, the Glossy is white, plug an Input > Layer Wieght in the factor or the Mix Shader. Or Principled BSDF with black as Base Color and a very low Roughness. That would be the basic setups...

You can get this result with just the principled BSDF.
If you look closely at your reference image you'll see the environment.  As mentioned in the comments those highlights are what we want to reproduce, and the ones you see in this image are coming from an HDRI environment texture.  This isn't even a particularly good HDRI for taking an image of something so round, perhaps.
You could approximate this by setting up some large area lamps focused on your object.

Thanks Allen! This is what I started with anyways. I had the feeling that the reflection was not strong enough. But maybe the environment was not the correct one.
Do you have a hint where I might find good HDRI to start with?

HDRIhaven.com has a bunch and they are licensed CC0

To add to Allen Simpson's answer, you can also do it with this node setup: Diffuse with black color and Glossy mixed into a Mix Shader, with an Input > Layer Weight > Fresnel as factor:

Thanks. This is the ebst result so far.


text:
Pressing "Play Animation" Not Doing Anything
Original question:
I managed to model and rig my first character, and I'm now working on the animation, when I scrub through the keyframes in the timeline, the animation is working correctly, but when I press Play Animation - Spacebar, nothing happens, at all. I've tried a bunch of solutions already, but none of them seem to work.
Does anyone know how to fix this?
I have attached a screenshot of the scene and the .blend file below.

Blend File
Update: it seems to be a local issue with my Blender config/hardware, as other users are able to open the .blend file and getting playback. I've also tried rebinding the Play Animation - Spacebar again, but that didn't make any difference. Perhaps I will try installing a new and fresh Blender, see if that works, but I'm still wondering why I'm not getting playback in the first place? Any help is much appreciated as I lack the necessary experience to know where to look for a solution.
Update 2: After some great pointers by @Moonboots I now know the issue has something to do with my preferences. After installing 2.91 and opening the .blend file in that version with Factory Settings, the animation plays, success! But if I load my personal config in the freshly installed 2.91, the problem arises again. Now I would still like to find out, what in my original config file is causing this issue, and fix it, as I really feel at home in my config. I've added screenshots and of the comparison between my personal config and the Factory settings and a link to my personal config, maybe one of you can spot the issue?
Link to download my personal config

I've left out the tabs that are probably not the cause of this issue (Themes, Input, Navigation, Keymap, Addons, Save & Load and Lights). If you think this can also be the cause of this issue let me know and I will upload screenshots of those tabs too.

it works here, maybe check your Preferences > Keymap, in the search field > Name, type Play Animation, it should be Spacebar

That's very strange, I have indeed remapped the spacebar key, but even when I press the actual play button in the GUI, nothing happens on my side. Thanks a lot for confirming it's something local at least! Ill try to rebind it to Space and see if that does any good.

Rebound the Play Animation command to Spacebar again, but still, no playback sadly.

Does it happen with any file? If it happens with this file only, just append the objects in a new one? But I guess you've already tried that...

Yep, seems like it. It even has no playback in a new file too. Anyways, thanks for the help so far, your pointers have been very helpful finding out where it's going wrong! Ill try to get a fresh updated blender, and see if the problem persists.

If you have a solution please add it as an answer.

I had start and end frame both on zero.

Solution: It turns out the "Keymap" was actually the problem! I had disabled some parameters of the keymap, to give me a bit more space to assign keys myself. The specific parameter that was causing this issue was screen.animation_step > Timer > Timer 0. Restoring that to its original state, fixed the playback issue! Hope this helps for other people that have modified their keymaps!

In may case "Play animation" button played one frame forward and played normally backward. There was no sound. What I did to fix the issue I deselected the audio device (it defaulted to "PulseAudio") by setting it to "None".

At that point blender froze up for several minutes but finally it started again accepting input. Again I set it to "PulseAudio" and playback started working properly.
I'm on kubuntu 21.1, blender version 2.93.3.


text:
Can I extrude a path in x/y
I'm trying to make a Game of Thrones-style map scene. The roads are defined by curve objects. I'm trying to extrude the roads in the x/y plane, but it seems to only go in Z:

Is it possible to control the extrusion plane for curves?

You cannot.
Extrusion is always performed n the local Z axis of a curve, particularly for 2D curves.
In 3D curves however you have a Tilt property (Ctrl+T by default) that you can use to your advantage. By tilting the curve by 90 degrees you can make the extrusion appear horizontal.
This is not advised however if you curve is mainly 2D. You will lose the ability to properly fill it, it will be hard to ensure bidimensionality, and among other things you will lose the ability to maintain constant width on tight corners
For 2D curves you are advised to use a second bezier curve as Bevel Object, this can consist of a simple horizontal line, or a narrow squished rectangle if you wish to give it some thickness.
You can then control the "width of extrusion" always from the bevel object. You can adjust on a per-vertex basis with a scaling factor using the curve Radius property (Alt+S by default).

It is advisable to maintain the bevel object width shorter than the tightest curvature radius, to avoid self intersections and potentially resulting artifacts.

This is a long shot.. is there a way for some random variability in extrusion size along the curve?

There is, check my last paragraph, you can use the curve Radius property to add a factor of extrusion/bevelling on top of object size. You can randomize it just like everything else using Proportional Edit. Answer adjusted.

There is a much simpler way that apparently the responder above is unfamiliar with. To extrude along the X-Y plane instead of the Z plane, all we need to do is rotate the origin of the object so that its local Z-axis is aligned with the axis of desired extrusion.
To do this, go to Transform-Options in the upper right hand corner and check the box for Affect Origins Only, then you can reorient the origin of your Bezier curve.
Rotating the origin by 90 degrees about the X-axis should give you your desired result.

This only really works for 3D Curves. It either destroys the geometry of any 2D curve you apply this technique to, or forces you to work with a 3D bezier, which suffer from the limitations I described in the third paragraph


text:
dupliframe alternative for 2.8
I'm trying to create this image in Blender:

My first thought was:

rotscale animation
adjust the curves in the graph editor (the rotation step is smaller at the outside vs )
dupliframe

I see dupliframe got dropped in 2.8 though. Is there an alternative that would work in Blender 2.8?
I've been trying to achieve it with an array modifier using object offset for rotation and scale. This doesn't work though because of the need to vary the rotation step
I've also been trying to adapt this answer, but so far unsuccessful.

Is it ok for you if it is a simple modelling approach?

Sure, whatever works! Just trying to figure out how to make it, as an exercise.

I'm starting to realize that rotation+scale isn't the right approach anyway.. I've got a shape key setup that gets really close. Still no way to create the duplicates though :/

But...if an exercise, shouldn't you find it yourself? ; )

From this base figure:

We can place a Bezier curve:

And add a screw modifier to it (360 degrees with 3 steps):

And add an empty as pivot point for the modifier, then move it up until triangles are aligned:

You can play with the curve resolution to vary the amount of triangles.

To render it after that (did not pay attention to the edit mode above):
Convert the result to a mesh and add a wireframe modifier with a low thickness:

Very neat, never would have thought to do it this way! I'm stuck on how to render it though.. all I can see if 1) convert curve to mesh, 2) apply modifier, 3) delete the faces that resulted from the screw modifier.. or am I missing something?

You can convert to mesh (keep faces) then use a wireframe modifier with a very low thickness.


text:
How should I link objects from external .blend if they have modifiers?
I'm starting to learn how to do asset management for a project by linking from external blend files. I haven't figured out a good workflow for linking objectes that have modifiers on them. It's particularly ugly when the modifers reference other objects in the library (e.g., lattice) What is the standard workflow for dealing with linked objects that have modifiers relying on other objects in a lbrary?
Here is what I've tried so far: In lib.blend, here's an object with a lattice modifier:

Here's how I link it in scene.blend:
1: Link the teapot Ctrl+Alt+O
2: To be able to place it on a table in the scene, I make it a proxy object: Ctrl+Alt+P
3: Now the proxy object lost its modifiers, so I link the lattice object from lib.blend, and add a lattice modifier to my proxy teacup. (this is just an example - I've actually got quite a few modifiers on my asset)
4: Since I'm moving the teapot, I need to move the lattice object along with it (to keep the deformations sensible), so I make the lattice a proxy object.

This seems clunky. Is there a better way to manage assets from an external blend file?

Usually the approach is to put all the related objects into a group, and then link that group.

I tried this method with an object that has Array + Curve modifiers, with start and end caps on the Curve modifier. Normally I'd put the caps on a separate render layer to ignore, but the entire linked group seems to be required to be on a single later. Is there a way to work around this?


text:
How can I rig telescopic parts to move one at a time?
I'm trying to rig a telescopic model. I'd like the segments to deploy "one at a time" (like at 38s here), such the the first segment is almost completely out before the second segment starts moving, and so on.
So far, I've tried assigning a bone per segment, then setting their parent to a big bone which has a "Stretch To" constraint; the constraints target is a a bone that I can use for posing:

With this rig, the segments of the telescope deploy linearly as a group:

Is there and alternate rigging method I could use which gives me control over how the the individual segments relate to each other?

It's actually rather simple to achieve this with Transformation constraints. The key is that your reference of where to get the target transformations from is not a helper bone, but the end bone (the last element) of your telescope. You can check out this blend file here:

Move the bone Segment.1 along the Y axis (I've locked the other axes anyways) to see the effect. It should be exactly what you can see in this little animation here:

Please note that I've made the size of each segment slightly different, so you can see what you're doing when the rig is fully compressed. The transformations I'm referring to however are in this example always constant distances of 0.3. You'll see soon that you're absolutely free as of what distances each segment has though.
Start with creating the armature, and then the segment bones in Edit Mode. Make sure that all segment bones are within the same location, that means you're 'modelling' the compressed state of your rig now. Then parent each segment to a main bone to be able to move the rig around later. Do not create parent/child relationships between the segments themselves.
The rig at this point looks something like this (without constraints yet, we add them in the next step):

Now, select the 'tip' bone (the one which you will transform when animating the rig), in my case that's Segment.1, and then Shift select the first bone that should follow with a delay, that's Segment.2, and press Ctrl + Shift + C to bring up the Constrains menu. Choose Transformation from there. On the child bone, You should see something like this now in the bone constraints tab:

You have a Source section, a Destination section, and a Transform Space section. Transform Space needs to be local in this example, so we want to read and set the bone channels in their own local space. Important are now the Source and Destination fields. On the source and the destination, we tell Blender to check for a Location. Then, we fill in the field for the Y-axis. Min and Max that is. We do the same for the destination. The values in the screenshot now tell Blender the following:

If the user moves the tip bone, and the local Y value of the tip bone is inbetween 0.3 and 1.2, move the destination bone inbetween 0.0 and 0.9.

That means, you need to translate the source bone to local 0.3 in Y first, before the Transformation constraint does anything at all. Then, while inbetween 0.3 and 1.2, it translates the child bone from 0.0 to 0.9. Why these values? Each segment has a length of 0.3. So that's the lower travel boundary for the first bone. The target value for the second segment therefore has to be TranslationMaxOfTip - LengthOfBone. For the next segment, the constraint is the same (we stil reference the tip bone), but we have to move the bone only if the tip is inbetween 0.6 and 1.2, and from 0.0 to 0.6. Do this for all succeeding bones, same constraint, just altering the limits.
Your values will be different, but the concept is the same.

use a limit distance constrain on the parts (might work even without bones).
create 2

create 2 cubes or so
select one cube in object mode
From the right bottom screen go to wrench icon tab.
Add object constraint
under transform its the 2nd column select limit distance
for target select the other cube (by default takes current distance from each)
now move the other cube
add as many cubes with distance limits to the tail as you want
notice the reset button on this constrain it resets the distance to current distance of the objects

I don't think this will work. I want the final position of the pieces to be the same as I already have them; What I want to change is the dynamics of how/when they arrive in their final resting place.

@ajwood this will work, either using object constraints or bone constraints. Start at the collapsed position and add a limit distance so that the object stays no more than x from the preceding object, repeat for each. As the first moves out at the limit the next will start moving, as that moves out the next will start moving. Adjust the distance size to get them move at the right time. Here's a sample using bone constraints.

@sambler very cool! Do you think this method would still work if I wanted to reverse the order that the segments are extended? I'd like the 1st piece (the biggest one, closest to the base), to come out first,then the next one and so on. https://i.sstatic.net/DMYFg.gif

you might animate that, if you use bones to pin against, as bones have a hierarchy moving in earlier bone would just move all later bones with it.

You may try shape keys, there's Relative to there. And use Dope Sheet in the Shape Keys Editor Mode.

Could you clarify a bit? I suppose there will be one shape key per telescoping segment? Won't that be trick to animate?

You suppose right,  a key per element. Yes,  shape keys, like rigging, are a way to animate.  But shape keys, thanks to dope sheet, allow you to start the next thing before the previous one is done.


text:
How Do You Have Objects Stay In Front Of The Camera While It's Moving?
In other words, if you set keyframes for the camera, then between the keyframes it's difficult to determine where to (for example) quickly put text in front of the camera while it's moving.  Is there any way to set objects so they are positioned in front of the camera automatically as it moves?  Thanks guys!

You can Parent an object to the camera by first selecting the object, then the camera (so that the camera is highlighted in yellow), then pressing CtrlP> Object:

The object will now stay fixed relative to the camera:

It should be noted that there were a few things done to achieve the full effect in the animated GIF (namely having the cube copy the camera's rotation and moving it closer to the camera). To go from the still image to the GIF is not as simple just pressing Ctrl+P.

That said, I laughed when I watched the cube and camera wiggle across my screen. I'm not sure why, but it's funny.


text:
Register Object inside of Another Object
I want to register a collection of my custom CurveObjects. Every CurveObject has a collection of CurvePoints.
I'm trying to make a CurveObject with a collection of CurvePoints. But i fail to register CurveObject.
Here is my code:
class MR_CurvePoint(bpy.types.PropertyGroup):
    y = BoolProperty(
        name="y",
        description="y...",
        default=False
    )

class MR_CurveObject(bpy.types.PropertyGroup):
    x = CollectionProperty(
        name="x",
        description="x...",
        type = MR_CurvePoint,
        default=None
    )

...

def register():
    bpy.types.Scene.my_curve_object = CollectionProperty(
        name="Mira Tool Variables",
        type=MR_CurveObject,
        description="Mira Curve"
    )

My log when i try to register:
Traceback (most recent call last):
  File "C:\mifth\blender\2.73\scripts\modules\bpy\utils.py", line 600, in register_module
    register_class(cls)
ValueError: bpy_struct "MR_CurveObject" registration error: x could not register
Is it possible to register Collection inside of Collection?
Thanks.

Ahhhh! It seems I had to remove Default value from CollectionProperty. It was my mistake. Here is working code:
class MR_CurvePoint(bpy.types.PropertyGroup):
    y = BoolProperty(
        name="y",
        description="y...",
        default=False
    )

class MR_CurveObject(bpy.types.PropertyGroup):
    x = CollectionProperty(
        name="x",
        description="x...",
        type = MR_CurvePoint,
    )

...

def register():
    bpy.types.Scene.my_curve_object = CollectionProperty(
        name="Mira Tool Variables",
        type=MR_CurveObject,
        description="Mira Curve"
    )


text:
2.8+ Python: Get UV Loops
I want to get UV Loops lists of selected UV points. UV Loops should be sorted so that I could Align them. Is it possible?
https://i.imgur.com/N87YT4u
.png

Hi. Please use the built-in uploader when adding images. See: https://meta.stackexchange.com/questions/75491/how-to-upload-an-image-to-a-post


text:
Modify Points of a Multires Modifier through Python
Is it possible to modify points of a Multires Modifier through Python? I can get points from the Multires Modifier but I cannot modify them. Here is my simple test of a Cube:
import bpy

bpy.ops.mesh.primitive_cube_add(enter_editmode=False, align='WORLD', location=(0, 0, 0), scale=(1, 1, 1))
bpy.ops.object.modifier_add(type='MULTIRES')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')

active_obj = bpy.context.active_object

depsgraph = bpy.context.evaluated_depsgraph_get()
multires_mesh = depsgraph.objects[active_obj.name].data

# test to modify
print(len(multires_mesh.vertices))  # It Will be 98 Points. Multires!
for v in multires_mesh.vertices:
    v.co[0] *= 2.0

#depsgraph.update()
active_obj.data.update()

But if you run this code no points will be modified.

try this:
import bpy
import bmesh

bpy.ops.mesh.primitive_cube_add(enter_editmode=False, align='WORLD', location=(0, 0, 0), scale=(1, 1, 1))
bpy.ops.object.modifier_add(type='MULTIRES')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')
bpy.ops.object.multires_subdivide(modifier="Multires", mode='CATMULL_CLARK')

active_obj = bpy.context.active_object

depsgraph = bpy.context.evaluated_depsgraph_get()
multires_mesh = depsgraph.objects[active_obj.name].data

# test to modify
print(len(multires_mesh.vertices))  # It Will be 98 Points. Multires!
for v in multires_mesh.vertices:
    v.co[0] *= 2.0

bm2 = bmesh.new()
bm2.from_mesh(multires_mesh)

result:

It works, but it makes an Exception. Is it possible to make it without the Exception. Thank you a lot!

i updated my answer

Thank you for your effort. But if I go to EditMode then ObjectMode then all multires will deformations disappear.
Or if i'll add "active_obj.data.update()" in the end of this code


text:
Trying to create a material for to apply a texture on a game model
I've followed a guide to import an SFM model into Blender. I've got the .MDL decompiled and into Blender, but I just cannot find a way to apply the texture that comes along with it onto the model. I've tried hitting the texture button and adding a texture, but that doesn't work.

The skeleton doesn't have that ball icon for me to click to make a new material so I can put the texture on. The only other thing that the model came with is are the VTA vertices, but they don't help in the way of putting textures on the actual model.
So how and what do I apply a texture to?

Okay, the thing is that you're using cycles but are not using the nodes to actually apply the image texture, you can do it like this:
Select the model in object mode -> go to materials -> select the material->go to node editor

After that, check the box use nodes

It'll look like this, then you have to create an image texture node by pressing SHIFT + A and click search, search for image texture, after that you only have to select the image you already have in the .blend file:

Hope this helps!


text:
Reference image not showing up?
I've seen tons of other posts on this, but they don't help. I'm following a certain Youtuber's tutorial on modeling, and he uses a reference image of a mug to help him model his mug, so I decided to do the same. Thing is, it's not showing up, even when I go into Front/Side/Top Ortho view. Here:
EDIT:
.blend file
Reference Image

@CytaStorm, could you please share your image file + blender file?

...at the least a picture of image open in image editor (to ensure it is not a broken path) . By the looks it has a relative path (filename starts with //) indicating image file  should be in same folder as blend file. There are some tools under File > External Data menu to report and find missing files (If this is the case)

Your image is not a JPG file...it's a WebP file, which Blender does not seem to be able to load as a background image.  Try a different image.   I took a screenshot of the image from my web browser, so you should be able to download and use this one:

Other common files seem to work, too. I've tested PNG myself.

It is a JPG file though.

it has a .jpg extension, but it is NOT a jpg file.  If you open it with a hex editor you'll see it's a RIFF container that holds a WebP format.   I can't even open the file with an image editor.  I also downloaded the exact file from the IKEA website using Chrome, and it saves it with a .jpg extension but it's not a JPEG formatted file.

using the 'file' command on Linux gives: RIFF (little-endian) data, Web/P image, VP8 encoding , 500x500, Scaling: [none]x[none], YUV color, decoders should clamp

a JPG file should give something like: JPEG image data, JFIF standard 1.01, resolution (DPI), density 72x72, segment length 16, baseline, precision 8, 1322x1053, frames 3


text:
Extruding parts of a complex mesh
I want to recreate the following image:

I created one royal blue sphere object, sculpted the yellow and cyan objects, and added those onto the sphere.

My challenge: Essentially, each hole is the center of a hexagon (see red highlight in first screenshot). I want to extrude these parts to give each hexagon more shape. Is there a methodical way to do that without just selecting vertices and extruding individual regions?

It would be easier if the hexagons were in the topology of the sphere.. which you can achieve with the Mesh:Extra Objects add-on > 'Geodesic'... would an answer based around that be OK?

Absolutely! Thanks for responding. I've been racking my head around this for ever and have nothing... Just keep in mind I'm relatively new :) do you need me to upload the blend file?

Related https://blender.stackexchange.com/questions/56535/how-to-make-a-spiked-sphere/56537

If, in 2.79. you hit CtrlAltU, you can bring up User Preferences. In the Add-Ons tab, you will find 'Add Mesh: Extra Objects', shipped with the application. Activate it, and save the settings.. it will enable you to create an object like this:

.. which might be a good starting point for your object. Note not all the faces are hexagons. ( You can't tessellate the surface of a sphere with regular hexagons, there need to be 'pleats': here, intrusions of pentagonal faces)
If you have surplus triangulation, you can use X > Limited Dissolve to remove coplanar edges.
If you delete the pentagonal faces from a copy of the base object, you can use the Duplifaces mechanism for distributing your hexagonal object onto the remaining hexagonal faces. (If the pentagons are acceptable, you could repeat the process to distribute a pentagonal sculpted object.)

Throughout modeling, you may find ShiftG > Select Similar, is a good way to select sets of elements across the surface of the base object.

Sorry editing answer. Thanks for the help. I'm almost there. But I'm running into problems with the dupliface. First, things end up facing inwards. If I use "Verts" duplication and rotate, the model goes all wonky. And second, I end up with the hexagons in the wrong place. I'll add a .blend file above to show you what I mean.

@IgorHouwat   The orientation of the duplis depends on the relation between their Local Object axes and the normals of the faces. So to make the duplis point outwards, you have to flip the normals of the base object, or rotate the mesh of the dupli with respect to its object axes (i.e rotate all its vertices in Edit Mode) It's true, while the base's hex faces know their normals perfectly, they don't consistently set their tangent X and Y with respect to their vertices, and they're not all exactly the same size. Maybe this suggestion isn't good enough...

Thanks for taking the time, regardless... I learned a new skill.


text:
How overlap UV of repeating faces
I have cylindrical mesh. I need to unwrap it in a way that stacks its segments on each other. So that I can save space and make a nice repeating pattern.

How can I do that? This question obviously is a repeat, but I couldn't find an even proper term for what I want.
UPD. I'd like to keep parts proportional(I want to do the same with upper portion)

Select all the faces and press u for unwrap and press reset, so all will be squares (Enable stretch in right properties in uv editor for better seeing). Now select the faces you want to repeat then enable uv and mesh sync in uv editor. Now select faces in 3d view then scale down in uv editor and move aside, similarly, repeat manually (press two adjacent faces and press shift+cltr+(numpad +) to grow selection based on previous selection). Finally press A to select all and cltr+a to average all islands. using box select b select group of islands move them where you needed. I hope this helps.

thx for the response it works nicely. But how do I restore proportions now? I want to do the same with the upper portion too. Should I unwrap one face and then align others on it?

If you want proportions, then rather than resetting uv, with normal uvs select each face and pres G and hold Cltr while moving to snap to  nearest vertices ( not increment type) and release . Repeat for  four faces with box select and move aside with only pressing G. Repeat eight times. you have to do it manually.


text:
Grease Pencil (2.8) How to draw with custom line types (updated)
Is it possible in Blender 2.8 to create (or maybe import from vector files or something like that) other types of strokes than the three proposed by default in the software (line, dots and boxes).
The idea would be to be able to draw with ready-made types of lines of different kinds (like those here https://i.sstatic.net/JZP4v.png)
If this is not possible, is it at least possible to draw lines with evenly spaced dots and boxes?

Small update (I'm still trying to figure out how to do it)
It is possible to create a texture and apply it to the line. So I tested by creating an image with a transparent background, drew a point on it and imported it into Grease Pencil in order to generate a dotted line.
But I still have many problems with it: the line is irregular, especially when I draw slowly or according to the stroke angle:

In addition, the pattern is often crushed. I discovered that this issue could be fixed using the "UV Factor" option. But as soon as I change the brush size, the problem comes back:

I'm looking for a way to draw a line that stays regular by adapting to the size of the brush, the angle of the stroke etc.
while doing some research, I came across this:  https://code.blender.org/2018/07/grease-pencil-status-update/     The "Drawing brushes with assigned Material" section seems to correspond to what I am looking for, but I don't know how to configure the feature to get a good result

In Blender 3.0.0 you can use the Dot Dash Modifier on a Grease Pencil object.
It works by toggling the visibility of points/segments along strokes, so you may need to subdivide your strokes to get enough points. Or dissolve some points to reduce the count if your points are too dense.


text:
Grease Pencil 2.8 Continuous Stroke
In Blender 2.8 (Grease pencil),  is it possible to quickly resume drawing an interrupted line (on a surface) by connecting the beginning of the new stroke to the end of the previous one without going into edit mode to join the vertices?

To resume a drawn line you can select Stroke under the Stroke Placement option in the Blender 2.8 viewport, and choose All points, First point or Endpoints for attachment.

But how can I draw on a mesh surface using this method?

Ah. It doesn't exist currently as a direct option because they are two separate placement modes. It makes sense to have it as an individual option. Outside of merging vertices there may be other options but it depends on what the end result goal is for the lines. One option instead of finding the vertices is to simply select the edges and join those instead.


text:
Boolean and bad topology
I am working on a scene with differents buildings, pierced with arch-shaped windows.
Given the number of windows, using the boolean modifier would allow me to do it quickly. But since once applied, it generates a bad topology, it becomes difficult to edit the mesh afterwards.
Is there a way to use the Boolean modifier while preserving the topology?

"Is there a way to use the Boolean modifier while preserving the topology?" - no, because the only role of the boolean is to change the topology. However, understanding what makes a topology "good" or "bad" will help with using booleans. For example, take a look at a trick in this answer of mine, that creates a quad buffer of quads co-planar with the resulting ngon.

At the end of the day, unless you bulldoze everything with an automatic remesh after applying the booleans, the best way is to have a good topology from the start and think it ahead.
So basically, prepare the topology for the booleans you need. Once you are happy with the shapes of your boolean, add the geometry they will need.
Booleans will add supporting edges whenever it is needed, if YOU provide the support the way YOU want, you will have a better topology at the end. Typically in your example, adding vertical loops at the top and bottom of your windows and also horizontal ones at the apex of the arches will probably help. I would also add support between the shapes to even out the spacing.

Go to sculpting remesh is on top or right bar depending on tool aligment. remember to use adaptation this one is useful where you have lot of flats check out quads too

before bollen add loop cut where new elements should be.
And if you want nicer mesh after all use blender new remesh tool from sculpt tools its great!

Adding the loop cuts doesn't really help with the topology. I still have trouble editing the mesh afterwards. As for the tool mentioned, which one is it exactly? Because on my version of Blender (2.82), I don't see anything like that.

also, did you do loop cut before collapsing bollen? it should be before


text:
Generate a 3D object from an image texture
Would there be any way to generate a 3D mesh (that would conserves the shape of the original textured object as if shrinkwraped) from a black and transparent 2D texture?
For example, on the image below, the objective would be to generate a mesh from the black color only, (separating it from the transparent part of the texture)

What do you mean by "shrinkwrapped" plane and "3D object"? The texture only has 2 dimensions, meaning that as a plane it'll be a XY two-dimensional object. Did you mean create a mesh with surface only there's black in your example (ignoring what was said about planes because it has nothing to do with the question)?

This question is confusing and the OP didn't clarify it yet, but I don't want to risk losing the drafted answer to what I think is the issue, so here it is.
Geometry Nodes make it simple to generate a mesh from a texture applied on something.
The idea is to capture the texture in the base mesh points, deleting those falling outside the value threshold. This will leave you with a mesh containing only the vertices painted in the desired value.

Most work here is done to ensure the mesh is dense enough to capture the texture faithfully. Use the basic Subdivide Mesh node whenever possible, because the Subsurf one is much more performance-intensive.
This texture was created directly in Geometry Nodes. You can load external ones using the Image Texture node instead, plugging your UVmap in the vector input.
It's a good idea to Decimate the resulting mesh, because it's likely to be dense enough to slow blender to a crawl.

Enable "Add Images as Planes" Add-on.
Add an image of choice:

In numbers panel remove the rotations of the object.
Create a Geometry Nodes setup:

You can now disable the material's transparency by changing  Material Properties > Settings > Blend Mode to Opaque, and yet the object will remain transparent:

The reason why it's so slow is that the topology has to be dense in order to hit the edges with the vertices. You can now apply the modifier (perhaps you want to apply it without the Extrude Mesh node), and then use Decimate to limit the amount of geometry.

Do the 2 Subdivide Mesh nodes prevent the flat-shaded artifacts or what are they good for? (You could enter the number 10 to exceed the slider limit of 6). -- Wow the Extrude Mesh node creates a lot of inner faces. You noted that in point 6, right? Wouldn't a Solidify node be a better choice?

@Blunder that must be because I left Individual selected, I didn't actually investigate the mesh, as it was laggy enough to demotivate from playing with it... I know how soft limits work and I'm pretty sure I checked if I can input manually more than 6, so either it was fixed recently or... Or maybe it's one of the cases where I'm pretty sure but still wrong :D

By now there are already two answers, but I'm posting my started answer anyway because it shows how to use the UV map and it features the Compare node with colors. Maybe it will help someone.
The Subdivision Surface modifier is used because the Catmill-Clark mode gives you a smoother result than the Subdivide Mesh node in Geometry nodes that basically has only the Simply mode. (You can see the "flat-shaded" artifacts of Simple mode on a sphere.)
The "3D sculpts" have also a Solidify, Smooth and Decimate modifier to reduce the poly-count. Warning: Don't try to move around such a mesh with all the modifiers active because it creates a crazy lag and makes Blender unresponding. Turn them off with the "monitor icon" before you move the object.
The sphere at the top left is the textured original model. The other ones are created with the modifiers.

There's Subdivision Surface node: https://i.imgur.com/xSaLWTS.png

Oh, thanks! I see, this is what Rhaenys mentioned. So, Subdivide Mesh is kinda like the Subdivision Surface modifier in Simple mode and the Subdivision Surface node is like the Subdivision Surface modifier in Catmill-Clark mode:  https://i.sstatic.net/xPyyH.jpg


text:
Blender as Python module in Docker container: How to build CUDA kernels only once?
I'm building a docker image (multi-stage) with Blender built as a Python module and CUDA support:
###########################################
# Stage 1: Build Blender as a Python module
###########################################

FROM nvidia/cudagl:11.4.2-devel-ubuntu20.04 as bpy-builder

ARG DEBIAN_FRONTEND=noninteractive
ARG BLENDER_VERSION="v3.0.0"
ARG BLENDER_LIBRARY_VERSION="3.0"

# Update and upgrade packages
RUN apt-get update && apt-get upgrade -y

# Basic requirements (see https://wiki.blender.org/wiki/Building_Blender/Linux/Ubuntu#Quick_Setup)
RUN apt-get install -y \
    build-essential \
    git \
    subversion \
    cmake \
    libx11-dev \
    libxxf86vm-dev \
    libxcursor-dev \
    libxi-dev \
    libxrandr-dev \
    libxinerama-dev \
    libglew-dev

# # Wayland requirements (see https://wiki.blender.org/wiki/Building_Blender/Linux/Ubuntu#Quick_Setup)
# RUN apt-get install -y \
#     libwayland-dev \
#     wayland-protocols \
#     libegl-dev \
#     libxkbcommon-dev \
#     libdbus-1-dev \
#     linux-libc-dev

# Python requirements
RUN apt-get install -y \
    python3.9 \
    python3.9-dev \
    python3-distutils \
    python3-pip \
    python3-apt

# Clone a shallow copy of the blender sources
RUN mkdir -p /opt/blender-git/
WORKDIR /opt/blender-git/
RUN git clone https://github.com/blender/blender.git -c advice.detachedHead=false --depth 1 --branch ${BLENDER_VERSION}
WORKDIR /opt/blender-git/blender
RUN git checkout -b my-branch

## Checkout submodules
RUN git submodule foreach git checkout ${BLENDER_VERSION}

# Download a copy of the blender libraries
RUN mkdir -p /opt/blender-git/lib
WORKDIR /opt/blender-git/lib
RUN svn export https://svn.blender.org/svnroot/bf-blender/tags/blender-${BLENDER_LIBRARY_VERSION}-release/lib/linux_centos7_x86_64/

# Set build flags
## Python
ARG WITH_PYTHON_INSTALL=OFF
ARG WITH_AUDASPACE=OFF
ARG WITH_PYTHON_MODULE=ON

## GPU
ARG WITH_CYCLES_DEVICE_CUDA=ON
ARG WITH_CYCLES_CUDA_BINARIES=ON

# Compile blender
WORKDIR /opt/blender-git/blender
RUN make update
RUN make bpy

###########################################
# Stage 2: Slim image for deployment
###########################################

# TODO: See if we can use a smaller image (e.g. by installing CUDA separately).
FROM nvidia/cudagl:11.4.2-devel-ubuntu20.04

ARG DEBIAN_FRONTEND=noninteractive
ARG USER_NAME=user

# Update and upgrade packages
RUN apt-get update && apt-get upgrade -y

# Install development dependencies
RUN apt-get install -y \
    git

# Install Python 3.9
RUN apt-get install -y software-properties-common
RUN add-apt-repository -y ppa:deadsnakes/ppa && apt-get update
RUN apt-get install -y \
    python3.9 \
    python3.9-dev \
    python3-distutils \
    python3-pip \
    python3-apt

RUN update-alternatives --install /usr/bin/python python /usr/bin/python3.9 10
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 10

# Copy blender python module
COPY --from=bpy-builder /opt/blender-git/lib/linux_centos7_x86_64/python/lib/python3.9/site-packages \
    /opt/bpy/lib/python3.9/site-packages
ENV PYTHONPATH="${PYTHONPATH}:/opt/bpy/lib/python3.9/site-packages"

COPY --from=bpy-builder /opt/blender-git/lib/linux_centos7_x86_64/python/lib/python3.9/site-packages \
    /opt/bpy/lib/python3.9/site-packages

# Install blender dependencies
RUN apt-get install -y \
    libgomp1 \
    libxrender1

# Install other dependencies
# RUN apt-get install -y \
#

# Add a non-root user
RUN useradd -ms /bin/bash ${USER_NAME}
USER ${USER_NAME}
WORKDIR /home/${USER_NAME}

Everything works well, however, when starting the container and rendering an image with cycles and CUDA I get the following message:
Loading render kernels (may take a few minutes the first time)
Compiling CUDA kernel ...
"/usr/local/cuda/bin/nvcc" -arch=sm_86 --cubin "/opt/bpy/lib/python3.9/site-packages/3.0/scripts/addons/cycles/source/kernel/device/cuda/kernel.cu" -o "/home/user/.cache/cycles/kernels/cycles_kernel_sm_86_79FDBA777FBD1427AA019FCC8B5AFBF6.cubin" -m64 --ptxas-options="-v" --use_fast_math -DNVCC -I"/opt/bpy/lib/python3.9/site-packages/3.0/scripts/addons/cycles/source"

This would be no problem, however, due to the nature of docker, as soon as I restart the container, I have to build the kernels again.
So my question is: What is the best way to avoid having to compile the kernels on the first run?
Thoughts/ideas:

Maybe I missed a compilation flag (I thought this is what WITH_CYCLES_CUDA_BINARIES is for)?
So, maybe I didn't copy over the already compiled files from the building part of the multi-stage Dockerfile? If so, then where can I find the compiled kernels?
I can trigger the build myself using the command from the message. However, it includes -arch=sm_86, so I guess this is specific for the Hardware I'm using, right? So I would have to trigger this for all architectures supported by blender (sm_30 sm_35 sm_37 sm_50 sm_52 sm_60 sm_61 sm_70 sm_75 sm_86 compute_75, see CMakeLists.txt), correct?
I could map /home/user/.cache to the respective directory on the host, however, this seems a little hacky and cumbersome. Also, it would be great to just compile the kernels once during the docker build, instead of once for every user.

EDIT: Solution 4 works, but I'd still appreciate a more elegant solution.


text:
How to duplicate object with independent modifiers, using Python
I'd like to replicate copying (CTRL+C) and pasting (CTRL+V) an object using Python, i.e. the copy should be identical, yet completely independent of the original (i.e., if I change something about the original, the copy should not be affected). While this is easy to achieve for some properties, by copying the object data or calling bpy.ops.object.make_single_user(type='SELECTED_OBJECTS', object=True, obdata=True, material=True, animation=True, obdata_animation=True), I did not find a way yet to do this for modifiers, such as geometry nodes. Is there an easy way to achieve this?
Thanks.

Nice question! I think it should be reported, if it's not.

Thanks for the comment. What exactly would you like to have reported?

try bpy.ops.node.copy_geometry_node_group_assign()

@relaxed Thanks for the hint! Would you mind elaborating a little? The documentation of bpy.ops.node.copy_geometry_node_group_assign is a little sparse, as of now.

I don't have much more either. It´s is the same operator as in the middle of the header of Geometry Node Editor (files icon) where you can copy the active geometry node group and assign it to the active modifier in one step to make it a separate node group. Similar to the "New/Add" button in most data block menus. [https://docs.blender.org/manual/en/latest/interface/controls/templates/data_block.html#data-block-menu]

Thanks to @relaxed, I found a solution that works for me, for the moment. However, be aware that there might be other data blocks (apart from node setups, particle settings and textures) that need to be copied as well.
def create_duplicate(object_: bpy.types.Object,
                     duplicate_name: str,
                     target_collection: bpy.types.Collection) -> bpy.types.Object:
    duplicate = object_.copy()
    duplicate.data = object_.data.copy()
    duplicate.name = duplicate_name

    target_collection.objects.link(duplicate)

    bpy.ops.object.select_all(action="DESELECT")
    bpy.context.view_layer.objects.active = duplicate
    duplicate.select_set(True)

    bpy.ops.object.make_single_user(object=True,
                                    obdata=True,
                                    material=True,
                                    animation=True,
                                    obdata_animation=True)

    for particle_system in duplicate.particle_systems:
        particle_system.settings = particle_system.settings.copy()

    for modifier in duplicate.modifiers:
        bpy.ops.object.modifier_set_active(modifier=modifier.name)

        if modifier.type == "NODES":
            bpy.ops.node.copy_geometry_node_group_assign()
        elif hasattr(modifier, "texture"):
            modifier.texture = modifier.texture.copy()

    return duplicate


text:
How can I create intercalated shapes?
I´m practising modeling using this shoe as reference but got stuck on this intercalated shape. How can I do it? Does anyone have any tip? I thought about using the plane mesh (the same way I did the stripes + solifidy modifier) but when I extrude to make it over and under the stripe, the mesh will get weird, no? Thanks in advance for the help!

hello, maybe share your file so that we can give a try? https://blend-exchange.giantcowfilms.com/

Start with a plane. Keep it as separate object and add a "solidify" modifier and some subdivision.

Now in side view, in edge selection mode, select the top edge and extrude it along:

Keep the modifiers as long as possible in order to manage the fiewer vertices manually.
Do it for side parts too, and join the parts at the top, and adjust the heights as needed:

Once happy with the shape, apply "solidify" modifier, select the edges and bevel them:

You should obtain something like this:


text:
Rigify. vertex weight 1 to one bone but something else still influencing!
I tried Rigify and I found a very strange issue. After I painted full chest bone weight on body vertices, they are still affected by the neck bone somehow.  I googled hard but it looks like nobody has a same problem like I have.
Would you like to help me to figure it out please?
https://drive.google.com/file/d/1KwnOk5825HrOVAxbsHc8u-_rvUQxoFQ_/view?usp=sharing
Neck joint:

Hello, I saw the animation, but I couldn't reproduce it. Could you share reproducible files.

You can check the weights of the vertices. https://blender.stackexchange.com/questions/156882/is-it-possible-to-see-vertex-weights-in-edit-mode-in-the-3d-view

Thank you for your help. I checked the article you introduced and it was very useful. Unfortunately, the weights on the list were all fine. Also, I'm terribly sorry that I accidentally uploaded different file. Now, the download link is fixed and I triple checked. Sorry again.

By displaying B-Bone it can be seen that DEF-spine.003 is deformed.

Thank you so much! I thought something must influencing on it but I couldn't find it. Now, I need to figure out how to stop using b-bone but this is such a great clue to start from. Thank you again!

Already fixed! I set the segments value 0. Amazing!

If you found a solution, please write an answer in the answers section, so that others with similar issues can learn from your experience.


text:
How can i make a sort of cloth/leather object?
I am trying to make Pathfinder from Apex legends and I am at the neck part, he has some sort of leather scarf for his neck, like the bottom part of the gear stick in a car. I have no idea how to tackle this problem so any suggestions would be appreciated

Here is the object I am trying to make:
And here is the object i compare it to:

You can use sculpt mode to use cloth tool or if you plan to animate your model use cloth simulation. See some tutorials.

are you talking about modeling this part or about the material?

Example with Cloth Simulation ...

add Cylinder, add horizontal Loop Cuts Ctrl+R 10, to get square net
Invert Selection I
Assign these top/bottom loops (vertices) to a Vertex Group under Properties Editor > Dara > Vertex Group
Add Cloth Simulation and under Cloth Sim Properties > Shape > Pin > choose vertex group
I animated top part with a Hook modifier assigned to Empty, but you can parent Cylinder's top (or bottom) vertices to any specific part of your character
For a final touch I added Subdivision Surface modifier


text:
Meshes invisible
No matter what I try (I've tried changing clipping and local view), it ends up like this. Even adding new meshes. This happens on 2.8, 2.81,.82,.83 etc. It doesn't happen on 2.9+ why is this happening?

Are you using a GPU from AMD?

Yes I am using an amd gpu


text:
Alpha images appear completely black
I'm having a strange issue where alpha images appear as completely black. It doesn't seem consistent and i'm not sure why. Anyone got an idea?

if you are in Eevee you need to make sure that in the Properties panel > Material > Settings, you've enabled the Blend Mode > Alpha Blend

If you are using cycles increase transparent bounces. Read: https://blender.stackexchange.com/questions/27718/black-artifacts-when-looking-through-many-transparent-objects

@susu brilliant, thank you mate.

@user115601 for future questions please state what render engine you are using. Eevee and cycles work differently.


text:
CollectionProperty - change item's index
I can get an item in my CollectionProperty using index. Like this:
item = context.scene.my_collection_prop[index]

But how to change the item's index?
I want to put the item into index=0.

Use my_collection_prop.move(item_index, target_index), it let's you place a collection item (specified via its index in the current collection) to an arbitrary position in the collection.
In a collection with 3 items, you would call move(2, 0), to put the last item on top of the list. The other two items remain in order, there's no swapping of the source and target item:
import bpy

bpy.types.Scene.coll = bpy.props.CollectionProperty(type=bpy.types.PropertyGroup)
coll = bpy.context.scene.coll
coll.clear() # in case you re-run this script, empty the collection

# item 0
item = coll.add()
item.name = "First"

# item 1
item = coll.add()
item.name = "Second"

# item 2
item = coll.add()
item.name = "Third"

print("Before:")
for i, item in enumerate(coll, 1):
    print("{}. {}".format(i, item.name))

coll.move(2, 0)

print()
print("After:")
for i, item in enumerate(coll, 1):
    print("{}. {}".format(i, item.name))

"""
Before:
1. First
2. Second
3. Third

After:
1. Third
2. First
3. Second
"""

Thanks. Strange that add() and move() methods are not documented in blender python api.

The methods belong to the class bpy_prop_collection_idprop, which is somewhat an internal type and does indeed not appear anywhere in the documentation. If you register a collection property however, you may call dir(…) on an instance (if registered on bpy.types.Scene, for example bpy.context.scene) to see all properties and methods: ['__doc__', 'add', 'clear', 'move', 'remove'].


text:
Rigid Body play dice (Box) calculated from the bounding box to big

Hey together
my problem:
The size of the play dice rigid body box is to big.
I want it like the rigth cube to get a realistic animation later on.
what i tried:
shift + alt + ctrl + C to set Geometry to Origin .
put both cube´s on top of each other and click on the pivit point of the correct one with my cursor than switch to the play dice and set Geometry to 3D cursor.  Nothing worked.
I am a newbie so i have no clue how to use code for solving.
I read the manual blender manual and several forum entrys. But i don´t get to a solution.

For any Approach i would be thankful.

The box collider is calculated around all the vertices, even if they have no faces attached.
Go into edit mode and select the single stray vertex which is a little further from the surface of the cube. You can also select it with the Select Non Manifold command ⎈ Ctrl⇧ Shift⎇ AltM.
Delete it and the rigid body box collider will encase the cube as expected.

Thx very much solved it :-) .


text:
No response to key press in 3D View
Blender 2.79 (sub0) was installed on a fresh system (Ubuntu 18.04) through apt. I found the shortcut keys are not functioning in the 3D View window:

No response to A (selection) X(deletion) or any other shortcuts.
Not able to edit the shortcut in the user preferences.

Below is the debug info when I press A with --debug-all enabled:
Switching to fully guarded memory allocator.
read file /home/sywe1/.config/blender/2.79/config/userpref.blend
  Version 279 sub 0 date unknown hash unknown
Read prefs: /home/sywe1/.config/blender/2.79/config/userpref.blend
read file
  Version 272 sub 2 date unknown hash unknown

ordered
 OBCube
 OBLamp
 OBCamera
ED_screen_refresh: set screen
SRNA Subclassed: 'Context'
SRNA Subclassed: 'Operator'
SRNA Subclassed: 'PropertyGroup'
SRNA Subclassed: 'Menu'
time bl_operators 0.0405
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Bone'
SRNA Subclassed: 'EditBone'
SRNA Subclassed: 'PoseBone'
SRNA Subclassed: 'UIList'
SRNA Subclassed: 'Mesh'
SRNA Subclassed: 'Object'
SRNA Subclassed: 'Texture'
SRNA Subclassed: 'Header'
time bl_ui 0.1236
SRNA Subclassed: 'KeyingSetInfo'
time keyingsets_builtins 0.0022
SRNA Subclassed: 'Node'
SRNA Subclassed: 'NodeInternal'
SRNA Subclassed: 'ShaderNode'
SRNA Subclassed: 'CompositorNode'
SRNA Subclassed: 'TextureNode'
time nodeitems_builtins 0.0058
SRNA Subclassed: 'WindowManager'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Operator'
    addon_utils.enable io_scene_3ds
SRNA Subclassed: 'Operator'
    addon_utils.enable io_scene_fbx
SRNA Subclassed: 'Operator'
    addon_utils.enable io_anim_bvh
SRNA Subclassed: 'Operator'
    addon_utils.enable io_mesh_ply
SRNA Subclassed: 'Operator'
    addon_utils.enable io_scene_obj
SRNA Subclassed: 'Operator'
    addon_utils.enable io_scene_x3d
SRNA Subclassed: 'Operator'
    addon_utils.enable io_mesh_stl
SRNA Subclassed: 'Operator'
    addon_utils.enable io_mesh_uv_layout
SRNA Subclassed: 'Operator'
    addon_utils.enable io_curve_svg
SRNA Subclassed: 'RenderEngine'
SRNA Subclassed: 'Panel'
SRNA Subclassed: 'Menu'
SRNA Subclassed: 'Operator'
SRNA Subclassed: 'PropertyGroup'
SRNA Subclassed: 'AddonPreferences'
I1125 14:49:07.065317 12441 blender_python.cpp:186] Debug flags initialized to:
CPU flags:
  AVX2   : True
  AVX    : True
  SSE4.1 : True
  SSE3   : True
  SSE2   : True
  QBVH   : True
  Split  : False
CUDA flags:
 Adaptive Compile: False
OpenCL flags:
  Device type    : ALL
  Kernel type    : DEFAULT
  Debug          : False
  Single program : True
  Memory limit   : 0
    addon_utils.enable cycles
SRNA Subclassed: 'Operator'
    addon_utils.enable import_off
Python Script Load Time 0.2067
FRS_set_context: context 0x0x7fd2834c80b8 scene 0x0x7fd27b204038
bpy.ops.wm.splash()
WM_operator_last_properties_store: storing properties for 'WM_OT_splash'
ghost_event_proc: window 1 state = normal
ghost_event_proc: ghost redraw 1
Thread 0: update object OBCube
recalcob Cube
Thread 11: update object OBCamera
recalcob Camera
recalcdata Cube
Thread 4: update object OBLamp
recalcob Lamp
Thread 0: total 1 objects in 0.000032 sec.
  Cube in 0.000032 sec
Thread 1: total 0 objects in 0.000000 sec.
Thread 2: total 0 objects in 0.000000 sec.
Thread 3: total 0 objects in 0.000000 sec.
Thread 4: total 1 objects in 0.000032 sec.
  Lamp in 0.000032 sec
Thread 5: total 0 objects in 0.000000 sec.
Thread 6: total 0 objects in 0.000000 sec.
Thread 7: total 0 objects in 0.000000 sec.
Thread 8: total 0 objects in 0.000000 sec.
Thread 9: total 0 objects in 0.000000 sec.
Thread 10: total 0 objects in 0.000000 sec.
Thread 11: total 1 objects in 0.000010 sec.
  Camera in 0.000010 sec
Scene updated 3 objects in 0.000082 sec
ED_screen_refresh: set screen

wm_event_do_handlers: Handling event
wmEvent  type:272 / TIMER, val:0 / NOTHING,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(5810,976), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd2644dc0b8

wm_event_do_handlers: Handling event
wmEvent  type:272 / TIMER, val:0 / NOTHING,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(5810,976), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264aa1738

wm_event_do_handlers: Handling event
wmEvent  type:260 / WINDOW_DEACTIVATE, val:0 / NOTHING,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1383,920), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd2644db578
ghost_event_proc: window 1 state = normal
ED_screen_refresh: set screen

wm_event_do_handlers: Handling event
wmEvent  type:97 / A, val:2 / RELEASE,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1348,418), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264e8a7f8

wm_event_do_handlers: Handling event
wmEvent  type:97 / A, val:2 / RELEASE,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1348,418), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264e8a7f8

wm_event_do_handlers: Handling event
wmEvent  type:1 / LEFTMOUSE, val:1 / PRESS,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1335,407), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264f84638

wm_event_do_handlers: Handling event
wmEvent  type:1 / LEFTMOUSE, val:2 / RELEASE,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1335,407), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264e896b8

wm_event_do_handlers: Handling event
wmEvent  type:171 / UNKNOWN, val:1 / PRESS,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1339,407), ascii:'', utf8:'a', keymap_idname:(null), pointer:0x7fd264e89538

wm_event_do_handlers: Handling event
wmEvent  type:97 / A, val:2 / RELEASE,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1339,407), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264e89538

wm_event_do_handlers: Handling event
wmEvent  type:97 / A, val:2 / RELEASE,
         shift:0, ctrl:0, alt:0, oskey:0, keymodifier:0,
         mouse:(1339,407), ascii:'', utf8:'', keymap_idname:(null), pointer:0x7fd264e89538

It seems that blender received the keypress event but does nothing to it. Does any know how to fix it? Thanks in advance.
Solved
Set the input source back to en_us solved my problem.

I've not used linux for a while, but if my memories are correct and not outdated nor biased, apt doesn't have the latest blender version (something like 2.6) unless you add your own ppa. Are you sure you have 2.79?
Anyway, do you have this issue after rebooting Blender? Have you tried re-installing?

@L0Lock Yes, I'm sure the apt version is 2.79 as well. Also, I tried to download a new tar packed blender, but it runs into the same issue. I guess it may be incompatible with ubuntu 18.04 since blender 2.79 works well on my 16.04 computer.

I see you've edited your topic to include a solution. Maybe post it as an answer as well?

Set the input source back to en_us solved my problem.


text:
How to initialize a variable which won't be refreshed
I am coding a node for animation nodes. I need to initialize a set of variables so I can use them, but I need to do it in such a way that they won't be refreshed (reset to the default value) every time I send an output to the node.
I probably want to define the variables before my create(self) method, so it won't refresh every time I send/receive I/O from the execute(self,a,b,...) method.
I have this:
    def create(self)
       new.Input(...)
       new.Input(...)
       new.Output(...)
       etc...
def execute(self,a,b,etc..)
   loops involving variables.

Where do I define my variables, and what is the syntax for calling them to check or change values without resetting them to their default start settings?

You can define such variable outside of the node class and call it as you would call a global variable. Take the Text File Reader node for example, it defines a cache dictionary to cache file reads, the cache is initially defined outside of the class as:
cache = {}

class TextFileReaderNode(bpy.types.Node, AnimationNode):
    bl_idname = "an_TextFileReaderNode"
    bl_label = "Text File Reader"
    ...

And it assign and read the cache in the execute function normally:
with open(path, "r", encoding = encoding) as f:
    data = f.read()
    cache[key] = (lastModification, data)
    ...

You can also use the node identifier as a key in the dictionary to have a per-node variables. For instance, if you want a variable xBounce for every node, create an empty dictionary called xBounce and in the execution function, set its value using xBounce[self.identifier] = something and retrieve its value using xBounce.get(self.identifier, 0) where zero is the default value

I tried declaring three integer variables before the node itself, as you have shown here, but I still get a referenced before assignment error.  I don't know how to show my code here in the comments, or I would add that to this question."  Can you suggest what is going wrong?

@NullNaught Please add the code to the question.

When I try to copy and paste, I get "866 characters too long."  I don't know how to append my screenshot.  I will try adding it as an edit to my question.

@NullNaught It seems Python assumes the variable is in the local scope. You should probably declare it as a global variable, see this answer.

Can you tell me, is there any way to achieve the same thing without a global variable? I can't use two such nodes at the same time, when I would like to be able to.

@NullNaught If you want a per-node variable, create a dictionary and use the node identifier as its key. You can get the identifier using self.identifier. Does that make sense?

I will investigate this answer, is there an answer that demonstrates this use?

@NullNaught I edited my answer to explain how to use this method.


text:
Custom Lens - Viewport doesn't match render?
I have a scene with a warped plane acting as a lens. I matched the camera to viewport, but the renders look too zoomed in, and the warping effect is different than in viewport.
Viewport render:

Renders:

Note: I have tried messing with camera settings to no avail. Thank you for taking a look at the .blend file.

there is no blend file...

I apologize for that. The .blend file is now added!

not sure about your material, don't you want to directly plug the glass into the Output?

@moonboots I would think the same.

You are correct; the material is overcomplicated for this particular shot. Thank you!

Your "Edited Lens" object has a Solidify modifier that is disabled in the 3D Viewport. Without solidifying this object is just a plane, and in this case everything below is treated as if it was inside a big glass cube instead of a glass pane, because the IOR refracts the light while entering the plane from one side but not exiting on an opposing side.
If you enable the Solidify modifier in the viewport, the result looks exactly like the render. So the solution will be to deactivate the modifier for rendering as well - or simply delete it. If you don't want to see it neither in viewport nor in render, what good is it for?

Thank you very muh! I totally missed that. I am getting the results I want now.


text:
How do I model the arms of a car axle as shown in the reference photos, as a single piece?
I am trying to model the sides of a car axle, but I end up with ugly results and shading, no matter how I approach it. I could model it as seperate pieces, but the reference object is a single piece.
My object:

My desired result:

Results I achieved by myself, but look far from the reference photos:

Result I have achieved thanks to the thread:

This might give you some guidance: Cutting Circular Holes in Curved Surfaces

You could begin with this kind of cylinders, and boolean. You need to avoid boolean when it's possible but this is typically a case where boolean is the best solution imho. The hard part is probably to guess how many vertices for each cylinder, 32 here is probably not good for the long one on X so I had to lower down to 16:

Then once booleaned begin to work a bit, J to join, K to knife, merge vertices with Auto-Merge and vertex Snap activated, etc. At one point you need to give your object a Subdivision Surface in order to test and modify the topology accordingly. Tris and ngons are acceptable as long as they don't create artefacts. Here (image below) it's not finished, just work in progress, it will need bevels on the edges, etc:

I have been trying to wrap my mind around cleaning the resulting topology from the boolean approach, and I have not been able to.

I've edited my answer to show how I would begin to rework the topology once booleaned, it's not finished but I hope you get the thing

Thank you so much. I have made a notable progress thanks to your teachings. I will attach Images of my model so far to the main post.

glad I helped  ;)


text:
Objects appear as outline only
I need your help Blender suddenly became like this:

Do you have an AMD Gpu? There have been many posts recently about how updating it has caused these problems with OpenCl or something like that.

Revert your drivers to the previous version and it should be fixed.

yes I do have, do you think it has something to do with the Radeon software?

https://www.reddit.com/r/blenderhelp/comments/khzhcc/meta_attention_to_all_amd_gpu_owners/
Found it

thank you for this, Im gonna check it out

Hey guys ! thank you for your help ! It's now fixed ( I think ) I did not revert the driver version , but I follow the alternative method in which I have to turn on the high quality performance in the Render Properties tab

ok thanks for this update! interesting to know an alternative

This is the solution that works for me !
Enabling High Quality Normals in Performance under the Render tab.
Thank you again!

Good luck on your final


text:
My render result is very different from my render preview
My render result is very different from my render preview. Does anyone know what I'm doing wrong?

if you provide your .blend file, we can help you for sure....