text:
How to make material static?
I have this material applied to a human figure. I want to see what it would be like if the colors were not bouncing around different faces. Does anyone know how to achieve that?

Blend file:

this should be doable if you bake your texture. So i recommend searching for bake texture.

Hello, Martin ..A screenshot of the material node tree would enable folks to tell whether they can help you out or not, without necessarily committing to a download.

the material is dependent on "true normal" input, that's why it is changing all the way in the animation

@RobinBetts good point. I added an image of the node tree.

The True Normal input (the normal to each face) in the shader changes as the model moves. If you want it to not change, the easiest way is probably to bake the normal as it was before the model moved. You can easily do this with Geometry Nodes.
Add a new Geometry Node modifier in the modifier stack before (above) the Armature modifier and add these nodes

This stores the face normal to an attribute named "OrigNormal". Since the modifier comes before the Armature modifier, this is done in the rest pose, ie. it won't be affected by the model deforming with the Armature.
Then you just need to change the shader to use the OrigNormal attribute instead of the true normal.

This worked. Thank you very much!


text:
How to create tube like hair?
Is there any way to create hair the way Ducky is in this video without converting it to a mesh?

Or is there any way to add geometry to a hair particle system?
I want to keep it as a particle system so that it can wave and swing around, but I want a low number of thick hair strands.
I've tried converting the particle system and converting curve from mesh, but this makes it static and doesn't allow the hair to move.
I've also tried changing hair in render properties to strip and playing with  the hair shape in the particle settings and it just makes wider flat hair particles, but I want 3 dimensional.

Tutorial
https://www.youtube.com/watch?v=Q4nWer8eP6Y&t=205s
Thanks in advance!

Cycles
Use Particles system > Render as Path
and under Hair Shape set thickness and disable Close Tip

Dammit Vklidu. You're a genius!

Yes, I am ... Genious in oblivion ... I wanted to answer you six days ago ... Great if still helpful :)

source: Stack Exchange

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

sort: votes


text:
Bone constraint rotation not working correctly
I am following a skeleton rig tutorial on youtube step by step and despite having the exact same setup, my armature behaves incorrectly. https://youtu.be/jp_SqjB0468?t=920 at minute 15:40.
This is the result I am supposed to be getting:

This is the result I am getting, the foot seems to rotate around its own local Z axis and not the parent's, even though the "Copy rotation" Space is set to "Local With Parent":

This is my constraint setup:

I am struggling to find the error. Can this be a potential glitch in blender 2.8? I remember giving this tutorial a try in 2.79 and I can't recall having this problem.
UPDATE:
I confirmed that this is caused by version 2.8. I created an identical armature in version 2.79b where it rotated correctly. When I opened the exact same file in 2.8, the bones rotated differently. I will follow a different step by step tutorial made in 2.8 and see if I can find what has changed in 2.8 that's affecting this.
FINAL UPDATE:
"Relationship - Child of" constraint used instead of "Transform - Copy rotation" has solved the issue.

I may be wrong but I'm not sure about this method, I think it works on the video because his foot is almost aligned to his controller on every axis, that's a solution by the way, but if they are not aligned, it will be ok as long as you rotate the controller on the X axis (because both bones are aligned on this axis), but, as soon as you rotate the controller on its Y axis or Z axis, the foot will go crazy (because you ask it to rotate on its own Y and Z and that's what it gives).
In my opinion the solution is to parent the foot to the controller.This way, the foot follows the controller no matter what. Then, if you want to make sure that the foot bone will stick to the shin bone, you can give it a Copy Location with Space > Pose Space and a Head/Tail value of 1.

Thank you. I did some testing, and the issue really is caused by 2.8 doing "things" differently from 2.79. The exact same bone rotates around global Z axis in 2.79 but local Z axis in 2.8. (I checked the file I saved with Blender 2.79 in 2.8 and the behaviour has changed.)

You were right. I used "Relationship - Child of" constraint and it works just as I needed. Thanks again.

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


text:
Shrinkwrap modifier on sharp edges
Why is my shrinkwrap modifier breaking/clipping on sharper edges ? Is there any way to fix this?

Adding subdivisions to both objects, results in no changes.

Project file:

because the vertices stick to the target, not the faces, maybe add some subdivisions to your object?

Tried adding more subdivisions, no changes in the behaviour. Updated the question with a new picture.

could you please share your file? https://blend-exchange.com/

Added .blend file download in question.

the Wrap Method > Project works fine, I don't know about the Target Normal Project

I don't know how to use the project wrap method. However, I just found that increasing the scale of the wrapping object to be larger than the target object fixes the issue for Target Normal Project. The subdivisions are still needed though.

It's not documented, but I suspect the Project method with no axis specified, is Source Normal projection...

... which in this case, from your source cylinder, seems to produce a good result:


text:
Identical rigid bodies affected differently by the same force
I want to fire multiple cannonballs one after another using rigid bodies. I am trying to achieve that by placing multiple cannonballs at the bottom of the barrel and keeping them in place by keyframing the "Animated" property. The force field is not animated and its strength remains the same. Both cannonball rigid bodies are identical. They are separate objects, not instance duplicates. Yet for some reason the second cannonball is fired with different force compared to the first, as if getting "charged up" by the force, because when I move the "Animated" keyframe closer to frame 0, its ejection velocity drops. Please help.

hello please share your file

Added .blend file

The object affected by the force field will accelerate through time, here it doesn't seem like Blender takes into account the fact that at frame N the rigid body B is not supposed to get the same speed as rigid body A as rigid body B'a Animated option was disabled later. I'm not sure how to solve it, except decreasing the force field Strength value through time? But I may be wrong and I hope someone will know better


text:
How to run animation of a single object on click trigger in blender?
I am developing a blender environment of a restaurant with multiple objects like fridge, curtains etc. Each of them have some animations on them. I want to play a single animation like of a fridge opening, but the whole timeline plays. Is it Animation nodes what i am missing here?

Animation in Blenders play "all" or "nothing".
But...you can mute channels in the graph editor:

By clicking on that checkbox, the channel won't be animated anymore.
So you could set mute/unmute on quick favorite, then select your objects which shouldn't be animated, select all channels -> mute
sorry for the link, but BSE made it once again, that gifs won't upload - error > 2MB although it is < 1 MB, so here the link for explaining:
https://github.com/luckychris/blender_gifs/blob/main/mute%20animations.gif
if you wanna have a one click solution, you have to write a python script which essentially does that, what i described here how you can do that manually.

Thanks I got it. I assumed the same but was curious to know if there was any way to do that.


text:
How to render fluids?
I want to make a candle burning animation and i add a cube with smoke and fire and another domain cube, when i bake the animation it shows fine in solid mode after baking it. But when i try to render it the fluid simulation doesn't show up, its just my candle standing all alone. I have baked the animation and I have also checked the camera icon both of the objects have it on to be showed in render mode.
this is image of my animation in solid mode:

And this is the same camera angle but in render mode where the fire wont show up:

Does the domain have a material suitable for fire and smoke? Have you watched any tutorials on how to simulate smoke and fire in Blender?

Thanks for the help man I just started with rendering after watching the 1st video of tutorial. In the second video he shows that you need to add a material and Principled Volume shader node. I was too eager to render it. LOL

That's what I suspected ;) Actually many smoke tutorials start off by selecting an object which they want to use as smoke emitter and then go to the menu Object > Quick Effects > Quick Smoke. If you do this, Blender automatically adds a domain object around the emitter which already has a Principled Volume material. Only when you do it manually (like I usually do as well) you have to assign a material on your own.

yes I also added it manually but now i know a bit better (not with the help of tutorials :) ) Anyways thanks man

So what I did was render it without adding any material to the domain. to see the smoke in rendered view i need to add some material to the domain object and change the output from surface to volume as smoke is a volume. So I deleted the principled BSDF and added Pricipled Volume node and gave it a color. BOOM! now i can see the smoke in rendered view.


text:
How to reduce polycount of hair converted to mesh?
I made hair using particle system then I converted the particle system into mesh from modifiers menu. Now to give thickness to this hair I converted it to curves and beveled it, now I converted these curves to mesh again. This is the process of me getting hair particle system as a mesh.

but the face count of this mesh is too much making my pc lag. I have applied decimate modifier and remesh modifier but none of it works as it makes the hairs look completely destroyed. How can I get low face count with same or a little less detail?
I know all the parts are joined but I have checked that most faces are from hairs only.

Instead of beveled curves, you could try a simple plane with a few cuts. Add a Particle Instance modifier to the plane and make sure its orientation is correct. Here is an example: https://blender.stackexchange.com/q/230306/107598. Apply to the modifier to create the final hair mesh. The drawback is that you cannot see the hair plane when it's perpendicular to the camera's view. And depending on how many hair particles your model has, it can still create a lot of geometry.

@Blunder I am having ~300K faces for my whole model including hair is that bad, if I want to use in threejs environment


text:
How can you hide objects while animating them?
I am creating a chef model which has a knife in her hand to cut something, this is one of the animations she has. The other animations she has are walking, talking etc, where she cant have a knife in her hand.
I gave all these animations to her in the same blender file using dope sheet - action editor and gave different names to all these actions. As I want to export this model into a glb file and then import it into my 3D web environment. I do not want to render the animations.
So how is it possible that in the same glb file I can give animations where knife is in the models hand and also not in her hand in some other animations.
I tried animating the viewport display icon but all it does is makes the object invisible from the viewport and this cant be scene when I export it into a glb file.

since gltf can export material, why don't you just animate the alpha value of the material (0 -> invisible, 1 -> visible)?

@Chris i tried animating the alpha value but dont know why but the glb file shows the material same as with alpha as 1. I guess animating materials is not supported in glb

@HarshJoshi I'm 99% sure animating materials is not supported in glb, as in many other export formats as well. For the most part only transformation animations are supported, like translation, rotation, scaling. The question would be, if there is a way to animate the material in whatever software you want to use this character to do it there. But that's no question for this site.

We pop up in comments because we would write an answer if we had one, not a comment. No need to get snippy - some people can draw information or ideas from comments even if they are not full-fledged answers. You guessed animating materials is not supported in glb, I tried to sort of confirm since I know at least from other export formats that exactly this is the problem. And for the same reason you cannot animate the Alpha, you cannot animate the Transmission as the answer suggests (or the visibility as you already know). That's why I said you should check the target software for a solution.

@GordonBrinkmann Ohh sorry buddy guess I am not that good in english can you explain what you mean by check target software for a solution. I guessed that you said my question is not related to blender and I should close it.

Simply scale the knife to 0.0.0. and move it inside the character where needed.

@joshsanfelici Oh, scaling to 0, sure... that should work. Did not think of it. I just thought there surely must be a simple way in whatever software he uses the model with to disable or hide something.

@joshsanfelici I dont think that would work as I will have to animate the whole model as one and not two different things as using code i will be able to play only one animation at a time. I think changing the material opacity would have done the work but i am still unable to find any way to animate materials for glb file

There's no need to have two different objects/animations for scaling to 0 some vertices: a bone or a shape key is enough.

@joshsanfelici I dont know much about shape keys guess ill have to study that part of blender for my project

For what it's worth, animated material properties and animated visibility are in development on the glTF specification side, but not yet available as exports from Blender (as of July 2024, and expect the situation to change for the better at some point!)  In the meantime, animating a scale-to-zero is the only workable option.

@emackey yeah thanks I think it will be only way available right now. i think this is the answer i was looking for\

According to the Blender documentation on this page :

The core material system in glTF supports a metal/rough PBR workflow [...] Some additional material properties or types of materials can be expressed using glTF extensions.

Then there is a chapter on transmission stating :

Transmission is intended to represent physical materials that are solid but allow non-specularly-reflected light to transmit through the material, like glass.

So I'm guessing you could use the transmission to hide your object. I didn't see any mention of an alpha channel in gltf files.
I have no idea what gltf is, I'm just reading the documentation.

I appreciate your answer man but I tried animating the transmission but nothing happens it like the same situation where I tried to animate alpha.

Does non-animated transmission work ?

no, no matter what transmission value I put in blender but in the gltf file it shows the same result and the object is non hidden.

100% transmission will still show a glossy glass shell, I don't think that's what you want here. glTF does have alpha. But animating material properties like alpha or transmission in an export is (as of July 2024) still in progress. Meanwhile it is necessary to keyframe the scale to 0 to hide an object, as @emackey suggests in the comment thread on the OP.


text:
How to color your hair formed by particle system and then converted to mesh?
I created a model and gave hair particle system to it and later convert it to mesh using particle system modifier -> convert to mesh. Now I want to give a material to this hair mesh and I assign a new material to this mesh but It will not show that material on the mesh. What is the problem with this?

Should not it work like a normal mesh when we add color to it via materials?

What if you go in Edit mode, select all the mesh and hit the assign button in the properties editor > material tab ?

You cannot assign a material to the converted hair particles because such a mesh has no faces. It consists only of edges. Such a mesh cannot be rendered nor assigned a material. You need faces. If you want to use the model in a game engine I recommend checking out so-called hair cards. These are transparent planes that have hair drawn on them. Otherwise, you can convert the hair mesh to curves, bevel them to create faces and convert the curves to a mesh again. But beware that this creates a lot of extra geometry. Maybe extruding the edges to tiny planes with Geometry Nodes could work, too.

Here is an example of how to create planes from the hair curves. In your case, you need to convert the (old) hair particles to the (new) hair curves first. Note that you will get a lot of planes, one for each hair.

@Lauloque No, I tried it but it does not get any color. I guess Blunder is right I still have to try what the said. But thanks so the help man.

@Blunder Actually I want to export this model to a glb file and import it in three.js environment, I will not be rendering it.
I tried the first method you told but the hair wont bevel after i convert them to curve.
I will try you second method hope it works!

Here's an example of method 1. Convert the particles to a mesh as you did. Then use menu (1) Object > Convert > Curve to convert it to the old curves. (The new hair curves is Curves with an s in the name.). The icon (2) changes in the outliner. Now you can use the (3) Bevel settings in the Object Data Properties tab to create thin cylinders. The option works in a similar way to a modifier & creates a mesh from the curve object. The object is still a curve but the output geometry is mesh.For export you need to convert it 1 last time.

[...] To create a real mesh object finally, use the menu entry (1) Object > Convert > Mesh. In the example, Suzanne had 5000 hair particles. As you can see in the status bar (4) the converted mesh has now 220,500 faces. The number depends on the Resolution value in the Bevel settings. -- The advantage of hair cards is that they don't generate so much geometry, as the hair is only painted on using an image texture. It's kinda fake hair. More info about that: https://80.lv/articles/making-hair-and-beards-for-aaa-games/ and https://www.youtube.com/live/oqjKMd9CYI4

That really should be posted as an answer...

@Blunder This is it! thanks man. Post it as an answer I got it thanks buddy.


text:
Is there a way to get linear HSV sliders in colorpicker?
I noticed that the RGB  sliders under color pickers are in linear mode, while HSV are in sRGB.
Is there a way to chose to have all in linear or in sRGB ? Just to get cohesion. Do you think it's possible with an addon ?
I am asking this because if I want an albedo with a value of 0.3 for example, and a hue of 0.85 and saturation of 0.2, I have to set RGB value at 0.3 to get the good value in HSV picker, and in this one I enter Hue and Saturation. That's a bit broken to me.
Normally when converting to HSV, the value is the max of red, green or blue channel. So a color in RGB (0.5 ; 0.3 ; 0.1) should be in HSV( 0.3 ; 0.8 ; 0.5) and not (0.101 ; 0.525 ; 0.735).
Edit : I just found that it can be partially solved in the ColorManagement tab by switching display device from "sRGB" to "none", with the drawback to get a raw look in the 3D rendered view...
Edit 2 : I found a simple way to correct the raw look back to sRGB by using a gamma 2.2.

I guess it's close enough for some preview. But I lose the render view presets...

You may have a misunderstanding about HSV. Value is not the max, it is a weighted sum of the colours. HSV is designed with the human eyeball in mind, and so there are weightings giving precedence to Green. See https://en.wikipedia.org/wiki/HSL_and_HSV#Lightness

There is no conversion when changing from RGB to HSL (or HSV), the color you set in HSV or RGB is the same, all values are between 0 - 1. If you check Photoshop for instance, Hue is 360 degrees, while Saturation and Lightness are in percentage, so in Blender a Hue value of  0.5, is 180 in Photoshop, Saturation and Lightness of 0.5 is 50% in Photoshop. In HSL (HSV), a value of 0 Hue, 0 Saturation, 0.5 Lightness, will be (0.214,0.214,0.214) in RGB, sorry, but I still don't understand what the problem is.

Ok, in wikipedia it says : in HSV, V is the max of the RGB components. In HSI (intensity), I is the average of the RGB components. And in HSL (lightness), L is  the average of the max and the min of the RGB components. And finally with HSy (luma), it's the weighted average of RGB with 0.3R+0.59G+0.11R. So if you set a color in a diffuse node RGB(0.8,0.8,0.8) it should give you in whatever mode (0,0,0.8) and not (0,0,0.906) as it is actually in blender. Please do the test. It is because only RGB is in linear, the other modes are in sRGB which is gamma corrected (I think so, I am confused now)

@sdfgeoff Actually, this is part of the problem with HSV; there is no canonical reference and every application is free to implement as required. V is in fact max(RGB), for reasons to exhaustive to list here.

@tynaud You are not confused but rather trying to reconcile a bunch of crap online that amounts to paradox. What is "Value" is the question. The answer, to most folks familiar with colour, is the visual energy level of a mixture of colours. That means luminance weights for any given RGB set of colours. These are not equal, as the visual energy for green-yellow is much higher than reddish-orange, which is higher still than magenta-blueish. So even those weights you list are wrong. The proper weights are the Y position for 709 / sRGB lights. This is part of the reason behind max(RGB).

@tynaud Drop in the chat and ping me and I can offer you a bit more insight and background to the issue if you are interested.

Short answer: No. Not via the GUI widget that is. RGB should be linearized.
Longer answer: If more imagers around Blender begin to understand what an EOTF is, perhaps. The ideal solution is that all UI elements allow an imager to pick the transfer function as required by their current context. Editing normals within a given range? Use a particular linear transform. Manipulating a particular log? Use it. Etc.
Why is the widget nonlinear? Because it has to be corrected for your display output. That is, if the widget were not under a transform, and your reference were different from 709 lights, you would not see the right colour in the wheel.
There is an exhaustive thread located here for anyone interested in the nuances of this.
Until Blender chooses to permit an imager to select the colour transform required on a UI element, this is an impossible situation to solve for all imaging contexts.
Also, as stated many other places, not using a display transform and forcing a power curve is far from ideal and should be avoided at all costs. A better path is to have your voice heard and have Blender fix the broken colour pipe UI paradigm.

There are 5 different color picker modes that you can choose among in Blender, you can choose the one that suits you best from File > User Settings > System tab. Remember to save user settings if you want to keep the changes you make when you start up Blender.

Sorry, I think I wasn't clear in my question. Actually it changes the look of the colorpicker, but how it represents the value under it (RGB, HSV, HEX) is always the same. I mean the RGB value are in linear space, but the HSV and HEX are in sRGB (which is gamma corrected). I will edit my question to explain more my problem.

I asked this same question in the Blender devs. In my case I needed a RGB value in the range 0-255 and not in the linearized values 0-1. And is not the same. The colors do not match when trying to get the exact color in non linear fashion. Blender should have the non linear method available. Someone andswered this in the thread:
I'm afraid, that's not correct. Blender color picker for RGB is in scene linear not sRGB color space, hence the value are in the 0.0 to 1.0 range. This is a scene referred workflow, while applications like Photoshop use a display referred workflow. If you want to input colors in sRGB color space (values with "gamma correction" applied) then you need to use the Hex input.

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


text:
Normalize all objects scale and rotation transforms
I have an imported .blend file, and some of the objects in the file look the same but have different scales and rotations. When I clear transform the objects wheels, frame, etc. (it's a bicycle) don't fit anymore. So my question is:
"Is there a way to make the objects vertices locations match the mesh's vertices locations i.e. make it look the same even when scale is cleared?"
before clear scale

After clear scale

Can you add more info/screenshots/a .blend file?

Don't clear the rotations and scales, apply them instead. Use Ctrl A > Apply Rotation and Scale. Don't apply position as it will remove any meaningful center you objects might have

It seems there is parented objects to empties.
Select all objects
Alt+P > Clear and Keep Transformation
U > Object & Data (this is for linked duplicates)
Ctrl+A > Rotation & Scale

Worked! It seems that all I needed to do was the last step "Ctrl+A > Rotation and Scale"

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


text:
how to remove reflective shadows
I have the below scene in Blender Cycles.

To create volume of the bike's lights I've added two cone meshes.
Here, you can see when I render the scene the cones are creating black shadows on the rays, how can I remove these reflective shadows?
I thought it is happening because the cones are intersected with the rays object, that's why I added boolean modifier to make them intersection free, but that didn't do anything.
Am I missing something in my node setup?
I've attached my blend file as well, please let me know how can I get rid of this?

Turn off ray visibility for shadows (you only need camera on) or use a light path node for more control.

Increase Transparecy bounces
The more objects you add, the more interfaces the light should bounce off to reach a surfaces. This is true also if your objects let the light pass through, like the volumetric and transparent shaded cones are doing.
The black shadow is due to the low number of Transparent bounces allowed in your scene (compared to the scene complexity from this point of view). Light path are being terminated before reaching any light source, so they render blck.
You should increase at least the Max Transparent bounces filed found in Light Path panel by some units.

I had a similar issue when I applied a sub surf modifier to one of my models. I was able to correct it by recalculating the normals. You select all with A and press Ctrl+N

Thanks for your answer :) but I've just tried out this, it is still the same.


text:
Gradient following the shape of a face
In blender 2.79, I was able to create a gradient following the shape of a face (like a ngon circle with 8 edges) using the parametric output of the Geometry node plug into the quadratic gradient.
But it appears that it was a bug in 2.79 that has been corrected in 2.8.
Is there a way to reproduce this gradient using the node system in 2.8 ?
Thanks for your attention.

Edit :
I find this way to have a nice gradient with corners (I don't want a spherical gradient), but it doesn't follow the shape of the face, unfortunately :


text:
Rotate object on local axis using a slider
I have an object already rotated on X,Y axis and I'm trying to find a solution to use the value of a slider to rotate this object on it's 'Z' local axis.
I've made an little script to explain my problem. You will have the create a new scene, rotate the default cube using RR on all axis, then use the script :
import bpy
from bpy.props import FloatProperty
from mathutils import Vector, Matrix, Quaternion, Euler
from math import degrees, radians

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

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

        obj = context.object

        row = layout.row()
        row.label(text="Active object is: " + obj.name)
        row = layout.row()
        row.prop(obj, "name")

        row = layout.row()
        row.prop(context.window_manager, "rotate")

def get_rotation(self):
    try:
        rotate = self["rotate"]
        #-- Here, the cube is always spinning...
        #obj = bpy.context.object
        #obj.matrix_world *= Matrix.Rotation(radians(self["rotate"]), 4, 'Z')
    except KeyError:
        self["rotate"] = 0
    return self["rotate"]

def set_rotation(self, value):
    self["rotate"] = value
    #-- Here, it's working at the beginning, but fail when going toward 0.
    obj = bpy.context.object
    obj.matrix_world *= Matrix.Rotation(radians(self["rotate"]), 4, 'Z')

def update_rotation(self, context):
    pass
    #-- Here, it's working at the beginning, but fail when going toward 0.
    #obj = bpy.context.object
    #obj.matrix_world *= Matrix.Rotation(radians(self["rotate"]), 4, 'Z')

def register():
    bpy.types.WindowManager.rotate = FloatProperty(name="Rotation", description="Rotate object.",
                                                    get=get_rotation, set=set_rotation,
                                                    update=update_rotation)
    bpy.utils.register_class(HelloWorldPanel)

def unregister():
    del bpy.types.WindowManager.rotate
    bpy.utils.unregister_class(HelloWorldPanel)

if __name__ == "__main__":
    register()

As you can see, when using the script, the value of the slider will be add to the rotation, instead I would like the rotation to match the value of the slider. I've tried with an update and the getter/setter, but i failed to find a solution. I don't know if it's possible without an operator. thanks a lot for your help.

IIRC I tried something similar to this For a pitch / roll / yaw panel with limited success. As usual with Eulers come up against gimbal lock, where another axis offset rotation solution prevails.  Would need some way to check for the "jump".

Thanks a lot batFINGER ! It's exactly what i was looking for. Really nice and easy to understand.

I'm copy/pasting the solution from @batFINGER so I will be able to change this problem to solved. Thanks.
import bpy
from bpy.props import FloatProperty
from mathutils import Vector, Matrix, Quaternion, Euler
from math import degrees, radians

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

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

        obj = context.object

        row = layout.row()
        row.label(text="Active object is: " + obj.name)
        row = layout.row()
        row.prop(obj, "name")

        row = layout.row()
        row.prop(obj, "rotate")

def get_rotation(self):
    return self.rotation_euler.to_matrix().to_euler('ZYX').z

def set_rotation(self, value):
    rot = self.rotation_euler.to_matrix().to_euler('ZYX')
    rot.z = value
    self.rotation_euler = rot.to_matrix().to_euler(self.rotation_mode)

def register():
    bpy.types.Object.rotate = FloatProperty(name="Rotation",
            description="Rotate object.",
            get=get_rotation,
            set=set_rotation,
            unit='ROTATION')

    bpy.utils.register_class(HelloWorldPanel)

def unregister():
    del bpy.types.Object.rotate
    bpy.utils.unregister_class(HelloWorldPanel)

if __name__ == "__main__":
    register()

By using obj.matrix_world *= Matrix(...) you apply the rotation on top of the existing matrix, which explains the behaviour you're seeing.
Rather than changing the matrix, why not go to the source of the rotation itself, the rotation_euler property? You can just do obj.rotation_euler.z = radians(self["rotate"]) and let Blender to do the matrix math for you.
Alternatively you could use a driver that reads that particular window manager property.

I tried it, but I need to rotate the object on it's local axis. Using rotation_euler.z doesn't work if the cube is already rotated on the x, y axis.

@Clarkx  Are you after the effect of pressing RZZ ? (Whereas your script appears to rotate globally about Z.)  The eulers are the combination of multiplying each axis rotation in an order.  Changing the order (eg ZYX) will effect which one is a single (only changes one value when rotating)  axis of revolution with the others non zero.  For this case using the local rotation properties as outlined in answer would suffice IMO.  Otherwise maybe converting from one order  to the other to have consistent window manager prop could be a way to go about it.

Yes, that's exactly what I want. I've edited my problem to explain exactly what i need. Sorry if it was not clear enough. Regarding your answer batFINGER, if I change the  rotation_mode to 'ZYX', this will change my local axis accordingly. Thanks to both of you to taking the time !

Try Changing the line:
obj.matrix_world *= Matrix.Rotation(radians(self["rotate"]), 4, 'Z')

to
obj.matrix_world = Matrix.Rotation(self["rotate"], 4, 'Z')#input in radians

or
obj.matrix_world = Matrix.Rotation(radians(self["rotate"]), 4, 'Z')#input in degrees

This would lose any translation or scale that was there.

yes, and i have tried to decomposed the matrix, but it will end with the same problem, thanks anyway


text:
Blender 3.6 LTS Bone constraint highlight on custom shape bones?
When a constraint is placed on a bone that doesn't use a custom shape, it gets a green color highlight. Seems like by default, bones which use custom shapes don't get a green color highlight when a constraint is placed on them. Is there a way to enable this highlight for bones which use custom shapes?

You can't force a bone to have the constrained bone's highlight specifically, but since Blender 4.0 you can assign colors to bones no matter their custom shape or constrained state:

Although people usually use these colors to differentiate controllers that have specific jobs (I.E. light blue for tweak bones) or correspond to groups of body parts (main body in yellow, ik limbs in red, fk limbs in green, or red-blue for left-right limbs, ...).
Before v4.0, colors had to be set on bone groups instead:

I am forced to use 3.6 LTS version of Blender, I can't find this option. Is this possible in 3.6 LTS ?

see my answer edit

This only works when bones are not already assigned to a group. I wonder if it's possible to use a python script to check for bones with constraints on them and automatically change their custom shape color without using groups.

That would be possible if you even had a per-bone viewport color property to begin with. Which was introduced only since v4.0.


text:
Object Becoming Transparent When Rendered
When I preview the render of my shot the skateboard/skateboard texture is transparent when it should be solid. The second picture is what it should(?) look like. As to how I set the scene up; I motion tracked the clip and used a floor that was generated by that. I imported the skateboard model. Using cycles render I made a new material and set the color to image texture and used the texture image that came with the model. After following a few tutorials a set up the three nodes belows.
Any help is greatly appreciated.


text:
Tracing a light ray with paths
I'm trying to simulate optical rays within blender and am not really advanced within coding for blender or using BGE, so I figured I'd come here for help.
The setup I'm making involves animated surfaces, from which I'd like to reflect a light ray off using a path. Currently I've only managed to do it using the Particles system, however their speed is much too limited in comparison to light speed, to the point the simulation is completely inaccurate.
Ideally I was thinking of a raycaster object that added a vertex to the path whenever it collides with another mesh, gets properly reflected and repeats the cycle until there is no collision left. This would satisfy the need for an "instant" light beam. I, however, have no idea how to do this.
There's this question (How to trace light rays) but the guy gave a reply which doesn't really answer it.
If you have any idea how to do this, please share it - it may be of use to someone else too.
Thanks.

You might look into the ray_cast functionality. Specifically https://docs.blender.org/api/blender_python_api_2_71_release/bpy.types.Scene.html#bpy.types.Scene.ray_cast and https://blender.stackexchange.com/questions/50716/strange-object-ray-cast-behavior


text:
Change origin of collections
I am trying to animate a fbx imported file originally made in solidworks, since it was made in solidworks all the parts are in different layers. In order to change the rotation pivot I need to change the origin however nothing happends when I try going the object/set origin route.
Is there a way to change the origin of collections or merge a collection to a single object so I can change the origin?
There are serveral hundreds of subcollections so I cannot select them individually.

https://blenderartists.org/t/collection-utilities-addon/1229359

The only way I think you can solve that is by pressing alt-p to clear parent and keep transformation then set the origin to geometry, after that you are free to delete the useless empty and start animating.

Okay this removed all the layers but I'm still not sure how to set the origin to where I want (I am very new to blender).
Here is an image for the part i want to rotate, I want the pivot point to be the hinge but now it is the center of the selected parts.
https://i.imgur.com/gzyo0oj.jpg


text:
Paint high-poly mesh and then bake for low-poly, OR just paint low-poly with normal-map applied?
I recently completed my first sculpted game character including rigging and animation. I am still desperately trying to find reasons to do PBR texture paint in blender 2.8 rather than substance but I am still on the fence. For the time being I used only blender cycles.
The steps I took:

Sculpted a very high poly character.
Created a retopologised (low-poly) version of this character.
Baked a normal-map from the high-poly sculpt onto the low-poly mesh.
Added the normal-map to the low-poly mesh and then painted that in texture painter.

My question is "Is it better in general to paint the high-poly sculpt and then bake all the textures (diffuse/albedo, roughness & normal-map) afterwards?"
The upside I can see to that approach might be that if I need to adjust the resulting tri-count of the low poly model I don't need to repaint - I can just make now low-poly mesh and then re-bake accordingly.
I see some quite conflicting information online.
One thing I noticed in painting the low -poly mesh with normal-map applied is that occasionally the paint landed slightly off the target I was aiming for because of the real topology underneath.
The efficacy of workflows can be subjective but I am interested to know if my suggested workflow is better than the one I used or not.
Thanks in advance.

The upside I can see to that approach might be that if I need to
  adjust the resulting tri-count of the low poly model I don't need to
  repaint - I can just make now low-poly mesh and then re-bake
  accordingly.

Well, you could totally keep your old low poly and bake diffuse onto the new one, which would be basically the same.
To answer you question I would prefer to paint directly on the low poly, for the simple reason that what I see when painting will be the end result, and I don't have to unwrap my high poly. Any texturing software like substance painter is made in order to paint directly on the low poly for this reasons, and others (performance!).
Baking diffuse from high to low poly is useful though, in case where you didn't think you'd need a low poly version, but you find out that you actually do after painting your 'high poly' version.
Another reason might be if you want a very low poly version with lots of normal map details (typically, a robot or mech model with lots of screws and small parts). In this case you would texture every parts and bake normal and diffuse, and then do another painting pass to tie it all together and correct baking issues. You DON'T want to manually paint the diffuse of your normal details when they are already baked.
Substance painter is able to generate masks based on normal details 'geometry', which allows to texture normal details (I think it's called 'micro-details' in the software) but Blender don't.

One thing I noticed in painting the low -poly mesh with normal-map
  applied is that occasionally the paint landed slightly off the target
  I was aiming for because of the real topology underneath

I see what you mean, but this might be due to some stretching in your UVs, or worst: overlapping (but you'd know). Or perhaps your texture resolution is too low compared to the details you want to paint.

Thanks very much for these response. Seems to make sense. I gathered that substance painter prefers to paint the low poly as we have the option for it to bake to normal for us, so that makes sense. I am still fairly new to blender and 3d art in general. Still trying to get my head around texturing with masks and things. It has been fun to play around with nodes to create PBR textures but I am wondering if I should just get a substance license as it seems like the workflow could be massively faster.

If you are serious about 3D go for it, get a license! But if it's just a hobby and not a job you can do A LOT in Blender. I find that baking is just as fast, same for painting, but substance has a lot of user made procedural textures that adapt to your mesh so you don't have to worry about seams and that's a big time saver and will improve the quality of your models if you are going for realism. But for stylistic, hand painted texturing Blender is just fine. Edit: don't forget to mark my answer as one if it helped.

Ok good feedback thanks. I am serious about it but I am on the beginning of a long journey. I am surprised how quickly I am improving. I find just simple things like creating layers with node editor is a bit cumbersome but I think I will persevere as I am not going for photo-realism, just believable stylized. And robots. Thanks. I'll mark as answered.

If you need a tutorial on creating layers in node editor I actually made one that is going strong on youtube https://www.youtube.com/watch?v=nSByASy15-4

Ah you legend! I have used it. I left a comment a few days ago that said "Thank you so much. There are some nice blender 2.8 PBR texturing videos by Jayanam which are also really good and I still use them, however....they just didn't show how it is possible to create extra layers that use multiple colours, only a mask to paint one colour in a second layer. This is what I needed. As you say... "fucking awesome" :D"! haha that's brilliant. I was actually the last person to comment. Hello again!

It has definitely helped me along and I understand it better now for sure. Still unsure about thew role masking plays and how I might use pre-built materials on certain parts of the mesh. I simply have not had time to look into this yet. Thanks again for the tutorial! :D

It's a small world/community! Loved your comment :), you'll figure it out fast, just keep yourself going with small personal projects!

Thanks very much! Yeah I am finding a new or better approach as soon as I finish every sculpt currently so it really feels like I am making progress. I cannot draw to save my life so it feels very satisfying to finally have an artistic outlet apart from computer programming :D Thanks.


text:
How to use simple deform to bend geometry in a circle?
I feel like something is just going way over my head here and I'm missing something really trivial. I'm doing a Grant Abbit well tutorial. I created a set of cubes along the x axis to use as the rocks for the well. I added a simple deform modifier. If I set it to bend at the z axis at 45 degrees, it makes a weird fan shape. I did also try making the origin set to an empty and that just swings the fan around.
File download: https://pasteall.org/blend/e826991d5a5e4e3b8f94e0ec92ff333f

maybe you rotated it in Object mode? Try to apply your object rotation...

Ok I just tried appplying all transforms and the same thing happens

So I just tried using the simple deform on an object that is by itself and not joined by other objects and it acts the way I would expect it to. So something about have mutiple joined objects is screwing it up

mmh maybe share your file so that we can understand what's happening though...

Sorry I'm also trying to figure that out. I've always used blend exchange, but it hasn't been working for me recently. My filesize is less than a mb. Do you know any other way I can upload it?

try this one: https://pasteall.org/blend/

This work?
https://pasteall.org/blend/e826991d5a5e4e3b8f94e0ec92ff333f

'Simple' Deform scrambles my head unless I target it on an axis-arrows Empty for its origin/orientation, and rotate/move the Empty. I think that makes it easier to try orientations out, and see what's going on.

Your object is currently aligned with the Y axis, it needs to be aligned with X axis, so rotate it 90°, apply the rotation with CtrlA and it should work.

Agh once I rotated it onto the x axis and applied the transforms it worked. That's kind of an important point that should be included in tutorials. Thanks!


text:
How can I get the orbs to stop jumping around?
Made with GeoNodes. How can I stop the orbs from jumping around? Version is Blender 3.1.

Video Link: https://youtu.be/asyiEA4VYm0
File Link:

Sorry I could not help as I am still using Blender 3.6, but I find suspicious the "Warning" signs displayed for most of the nodes. Could you give us the message displayed when moving the mouse over ?

@StefLAncien It's the same in Blender 4.02 and 4.1 with most nodes titled 'Undefined' and displayed in red with no 'orbs' visible so I don't know where they came from or what they are supposed to do.

@StefLAncien It's just a notification. "Legacy node will be removed before Blender 4.0" Nothing that would cause an issue now.

Could you write in the question the Blender version you are using ? Point Scale node is documented for Blender up to 3.0...

@StefLAncien added it. Blender 3.1

The screenshot is taken in Blender 3.1, but those are pre Blender 3.0 nodes. It is the old system, some people like me never learned that one :D


text:
What is NURBS method?
I am modelling a series of objects which have mostly curves in them. I heard of a method to efficiently do this, the NURBS method. Is it efficient for making curve heavy models like archs or are there better options?

Have you tried using it in Blender ? What kind of model do you want to do ? Can that help : https://www.google.fr/webhp?hl=fr&ictx=2&sa=X&ved=0ahUKEwirspjW_r3OAhVGfRoKHfRRBk4QPQgD#hl=fr&q=blender+nurbs+modeling ?

No I havent used it before. mostly arcs for architecture .

Please improve your question.  You might want to state concisely what you know about NURBS, demonstrating some basic research.  Otherwise it seems you want someone to implicitly do a web search for you.  You should also include some images of the work you have done in your question to show more effort.  You might be emphasizing NURBS as opposed to NURBS method in your question.  Please be clear.

Your last question is rather vague and broad.  [how do i efficiently make my models?].  I did not happen to give you a down vote.  I am just thinking about rational and unstated reasons another reader would.  This site BSE is not a tutorial site and your last question sounds like a request for a lengthy  tutorial.  Changing or deleting that last question would improve your entire question.

Sorry, it was a mistake. By "how do I efficiently make my models" i was referring to what method would be best to use in my project(spline modelling, poly modelling etc.)

NURBS stands for Non Uniform Rational Bezier Splines . They are a way of defining curves in 3D space through mathematical formulas.
NURBS surfaces are a method of 3D modeling using said curves to define object surfaces, as opposed to using a mesh based polygon subdivision method.
It works well with Boolean operations, trim surfaces, and intersections, and it's workflow is mostly based on defining loft curves and sections to build surfaces.
It is very precise and accurate method, mostly used for hard edge modeling objects with basic geometric shapes or flowing aerodynamic surfaces. It's often utilized in mechanics, or automotive design, aircraft or boat conception mainly in CAD based software, not animation or 3D modelling like Blender.
Blender has basic NURBS support but it is a stub at this point, with incomplete functionality and barely usable at all. If you really need to use NURBS you are strongly advised to look into other software, as it currently stands it is not production ready.
The bad news is there are no good free or open source alternatives, you may look into FreeCad,  or MoI  or Rhino  or Catia
See here for some basic Blender NURBS tutorials

Thank you for the answer! NURBS modelling might open up many doors for me even if it is a stub in blender currently.


text:
How to animate a set of 2-D data points described in a csv file?
I have a set of say 20 data points whose x and y coordinates are available in a csv file at each frame . I have 1000 sets of this data with each set describing the location of 20 data points at a given instant (say frame).So essentially i have information about how these 20 points move about in 1000 frames . How to animate the movements of this points as a function of time in blender from the csv file.
Other Questions on the site have described how to read csv files using python etc but none seem to describe an approach to a complete solution for a problem of this kind.
Note : I don't want to interpolate these points to get a mesh  .I just want to observe how these points move about with time as mentioned in the file.
An example of the set of columns in csv file:
Point ID  , X ,Y , time ,color
It would also be nice if you could tell me how to represent these points by circles centered around the respective x and y .
A sample file for illustraion: The following file contains a sample of data but in the form of a spreadsheet instead of csv.The time is in units of seconds
http://jmp.sh/v/JfC1Qdh0RTZ85kKzR3lS

related: http://blender.stackexchange.com/questions/6899/animate-with-position-and-orientation-from-txt-file?rq=1

I'm going to recommend that each point be represented by a circular mesh (You can create a prototype pretty easily using the Add/Mesh/Circle menu entry).  You will then add keyframes for the location data.
There are other answers about importing CSV data:

python script to read in .csv file containing quaternion coordinates and turn it into a path/curve for an object to follow

Here's the excerpt about keyframing position:
def keyframe_location(obj, fname):
    with open(fname, 'r') as loc_fh:
        r_loc = csv.reader(loc_fh, delimiter=',')
        i = 0
        for row_loc in r_loc:
            row_loc = [ float(x.strip()) for x in row_loc[:3]]
            fr = 10+2*i
            obj.location = row_loc
            obj.keyframe_insert(data_path="location", frame=fr)

            i = i+1

You will likely want to instantiate the graphical objects representing the data points using techniques similar to http://www.purplefrog.com/~thoth/blender/python-cookbook/link-mesh-array.html
import bpy

def army(mesh):
    scn = bpy.context.scene
    for r in range(10):
        for c in range(4):
            obj = bpy.data.objects.new("army", mesh)
            obj.location = ( r*3, c*3, 2)
            scn.objects.link(obj)

army(bpy.data.meshes["Cube"])

Any complete solution is going to integrate answers to about 10 distinct questions.


text:
Export material from Cycles for Cycles?
I saw this question and learned it's very tricky to export material from Cycles for other applications' use. So let me clarify: I only work with Blender.

Previously while I was working with BI, I can export a plane as a .obj file specifying the geometry and an accompanying .mtl specifying the material, such as specular and diffuse colors, etc. If I import this .obj file back to BI, I get every setting back.
Now I switch to Cycles. I create a glossy material for my cube and export it as usual. Now if I re-import this .obj file back to Cycles, my material settings are all gone.
Before exporting

After re-importing

What is the proper way of exporting a Cycles material?
P.S.: It would be wonderful if the answer could be given from the Python API perspective. :-)

If you only work with blender, why not simply save as blend file?

I don't want other things in the blend file (such as lighting, rendering settings, etc.) to carry over. Basically, I only want use the final blend file to collect all the objects and their material. Maybe even in this case, saving as blend file is still the best solution? Could you elaborate? Should I just build the objects in a newly opened blend file, just save it, and then append this blend file to the final blend file? Thanks!

Save your materials into a normal blend file.
A blend file is a database and you can use only selected parts (data-blocks) from it. This is done using linking and appending. See this: What is the differance between Linking and Appending an external blend?
This is also possible in python: How to Link/Append a data-block using the Python API?

As already mentioned, if you only use blender then materials can just be imported directly from another blend file.
As you are interested in a python approach, there is an old addon that may be of interest to you. The Online Material Library addon was in the contrib addons for some time but has been removed, it gave the ability to export/import cycles materials to an xml file. I still keep a copy of the addon in my git repo if you are interested in taking a look.


text:
Script Rotation around global axis
It seems I've been generous on questions lately. But being a Blender newbie it can't be helped.
I was wondering if there is a simple way of rotating an object around a global axis (or any other axis, such as the ones I defined in the custom frame) using a python script.
I read a decent explanation here, but I was wondering if I am missing something:
Rotate objects around their origin along a global axis (scripted) without bpy.ops
What I mean is, if it is possible to simply rotate an object in the blender in 3d View around any of the global axis, then shouldn't there be a simple command in python which allows to specify which frame I want to rotate in (global, local, gimbal or custom), and then apply rotation.
So for example, it appears that I would not be able to rotate my object in a custom frame using the method given in the link I provided above.
I would greatly appreciate your help!


text:
UV map distorting on flat face

As you can see in the picture I have flat faces mapped to a texture but on the model they're being distorted (especially around G2 and G3). I've tried things like triangulating my mesh and adjusting the mapping and unwrapping types but no luck.
Please any help would be appreciated
EDIT:
I've noticed the shapes don't match, if I ask blender to unwrap that face only it gives me a wrong looking shape:

If I project from view it seems to give a much better appropriation of the shape:

the profile on G3 (bottom right cube) does not seem to correspond to the UV map on G3... did you moved the vertices in the 3D view after the uv unwrap ?

No, good catch tho I just updated the main question

is the face flat in the image of your edit ? If yes, how did you unwrap ? project from view ?

I had that face selected, pressed u and then used unwrap. If I use project from view that gives a better shape, updated question

yes "project from view", if you are face to the face in ortho (and select only the wanted face) will allow you to have the exact same positions

Be sure to make the project from view from the 3D ortho view


text:
is there a way to "associate" Actions with Armatures?
i have several slightly different armatures (copies of the original one with rescaled or added bones) and numerous actions. some actions are supposed to be shared, some will be used by only one of the armatures. is there a way to sort of associate certain actions with certain armatures to make it easier to find out which armature supposed to use which action? armatures will be exported, not used inside Blender.

found out it can be seen in Outliner - animations are listed as armature's children!


text:
is it possible to grab and move child bone and make parent's rotation follow it?
i'm trying to make it so that child bone can be grabbed and moved in Pose Mode while being connected to the parent bone, while parent bone rotates to face it's child and doesn't stretch. imagine a neck and head bone, where head always faces forward, but neck rocks the head back and forth.
i can do something similar by disabling "Inherit Rotation" on a child and then rotating the parent; also, something similar could be done with IK, but it requires extra bone or two.

What you described is basically an IK chain.  Am I missing something?  I suspect you also want FK manipulation mixed in, but the question is unclear.

yes, it is basically an IK chain, BUT the child with IK constraint will also be pointing it's end towards IK target. i want to be able to rotate the child individually, so it won't depend on anything else.

i mean NORMALLY the child would be pointing towards IK target, but i don't need that. i was trying to make it so that the child would keep it's initial rotation no matter where it gets moved, so it could be rotated as any usual object.
i could turn the child into IK target, but then it will be disconnected from ex-parent and i need it to be connected.

you are self contradicting: " the child with IK constraint will also be pointing it's end towards IK target" followed immediately with "i want to be able to rotate the child individually".   You can't have both. The follow up comment makes no sense.   You might want to take a step back and think about what you really want

I recommend re-wording your question to state your goal, and strip out your guesses and speculation

"the child with IK constraint will also be pointing it's end towards IK target"  - i mean that's what would normally happen, i don't need that.


text:
Mapping an Aitoff projection onto a sphere
Is it possible to map the attached image of the Cosmic Microwave Background (CMB) onto the exterior of a sphere in Blender? The few tutorials I saw use either sphere projection or mark seam, but those do not seem to reproduce the shape of this projection in the UV/Image Editor. By the way this is called an Aitoff projection.
Thanks a lot in advance.

Do you need a UV map or a material nodes setting to do it?

@lemon What would be the difference? Sorry, I have little experience with Blender.

Actually, I went around my problem by converting this projection to an equilateral projection using the NASA software G.Projector, and then I could follow other tutorials for the mapping.

I've found a way to do, it's like a bypass so maybe you won't like it, but at least it works not too bad ah ah.

Find an Aitoff projection with longitudes and latitudes, for example the earth (if you come from this planet).

Create a UV sphere with half the amount of longitudes and latitudes: here it makes a 12 segment and 6 ring sphere.
Mark a vertical seam.

Unwrap.
On the UV/Image Editor stick each vertex to the point it is supposed to stick to. As there are half the amount of longitudes and latitudes it won't be tedious.

If you want more precisions you can pin this first unwrap, add edge loops around your sphere and re-unwrap (here in my picture, more latitudes). Doesn't need a lot of adjustments this time.

Give your earth a Subsurf modifier. Check if it's about correct in Rendered mode, i.e. if it looks like the actual earth (whew, it does).

Duplicate your sphere, give it a new material, this time load your CMB picture in the Image Texture node.

Oh yes, this is a great workaround! Better than what I did until now in any case.

glad you like it because it's a kind of trick, hard to find a way to properly unwrap, it looks like the Aitoff is pretty particular, but maybe someone will find another way?

I think if it's a one time thing (as it is the case for me), you could maybe double the number of segments and rings and spend more time on adjusting the vertices to obtain a very smooth map, isn't it?

Yes, I've edited, use the pin tool if you want to add edge loops, it will make it more precise  ;)

Here is by the way how it looks like after converting the projection to equilateral, as I mentioned in the comments of the question: https://ibb.co/GVpD8HY

Hammer Projection

Nodes on left, UV map on right
A while back, sh*t like 6 years ago,  I wrote a number of map projections, including Mercator and among them the Hammer, close relation to Aitoff which I've cleaned up for blender 2.8

UVMap result on default UV sphere
To use, run the script in text editor, or install as addon. Adds a Hammer projection entry to the UV mesh edit mode menu.

from numpy import sin, cos, sinc, arccos
from mathutils import Vector, Matrix
from math import degrees, pi, sqrt
import bmesh
import bpy
bl_info = {
    "name": "Hammer Project",
    "author": "batFINGER",
    "version": (1, 0),
    "blender": (2, 80, 0),
    "location": "View3D > Mesh > UV UnWrap > Hammer Project",
    "description": "UV Hammer Projection",
    "warning": "",
    "wiki_url": "",
    "category": "UV",
}

class Spherical:

    def __init__(self, vert, north=(0, 0, 1), long0=(0, -1)):
        self.vert = vert
        self.north, self.long0 = Vector(north), Vector(long0)
        v = vert.co
        R = v.length
        lat = pi / 2 - self.north.angle(v)
        is_pole = v.xy.length < 0.0001

        long = 0 if is_pole else v.xy.angle_signed(long0)

        self.R = R
        self.lat = lat
        self.long = long

    def __repr__(self):
        return "%.3f, %.3f, %.3f" % (self.R,
                                     degrees(self.lat), degrees(self.long))

class HammerUV:
    def x2(self, lat, long):
        a = 2 * sqrt(2) * cos(lat) * sin(long / 2)
        b = sqrt(1 + cos(lat) * cos(long / 2))
        return a / b

    def y2(self, lat, long):
        a = sqrt(2) * sin(lat)
        b = sqrt(1 + cos(lat) * cos(long / 2))
        return a / b

    # Aitoff equations (no joy)
    def x(self, lat, long):
        a = arccos(cos(lat) * cos(long / 2))
        b = 2 * cos(lat) * sin(long / 2)
        return b / sinc(a)

    def y(self, lat, long):
        a = arccos(cos(lat) * cos(long / 2))
        b = sin(lat)
        return b / sinc(a)

    def uv(self, face, uv_layer):
        ''' Map a UV face '''
        # see if face is east / west
        c = face.calc_center_median()

        for l in face.loops:
            luv = l[uv_layer]
            # apply the location of the vertex as a UV
            p = self.pts[l.vert]

            lat, long = p.lat, p.long  # % longfix
            # quick hack for now.
            if l.vert.co.y > 0:
                if c.x < 0 and long > 0:
                    long = -long
                elif c.x > 0 and long < 0:
                    long = -long

            u, v = self.x2(lat, long), self.y2(lat, long)
            uv = self.translate + self.scale @ Vector((u, v))
            luv.uv = uv

    def calc_uv(self):
        bm = self.bm

        uv_layer = bm.loops.layers.uv.verify()

        bm.select_mode = {'FACE', 'VERT'}
        bm.select_flush_mode()
        bm.select_flush(True)
        # adjust UVs
        for f in bm.faces:
            self.uv(f, uv_layer)

    def __init__(self, me, bm):
        def pt(v):
            s = Spherical(v)
            return s

        # add a new uv map
        uv = me.uv_layers.new(name="Hammer")
        me.uv_layers.active = uv
        self.bm = bm
        # spherical coords for verts
        self.pts = {v: pt(v) for v in self.bm.verts}
        # radius average of calc'd s.R
        self.R = sum(s.R for s in self.pts.values()) / len(self.pts)

        # scale UV to [0, 1] make scale matrix
        scale_x = 0.5 / self.x2(0, pi)
        scale_y = 0.5 / self.y2(pi / 2, 0)
        self.scale = Matrix([[scale_x, 0], [0, scale_y]])
        # and transform vector
        self.translate = Vector((0.5, 0.5))

class UV_OT_HammerProject(bpy.types.Operator):
    """Create a Hammer Projection UV Map"""
    bl_idname = "uv.hammer_project"
    bl_label = "Hammer Project"
    bl_options = {'REGISTER', 'UNDO'}

    @classmethod
    def poll(cls, context):
        return (context.mode == 'EDIT_MESH')

    def execute(self, context):
        obj = context.edit_object
        me = obj.data
        bm = bmesh.from_edit_mesh(me)
        merc = HammerUV(me, bm)
        merc.calc_uv()
        bmesh.update_edit_mesh(me)
        return {'FINISHED'}

def unwrapmenu(self, context):
    ''' menu item '''
    self.layout.operator("uv.hammer_project")

def register():
    # add to edit mesh > UV menu
    bpy.types.VIEW3D_MT_uv_map.prepend(unwrapmenu)
    bpy.utils.register_class(UV_OT_HammerProject)

def unregister():
    bpy.types.VIEW3D_MT_uv_map.remove(unwrapmenu)
    bpy.utils.unregister_class(UV_OT_HammerProject)

if __name__ == "__main__":
    register()

Since it is a UV mapping can also use it on other spherical meshes like the icosphere

I added the code for the Aitoff projection, but have not quite managed to get that one "steady", not sure about the sinc(...) method required for that one.
Using Nodes
In https://blender.stackexchange.com/a/159492/15543 dabbling in nodes I came up with a node setup to generate latitude longitude using object texture coordinates.
Basically the equivalent node setup to the script above, generating the UV and feeding into texture node.

Tissot index hammer projection image from wiki by Justin Kunimune CC BY-SA 4.0

nice! but I can't make it work on my 2.79 version, when I press U to unwrap I can see Hammer Project in the pop-up menu but nothing happens...

Clearly marked as being for 2.8. There are changes in API regarding uv layer name.

Yes but it doesn't work for me in 2.8   :/

Added gif of me using it in 2.81.  There's not much I can do about it not working for you based on the comment "it doesn't work for me"

no problem, I was just testing, Jxx is the most interested ;)  edit: this time it was displayed in the unwrap menu but no result in the UV/Image Editor, but this is an old version of 2.8, so maybe it's the problem

Thanks, that looks great! I will give it a try tonight and see if it works on my 2.8 version.


text:
Problem with 3D printing my blender mesh [Inverted Print]
So, I have a mesh that I've made in blender 2.8.
When I went to print it / send it to the slicing software, it showed up completely inverted. Inverted as in all the hollow spaces printed but nothing else. The following is the blender image (what it's supposed to look like) vs the slicer img (the inverted mesh). If anyone knows what this is happening / inverted it would be extremely helpful. This is for my school project which is due next week so I'm very rushed on time. Thank you!
(PS. I've checked all the problems that generally occur, even the ones that seemed unrelated but it still doesn't work. Normals are correct, it's a singular object, all modifiers have been applied, etc.)

This is the selected Non-Manifold faces

I've fixed this now, (also there were no interior faces) and I reloaded a fresh STL export into the slicer, and it still happens. Any ideas?

Please make sure your object is Manifold : In edit mode, unselect all, then Select menu / Select by Trait / Non manifold ;  if some faces are selected, they're problematic (please edit your question and show a screenshot of those faces). Do the same with "Interior Faces".

Alright, I changed a few things and it worked. I think the biggest issue was the non-manifold stuff, so thanks :).

One possible thing to check in this case is if object scale is negative. It can be done by applying it and then checking normals orientation (in 2.8 inverted faces in default shading won't be grey so you have to make sure to check that)


text:
Python - How to Add a Text Field to the UI?
I'm trying to create a text field in the UI that will allow users to enter a directory path, then press a button to export an fbx file to that path.
The Button creation into the UI works great.  But I can't find information on setting up the text field for users to enter information. I took a try at it, but my setup isn't working for the String text input, only the button works.  What am I doing wrong?  (Page has been update to reflect comments below changes)
    import bpy

class WorthGroupToolsSettings(bpy.types.PropertyGroup):
    file_path: bpy.types.StringProperty(name="File path",
                                 description="Test",
                                 default="",
                                 maxlen=1024,
                                 subtype="FILE_PATH")

class WorthGroup_Panel(bpy.types.Panel):
    bl_idname = "WorthGroupTools_PT_Panel"
    bl_label = "WorthGroup Tools Panel"
    bl_category = "WorthGroup Tools Addon"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

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

        worth_group_tools = context.scene.worth_group_tools
        row.prop(worth_group_tools, "file_path")

        # This creates the button.  Works great!
        row.operator('view3d.export_fbx', text="Export Selected")

I modified my page, it should work but I get the following error message from this code:
class WorthGroupToolsSettings(bpy.types.PropertyGroup):
file_path: bpy.types.StringProperty(name="File path",
                             description="Test",
                             default="",
                             maxlen=1024,
                             subtype="FILE_PATH")

The error message is:
File "C:\Users\WG\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\Blender\WorthGroupTools_panel.py", line 4, in <module>
class WorthGroupToolsSettings(bpy.types.PropertyGroup):
  File "C:\Users\WG\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\Blender\WorthGroupTools_panel.py", line 9, in WorthGroupToolsSettings
    subtype="FILE_PATH")
TypeError: bpy_struct.__new__(type): expected a single argument

I also want to note I also have a __init__.py page and a operator page.  This is what the __init__.py page appears as:
    import bpy

from . WorthGroupTools_op import WorthGroupTools_Operator
from . WorthGroupTools_panel import WorthGroup_PT_Panel
from . WorthGroupTools_panel import WorthGroupToolsSettings

bl_info = {
    "name": "WorthGroup Tools",
    "author": "",
    "description": "",
    "blender": (2, 80, 0),
    "version": (0, 0, 1),
    "location": "View3D",
    "warning": "",
    "category": "Generic"
}

classes = (WorthGroupTools_Operator, WorthGroupToolsSettings, WorthGroup_Panel)

# register, unregister = bpy.utils.register_classes_factory(classes)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    bpy.types.Scene.worth_group_tools = bpy.props.PointerProperty(type=WorthGroupToolsSettings)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    del bpy.types.Scene.worth_group_tools

if __name__ == "__main__":
    register()

rjg,  Unfortunately I'm still confused after reading the link you consider is a duplicate to my question.  The user in the link you sent uses a variable, "update_oha_quicklink_root_folder", is this a boolean?  His root_folder = "StringProperty", I get "not defined", should I stick with the method I tried, "bpy.props.StringProperty"?  Does this even work if my class is "bpy.types.Panel"?  Or do I need to create an entirely new class called "bpy.types.PropertyGroup"?  If I need a new class, how would I link it to my Panel's row layout?

Right, sorry. It's better to put the properties in an extra class that is registered as well. I'll post an answer later this night that shows how to add the property in case nobody else does, I'm a bit busy atm.

With a PropertyGroup and a PointerProperty you can register all your properties in the scene. They are then accessible by panels or operators under the name you've chosen.
The StringProperty allows you to set the subtype to FILE_PATH which creates a text field with a file selector. Once clicked this triggers Blender's file browser and the user can select a file. The path to the file is then stored in the property.
import bpy

class WorthGroupToolsSettings(bpy.types.PropertyGroup):
    file_path: bpy.props.StringProperty(name="File path",
                                        description="Some elaborate description",
                                        default="",
                                        maxlen=1024,
                                        subtype="FILE_PATH")

class WORTHGROUPTOOLS_PT_panel(bpy.types.Panel):
    bl_label = "WorthGroup Tools Panel"
    bl_category = "WorthGroup Tools Addon"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

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

        worth_group_tools = context.scene.worth_group_tools
        row.prop(worth_group_tools, "file_path")

classes = (WorthGroupToolsSettings,
           WORTHGROUPTOOLS_PT_panel)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    bpy.types.Scene.worth_group_tools = bpy.props.PointerProperty(type=WorthGroupToolsSettings)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    del bpy.types.Scene.worth_group_tools

if __name__ == "__main__":
    register()

Thank you so much for a detailed answer, I will test now!

Thanks again rjg.  I've made changes that I believe should mirror your suggestion, but I get an error.  I've posted details above about the error and updated the script.  Any idea what's causing this?  I'm using VSCode + Blender Development to launch blender.  Also, if you need the FULL detail of the error results please let me know .  I narrowed it down in the post.

It should be bpy.props.StringProperty not bpy.types.StringProperty in the Settings class.

That's it! Thanks buddy!


text:
Mesh goes dark blue after applying auto smooth, happens when i flip normals
Basically i need to flip normals to add solidify modifier(or else it solidifies outside when I need it to solidify inside of the mesh(car fender panel).
But when I do, the mesh of the fender panel changes color to darker blue when I apply or keep autosmooth enabled....
I have gotten this usually bypassed by unenabling autosmooth, doing what I need and reapplying autosmooth when I am done, but this tactic dosent work whit Flip normals....

Will this affect my model when I am done whit it and exported to .dae?

You don't need to Flip Normal Directions, you can just adjust Offset in Solidify modifier tab. This method will allow you too choose which side you want to "extrude" or you can even have it in the middle (0 value).
Also you can check Flip Normals in Solidify modifier options, if you by mistake have flipped normals - this one will help you to make them right.


text:
Keyframed object jumps instantly from one keyframe to next or not at all
The body.001 is the object I'd like to animate but it moves suddenly from one keyframe to next, and sometimes doesn't even move at all when scrolling the timeline.
You can clearly see the timeline cursor at the beginning of animation:

And end:

But the object won't budge.
I've checked everything I can think of including:

Making sure all the keys are not straight lines in graph editor
Parenting to armature then animating
Deleting NLA tracks and again adding one
Not using NLA tracks at all and just using Action Editor

The body.001 can be appended to other blend files and animated without any issues

Your plane is a rigid body.
You need to check this button to allow it to be animated :

Edit : when you append it into another file, this file does not contains a rigid body world (see in the 'scene' panel). That's why the animation works in that case.

Odin be praised! I didn't even check the Physics properties tab! Why do I have goosebumps? Why am I so excited at both getting my problem solved and my first question answered? Is this normal? Does everybody get it? And @lemon, you are the least disappointing lemon I've seen in my entire life.


text:
reassign Pen's Eraser end drawing mode
my drawing tablet's pen has two end - one works as a pen and the other one as eraser. thing is, Blender can't do anything with Eraser end - i've read it is supposed to work as Erase Alpha, but it does nothing but displaying red circle and a dotted line around it while attempting to draw. it also doesn't change anything about the brush settings.
so, is there a way to either prevent Blender from changing Eraser end's mode or select what mode will be used?
drawing with the "normal" drawing end:

drawing with the "eraser" end:

both screenshots were taken while pen was pressing on tablet

You could show some screenshots of what happens when you draw, but " displaying red circle and a dotted line around it while attempting to draw" reminds me of Smooth Stroke enabled,  https://blender.stackexchange.com/questions/22886/how-to-turn-off-texture-painting-mode-where-your-brush-cursor-lags-behind-your-m.

@Zak added screenshots. it looks a bit different and there's no white line behind the cursor

I think it's the grease-pencil eraser.  You might need software to remap the tablet eraser as keyboard input, then assign a shortcut in Blender to whatever keypress you decide upon.

If you are painting into a solid color in an image that is not transparent, I recommend setting your second color there instead of black to the solid color your canvas is - that way, toggle X to shift from paint color to canvas color as 'eraser'. Using erase Alpha in the image you show would leave transparent areas that would then need to be painted in. Using Erase Alpha also pairs with Add Alpha, enabling you to reintroduce paint that was lost when you used Erase Alpha.

Okay I finally figured out how to make a shortcut to an eraser for Texture Paint.
The idea is that I needed to figure out the correct function id for the Blend modes (MIX + Erase-Alpha) and input that into the custom keymap menu
But usually when using digital art software for drawing you can have an eraser key that will erase only when pressed.
So I made 2 different keymaps one change to Erase-Alpha when Pressed and the other to switch back to Mix when Released.
This basically restore my workflow and avoid so much frustration while Texture painting.
Go in the Preferences > Keymaps > 3d View > Image Paint.
Go on the bottom and create a new key slot by pressing : Add New then click on the little arrow next to none to open the tab of the shortcut
Then in the field where its written none type wm.context_toggle_enum.
New fields will appear, in Context Attribute, type tool_settings.image_paint.brush.blend
In the first Value field, type ERASE_ALPHA.
And in the second, type MIX
Now set a key for your shortcut and set the key mode to : Press
Repeat the whole operation a second type (create another keymap in the same place) but this time, revert the 2 Values
First MIX
Second ERASE_ALPHA
Set the same key as before, but this time set it to Release
That way you will be able to erase only while holding the eraser key, but you can also simply make only one keymap and click it to switch between modes.


text:
should i delete these empty keyframes?
say, an animation clip has one piece animated, which moves along one axis, but keyframes will be created for other two axes too. should i delete those?
example: should i delete keyframes in red box, blue box or should i not touch anything at all?

//edit: does having these affects performance?

If your animation is truly based on a single axis you can delete the keyframes for the other ones. It does not contribute to the animation nor to your project overview. My guess is you used something in the line of 'auto keys' which will place keys on every given location/rotation/scale regardless of which keys you actualy need.

thanks for the answer! yes, that's pretty much what i used because that was the only way of adding keyframes that i know. was afraid to remove something that was created automatically, thought it may mess up other things.

To extend Delagone's comment: It does not matter.
But every time you delete these keys (autokey), you're doing unnecessary work. Time which you could spend setting new key, which you need. I advise you to get used to having lots of keys around.
Another pitfall is to accidentally change the transformations later, if you have channels, which aren't keyed, you're going to loose the values you had before. Leave your additional keys in place, even if they don't seem necessary. Quite a lot animators even key all channels regardless how small the amount of channels (bones, etc) is that they changed, just so a characters pose if fixed, no matter what attributes / channels are changed later.
If the additional keys still disturb you, here is a workaround.
After moving your bones / objects to their initial transform, lock all attributes, which you don't want to key. Then create a button keying set with the channels you want to animate. Then set the active keying set, to the one you created. If you're using autokey, check the keying set button next to the autokey button.

does having a lot of empty keys affects performance? that's what worries me. it makes sense to delete unused hidden geometry for that reason, but i don't know if such "empty" keys should be deleted as well if i'm making an animation for something like a game.

Definitely delete unused geomertry. I'm pretty sure empty keys won't hurt your performance, but I don't have a source handy.


text:
Extrude Region (Vertex Normals) stopped working properly
in one file i used to be able to create bulky pieces like these

by applying extrusion along normals on the loop of faces like that:

at some point in started working like the regular Extrude Region, giving results like these:

also, as you can see, creating new object in the same scene does not help, only creating new file does.
link to the file: http://www.pasteall.org/blend/43119
i would like to know how to restore the usual functionality and what i might have done to cause this.

It is due to the pivot point : set it back to median point

Extrude region with vertex normals behaves nearly like extrude region if the pivot point is set to individual origins.
Set the pivot point back to median point to have the expected behavior :


text:
Applying Images to Downloaded Model
I just downloaded a file from TurboSquid called 2014 NASCAR toyota. It was made in 3ds Max, but I want to work with it in blender so I downloaded the FBX file. Blender was unable to open it because it was an ASCII FBX file, so I used FBXConverter to change it to a binary FBX file. Following that conversion, Blender was able to open that file, and the model looks great! However, the object had no color, so I had to UV unwrap it. The problem is, the UV unwrap doesn't fit the texture very well. Here are some images to explain:

SO how do I go about properly unwrapping this? There are so many components for model, will I have to go through each one, unwrap it, and resize it to the texture map? Here is what the files of the texture maps look like:
So am I supposed to just add these in as materials and then UV unwrap each part of the model? Thats seems difficult and probably not the fastest way to do it. Thanks for any help!

When searching on the site for this vehicle, there are five models available. 3 of these 5 have other file formats notable .obj. If you are provided this format then you should also have a corresponding .mtl file that will work on import. So at the very least you have a 3 in 5 chance of finding an automatic process to get these textures onto the model.

Your model should already be unwrapped, and UV coordinates present, no need to do it again. All you have to do is create new materials, and assign these textures into those materials using the availabe UV coordinates

Thanks for this comment, but I do not think the UV coordinates are present. When I unwrap the object, the textures do not line up well with the unwrapped model. It seem's really hard to align the model to the textures layout, any suggestions on how to fix that?

If the model has different texture maps consisting of islands it means it was unwrapped when texturing was done. Probably it was lost while converting. Reunwrapping it in order to fit the textures is a hard and long way while still possible (you'll need to have some unwrapping experience).

Select the object and it's faces in edit mode and press 'U'. This will bring up the UV mapping window.
Select Unwrap.
In the UV editor window click on image > open image.
For a more details take a look at this great tutorial: https://cgi.tutsplus.com/tutorials/creating-a-low-poly-ninja-game-character-using-blender-part-2--cg-16133
(starting at step 17)

Thanks for this answer, however my problem is not with unwrapping the object but rather fixing the object to the texture.. When I unwrap the object, the textures do not line up well with the unwrapped model. It seem's really hard to align the model to the textures layout, any suggestions on how to fix that? I updated the question to show the issue.


text:
Bend unlinked geometry of one object around geometry of some other object
How can I bend the geometry of the planks beneath not doing it manually with the proportional editing? I've tried doing it with duplicating, extruding and seperating the geometry of the roof, it works but I'll be happy to get some suggestions if there's a better way of doing it

You can select a set of edges which represent the curvature of the roof, Shift D to duplicate, P to Separate into a new object, in Obj mode select the new object, Right click > Convert to > Curve, Move down on Z Axis.

Then add a new Geometry Node, drag into the geometry node one beam object from the outliner and create this node setup:

Play with the "Align Euler to Vector" node parameters in order to get the result you need, according to the orientations of your objects.

Thank you for the suggestion, but unfortunately it doesn't solve my issue completely >.< must be bended on both axis or else doesn't correlate as it should https://imgur.com/a/PQXIskf

You can apply the Geometry node modifier, then use a lattice modifier to bend all the beams toward the roof.

Thank you again!! I've used lattice and shrinkwrap and it works


text:
Equirectangular + Glare: What's the correct workflow?
I've created a scene with generated emissive spheres representing stars. The glare node is used during compositing. I want to render this scene panoramically, for use as an environment texture.
However, the glare node is applied to the final render, with no equirectangular distortion. As a result, using that render as an environment texture causes pinching at the poles.

I've found another StackExchange post regarding the same topic, but none of the answers explain clearly how to work around this problem. How to distort effects with equirectangular projection
I'm assuming the solution is somewhere along the lines of:

Render or bake scene panoramically somehow (cube maps?)
Project render result onto sphere
Render inside of sphere with equirectangular projection

How should this be done?


text:
How to merge different sculpt mesh
So I sculpted hands for my 3d character and I would like to join it with the main character. However, when I join the hand mesh and character mesh with ctrl J, the border line between the meshes are visible. I have tried to use the dyntopo feature to hide the border line,  however it doesn't work.
Is there another way of hiding the  border line of mesh

Joining the two objects together doesn’t automatically bridge between their meshes, it just puts the meshes within the same data block and connects it to the active object, deleting the objects the other meshes came from. To connect tubular meshes like this, I might suggest you consider using Bridge Edge Loops, but since these are sculpted you’ll probably have to delete the ends of them first to put the bridge in.

Thanks for the answer


text:
Use the same thickness value in both solidify modifier and material
In the new EEVEE there is thickness input in "Material Output". I would like a way to link the thickness input to the thickness I use in a solidify modifier applied to the same object. This way I do not have to change the thickness twice and if I apply the material to another object with different thickness I do not have to create a different material.
Any idea on how to do that?

For a single object you could use a diver, but if you use the same material on multiple objects maybe establish an attribute https://blender.stackexchange.com/questions/275270/use-a-geometry-nodes-instance-attribute-in-the-shader

I'm not sure i understand what to do. I understand i can use geometry node to store an attribute and then i can use the same attribute in the shader and it is working. What I'm missing is how can i use the attribute for the thickness of the solidify modifier.

Depending on the geometry, you could replace the Solidify with a geometry nodes based solution, or you could use a driver to base the Solidify on the attribute. Haven't tested myself but I suspect it should be possible


text:
replace disconnected texture with another texture (like illustrator)
as written in the title, I would need to disconnect textures from a scene, to then reconnect other textures named differently, quickly.
(not opening each individual model by hand)
Do you know when you disconnect graphics from illustrator, when you reopen the file it asks you to reconnect them and you can also choose others and named differently?
Lightwave 3d also does the same thing,
can someone help me?
Thank you very much!

File > External Data > Find Missing Files.

You can do this with Python, but if you wanted to get a specific answer, you would need to explain it in more detail. Not everybody who can help you knows Illustrator enough to know what you are talking about, so describing the functionality you are after in detail would be a good idea. It would be helpful if you described an example situation. What textures do you want to replace, how would you like to specify the ones replaced and the new ones?

https://blender.stackexchange.com/a/267971/110840

hello, thanks for the reply. I explain the project as I set it up on lightwave 3d. I use the program for make mockups. Each frame of the animation has one object and all objects are different.

those objects usually all have a custom texture, according to the project I'm going to do.
They all have the same graphics, but with different textures.
For example today I make png renderings with transparency of a graphic, tomorrow I make them with another graphic.
To do this in a fast and easy way, I delete the old textures from the project folder, put the new ones and when I reopen the program, it asks me to replace them. I replace them with the textures that I decide, even if they are called differently.
I hope I was clearer.


text:
No Voxel Data texture in Blender 2.82?
I would like to import a 3D object into Blender.
My object is formed by a sequence of images - a confocal stack, similar to an MRI scan (there are no surfaces, just a cloud of voxels). I know that what I want to do could be done in Blender 2.79 by giving a cube a texture called: Voxel Data, and then importing the sequence of images. They do it right in the first minute of this video (you may want to mute it):
https://www.youtube.com/watch?v=7PSPiUrrXsg
And also here:
Rendering stack of 2D images as a 3D object?
Particularly this image is relevant:

However, everything looks very different in the current version of Blender, 2.82. I cannot see the option to edit the Density, Reflection, or Emission properties of a "Material", and I cannot find the Voxel Data option for the "Texture".

If you can, please, let me know if there is anything else that should also be updated in the tutorial/workflow by Chebhou and Mike Pan, which is here: https://blender.stackexchange.com/questions/8436/rendering-stack-of-2d-images-as-a-3d-object


text:
How to make cumulonimbus clouds?
I would like to make one as a volumetric object, but I have no idea how. Any suggestions? Best would be to use VDBs that are already done, but I haven't found a single one online, paid or free.
Below are some examples of cumulonimbus clouds. These are very distinctive for their sort of mushroom-like shape that kind of stretches out into this saucer type thing. The bottom also flares out a bit, but not as much. The "saucer" section seems a lot smoother, while the bottom and the very top has details similar to the more "fluffy" cumulus clouds.

Related (or duplicated?) https://blender.stackexchange.com/a/287393/2214

Not really unfortunately :/

Hi, Geri .. to the naïve reader, (me :) ) @vklidu 's  link looks very similar.. perhaps you could edit your question to with a link to explain what extra details you're looking for, here. That would help us to answer you more accurately.

I added some more info. Cumulonimbus clouds are more "specialized" so to speak, I'm looking for more than simple blobs of clouds. The shape here is paramount.

@Geri ... Is there anything that block you to reuse technique from the link? Like generate it from two meshes - top and bottom "fluffy" part and second for a "neck" part?

Thanks to @vklidu, I could make these clouds pretty easily, using the method in this this answer.
Starting from an UV Sphere, model the basic shape of the cloud using proportional editing.

Then Add -> Volume -> Empty and add a Mesh to Volume modifier to it. Make sure the Exterior Band Width is set to a low number, so the top rim of the cloud stays as thin as possible.

Then you can add 2 Volume Displace modifiers. These will be for adding larger, and smaller noise to the cloud. You can use these settings. Make sure you select the correct modifier when changing the noise scales of the textures, and that you have 2 textures, and not changing the 1 texture back and forth.

After adding a simple Principled Volume shader (or this fancy shader), you're pretty much done with the main cloud, but you can further decorate it with pre-made VBD clouds, by scattering them at the base. You can simply place these by hand, so you can easily change their positions and rotations.

Finally, you can add a Cube with a low density volume shader to add some atmosphere.

VDB to Mesh + Sculpt ...
Import some existing VDB cloud ...

You can't convert Volume object into a mesh directly, but I just noticed - you can add some mesh object (like a Plane) and use Volume object in Geometry Nodes and do conversion with Volume to Mesh node ...

Now you can Apply modifier and sculpt mesh into desired shape ...

... than use Mesh to Volume technique above (modifier or Geometry Nodes > Mesh to Volume) ... or like here I just assigned Volumetric Principled shader to mesh.

Tip: nice Cloud Shader

Wow we have a weatherman, so many different techniques for making clouds. Nice results

.. and before the volumetrics, a mighty fine crop of broccoli ! (Don't worry, I'll see myself out..)

Weatherman ... ha :) yeah, right I love clouds ... why I didn't try them before ... ah now I know time consuming :) @Robin ... I had exact the same feeling :) Why I put so much effort to this ... message for OP - just download a broccoli and assign volumetric :)

Hah! Thanks a lot :D This is medhod will be perfect.

Great if it works for you ... it is just quite calculation intensive - a lot of topology ... it is good to use remesh in some cases ... and of course volumetric shader is not the same as "density" texture that is not even ... BTW nice shader for clouds https://www.youtube.com/watch?v=dyAXWSwCqKg

Yeah I'm defintely going to use remesh. I found that tutorial just yesterday, pretty amazing.