text:
Text on Curve doesn't work right
I want to align Text to a Curve using the "Text on Curve" option. The strange thing is that it worked on one curve but not one a different one that is the same but rotated 180°.

As you can see does the upper Text work but the lower one seams to be bugged or something. I tried it with a different Text and Curve (same shape) but it always looks like the one on the picture.
You can download the .blend file here:

You need your rotation to be correct. Likely you have a non-applied rotation or some similar problem...

@pycoder I checked and all rotations have been applied.

@pycoder is right. You have different rotations on the curve and text object.
To double check the rotations, check Axis under Display in the Object context in the Properties area.
Select all objects, then Alt click on the Axis checkbox, to change the property of all objects at once.

The axis will be displayed in the 3D viewport. Notice, how the lower curve is oriented different than all other objects.

The Bottom curve has (0, 0, 0) rotations (image above), but all other curves have different rotations.

If we zero out the rotations (Alt + R), the behaviour of the Text On Curve is now obvious.

Step by step solution
Since we can't apply the rotation of the text. We will have to recreate the curve with the text's orientation.

Duplicate the curve.
Select the text, Shift select the curve, then press Ctrl + Shift + R and select Copy Rotation. We now added a copy rotation constraint to the duplicate curve. They have the same orientation.
Select the duplicated oriented curve and make its visual transform real. (Ctrl + A > Visual Transform)
Remove the constraint.
Delete the (wrong) vertices of the correctly oriented duplicate curve.
Select the curve, Shift select the duplicate curve and join them (Ctrl + J).
Apply the text on curve property.

Or duplicate the original curve, mirror it by Z axis, apply scale for it and set the Text On Curve for the bottom text.

@MrZak I explained a more general solution, which would work with different rotations as well. In this case your approach is the easiest and fastest. Should I add this to the answer?

Use that as you wish.

authors: Евгений Кольцов


text:
Unable to enter pose mode
I'm new to Blender and have been following a video series on Udemy about this software. I'm in the section where we learn how to model and animate a lamp. In this section we've learned how to use pose mode. I was able to use pose mode in previous lectures before, but all of a sudden yesterday, pose mode seems to have disappeared from the drop-down menu in the top left corner. I don't know why it's vanished or how to bring it back, does anyone know how I can solve this issue? Thank you for your time.

You don't use pose mode on meshes or curves. Pose mode is used exclusively on armatures. Select an armature and the menu will appear then.

The drop-down menu (top left) is context-sensitive. Select your Armature in the Outliner (on the right side). This will bring back the Pose Mode.

Ok it works now thank you! :)

source: Stack Exchange

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

sort: votes


text:
Rigid body bursting and clustering
I'm trying to make a logo animation of it crashing down to cubes.
Even though I followed a tutorial (https://www.youtube.com/watch?v=XNDO2xvUHtc), I have a different result.....
1st problem: I copied the left side of M to the right so it should behave in the same way, but while the left side breaks down into cube, the right side clusters.
2nd problem: In the tutorial, the big cube falls as a whole and breaks down when it hits the floor, but mine just bursts out from the beginning.
3rd problem: Cubes are jiggling on the floor... and I cannot figure out why.
The file is attached below.
Blender File: https://drive.google.com/file/d/1qYWe-CjENKWaHYKSOzEiJVqmotvhu_1O/view?usp=sharing

Blender File: https://drive.google.com/file/d/1qYWe-CjENKWaHYKSOzEiJVqmotvhu_1O/view?usp=sharing

Hi, for future reference, all supplemental information should be in the body of your question rather than in the comments. Reason being is that comments are considered disposable, are not searchable, and there are users that will not even read them.

Your cubes are sticked to each other, so you must be sure that the Sensitivity > Margin is at 0. So give Margin > 0 to one of the cubes, select all the cube, select the one with 0 at the end to make it active, go into the header menu > Object > Rigid Body > Copy From Active and it will work:

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


text:
How To Create Particle Collision Effect?
Is there a way to keyframe the scale of the objects inside blender particle system while still letting the objects collide with each other like the example beneath?
I have already tried the blender molecular add-on to keyframe the scale of the objects. But the problem is that when I keyframe the scale, the colliding of the objects gets disabled.
https://www.youtube.com/watch?v=5Gv9HxS_s-Y&t=38s&ab_channel=zuggamasta

Please don't ask a question that rely only on an external link.

Hello and welcome. While images and links are helpful additions, questions should stand on their own. Please provide some context and explanation, don't just post an image or link

hi, sorry for that! i have edited the post again.


text:
How To Project Texture With Molecular Script?
I have been working on a project based on Molecular setup.
A rubik's cube(Source) just falling on plane(Emitter particles falling on plane from the rubik's cube).
I did all things correctly for simulation. But for the texturing setup I got stuck. I can't project the texture from rubik's cube to particles. I followed some youtube tutorials too.
You can find my setups on below image.

click to enlarge

Hi and welcome :)  I've made an edit to your Q to make it a bit easier to read, feel free to roll back the edit if you disagree with the changes I've made. It might be helpful to add a simplified copy of your blend file with all textures packed so that other users that have molecular installed can take a closer look. Thanks :)


text:
Issue with Camera-to-view hotkey? (ctrl+alt+num0)
I'm having a strange issue where when I add a camera to my scene and press CTRL + ALT + NUM0 to set camera to view, the actual view gets shifted over a little bit. Please check out my screenshots below:

No camera added yet

2. Added camera at world origin/3d cursor

3. After pressing CTRL + ALT + NUM0

4. Camera location in 3D space is moved

This isn't the intended behavior, right? Can anyone replicate this?

I guess you want the orthographic front view in camera...The camera by default it perspective. Just navigate into camera settings in the properties tab and change it from Perspective to Orthographic then try re aligning your camera

It looks like everything is working as correctly to me.
Your original viewport view isn't centered. It may look like that to you because the cube is near the center of your monitor, but it's actually down and to the right of the actual viewport itself.
To center your view on an object (or any number of selected objects), press "." on your numpad, then align your camera. That should resolve the issue :)


text:
Odd angle object alignment
I need to attach half of sphere to this surface, but I don't understand how do I go about aligning it.

Select desired vertex.
Press Shift+7 on the numpad (and maybe 5 to switch to the orthographic mode). It'll place viewport camera directly above your plane.
Press Shift+S and choose "Cursor to selected".
Add a sphere. In the operator settings tick "Align to view".


text:
Login problem with Rokoko add-on

The ROKOKO free plug-in is installed, but there is a problem when logging in to the account and password.
Load Handler:
Warning - Text missing for: tips_info
Warning - Text missing for: disable_outline
Warning - Text missing for: set_background
Warning - Text missing for: tips_info
Warning - Text missing for: disable_outline
Warning - Text missing for: set_background

LIB EXISTS? True C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\resources\libs\rokoko-id.dll
Traceback (most recent call last):
  File "C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\operators\login.py", line 17, in execute
    if login.login(context.scene.rsl_login_email, password):
  File "C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\core\login.py", line 94, in login
    load()
  File "C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\core\login.py", line 39, in load
    lib = ctypes.CDLL(lib_file)
  File "C:\Program Files\Blender Foundation\Blender 2.83\2.83\python\lib\ctypes\__init__.py", line 364, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 鎵句笉鍒版寚瀹氱殑妯″潡銆

location: <unknown location>:-1

location: <unknown location>:-1
閿欒: Traceback (most recent call last):
  File "C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\operators\login.py", line 17, in execute
    if login.login(context.scene.rsl_login_email, password):
  File "C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\core\login.py", line 94, in login
    load()
  File "C:\Users\Win10\AppData\Roaming\Blender Foundation\Blender\2.83\scripts\addons\rokoko-studio-live-blender-beta\core\login.py", line 39, in load
    lib = ctypes.CDLL(lib_file)
  File "C:\Program Files\Blender Foundation\Blender 2.83\2.83\python\lib\ctypes\__init__.py", line 364, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 鎵句笉鍒版寚瀹氱殑妯″潡銆?
location: <unknown location>:-1

I also had this problem and found a related github issue:
https://github.com/Rokoko/rokoko-studio-live-blender/issues/66
Which directed the user to install the "Update for Visual C++ 2013 Redistributable Package" at:
https://support.microsoft.com/en-us/topic/update-for-visual-c-2013-redistributable-package-d8ccd6a5-4e26-c290-517b-8da6cfdf4f10

I had the same problem. Downloading VisualStudioC++ 2013 fixed the problem. Posting this here to help people who may come across the same problem.

Another issue I found is that you can not use any CAPS in your email. I generally capitalize my name in my email and it wouldn't take it.
When you use your email as a login, it should have automatically lower cased the email to check it but it doesn't.

I had the same problem and i resolved it by simply uninstalling the Microsoft Store version and installing the MSI from the Blender website.


text:
My render is looking funky in both Eevee and cycles

My render is looking a little funky, I haven't had this happen before so wondering if there's something in the settings to mess with.  This is in Eevee, but I've also had this happen in Cycles.

Are you sure that you've not left a light for render (that you've disabled for preview)?

it seams that you using sun with a lot of watts

I was originally using a point lighting then switched to sun.
How might I know if I left a light for render that I disabled for preview?

Check the Viewport Shading options (https://i.sstatic.net/SGYl1.png). [X] Scene Lights and [X] Scene World should be checked to have the same lighting in the preview as used in the render.

That did it! Thanks


text:
How do you group vertices as a section in a mesh?
In edit mode, is there a quick way to designate a group of vertices/faces in the same mesh of an object? Designated in such a way that one can form a list of sections on a mesh, and simply select the specific section to quickly highlight the vertices? Like taking a whole cow and designating sections of it as the ribs, flank, etc.
Additionally, if there is such a way for designagtion, once the section is highlighted, is there a way to manipulate the vertices within the perimeter of that section, independent of the vertices outside the section's perimeter?
For example i wanted to use the move function on 'flanks' to raise the vertices within this section without moving any vertices on the 'ribs', and each section's perimeter is essentially anchored and unmoving on the mesh. Does blender support this? Is there a workaround for this process?

It sounds like vertex groups no?

Select the vertex that you want to group and go to vertex groups.

Create a new group, you can rename it (for example 'flanks'). Then click assign.

Now every time that you click on select (on edit mode) Blender will automatically select your vertex.


text:
multilayerEXR renderOut from compositer have Error?
I am using version 3.41.
Is there a problem with exporting exr from the compositor?
I have to rename multilayer channel names in nuke, so I use blender's fileOutputNode to rename them when exporting.
However, the colorSpace is exported as linear-sRGB even if linearACES-cg is specified.
(The one exported from blender's normalOutput is properly exported as aces-cg).
Cryptomatte also seems to lose information when exported via compositer with halfFloat.
(This is also not a problem when exporting from blender's normalOutput)
I have recently started using blender, and I wonder if it is not recommended to export files via compositer?
(color space changing on its own, cryptomatte lost)

If I am not mistaken, Blender doesn't write color management into EXR files anyway. As for the cryptomatte, that sounds odd. I know some compression algorithms used to destroy some passes (I think Dwa), maybe try a different compression.

Thanks for the reply.
I guess it's still not a good idea to export exr from the filexport node.
I thought it would save me from having to rename the channel name: ・・・・
This may be a spec of the exr, since it's the same in nuke that once an exr is written out, if you write it out again with a halffloat exr, the cryptomatte is broken...


text:
I need help designing walls for a game I am working on
I have been modelling for a fangame recently and I needed help with making the walls. I want the walls to look like the ones from FNAF 1, but I do not know how to model them. I have tried using an image texture, but it only gets half of the wall onto the plane for some reason. Can someone help me make a texture for them please?
P.S. What the walls look like

Hello and welcome. Please don't post the same question more than once. If your previous question was put on hold, address raised the issues by editing it so it can be reopened rather than post a new one, otherwise see What should I do if no one answers my question?

Hello, you say that you've tried with an Image Texture and you've failed, maybe pack the image (File > External Data > Pack Resources) and share your file? Use a platform like workupload for example

Do you want me to use workupload to send the blend file? Or do you want me to put a picture of what the image texture is doing?


text:
delete all except for middle edge
I have a mesh which looks like this.

Is there any way (script or option) to automatically delete everything except the middle edge?

Invert the selection with Ctrl i then delete with X?

I would like to have a python script that does everything automatically. So that I do not have to select the middle edge at all. The model is very big and alt+left click select for the middle edge dosnt work on this model

Can you breakdown what exactly you exactly expect the script to be capable of? If you could list the step, maybe we can help implement them in a script, but at the moment it's not clear what is the "everything" you refer to and what is a "middle edge" in this context.

In the image, the "middle edge" is the selected edge (highlighted in orange), so I want only that edge after I run the script. Everything else should be deleted

For a script to identify these edges, it would be good to know more information about them that defines their uniqueness. For example, if they were miraculously indexed by some sequential ascending order (e.g. edges 50 thru 66) or something like that, it would be easy to select them. Maybe you could identify them geometrically since they seem to be the middle edges of the "U" shape.


text:
How to Make Smooth Bevel Curve Without Extra Crease?
I want to make something like a curve-shape pipe,
so I use curve (I make an edge and convert it to curve because I need it like that in original work) and bevel it with bevel>object> beziercircle and it looks like that:

After that I convert it to mesh, and do bevel of the angle edge loop in the middle

But it look like that:

So how can I make it even and smooth without these crease that indicated by red arrows?
I add subdivision modifier and auto-smooth but it still the same.

Maybe put an additional edge loop close to it, it should attenuate the problem:

If you ever want an alternative that works (but the whole profile is different so it may not be what you want):
Create your pipe with a series of vertices, when you want to curve an angle, bevel the vertex:

Convert to curve, go in the Properties panel > Object Data > Geometry, and bevel:

I like simple solutions, so here's my take on the problem
1.Enable the Add Mesh: Extra Objects add-on in preferences if not already enabled (it is bundled with Blender by default)
2.Shift+A >mesh>Pipe Joints> Pipe Elbow
3.In the redo panel (F9 in default 2.8x keymap) change the angle as desired
4.Add Subdivision Surface Modifier

Note, if curves are an absolute necessity at some point after this, you can always convert this mesh (or a copy of it) to a curve.

Personally I'd start with a cylinder, select the vertices round one end and then use the Spin tool to extrude round the cursor. Details From the Blender manual or a  YouTube video.


text:
How Can I Create A Specific Arc On Face?
Is there anyway that can I make a specific arc (and specific radius that I can't do with bevel) between two vertices in face?
Like in the in image;

you can select the top left vertex and bevel it (ctrl B then in the Operator box on the bottom left of your 3D view, click on Vertex and play with the parameters)

Do you know a 3rd point on the arc?

select the point

If you want accurate:

scale it to square first

width = 0.5　this is a 1/4 circle with 0.5 radius

scale back to previous rato

If you want special mathematical curve, you can add a Curve obj and convert to mesh to do the Boolean or find some addon.


text:
Array modifier make unwanted offset
I want to array this object on Y-axis only.

I make Y offset 1.00 and both X,Z are Zero.
But when I do that it shows an offset in x-axis so both end circle are not match each other like the one in the image above.

I also apply scale and rotation but it still the same.

Hello :). There's no actual offset. Your geometry is tilted, so it doesn't align. Correct the tilt and it will work.

Where is the "offset" coming from? It is built in as part of object, the mesh is not aligned in the $X$ axis. The array modifier will only repeat that offset as well.
There are two basic options:

Rotate the object in edit mode so that the object is aligned on the $X$ axis

In the Relative offset parameters of the array modifier, play with the values on for the $X$ and $Y$ axis until the objects align. Note that by doing that the object will still not line up to the $Y$ Axis. But maybe that is what you want? I don't know.


text:
How to shade smooth using BPY
New to bpy and I'd like to write some code that sets the shading of an object to smooth by just clicking a button. I did some research and I have written the following lines for now:
import bpy

def draw(self, context):
    layout = self.layout
    row = layout.row()
    row.operator(" bpy.ops.object.shade_flat()")
    row = layout.row()
    row.operator(" mesh.object.shade_smooth()")

I assume that I would have to add some other lines in order to register the class and all that right? Anyway, the problem is that the code does not work. Is this the way it is supposed to work at all?
Q: What's the correct way to call this function when pressing a custom button?

Or row.operator("object.shade_smooth")?

@lemon object has no attribute "shade_smooth"

https://blender.stackexchange.com/questions/167862/how-to-create-a-button-on-the-n-panel

Did you used the quotes, as I indicated above?

@lemon the problem is solved but what if i have a bunch of actions to do in a single click?

For "a bunch of actions" you need to understand the principles, I recommend read the post linked by batFINGER: https://blender.stackexchange.com/questions/167862/how-to-create-a-button-on-the-n-panel

https://blender.stackexchange.com/questions/71190/toggle-subdivision-modifier-and-smooth-shading-with-one-key


text:
FLIP Fluids - How to include foam & bubbles when exporting the geometry?
I am using the FLIP Fluid add-on to generate a water simulation. I managed to export the animation into .obj sequence but here is the problem now.
The Foam & Bubbles particles generated from FLIP Fluid are not included after exporting the animation into .obj sequence. Only the main fluid got exported.
Q: How to include foam & bubbles during the .obj sequence export?

You may want to try exporting to the Alembic (.abc) format which is a popular choice for exporting simulation data. But beware that if exporting to other 3D software, they might not recognize or be compatible with the structure of Blender's Alembic meshes. More information here: https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Alembic-Export-Support

When exporting as Alembic, there is a checkbox to include particles or include hair.  I use .abc files to import the deformable mesh into Keyshot and the particles will import as well.
The only problem is that all the particles (even ones that should not be born yet) will come into Keyshot all on Frame 1.  There are also Python scripts out there that will write an "instance" of each particle to keyframes. I believe those will allow .obj sequence export.  I haven't had much luck, only because I know nothing about Python scripting.


text:
Color code strips in VSE using python?
I want the ability to color code strips in VSE. I got this code from a forum, but it does not work:
import bpy

strip = bpy.context.scene.sequence_editor.active_strip

strip.strip_color = (0.0, 0.0, 0.0)
#strip.use_strip_color = False

preset_subdir = "tracking_settings"

class AddPresetNodeColor(AddPresetBase, Operator):
    """Add or remove a Node Color Preset"""
    bl_idname = "node.node_color_preset_add"

preset_subdir = "node_color"

class SEQUENCER_PT_strip_color(SequencerButtonsPanel, Panel):
    bl_label = "Strip Color"
    bl_options = {'DEFAULT_CLOSED'}
    bl_category = "Strip"

    @classmethod
    def poll(cls, context):
        if not cls.has_sequencer(context):
            return False

        strip = act_strip(context)
        if not strip:
            return False

        return strip.type

    def draw_header(self, context):
        strip = act_strip(context)
        self.layout.prop(strip, "use_strip_color", text="")

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

        layout.enabled = strip.use_strip_color

        row = layout.row()
        row.prop(strip, "strip_color", text="color for the strips")

#class AddPresetStripColor(AddPresetBase, Operator):
    #"""Add or remove a Strip Color Preset"""
    #bl_idname = "strip.strip_color_preset_add"
    #bl_label = "Add Strip Color Preset"
    #preset_menu = "SEQUENCER_PT_strip_color_presets"

    #preset_defines = [
        #"strip = bpy.context.scene.sequence_editor.active_strip"
    #]

    #preset_values = [
        #"strip.strip_color",
        #"strip.use_strip_color"
    #]

    #preset_subdir = "strip_color"

class AddPresetInterfaceTheme(AddPresetBase, Operator):
    """Add or remove a theme preset"""
    bl_idname = "wm.interface_theme_preset_add"

AddPresetInterfaceTheme,
AddPresetKeyconfig,
AddPresetNodeColor,
#AddPresetStripColor,
AddPresetOperator,
AddPresetRender,
AddPresetSafeAreas,

from bl_ui.properties_grease_pencil_common import (
    AnnotationDataPanel,
)

from bl_ui.utils import PresetPanel
from rna_prop_ui import PropertyPanel

layout.label(text=iface_("Original frame range: %d-%d (%d)") % (sta, end, end - sta + 1), translate=False)

class SEQUENCER_PT_strip_color_presets(PresetPanel, Panel): #apparently this class isnt needed.
    """Predefined node color"""
    bl_label = "Color Presets"
    preset_subdir = "strip_color"
    preset_operator = "script.execute_preset"
    preset_add_operator = "strip.strip_color_preset_add"

class SEQUENCER_PT_strip_color(SequencerButtonsPanel, Panel):
    bl_label = "strip Color"
    bl_options = {'DEFAULT_CLOSED'}
    bl_category = "Strip"

    @classmethod
    def poll(cls, context):
        if not cls.has_sequencer(context):
            return False

        strip = act_strip(context)
        if not strip:
            return False

        return strip.type

    def draw_header(self, context):
        strip = act_strip(context)
        self.layout.prop(strip, "use_strip_color", text="")

    #def draw_header_preset(self, _context): #apparently not needed

SEQUENCER_PT_strip_color_presets.draw_panel_header(self.layout)

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

        layout.enabled = strip.use_strip_color

        row = layout.row()
        row.prop(strip, "strip_color", text="")

class SEQUENCER_PT_time(SequencerButtonsPanel, Panel):
    bl_label = "Time"
    bl_options = {'DEFAULT_CLOSED'}

SEQUENCER_PT_effect_text_layout,
SEQUENCER_PT_effect_text_style_shadow,
#SEQUENCER_PT_strip_color_presets,
SEQUENCER_PT_color, #possibly remove
SEQUENCER_PT_time,
SEQUENCER_PT_source,

if (scene->ed) {
        Sequence *seq;
        SEQ_BEGIN (scene->ed, seq) {
          seq->flag &= ~(SEQ_FLAG_UNUSED_6 | SEQ_FLAG_UNUSED_19 | #possibly remove
                         SEQ_FLAG_UNUSED_21);
          if (seq->type == SEQ_TYPE_SPEED) {
            SpeedControlVars *s = (SpeedControlVars *)seq->effectdata;

unsigned char blendcol[3];
  SolidColorVars *colvars = (SolidColorVars *)seq->effectdata;

    if (seq->flag & SEQ_USE_STRIP_COLOR && seq->type != SEQ_TYPE_COLOR){
        rgb_float_to_uchar(col, seq->strip_color);
        return;
    }

  switch (seq->type) {
    case SEQ_TYPE_IMAGE:
      UI_GetThemeColor3ubv(TH_SEQ_IMAGE, col);

/** SEQ_NAME_MAXSTR - name, set by default and needs to be unique, for RNA paths. */
  char name[64];

  /* Custom Strip Color */
  #float strip_color[3];

char _pad4[4];

  /** Flags bitmap (see below) and the type of sequence. */
  int flag, type;
  /** The length of the contents of this strip - before handles are applied. */

SEQ_USE_PROXY = (1 << 15),
  SEQ_USE_TRANSFORM = (1 << 16),
  SEQ_USE_CROP = (1 << 17),
  SEQ_USE_STRIP_COLOR = (1 << 18),
  SEQ_FLAG_UNUSED_19 = (1 << 19), /* cleared */
  SEQ_FLAG_UNUSED_21 = (1 << 21), /* cleared */

RNA_def_property_update(
      prop, NC_SCENE | ND_SEQUENCER, "rna_Sequence_invalidate_preprocessed_update");

  /* Custom Strip Color */ #possibly ername strip color as "use ui_custom_strip_color"
  prop = RNA_def_property(srna, "use_strip_color", PROP_BOOLEAN, PROP_NONE);
  RNA_def_property_boolean_sdna(prop, NULL, "flag", SEQ_USE_STRIP_COLOR);
  RNA_def_property_boolean_default(prop, 0);
  RNA_def_property_ui_text(prop, "Enable custom strip color", "Uses custom strip color if enabled");
  RNA_def_property_update(prop, NC_SCENE | ND_SEQUENCER, NULL);

static const float default_strip_color[] = {0.f, 0.f, 0.f};
  prop = RNA_def_property(srna, "strip_color", PROP_FLOAT, PROP_COLOR_GAMMA);
  RNA_def_property_float_sdna(prop, NULL, "strip_color");
  RNA_def_property_array(prop, 3);
  RNA_def_property_float_array_default(prop, default_strip_color);

RNA_def_property_ui_text(prop, "Strip Color", "Custom Strip color");
  RNA_def_property_update(prop, NC_SCENE | ND_SEQUENCER, NULL);

  /* blending */
  prop = RNA_def_property(srna, "blend_type", PROP_ENUM, PROP_NONE);
  RNA_def_property_enum_sdna(prop, NULL, "blend_mode");
  RNA_def_property_enum_items(prop, blend_mode_items);

Q: Any suggestions to make it work?

Here's a recent project which allows for color coding strips depending on what level of development they are: https://blenderartists.org/t/bpm-blender-project-manager/1223236

A work-around, suggested by David McSween, is to add a color strip beneath the strip you want to color and group them together (Ctrl+G). That way, you'll see a small colored bar within the strip. Because the color strip is underneath and by default replaced with the original strip, nothing will change in the viewport.
The code above seems to come from a suggested patch. It's still in revision (from 2018) and I don't think it's wise to install it at this moment. Maybe, you can inquire with the author?


text:
How can I use photoshop files as brushes?
I have some .psd files and I want to use them as brushes for sculpting, but I can not find an way to import them. I've already tried to add the brushes using append, but don't get how to use them.
Q: Is there any way to use brushes from a .psd file?

So according to your comment you can import a psd, you can also convert your file to .jpg or .png, then open the N  panel, create a new texture, and in the Properties panel > Texture, load the image. Don't forget to enable Dyntopo if you mesh is low-poly. Also, choose the Mapping mode you want:

Thanks it's working ! :)
However another question, do you know how I can add this brushes, add them a thumbnails and save it for always in Blender, like if i was using the append function ?

Oh, and FYI .psd is working :)

oh ok I didn't know I'm going to edit my answer then

I know that Blender team is working on an asset management window, for the moment I guess you need to either use an addon, or save a default file with the brushes appended (File > External Data > Pack All Into .blend and File > Defaulfs > Save Startup File)? Maybe try that?

Well, i've just saved the project and brushes also saved :)


text:
Why can I see though my Mesh (even in renders)?
I have a 3D model of a computer processor and I think I messed up some settings.
I can see through the head of the processor and the pins below the process unit are visible and I know that this problem is not because of Camera View Clipping because I can see the top part texture of the head.
Note: I' using EEVEE engine.

No inverted normals:

Quick guess: Your normals are inverted and you have enabled backface culling?

@haarigertroll no inverted normals , how to switch off backfuace culling

@haarigertroll Figured out

The problem was blend mode , the blend mode was set to alpha blend , when i changed it to alpha hashed , it got solved


text:
How to use Blender Filmic in After Effects?
Getting Blender’s filmic into After Effects with EXR. When importing the config.ocio file from the Blender’s color management file into OpenColorIO in After effects I get config failed sanitycheck. The role “xyz” is in conflict with a colorspace of the same name.
Does anyone know a solution to this? I cannot get linear to Filmic sRGB without it accepting the confic.ocio file.

Video tutorial explaining how to do it.
To get it to work in After Effects you need to make a copy of Blender's config.ocio file. Open it up in text editor and add a line of code.
Find this in your text editor:
CIE XYZ color space
XYZ: XYZ
Delete that and add what is below.
# CIE XYZ color space #XYZ: XYZ
# XYZ: XYZ

# Need a general default
default: Linear

Save the text file and you are done. Brendan Bolles fixed it the creator of the openColorIO plugin for After Effects.
Video tutorial explaining how to do it.

I will make a video tutorial next week and post it stay tuned.

Hi. Just tried helping you making this a better answer for future visitors according to: https://blender.stackexchange.com/help/how-to-answer I personally do not care and I honestly don't think you need any video tutorial for a few instructions... See how long the original post is: Render with a wider dynamic range in cycles to produce photorealistic looking images Don't waste your time and consider: Link-only answers are discouraged here anyway.

Here is a video tutorial https://youtu.be/4P2j1hzD8I8

If anyone on a Mac can't find Blender's config.ocio it is located here: /Applications/Blender.app/Contents/Resources/3.1/datafiles/colormanagement/config.ocio

It means the "XYZ" color space in Blender also exists in After Effects.  AE has a color space of the same name, and it doesn't want you to overwrite it.  You can open Blender's .ocio file in a text editor to see:

What you could do is make a copy of the .ocio file, remove everything related to the XYZ color space, and try importing that.  I'd also venture others would want to use your result, so that may be a good thing to post :)

Thanks for the quick reply.
I deleted all the XYZ stuff and when I loaded it in OpenCOlorIO I got a different error  "buildColorSpaceOps failed, null srcColorSpace when I tried to load it after that. So I am not sure what to edit now. :/

Those keywords aren't in the file, so it must be on AE's end.  It's interesting how I don't see anything about using this ocio online.  Have you tried the filmic and luts folders?  The filmic folder looks like 3D luts for the filmic color space.


text:
Create keyboard shortcut for an operator using python?
How can I create a keyboard shortcut for a specific operator with using the python API?

Minimal add-on example using keymap_items.new() to register a new hotkey CtrlW in 3d View:
import bpy

bl_info = {
    "name": "Your Addon Name",
    "author": "Author Name",
    "version": (0, 1),
    "blender" : (2, 80, 0),
    "location": "",
    "warning": "",
    "wiki_url": "",
    "tracker_url": "",
    "category": ""
}

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

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

addon_keymaps = []

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

    # Add the hotkey
    wm = bpy.context.window_manager
    kc = wm.keyconfigs.addon
    if kc:
        km = wm.keyconfigs.addon.keymaps.new(name='3D View', space_type='VIEW_3D')
        kmi = km.keymap_items.new(OBJECT_OT_CustomOp.bl_idname, type='W', value='PRESS', ctrl=True)
        addon_keymaps.append((km, kmi))

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

    # Remove the hotkey
    for km, kmi in addon_keymaps:
        km.keymap_items.remove(kmi)
    addon_keymaps.clear()

if __name__ == "__main__":
    register()

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

what happens if there's already an addon keymap named '3D View'?

@MartyFouts — [ What if there's already an addon keymap named 3D View? ] — In that case no exception raised, just new shortcut will be added (while keeping old ones). If shortcut for this operator already exits in this context – the shortcut will be rewritten.


text:
AN - How to get a specific pixel of a texture?
Is it possible to get a specific pixel of a texture using animation nodes and extra nodes add-on?


text:
Blurry volumetrics in viewport?
I am trying to make a procedural cloud. I followed a couple of tutorials, but every time I change to a volume shader, it gets blurry. This is the first time I'm messing around with this kind of stuff.
Is there a setting to control the blurriness? My first attempts went ok, but were also a little blurry on 2.83. I thought it might have been a version difference so I downloaded 2.9 but it is just as bad if not even worse.

Attempt using Blender 2.83

Attempt using Blender 2.9
None of the tutorials I watched looked like this. I saw some people having problems with the film lens but mine is at 1.5 (default).
Q: How to control the blurriness of the volume in the viewport?

Hi and welcome! Just to let you know: This is no regular forum rather a Q&A site so please always try to be specific in your title of the question which will make your question helpful to future visitors, I'd recommend read: https://blender.stackexchange.com/help/how-to-ask and take the tour to learn how this site works. Thanks.

Volumetrics is heavily reliant on lighting, so the first thing to do is to place lights accordingly. This is most easily accomplished by using Rendered Preview (shading tab uses Material Preview which uses it's own lighting by default), and to place a light close to your volume.
In addition to lighting, volume "crispness" can be controlled from the Volumetrics section of the Render Properties tab:

Tile size has the largest effect, however it also can also have the largest effect on performance. Increasing the number of samples will increase the detail, and shortening the end value will increase it further (bear in mind - the "end" value is related to your camera distance - too small a value and you won't see the volume except for at very close range.)


text:
How to change the orientation to resize?
I don't know what I did, but now the resize follows the cursor, When I resize the object goes away. How can I change the orientation to the object again?

Note: I hid the cursor because I think this could solve this problem, it is at the world origin.

You've selected the 3D cursor as Transform Pivot Point, so you need to switch to Median Point for example:


text:
Script for rotating multiple selected objects and insert keyframes
I'm very new to python scripting so I could use a lot of help.
I'm looking for a script to do these action in sequence:
1) Manually select objects to interact with in the scene
2) Set a specific frame where i want to set my animation keyframe
3) Rotate all objects by 180° on the Z axis
4) set a LocRotScale Keyframe
and repeat this for about 3 times, so having 3 complete rotations of the objects, splitted by 2 central "stops" of 48 frames.
can someone please help me with this?
until now i have managed to compile the script for rotating and keyframing a single object.
import bpy
from math import *
import mathutils

scene = bpy.data.scenes["Scene"]
scene.frame_start = 1
scene.frame_end = 768

ob = bpy.context.object

bpy.context.scene.frame_set(24) # start with delay

ob.rotation_euler = (0,0,0)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(120) #half rotation 1

ob.rotation_euler = (0,0,3.14)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(216) #rotation 1

ob.rotation_euler = (0,0,6.28)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(264) #stop pause 1

ob.rotation_euler = (0,0,6.28)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(360) #half rotation 2

ob.rotation_euler = (0,0,9.42)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(456) #rotation 2

ob.rotation_euler = (0,0,12.56)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(504) #end stop 2

ob.rotation_euler = (0,0,12.56)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(600) #half rotation 3

ob.rotation_euler = (0,0,15.7)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(696) #rotation 3

ob.rotation_euler = (0,0,18.84)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(744) #end 1

ob.rotation_euler = (0,0,18.84)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

bpy.context.scene.frame_set(769) #end

ob.rotation_euler = (0,0,18.84)

bpy.ops.anim.keyframe_insert_menu(type='LocRotScale')

Now what i'm tryng to do is to cycle trough all objects in scene and repeat the same actions of rotation and keyframing but I'm not getting much results.
can someone plese provide some help about this?
thanks!

Welcome to Blender.SE. Could you please present your research, what you have tried, what has failed and what you expected. As is stands, it reads a bit as if you not only have posted multiple questions in a single question post, but also expect someone else to create a script according to your requirements. (This would be volunteer work, not a question-answer exchange.)

Related: https://blender.stackexchange.com/a/60238/15543  Don't use the keyframe insert menu, use ob.keyframe_insert(datapath, frame=frame)  Also angles in blender are expressed internally as radians.


text:
fake_module: addon missing 'bl_info' gives bad performance!:
I tried to make a multiple file add-on using _ init _.py file I have two files from which I am trying to import operator and panel first file is material_operator.py in which I have defined an operator
and second file  is panel.py and in this, I have created a panel for the add-on.
so, totally 3 files-

_ init _.py
material_operator.py
panel.py

so when I install the add-on it is successfully installed and works properly, but the problem is when I open console it gives the following error -
fake_module: addon missing 'bl_info' gives bad performance!:
'C:\\Users\\ADMIN\\AppData\\Roaming\\Blender Foundation\\Blender\\2.83\\scripts\\addons\\panels.py'
fake_module: addon missing 'bl_info' gives bad performance!:
 'C:\\Users\\ADMIN\\AppData\\Roaming\\Blender Foundation\\Blender\\2.83\\scripts\\addons\\shader.py'

my script is as follows -

_ init _.py
bl_info = {
"name": "Add Test Material",
"author": "Rakesh Choudhary",
"version": (1, 0),
"blender": (2, 83, 0),
"location": "View3D > Sidebar > Test Material Node",
"description": "Click on the 'Test Material' button to add a material to your object.",
"warning": "",
"wiki_url": "",
"category": "3D View"
}

import bpy
from bpy.types import (
    Operator,
    Panel,
)
from . import material_operator
from . import panel

def register():
    material_operator.register()
    panel.register()

def unregister():
    material_operator.unregister()
    panel.unregister()

if __name__ == "__main__":
    register()

material_operator.py - in this an operator is created in which a material is made
import bpy
from bpy.types import (
    Operator,
    Panel,
)

class TEST_MATERIAL_OT_add_material(Operator):
    bl_idname = "test_material.add_material"
    bl_label = "Add Test Material"
    bl_description = "This button will add a material to your object"

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

    def create_material(self):
        test_shader_mat = bpy.data.materials.new("TestMat")
        mesh = bpy.context.object.data
        mesh.materials.clear()
        mesh.materials.append(test_shader_mat)
        bpy.context.object.active_material.use_nodes = True

        for mat in bpy.data.materials:
            if "TestMat" in mat.name:
                nodes = mat.node_tree.nodes
                for node in nodes:
                    if node.type != 'OUTPUT_MATERIAL':  # skip the material output node as we'll need it later
                        nodes.remove(node)

        # Creating Node Group Test_Material
        group = bpy.data.node_groups.new(type="ShaderNodeTree", name="Test_Material")

        # Creating Group Input
        group.inputs.new("NodeSocketColor", "Diffuse Color")
        group.inputs.new("NodeSocketColor", "Glossy Color")
        group.inputs.new("NodeSocketFloat", "Glossyness")
        input_node = group.nodes.new("NodeGroupInput")
        input_node.location = (-800, 0)

        # Creating Group Output Node
        group.outputs.new("NodeSocketShader", "Diffuse Color")
        group.outputs.new("NodeSocketShader", "Glossy Color")
        group.outputs.new("NodeSocketShader", "Mix Output")

        output_node = group.nodes.new("NodeGroupOutput")
        output_node.location = (1500, 0)

        # Creating Diffuse Node
        diffuse_node = group.nodes.new(type='ShaderNodeBsdfDiffuse')
        diffuse_node.location = (150, 100)

        # Creating Glossy Node
        glossy_node = group.nodes.new(type='ShaderNodeBsdfGlossy')
        glossy_node.location = (300, 250)

        # Creating Mix Shader Node
        mix_shader_node = group.nodes.new(type='ShaderNodeMixShader')
        mix_shader_node.location = (450, 100)

        #Creating Color Ramp ------------------------------------------------------
        col_ramp = group.nodes.new(type="ShaderNodeValToRGB")
        #col_ramp.name = "col_ramp"
        col_ramp.location = (400, -300)
        col_ramp.color_ramp.elements.remove(col_ramp.color_ramp.elements[0])

        col_ramp.color_ramp.elements.new(0.750)
        col_ramp.color_ramp.elements[0].color = (0,0,0,1)

        col_ramp.color_ramp.elements[1].position = (1.0)
        col_ramp.color_ramp.elements[1].color = (1, 1, 1, 1)

        # Creating Links Between Nodes----------------------------------------------
        group.links.new(diffuse_node.outputs["BSDF"], mix_shader_node.inputs[1])
        group.links.new(glossy_node.outputs["BSDF"], mix_shader_node.inputs[2])
        group.links.new(input_node.outputs["Diffuse Color"], diffuse_node.inputs[0])
        group.links.new(input_node.outputs["Glossy Color"], glossy_node.inputs[0])
        group.links.new(input_node.outputs["Glossyness"], glossy_node.inputs[1])
        group.links.new(output_node.inputs["Diffuse Color"], diffuse_node.outputs[0])
        group.links.new(output_node.inputs["Glossy Color"], glossy_node.outputs[0])
        group.links.new(output_node.inputs["Mix Output"], mix_shader_node.outputs[0])
        group.links.new(col_ramp.outputs["Color"], mix_shader_node.inputs[0])

        # Putting Node Group to the node editor
        tree = bpy.context.object.active_material.node_tree
        group_node = tree.nodes.new("ShaderNodeGroup")
        group_node.node_tree = group
        group_node.location = (-40, 300)
        group_node.use_custom_color = True
        group_node.color = (1, 0.341, 0.034)
        group_node.width = 250

        shader_node_output_material_node = tree.nodes["Material Output"]
        links = tree.links
        links.new(group_node.outputs[0], shader_node_output_material_node.inputs[0])

        #Material ends here------------------------------

classes = (TEST_MATERIAL_OT_add_material)

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

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

if __name__ == "__main__":
    register()

panel.py - this is the file in which panels are created
import bpy
from bpy.types import (
    Operator,
    Panel,
)

class TEST_MATERIAL_PT_layout_panel(Panel):
    bl_label = "Test Material Node"
    bl_category = "Test Material"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

    def draw(self, context):
        layout = self.layout
        layout.operator("test_material.add_material", icon='IMPORT')

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

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

if __name__ == "__main__":
    register()

Can anyone tell me what I am missing here?

Replace: mesh = bpy.context.object.data by mesh = context.object.data, bpy.context.object.active_material.use_nodes = True by context.object.active_material.use_nodes = True and bpy.context.object.active_material.node_tree by context.object.active_material.node_tree...

Multi file addons require their own folder.
The issue you are having is, addons is your addons folder.  The error reports that all of your files are there.  Having an __init__.py in your addons folder is a bad idea too. An init in a folder tells python to treat it as a module.   Fortunately, I believe the devs foresaw this possibility and the folder is not directly import, otherwise you'd snaff up all the addons.
Instead if your addon is to be called my_addon and has another file foo.py create the structure like so
addons/
    my_addon/
        __init__.py
        foo.py

Having erroneously placed all  files in the addons folder,it sees panels.py as an addon to install, which is missing the bl_info dictionary. -> The error.
Related
Recently answered giving  a run down on a multi file addon here Trying to make a menu using multiple modules

@Rakeshchoudhary  Addon is looking good. A small suggestion.  If using context in an operator method  go for def create_material(self, context) and pass context as you would calling other methods like invoke, execute, and draw eg with self.create_material(context) At the time being this does not alter the result, as AFAIK the context passed and bpy.context are always same, even if context is overridden.  If in the future this is changed it could result in context passed in operators with overridden context may not match "actual context",  then it would be a difficult issue to debug.


text:
Switch into edit mode during for-loop
I'm iterating through a list of vertices. The for-loop is for selecting each
vertex and translating it separately.
However whenever I switch between the modes during the for-loop the selection of the vertices behave strangely. It only selects 3 of my 6 vertices. If I uncomment the lines for switching into edit mode it works as usual.
Here is the code:
import bpy
import numpy as np

ri = 4
bpy.ops.mesh.primitive_circle_add(vertices=6, radius=ri, location=(0,0,0))

bpy.ops.object.mode_set(mode='EDIT')

bpy.ops.mesh.extrude_region_move(TRANSFORM_OT_translate={"value":(0, 0, 0.5)})

bpy.ops.object.mode_set(mode='OBJECT')
data = bpy.context.active_object.data

bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.mesh.select_all(action='TOGGLE')

bpy.ops.object.mode_set(mode='OBJECT')

indices = np.arange(-6, 0, 1)
verts = []
for i, v in enumerate(indices):
    vert = data.vertices[v]
    verts.append(vert)

for i, v in enumerate(verts):

    bpy.ops.object.mode_set(mode='OBJECT')

    v.select = True
    bpy.ops.object.mode_set(mode='EDIT')

bpy.ops.transform.translate(value=(0, 0, 0.5))

bpy.ops.object.mode_set(mode='OBJECT')
v.select = False

Thanks for your advice.

Welcome to bse.  Took the liberty to edit your q (added a value for ri and removed default props from operator calls).   I'd suggest having a look into the bmesh module to do this, as it doesn't require the flipping in and out of edit mode.  Also not sure what you are trying to achieve, reversing the verts, selecting all then translating?  Should transform.translate be in the for loop?

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


text:
Creating an executable python script, with OS commands, to start Blender and run another script
I need a little help creating an executable python OS command for Blender (Windows and Mac).
I am setting up a stand-alone blender package for a client to use. I have a python script that imports some data and I want to create an executable python script that runs OS commands to run Blender, run the python script and define the data directories.
This is a generic version of the Windows command I normally run to import the data, using the stand-alone version of Blender:
"C:\Users\username\Desktop\Package\system\blender\blender.exe" "C:\Users\username\Desktop\Package\system\version_data\CurrentVersion.blend" -P "C:\Users\username\Desktop\Package\system\version_data\BlenderScript.py" "C:\Users\username\Desktop\Package\input_data\\" -y

From my research I have worked out that I need to:

import os
make the directories in the command relative
create an executable python file

My python experience is limited, but I believe it may be something like this:
import os

pythonDirectory = os.path.dirname(os.path.abspath(RunThisApp.exe))  # get the current dir of this file (which would be: C:\Users\username\Desktop\Package\)

os.path.join(pathDirectory, "//system\blender\blender.exe" "//system\version_data\CurrentVersion.blend" -P "//system\version_data\BlenderScript.py" "//input_data\\" -y)

However I had a look at this post and was a little fuzzy as to the best way to do this:
https://stackoverflow.com/questions/89228/calling-an-external-command-in-python
Then I could possibly use PyInstaller to create the python executable files. Which seems to be the simplest method suggested here:
https://stackoverflow.com/questions/5458048/how-to-make-a-python-script-standalone-executable-to-run-without-any-dependency
http://www.pyinstaller.org/
Am I close to the correct result here? I am guessing my syntax is off. I need to make sure it works for both Windows and Mac.
It should also be noted that the separate python script I run to import data  into blender (which I have been using and updating for a couple of years), refers to OS arguments to get the desired path of data to import, so I need to make sure that I maintain that connection. Here is an example:
IMPORT_DATA_FILENAME = sys.argv[4]+'data.txt'

Any advice or input would be greatly appreciated.
Chris Lee

Unless I am misunderstanding, this seems like more of a Python question than a Blender one. I think this would be better suited to one of the programming focused StackExchanges.

You may be correct. I will do that.

I'm voting to close this question as off-topic because this is a general Python question, not a Blender-specific one.

Thank you. Is there a way I can close the question?
Should I delete it, or wait?

I posted the question over here instead:
https://stackoverflow.com/questions/44053517/creating-an-executable-python-script-with-os-commands-to-start-blender-and-run

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


text:
How to get fuzzy/blurred edges on a 3D object ? Ghibli look rock

Hi everyone ! I've been going through a great tutorial to get this Ghibli-like rock shader (by Kristof Dedene) and to push more the exercise I'd like to get those blurry/fuzzy edges on my 3D rock.
This is made in Eevee and it's a UV Sphere with a Voronoi texture displace modifier on top (maybe that complicate the thing ? not sure).
If you need more informations, let me know. Thank you !

Maybe give a little bit of blur in the Compositor?

... or pull focus with Depth of Field set shallow?

Mixing Depth of field and Blur in compositing does the job, few tweakings and it will be good ! thank you both !


text:
How can I dynamically add plane meshes to an object
I want to sculpt terrain for an open world game that I am working on and I'm looking for a way to have blender dynamically add plane meshes for me to sculpt as I work, kind of like a minecraft-ish chunk system almost, rather than creating one massive plane mesh and trying to navigate it.
Are there any addons/extensions that can accomplish this or something similar?
And if not, what are the techniques one might use to sculpt a large open-world terrain?

I'm hesitant to respond to this because I don't have a good solution for Blender. With that said, I just did this for the first time a few weeks ago. After going through the whole process of sculpting in Blender, exporting my map, then importing it to UE5, I can confidently say that I wish I would have just sculpted the map natively in Unreal. After all, that's exactly what game engines are made for. You'll have to manually smooth out your terrain in whatever engine you import the height map too anyway.

Thank you for your answer, I agree that if I were just limiting myself to heightmaps the better way would absolutely be game engine sculpting. The problem I have with it is that to my knowledge UE5 terrain sclupting is limited to heightmaps and I want to be able to introduce caves and arches to my terrain, which isn't doable with purely heightmaps


text:
Font management between machines/OS
Is there a way to make Text objects reference fonts via a relative path?
I have my .blend file versioned, and it will be used on other machines. To make fonts consistent, I would also add a fonts/ folder to the versioning system.
Ideally, all .blend files would point to these font files, so no matter where they are opened the same fonts would be available.
Also, is there a better way of achieving this?

Just a wild idea: why don't you simply test if it works? I downloaded a free font (to make it's one I haven't installed in my system), saved a file with a text in a specific folder. In this folder I created a subfolder "font" and placed the font in there, then I went to the Text Properties, chose the font from this subfolder and saved the file. Then I moved everything to a USB stick, opened the file from there and the text had the correct font. Easy as that. When the font is not present in the folder, the text uses the default font (but shows the name in the Text Properties.

Blender has the ability to encapsulate (incorporate) various kinds of data (including fonts) within the blend-file that is normally saved outside of the blend-file. This allows sharing a full project as a single file, instead of e.g. an archive containing the blend-file and all its dependencies.
To pack external resources, click: File ‣ External Data ‣ Pack Resources
You know that a data is packed when you see a little “gift box” icon displayed next to its name:

If you want to keep the font "separate" in case of tracking by svn, you can ensure that your paths are relative by clicking: File ‣ External Data ‣ Make Paths Relative

That's what I suggest for a single file as well. But the font folder version is also a good option if you maybe want to share multiple files that should all have access to the same font, so you don't have to pack the font in each blend file. //EDIT: Oh, you edited your answer ;)


text:
Creating Fade-Out Laser Light Rays Without light spots in Blender
I'm trying to create a scene that includes laser or light rays similar to the example images provided, but I want these rays to avoid casting any reflections on surrounding surfaces. Here's what I've tried so far:
Volume Scatter Method: I placed the entire scene within a volume scatter and used spotlights to simulate the rays. This provided the ray effect, but reflections still appeared on the walls, which I want to avoid.

Cone with Principled Volume Method: I modeled the rays using a cone with a Principled Volume shader. This method allows for ray control but creates a clean cut at the end of the ray, which I don't want. I'd prefer a smooth, gradual fade-out at the end, with the ray appearing brightest near its origin.

Could someone suggest a way to achieve laser light rays in Blender that:
Don’t cast any reflections on walls or other surfaces.
Have a smooth fade-out at the end of the ray.
Start bright at the origin and gradually diminish along the length of the ray.

Any tips on shader setup or alternate methods would be greatly appreciated!

Do you want it to be in Cycles or Eevee ? With Cycles it would be simple to not cast light in the scene with a Light Path node. Also, are you talking about lasers (red line), or just spot lights (white cone) ?

If you use a Texture Coordinate node in the shader editor, with the Generated output you can get a gradient from 0-1 on the local XYZ axis for your object. Then use the Z output multiplied over your volume density and emission values and it will create the fade out effect. You can use a color ramp to edit the falloff.

Omg thank you so much! This is great and solved my problem!:)

Awesome! If this answer works can you accept it as the answer so it gets removed from the unanswered questions queue?


text:
best way to transfer weights? (clothing)
What is the best or most functional way to transfer a character's weight to an outfit? I end up using transfer weights with nearest face interpolated but I end up having a lot of problems

Hello have you tried the Data Transfer modifier? You need to choose the Source, then enable Vertex Data, click on Vertex Groups, and choose Mapping > Nearest Vertex, click on Generate Data Layers and apply the modifier

Hi!! Thanks! I will try and tell you the result+


text:
How to change the view angle using a cusor
After creating an object, how to change the view angle using a mouse cusor so that I can view the object from a different angle?

Can you be more specific? How is changing the view angle related to creating a new object? Have you tried using mouse3 click ?

Hi, I gave this question a downvote because it does not show any research effort. See: https://docs.blender.org/manual/en/latest/editors/3dview/navigate/index.html Or some beginner tutorials for the basics.

Click down the middle mouse button (scroll wheel) and move the mouse

Nevermind, I think I found the answer.  I have to click the hand icon on the right then use my mouse.  Thanks.


text:
Creating Millions Of Particles With Spheres
I have a scene where I need to put in millions of particles. I want to represent each particle with a primitive, for example, a meta-ball object. All the particles can share the same primitive. The locations of the particles are from somewhere else, therefore I need to import them and create the particles inside blender with python scripts.
Currently, I'm testing the following scripts:
 for i in range(0, 100):
    for j in range(0, 100):
        bpy.ops.object.metaball_add(type='BALL', radius=0.1, enter_editmode=False, align='WORLD', location=(i*0.1, j*0.1, 0), scale=(1, 1, 1))

I input the code via the console, but this seems inefficient and freezes blender. Is there a way to create many copies of the same object more efficiently?
I also found the array modifier. The array modifier seems to be able to handle a very large number of objects without a problem. However, I'm not sure how to input arbitrary displacements for each individual copy. As in my case, each particle has its own displacement.

Suggestion.  Measure,with Python tools, the time it takes to add a simple cube versus the time it takes to  add metaballs.  Metaballs are not the least expensive computer time primitive. I am not sure if you are including render time.  Cleary a double for loop in  Python wont be as fast as some other high performance programming language.

bpy.ops is not the more efficient. There is other apis. But what do you want to do once created (animated, static, ...)? Any particular reason to use metaball?

I found a workaround, following this post:
https://devtalk.blender.org/t/manipulating-particles-in-python/7552
I'm able to manipulate the positions of a particle system. So I created a particle system and then write in the positions. Then, I set the instance object of the particle system to be the primitive I want. I found a Nurbs sphere could work for me. In this way, I'm able to render 1 million particles with no problem.


text:
T-pose Mode, Automatic Weights

When I'm in pose mode trying to make my character stand in a T-Pose I get his hips or ribs to come out like batman's wingsuit and I don't know why. I am able to rotate my bones, it moves the arm but randomly sticking out.
I don't know if you guys understand but the hips come out or the ribs. I set the weight of all of the character Blue.
Now I don't know if I should make the character's weight all blue, but someone in a video told me to do it and I don't like what I'm seeing.

@Timaroberts do you know what i can do?


text:
How To Make Volumetrics Round?
I'm currently working on a spaceship render. The engines glow and emit light. I have cubes behind each thruster that contain volumetric properties, I want these to look like a subtle back burner or just some ambient light coming out from the thrusters.
As you can imagine, the engine thrusters are circular. I have my volumetric in a cube, and of course the gas is cubic. It is not the right shape I am trying to accomplish. I need the volume circular, or just soften edges.
I have attached an image of the render, with the problem of the square volumetric occurring, as well as a screenshot of the nodes I used for the volumetric shader.

volumetrics will be cubic in Eevee, but you could use a Volume > Empty with a Mesh to Volume modifier and a Dsiplace modifier as explained here: https://blender.stackexchange.com/questions/201071/suggestions-for-fog

or use this kind of trick: https://blender.stackexchange.com/questions/204710/how-can-i-make-a-light-trail-without-using-particles/204745#204745

You could just consider the box to be a vector space in which you can sculpt your flame, by making its [ density | emission strength | color ] a function of the box's X,Y and Z.
Keeping it simple, here .. This box measures 2x2x4 Blender Units with its origin in the center of its base, and X,Y, and Z are measured in Object space.

(Left) By setting the density to 1 - the XYZ length, you get a hemisphere:

(Center) You could scale the Z to get an ellipsoid:

(Right) You could split the Z off as a multiplier, and sculpt it with a curve:

Of course you could extend this principle to vary colors, get flames-within-flames, etc. etc.

..oops, I left the file in Cycles.. but it works fine in EEVEE..

If you start with a UV sphere as your "volume object", you can constrain the volume using a (scaled & clamped) Spherical Gradient (Gradient Texture), as a Mix Factor between the Volume and a Transparent Shader.

Why so complicated? There's no need for a Transparent Shader and a Mix Shader, this is no surface material.... just plug the output of the Color Ramp into the density of the Volume Scatter Node. Wherever it is black, the density is 0 (= transparent). If the density is too low or too high, put a Math Node set to Multiply between Color Ramp and Volume Scatter. Apart from that, the answer provided by Robin Betts works much better for your purposes because you don't have shape the bounding object for the engine shape.

Just an idea I tried out for you really quickly.  Didn't get great results, but didn't try long so you may be able to get it to work.  If you:

Make the volumetric shape emit particles (maybe creating some internal geometry so that it emits particles inside the object)
Create a small sphere object that has the volumetric material
Make the particle system emit this object.

Still gives kind of a pixelated look as all the little objects are still cube volumes, so may not work.


text:
Two objects don't separate
I add this plane, and when I move it, the donut and plane move together.

Does this answer your question? Splitting pieces of a mesh into a new object

no because it's not a mesh you know...

Hi, please don't add solved to the title of questions (this is no forum), answering is sufficient, and users will know if a question is "solved".  You will soon be able to accept your self-answer also.

hi, how can I post another question? is too dificult to use this forum if I have to wait one hour to make the question.... Thanks

Hey @Pep, as a newer user there are some limitations, but over some time those start decrease as you contribute more good content and earn rep points. Check out the [tour] , there's some useful info there about how the site works and how it is different from the usual forum (it isn't one in the traditional sense).

Ok, solved. You must click on proportional editing objects


text:
Mesh Not Following Curve
I've been following this video and managed to do the hair correctly for the front part of my head, but for some reason I'm unable to get the mesh to properly follow the curve for the hair mesh meant to come down the side of the head.
The Mean Tilt for my curve is the same as the curve for my front-facing hair curve, and yes, the origin of both the curve and mesh are at the same spot.
The curve is set to -Z because I want the mesh to be upright when I'm editing it (see image), but this makes the mesh in object mode not curve downward along the curve to look like a hair. The mesh follows the curve perfectly if set to -Y, but then I have to work with my view turned on the side.
Its a bit confusing to explain, but basically, I want the mesh to be upright when I'm editing it, but I want it to follow the curve correctly from the side while it is in object mode (and downward vertically so it looks like hair) - I can't seem to have both.

i may be misinterpreting the question, but it seems to me that if you want the mesh to deform the the curve, you need to add some loop cuts going down, a mesh can only deform along a loop

fuck me, how did i not fucking realize that... such a simple solution. Thanks! And I'm surprised you were able to follow along with all that.


text:
Issue Filling Hole in Mesh
I'm following an apple sculpting tutorial and at some point, I seem to have accidentally deleted a vertex along with the four adjacent faces. I filled this hole using the methods I've learned thus far (used F to fill between vertices and Ctrl+R to add one vertex in the middle)
The apple now looks fine in edit mode, but when I switch to object mode, the faces appear to be triangulated. Furthermore, when I apply a subdivision modifier as instructed in the lesson, an unsightly patch appears where I filled the hole. Merging vertices by distance had no effect. The normals are not reversed. I'm using version 2.91 if that information's relevant.

It looks like you have duplicated faces in that area. Select your whole mesh in edit mode, then press M (merge) and select "by distance". However, depending on how close the verts are in your "stem section", it may try to merge them as well. If there is any doubt, hide those concerning areas (with verts that are very close together) before you perform the merge operation. Although, correcting just the problem section from your image should remove exactly 9 verts (you can see in the bottom right corner when you merge). If it only removes 9, then you're good to go.

When you have a hole like this, don't press F to fill, otherwise you'll have one unique face and then you'll need to use J (join) or K (knife) to recreate 4 different faces and they won't even be correct, you 'll need to pull the central vertex to get the right curve:

What you should do instead is selecting 3 vertices on each side:

Then CtrlF (Face) > Grid Fill to fill, and tweak the parameters in the Operator box (bottom left of your 3D view) if necessary:

Yep, that did it. Thank you so much! That was driving me crazy.


text:
Blender cycles texture flickering issue when rendering unique simple solid
I'm trying to create a simple animation in cycles where a simple glass tetrahedron is lit by a lamp spin on it's Z axis. The tetrahedron was generated using the "add mesh: extra objects" add on. It is made of glass by assigning it's transmission to 0.8
Everything looks as I want when I render single images, but when I render it as an animation the surface of the tetrahedron is flickering in a random way. Any ideas on what to do to fix this ?
These are the only things I have in my scene, all the rest has been purged. Also, this only seems to be a problem for a "glass" material, as this doesn't happen with a metal material

Please share your file via https://blend-exchange.giantcowfilms.com (copy&paste given code into your Q). Thank you

@vklidu there's the file

You have a double surface issue. you made the object in edit mode I presume. and 2 times!
ALWAYS check for face orientations:

quick fix:
on edit mode, select all with A then press M and merge distance.
and recalculate your normal after that:
https://docs.blender.org/manual/en/latest/modeling/meshes/editing/mesh/normals.html#recalculate

Thanks a lot, it worked! I have no idea how it occured though...


text:
Mixamo + Wiggle bone
When I add bones to my mixamo armature (which may not be the problem) the mesh of the body either flies of or sinks to the ground when I add the automatic weights.
What I am trying to do is add wiggle bones to the buttocks area. I have been trying to conquer this for a month but to no avail. Could someone please let me know what I am doing wrong.
In edit mode the whole character mesh and bones included starts on the floor,  could this be the problem?

Hello, please [edit] your question and add images that help to describe your problem visually for other users.

I have the same problem using on my character's hair sinking or moving out of position. Did't work out when I try changing the parent's bone. I solved it by turning Amplitude Rotation to 0, 10 will make it sink. Hope this will help.


text:
How do I copy children of an object using copy() method, without messing up their positions?
I am making a scene procedurally with python, and recently switched to the copy() method instead of duplicate_move(). With duplicate_move, all the children of the object reproduced faithfully and their positions relative to the parent were correct. However, with copy(), the children did not get included, so I had to make a series of nested loops going to the depth I needed for my model (four layers) and manually copy, assign parent, and link to scene with each child. This worked, with the exception that the positions of many of the children were wrong, they appeared to be offset vertically by some amount, but their transform data in the inspector panel appears to be the same.
Before we get into what I may have done wrong in my nested loops, is there any way to automatically do a deep copy of the entire hierarchy of an object using the copy() method?
EDIT: Sorry, forgot to include code. Here is the core of what I am currently doing.
actor_copy = actor.copy()
actor_copy.name = str(ID)
scene.objects.link(actor_copy)
if len(actor.particle_systems)>0:
    ps = actor.particle_systems[0].settings.copy()
    actor_copy.particle_systems[0].settings = ps
for child in actor.children:
    child_copy = child.copy()
    child_copy.parent = actor_copy
    scene.objects.link(child_copy)
    if len(child.particle_systems)>0:
        ps = child.particle_systems[0].settings.copy()
        child_copy.particle_systems[0].settings = ps
    for subchild in child.children:
        subchild_copy = subchild.copy()
        subchild_copy.parent = child_copy
        scene.objects.link(subchild_copy)
        if len(subchild.particle_systems)>0:
            ps = subchild.particle_systems[0].settings.copy()
            subchild_copy.particle_systems[0].settings = ps
        for sub2child in subchild.children:
            sub2child_copy = sub2child.copy()
            sub2child_copy.parent = subchild_copy
            scene.objects.link(sub2child_copy)
            if len(sub2child.particle_systems)>0:
                ps = sub2child.particle_systems[0].settings.copy()
                sub2child_copy.particle_systems[0].settings = ps
            for sub3child in sub2child.children:
                sub3child_copy = sub3child.copy()
                sub3child_copy.parent = sub2child_copy
                scene.objects.link(sub3child_copy)
                if len(sub3child.particle_systems)>0:
                    ps = sub3child.particle_systems[0].settings.copy()
                    sub3child_copy.particle_systems[0].settings = ps

Apologies for the hack job, time was short and I'm still hoping this can all be thrown away in favor of the right pre-existing function call. But no, I did not know about matrix_parent_inverse, that sounds very promising, thank you!

Without seeing any code it's difficult. Have you set child.matrix_parent_inverse

And... that was it! All I had to do was manually set each child copy's matrix_parent_inverse to the original child's value for same. Thanks!

Please, look up recursion, I'm fairly sure it'll help you.

Set the matrix_parent_inverse of the copy.
Thought I'd add a supplementary answer, using recursion to get all the children up to a certain level. Without it the code is going to get long and unwieldy for more levels.
import bpy

def copy_ob(ob, parent, collection=bpy.context.scene.collection):
    # copy ob
    copy = ob.copy()
    copy.parent = parent
    copy.matrix_parent_inverse = ob.matrix_parent_inverse.copy()
    # copy particle settings
    for ps in copy.particle_systems:
        ps.settings = ps.settings.copy()
    collection.objects.link(copy)
    return copy

def tree_copy(ob, root_parent, levels=3):
    def recurse(ob, parent, root_parent, depth):
        if depth > levels:
            return
        copy = copy_ob(ob, parent)
        if root_parent is not None:
            copy.parent = root_parent

        for child in ob.children:
            recurse(child, copy, None, depth + 1)

    recurse(ob, ob.parent, root_parent, 0)

#test
tree_copy(bpy.context.object, None)

The answer is that copy() does not include the matrix_parent_inverse property of children, and this does not get set automatically just because you say .parent = parent object, so you have to do it yourself manually. My above (still really lazy) code now looks like this:
actor_copy = actor.copy()
actor_copy.name = str(ID)
scene.objects.link(actor_copy)
if len(actor.particle_systems)>0:
    ps = actor.particle_systems[0].settings.copy()
    actor_copy.particle_systems[0].settings = ps

for child in actor.children:
    child_copy = child.copy()
    child_copy.parent = actor_copy
    child_copy.matrix_parent_inverse = child.matrix_parent_inverse
    scene.objects.link(child_copy)
    if len(child.particle_systems)>0:
        ps = child.particle_systems[0].settings.copy()
        child_copy.particle_systems[0].settings = ps

    for subchild in child.children:
        subchild_copy = subchild.copy()
        subchild_copy.parent = child_copy
        subchild_copy.matrix_parent_inverse = subchild.matrix_parent_inverse
        scene.objects.link(subchild_copy)
        if len(subchild.particle_systems)>0:
            ps = subchild.particle_systems[0].settings.copy()
            subchild_copy.particle_systems[0].settings = ps

        for sub2child in subchild.children:
            sub2child_copy = sub2child.copy()
            sub2child_copy.parent = subchild_copy
            sub2child_copy.matrix_parent_inverse = sub2child.matrix_parent_inverse
            scene.objects.link(sub2child_copy)
            if len(sub2child.particle_systems)>0:
                ps = sub2child.particle_systems[0].settings.copy()
                sub2child_copy.particle_systems[0].settings = ps

            for sub3child in sub2child.children:
                sub3child_copy = sub3child.copy()
                sub3child_copy.parent = sub2child_copy
                sub3child_copy.matrix_parent_inverse = sub3child.matrix_parent_inverse
                scene.objects.link(sub3child_copy)
                if len(sub3child.particle_systems)>0:
                    ps = sub3child.particle_systems[0].settings.copy()
                    sub3child_copy.particle_systems[0].settings = ps


text:
How do I flip normals of duplicated faces?
I'm trying to write a blender script which duplicate and flip faces if X material is found. Right now the script only can duplicate the faces but I need to flip their normals. (Only duplicated faces not the original faces)
The code I have so far:
for ob in bpy.context.scene.objects:
    if ob.type == 'MESH':
        tbh_slots = [id for id, mat in enumerate(ob.data.materials) if mat == mat_tbh]

        faces_mat_tbh = []
        bm = bmesh.new()
        bm.from_mesh(ob.data)

        for face in bm.faces:
            if face.material_index in tbh_slots:

                faces_mat_tbh.append(face)

        bmesh.ops.duplicate(bm, geom=faces_mat_tbh)

        bmesh.ops.reverse_faces(bm, faces=faces_mat_tbh, flip_multires=False) #Trying to flip normals, but it does it to every face that applies to the condition, for obvious reasons.
        bm.to_mesh(ob.data)
        bm.free()

    else:
        ob.select_set(state=True)

You're almost there; after you perform the duplicate operation create a new list faces_added = [f for f in bm.faces if f.material_index in tbh_slots and f not in faces_mat_tbh] then when performing the reverse_faces operation reference the new list. should get you what you need.

@Ratt thanks, I can't test it yet, now I'm having an error that says mat_tbh is not definited despite being working some hours ago without any change.

Bmesh operators return resulting geometry.

Most likely only want to process a mesh once, a hundred selected
objects could all share one mesh. Hence have made a set.

Materials can be OBJECT linked. Have stuck with mesh linked
(Mesh.materials) but in general often a better option to iterate
over the object's material slots.

Make one bmesh, populate it, do stuff, write back, then clear and
repeat, then free.

The duplicate operator returns a number of items in a dictionary
regarding the result, consult the docs bmesh.ops.duplicate or
check it out in the console.
>>> bmesh.ops.duplicate(
duplicate()
BMeshOpFunc bmesh.ops.duplicate(bmesh, geom=[], dest=None, use_select_history=False, use_edge_flip_from_face=False)
-> dict(geom_orig=[], geom=[], vert_map={}, edge_map={}, face_map={}, boundary_map={}, isovert_map={})

we can get the new faces by checking for instances of
bmesh.types.BMFace in the "geom" key or instead I have made a list
of the values of the "face_map" (which is a handy dictionary with
originals as keys, and newbies as values)
It is also more often than not the case that the newly added faces are
 bm.faces[-len(faces_mat_tbh):]

the last n faces where n is the length of the to dupe list.

Changes.
import bpy
import bmesh
from bpy import context
# no need to do same on linked meshes.

mat_tbh = bpy.data.materials.get("Material")

meshes = set(
        ob.data for ob in context.selected_objects
        if ob.type == 'MESH'
        )

bm = bmesh.new()
for me in meshes:
    tbh_slots = [id for id, mat
            in enumerate(me.materials)
            if mat
            and mat is mat_tbh]
    if not tbh_slots:
        continue
    bm.from_mesh(me)
    new_faces = bmesh.ops.duplicate(
            bm,
            geom=[
                f for f in bm.faces
                if f.material_index in tbh_slots
                ]
            )["face_map"]

    bmesh.ops.reverse_faces(
            bm,
            faces=list(new_faces.values()),
            flip_multires=False,
            )
    bm.to_mesh(me)
    bm.clear()

bm.free()

I forget to add that I need to do this by texture/bitmap name instead of Material name, and in a loop around a list of texture names.


text:
Different Light Color
I wonder why after setting 3 different lights with 3 different light colors.  The light color changed into my last light color setting?

For example I set my last light color into yellow, then the other 2 light also turns into yellow.  Any clue why ?

If you duplicate objects using Duplicate Linked(Alt+D) instead regular Duplicate(Shift+D), their data is shared. This means all data properties including light color.
...I suppose you could also accidently hit Ctrl+L and choose Link Object Data, but that's probably not as likely as Duplicate Linked.
Select the lights and go to Object menu -> Relations -> Make Single User -> Object and Data to make data for each of the selected objects unique.

You could also use Blender's search(F3) and simply start typing the name of the command or even separate words that it includes:


text:
Planar Tracking
I'm not actually a tracker person, but I tried for a project and I can't get the result I want. When I do motion track, I can't see the floor and the wall correctly. I want to add a cube to the place I marked, I want to make an empty box there, I want to put a model in it, but I don't know what kind of track I should do. I can't find a suitable tutorial for this.

Don't know whether this YT tutorial helps?

I applied this tutorial but it didn't work. Object tracking gave better results but it didn't solve my problem. Why does no one track a building wall? There is no video on youtube. Everyone makes an easy track video so the tutorials are not helpful. Thank you for your help, I will wait for other answers.

Is this one any better?

this is the first step if you follow a plane this is true but the plane should only be a maskable object so that 3d objects can be added

Ok. Someone else here who knows more about tracking than I do may be able to help.


text:
cannot move individual objects in a collection
I am a beginner of Blender and stuck on moving objects, Here is my collection list

I can only move all objects within the collection whenever any objects selected, but cannot move individual objects such as donut or icing. who can help me out?

Unchecking "Proportional Editing Objects" solves the problem

I'm not sure this is the problem, but it might be locked layers... to find out, go to the top right corner of the layers menu:

in the drop down menu, select this icon:

and it will add the lock/unlock icon beside the layers... should be able to see if they're locked.

Hope that helps!

Thanks, I found it is due to "Proportional Editing Objects" checked

@banz Locking collections will not result in moving objects collectively.


text:
Stuck in lasso mode
I'm stuck in lasso mode, thinking I must have pressed something by accident...
In Object Mode, everything appears to work fine, and 'W' will cycle through the select modes as expected.
In Edit Mode, the default select tool is stuck on Lasso (previously stuck on Circle). I can manually select Box Select or Circle Select by holding left-click or using hotkeys, but then it jumps right back to Lasso as soon as I click off. And for some reason 'W' will not allow me to cycle through the select modes, while in Edit Mode.
Can anyone please advise?

What happens if you long press the top button in the toolbar on the left? Also, if you start a new file does the problem persist?

Where is the cursor when you're trying to use the W key? - It's working fine here in the current 3.4.1 version.

Incidentally, if you have selected the Circle option with the C key from another selection mode you'll need to press Esc to get back out of it.


text:
How to replace multiples objects with differents rotations?
I have a jewel with multiples diamonds with differents rotations that i imported from rhino, sadly those diamonds have poor topology i want to replace them with another one with proper topology. If i link object data, they all lose their rotations and will be all straight.
i think if you open my file, it will be easier to understand.
https://blend-exchange.com/b/yAQ1rYJ6
I also tried to Align to transformation but i don't think i can do it 100 times for every jewels, if you know anything it will be a huge help even addon i don't mind

Hi :). You can do it manually rather easily. Just snap the origin point to the top vertex on each diamond. It will align itself properly to the diamond's orientation :). You do need to click ~100 times, but it's better than nothing :))

@jachymmichal yeah that is what i was thinking, maybe i'll find a way to do it fast in rhinoceros, because doing it this way is too time consuming

100 pieces is still doable, you'll be done in ~15 minutes :)


text:
How to do hammered bracelet
I've have been stuck for a few days now, i struggle to do hammered bracelet.
Let me show you what i am aiming to do

It doesn't seem hard and i think it's not, so i was trying to do it in luxcore with voronoi bump node, but it doesn't work cuz i think i don't have enough vertical verticles on my torus mesh (6.4M major radius and 0.06m minor radius, it's 6,4cm and 6 mm IRL) i have maxed out 256 and 256 and try to sculpt but it looks bad

I wouldn't recommend sculpting these dents by hand. Your voronoi/bump approach seems more promising. Here's my node setup (the Sphere is just for material preview):

With the Color Ramp node, you can control how much of the darkest and brightest areas of your voronoi bump map will be applied to the material. It's very useful. Also, you may need to "squeeze" the Z Scale in the Texture Mapping node until you get the desired look.


text:
Volumetric slicing in Blender
Is there a way to slice a 3D object into planes (see attached image), merge them and export it as a single .obj?
I do not want to see the parts of the object that are left between planes, I just want to see the slices. Kind of like a tomography.
I saw a video of guy make this in Houdini, is it possible to do in Blender?
Link to the video: https://youtu.be/4ggS6G9HIh8?t=685

https://blender.stackexchange.com/questions/1853/animating-slicing-up-an-object

FYI this is also the technique used by the Eevee render engine to approximate volume objects

Does this answer your question? Model as multiple unique thin sheets

You can get a similar result with a Boolean modifier

Create your slicing planes (you can array them using Array modifier)
Add a Boolean Modifier > Intersect to your object
Target the slicing planes

I hid the slicing planes in the gif, so the result is better visible

For more detail refer to the following links:
How can I slice an object horizontally into equal pieces?
Model as multiple unique thin sheets
How do I create slices of a topographical mesh?

apologies? I don't understand.

@susu I know how much you don't like seeing Booleans :)).

Not really, I dislike booleans as a lazy way to avoid proper modelling, and believing that there are magic tools to fix the outcome of poorly planned topology. Booleans have a time and a place. They can be a great tool when used properly, and your answer is a good example of one.

Got it now :). Thanks for the edit btw, I was sure there were some dupes already.


text:
How to do this complex knot cable?
At work my boss has been really frustrated because we don't know how to do the My little diamond cable in 3D with good texture.. we always do something who look off.
I feel like putting a texture on a simple tube won't work.
Here is what we are trying to achieve :
enter image description here

I'm trying to understand how to do this in blender then export in keyshot.
I will also ask on the keyshot stack exchange because it is the industry standard but my love for blender will forever stay ;)
Here is a mega link with the object with are trying to work with : https://mega.nz/file/ov5wiaAD#buIksBpoAgYFA8w6cvAm_Oc72aZPkKmiBv5mfO5P5qk
we've been stuck on this subject for like a month now lol

Hello I can't open your .obj, but what are you struggling with, the shape? the material?

@moonboots the shape and the material -_-

@moonboots i'll try to send you a better file

@moonboots https://mega.nz/file/lroEiJYI#VoOjs_d0LCEiXW0VvSa6pevU3G3bIZf116RrVovomu0
This is a STL file, need to separate by loose parts

Have you tried with braided hair? You can make it editable and exported

You can try it this way (it needs to be improved). Create a half circle:

Duplicate, rotate:

Rotate 45° on Y:

Duplicate, rotate 90° on Y:

Array, give it a Skin and a Subdivision Surface modifier:

Link-duplicate 2 times, it seems like these are 3 ropes intertwined:

Give it a material (probably needs a bit of hair):

File:

Hi thanks you a lot, can you send me the file or just the curve, i want to learn how to do it, i struggle to visualize what you have done

Sure, here it is: https://blend-exchange.com/b/yZMbz3vs

thanks you a lot


text:
Which physics to chose for character (NSFW content)?
Sorry for a naive question, but I'm a total newbie in blender and doing my first animation pipeline.
The whole character body is single mesh about 35k+ faces.
So which body physics is more preferable for NSFW content the "cloth physics" or the "soft body" one ?
And should I subdivide my mesh for about 1 or 2 steps for better animation quality ?
Again thanks for an answers, and sorry if they were delivered incorrectly.

Hello, your question lacks details, what kind of effect are you trying to achieve? It will help to choose between Cloth and Soft Body. As forthe subdivision, itwon't increase the animation quality, it will make the object look rounder, but it will also make the calculation longer

For the most part the characters body collisions effects and also penetrations effects with preserving a body elasticity and forms.

Cloth physics is, essentially, soft body physics, with some extra parameters.  If you learn the params, cloth is probably better.  Subdivision is often wise, but the question is where/when; it's not wise when performance is of utmost importance; it's less wise when you don't yet understand subdivision topology.  In future, recommend separating multiple questions, like these, into multiple BSE questions.

Very thanks for an answers )


text:
What is more preferable to use combined FK/IK rig or separate rigs?
I'm newbie in blender and making my first animation all by myself.
So what will be more user-friendly for me and what are pros and cons overall in both variants?

Hello, could you please describe your situation? What areyou trying to rig?

Hi, I'm ringing a character for an NSFW content.

You should give more details, why would you create a separate rig?

Sorry if I'm explaining incorrectly, but I need to choose between a rig with an FK/IK switch (that requires to duplicate rigs) or the one that's combines FK and IK without switching. And I'm wondering what is the pros and cons between this two types of rigging ?

We'd have to know what "combines FK and IK without switching" meant.  It doesn't sound reasonable.  Showing us would probably involve providing a file that did what you were describing, at which point we could tell you why it isn't a good idea (or, stand in awe at the new rigging technique demonstrated.)


text:
Always get a neutral normal map
I have multiresed my mesh and then applied the modifier. No matter I do I always get a neutral normal map while baking.
But if I bake without applying I get a kinda normal map but yet the mesh shape on it is kinda weak

Hello please share your file (only keep the useful objects): https://blend-exchange.com/

The normal map file you mean ?

the file with the object you're trying to bake

Keep in mind that when you bake a multires you need to bring back its Level Viewport to 0, otherwise it won't bake anything


text:
Why is my object disappearing when use a boolean modfier
I'm trying to use a boolean difference to engrave this design onto my mesh but whenever I do, the mesh disappears. I've tried applying all the transforms and modifiers, there are no flipped normals, I've tried lowering and raising the amount of polygons and at this stage I'm totally out of ideas

Did you check if both meshes are manifold?

hello please share your file: https://blend-exchange.com/


text:
How can I change the value of shape keys using a custom controler?
By using the value slider I'm able to increase or decrease the Smile value of a Shape Key in 0.1mm increments. How can I do that using python?

The image below shows it running in Maya and I'd like changing the Shape Keys value in Blender the same way.

I couldn't find a solution to the question yet so I tried to implement it as follows. Basically I'd like creating a controller and apply Driven to Target Shape Keys and move them by 0.1mm:
import bpy

bpy.ops.object.mode_set(mode='OBJECT')
bpy.ops.object.select_all(action='DESELECT')
ob = bpy.context.scene.objects['Smile_Controller'] #Select Smile_Controller

ob.select_set(True)
bpy.ops.transform.translate(value=(0.1, 0, 0), orient_type='LOCAL',) #0.1mm
bpy.ops.object.mode_set(mode='SCULPT')

However, I'd prefer to control the Shape Key value directly. Each time the button is clicked, the value should increase or decrease by 0.1mm.
Q: Is there any way to implement such controls using python?

Hi and welcome to bse! I took the liberty to edit your question which hopefully makes it easier to understand. if you think my edit does not improve anything, don't hesitate to roll it  back. Cheers!

Thanks for your modification.
I will do my best in the future. :)


text:
How can I control the visibility of several objects at once?
I'd like to hide and unhide several objects at once. In particular, I'd like to toggle the eye icon on and off. The monitor icon works fine, but the eye icon doesn't work.
import bpy
obj_list = ["Cone","Cube","Cylinder","Sphere"]
objects = bpy.data.objects
for obj_name in obj_list:
    if objects[obj_name].hide_set:
        objects[obj_name].hide_set(False)
    else:
        objects[obj_name].hide_set(True)

Q: How can I control the visibility of e.g. Cube, Cone and Sphere?

In order to get the visibility state per object (eye), you'd have to use Object.hide_get().
Also I'd suggest iterate through the objects of the current scene in context in this case (C.scene.objects) rather than all objects of the current blend file (D.objects).
import bpy

C = bpy.context
candidates = ("Cube", "Camera")

# Toggle the visibility state (eye icon) per object
for obj in [o for o in C.scene.objects if o.name in candidates]:
    if obj.hide_get():
        obj.hide_set(False)
    else:
        obj.hide_set(True)

Viewport visibility (monitor) is just a bool hence one can use the xor operator to toggle:
# Toggle viewport visibility state (monitor icon) per object
for obj in [o for o in C.scene.objects if o.name in candidates]:
    obj.hide_viewport ^= 1

I learned quite a bit from your answer.  Thanks a lot!

@minia Possibly the most important part is if an object has a method ob.some_method() then if ob.some_method: will always be true. ... this being the basic issue with the question.  Will (for the last time) recommend debugging first in python console eg swap true and false or print some values.

@brockmann or without the if   obj.hide_set(not obj.hide_get())  also suggest this for obj in filter(None, (scene.objects.get(name) for name in candidates)): will be way more efficient.  Found about 5 dupes for this, think I pasted a lesser. If not Ok with close give heads up and will re-open.

Thanks @batFINGER Need to work right now, get back to it later and let you know.

@batFINGER Just a minor detail: Don't you think using a generator like (o for o in C.scene.objects if o.name in candidates) is equal to filter(None, (C.scene.objects.get(name) for name in candidates)), makes it more readable... Apparently a rabbit hole and Mr. Architect even considered to remove the filter(): https://stackoverflow.com/questions/3013449/list-comprehension-vs-lambda-filter

Maybe a SO question. Nevermind filter could filter out in loop if None, Was thinking along the lines of 3 candidates in thousands of scene objects. One loops 3 times the other 1000.  If we turn it around 1000 candidates 3 scene object, AFAIK if x in X isn't that efficient either. Possibly the two way solution is to use intersection of the two sets.  Often see this in vert indices lists where [verts[i] for i in indices] is IMO better than [v for v in verts if v.index in indices]

for the OP both our methods won't throw a key error on a dud candidate name.

Agree, let's measure it. I don't have much time today unfortunately, I'll get back to it end of the week @batFINGER