text:
Run modal operator while tool is selected
For my addon in blender 2.8 I need to have a modal operator running while my custom tool in the new toolbar is selected, or at least know when it is selected/deselected so that I can invoke/stop a modal operator. I have not been able to find any way to do both these things. Is it possible with the current python API?

Would you mind post some code for how you start the operator and where you add the button to the panel?

This is a hack--but for now (in 2.80/2.81) you can find out when a custom tool is activated and deactivated with a custom gizmo group:
class MYADDONNAME_TOOL_mytool(bpy.types.WorkSpaceTool):
    bl_idname = "myaddonname.mytool"
    bl_space_type='VIEW_3D'
    bl_context_mode='OBJECT'
    bl_label = "My tool"
    bl_icon = "ops.transform.vertex_random"
    bl_widget = "MYADDONNAME_GGT_mytool_activated"

class MYADDONNAME_GGT_mytool_activated(bpy.types.GizmoGroup):
    bl_label = "(internal)"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'WINDOW'
    bl_options = {'3D'}

    @classmethod
    def poll(cls, context):
        return True

    def setup(self, context):
        print("My tool activated!")

    def __del__(self):
        print("My tool deactivated!")

bpy.utils.register_class(MYADDONNAME_GGT_mytool_activated)
bpy.utils.register_tool(MYADDONNAME_TOOL_mytool, separator=True)

This isn't enough to invoke a modal operator as you're asking for, because the setup() method gets called in a drawing/rendering context, not one where you can just call bpy.ops.whatever('INVOKE_DEFAULT'). But this might be a useful starting point.

Thanks! This is exactly how I ended up doing it. I was able to solve the setup context problem by using bpy.app.timers.register to call a function which actually calls the modal operator. This is of course all very hackish, I hope there will be better options in the future :)

Agree about the hackishness! In my addon I’m also using the GizmoGroup's draw_prepare() method to draw additional stuff, and my tool’s draw_cursor() method to get the mouse position and tag the area for a redraw… hacks upon hacks right now :-/

It's been awhile and this has been the only thing I've found that works in 2024.  Does anyone know of any new developments?  The reason why I'm asking is because GizmoGroups appear to be removed and added when you do things like: Move windows, invoke operators, press Ctrl-Z for undo.  This is going to cause some weirdness with my addon if I turn things on and off automatically.

I was also finding a similar problem on it. But I figured out an strange way to achieve it by using BoolProperty.
Here is the sample code:
import bpy
from bpy.props import (PointerProperty, BoolProperty)
from bpy.utils import register_class
from bpy.utils import unregister_class

class MyCustomProperties(bpy.types.PropertyGroup):
    is_my_modal_run: BoolProperty(default=False)
    # Use an bool to save modal status

class SOME_OT_myops(bpy.types.Operator):
    bl_idname = "some.myops"
    bl_label = "Some OP"

    def execute(self, context):
        self.report({"INFO"}, "Stop!")
        return {'FINISHED'}

    def modal(self, context, event):
        # check bool status
        if not context.scene.someprop.is_my_modal_run:
            return self.execute(context)
        return {'PASS_THROUGH'}

    def invoke(self, context, event):
        context.window_manager.modal_handler_add(self)
        context.scene.someprop.is_my_modal_run = True
        # When started, mark the bool flag
        return {'RUNNING_MODAL'}

class SOME_PT_panel(bpy.types.Panel):
    """Landmark Panel"""
    bl_idname = "SOME_PT_panel"
    bl_label = "Some Panel"
    bl_category = "Something"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

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

        # Make the UI button change depend on the bool flag
        if not prop.is_my_modal_run:
            layout.operator(SOME_OT_myops.bl_idname,\
                text='Start Running Modal')
        else:
            layout.prop(prop, 'is_my_modal_run',\
                text="Stop Running Modal",toggle = True)

clss = [MyCustomProperties,SOME_OT_myops,SOME_PT_panel]

def register():
    for cl in clss:
        register_class(cl)
    bpy.types.Scene.someprop = bpy.props.PointerProperty(\
        type = MyCustomProperties)

def unregister():
    for cl in clss[::-1]:
        unregister_class(cl)
    del bpy.types.Scene.someprop

if __name__ == "__main__":
    register()

There MUST BE a better way, but I end up with this solution working.

Thanks for the answer. However in my case I'm not using a button in a panel but rather a button in the new blender 2.8 toolbar on the left, so a similiar solution unfortunately doesn't work. (I need to know when the toolbar button is deselected)


text:
How to move selected bone joints independently?
I want to move few bones joints independently as shown below (to make an animation of the sitting):

Is it possible in blender? If yes, how to make it? It's important for me to front paws was not moved or the animation will look weird.
P.S. I use Blender v.2.90.1.

Not easy as it means that the spine axis center switch from bottom to top, there may be a way, a trick would be to give 2 armatures to your object, with completely different bone names, parent to the first armature then to the second so that you have 2 Armature modifiers, and switch from an armature to the other one (keyframe visibility) when you need to make the dog sit?

source: Stack Exchange

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

sort: votes


text:
Positioning objects around a sphere
I'm working on a spaceship. its basic form is a Sphere, with an additional torus around it´s middle. The ship has 48 engine nozzles (is that the correct english term?) around the torus. (Using the mirror modifier I still have to work on 24 of them.) Is there a way to position objects- like the engine nozzles) with equal distance around the Sphere? They should all have a 15 degree "distance" along the same (z) axis, but so far i didn't find a simple way to do this. and with movements around the 3 axis its trial and - mostly error - and takes forever. I hope the description of my problem is more or less helpful. I'm no nativ speaker so that makes it a bit harder to find what I'm looking for.

Welcome to BSE @Rolf please provide screenshots in your question or/and upload the .blend file and include the link in your question.

you can upload the .blend file here https://blend-exchange.giantcowfilms.com/ then copy the link, edit your question and add the link.

Instead of working under a Mirror modifier, on 24 nozzles, you could be working under an Array modifier, on 1.

Cut out 1/48 of your spaceship. (If necessary, P temporarily split off the part of your spaceship you don't want to be duplicated in rotation)
Set up a rotational array: Object offset only, targeted on an empty at the spaceship origin, rotated through 360/48 degrees, 'Merge' and 'First and Last' checked
Get to work on the nozzle(s)

It can help to keep a copy of the torus before cutting the piece out, to Shrinkwrap to. In the cut-out section, create a Vertex Group of the vertices you want to remain on the surface of the original torus. Assign a Shrinkwrap modifier to the section, target the intact torus,affecting only that Vertex Group.

Not an expert but my first try would be this.
(In Edit Mode) Create a new sphere at center with cursor to center (Shift + S and click 'Cursor to Center').
Use the Alt + R method and slice it into the equal parts you need  (Alt + R while hovering over your new sphere, a pink/purple dividing line should appear, now scroll your middle mouse wheel to create the amount of cuts you need, now right click to place.)
(Alternatively you could create a cylinder turned on its side, and simply type in the amount of edges you would need).
Then again the opposite way but only once down the center.
Now you have sphere (or cylinder) with equally spaced edges, all divided by a center edge, creating perfectly centered vertexes around at each intersection. Now you can attach copies of your nozzle to each of these vertexes (do this part in Object Mode) by snapping the center point of their geometry to each vertex.
Next just delete the spheres geometry and center and scale them over you original ship.

If I understand well you could use array and screw modifier, add your mesh with origin in your ship(?) them use array modifier to create some copies of your mesh and them use screw modifier to make them surround your mesh

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


text:
cutting off meshes in the bge (bad)
when i start my game in the bge, a plane is overlapping objects and they get closer when moving, but the part that the plane is extended to, is the part at the foremost of everything.

Go to the material settings.
Disable Backface Culling to see both sides of the material faces.
Set the Alpha Blend option to Alpha Clip (recommended) or Alpha Sort to fix the overlapping faces.


text:
PointerProperty can not dispaly in UILayout

import bpy
class AddPreset(bpy.types.Operator):
    bl_label = "Add Preset"
    bl_idname = "test.preset_add"
    mat_name: bpy.props.StringProperty(name="Str Props")
    mat: bpy.props.PointerProperty(name="Pointer Props", type=bpy.types.Material)

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

    def invoke(self, context, event):
        wm = context.window_manager
        return wm.invoke_props_dialog(self)

    def draw(self, context):
        layout = self.layout
        row = layout.row()
        #row.prop_search(self, "mat", bpy.data, "materials")
        #row.prop_search(self, "mat_name", bpy.data, "materials")
        row.prop(self, "mat")

bpy.utils.register_class(AddPreset)
bpy.ops.test.preset_add('INVOKE_DEFAULT')

output info
rna_uiItemR: property not found: TEST_OT_preset_add.mat

My Temporary method is use StringProperty.
So is that possible to use PointerProperty？


text:
GN simulation node custom value with capture attribute at point start with 0
question
simulation node add a custom Property name it “V” （or something else）. I want to read and change it every frame. but i found it alway begin with 0 .so how to set a init value for it?

Of course the property is not changing on each frame, because you do not give it any instruction how it should change, like adding or multiplying to it. This would even work without any Capture Attribute or Store Named Attribute if you only need the value inside the Simulation Zone and not outside. And regarding your other question, the simulation will not do anything on frame 0 when the Start of the animation is set to frame 1.

First simulation node custom Property name is 'v' just label is not same with value create by Store Name Attribute.

From blow setting you can see, simulation node value init setting is work, but Capture Attribute on points get 0.

So Capture Attribute is not suit for this solution, my solution is

Why do you keep "v" as input/output of the Simulation Zone if you manage this property as a Named Attribute ?

The name "v" of the node input is of course not the same as the Named Attribute, because it is just a label, just a visual guide for you to know what it should be used for. Internally it is just a value not associated with any geometry or attribute name.

@StefLAncien meaningless, i just forget to remove it.


text:
Blend-Files Preview Thumbnails with Background Images
in March 2019 when Blender 2.8 non-stable was released, there was a feature added which is apparently missing now from the 2.8 stable release.
In the previous release you could see the camera background images in your .blend thumbnail preview.
With 2.8 stable they're all gone. Is there any way to get this feature back?

Thanks!

Have you tried saving the file in a different viewport shading mode? This might have to do with the file state at saving time

No sorry, I've tried saving it with each viewport shading and it still doesn't work. But thanks for the suggestion.

In the Blender File Browser was able to show previews by clicking on box shown and the clicking on show previews.
My bad, did not notice I was in 2.81. Switched to 2.80 and does not work.
Sorry for incorrect information.
In my present version of 2.81 the settings in preferences don't stick.

Thanks for your answer. I can see the thumbnails, but i want to see the camera background image in it – that feature is missing since 2.8 stable.


text:
How to make the camera rotate while tracking the target
I need to make an animation with a camera around the target
At the same time The camera Angle needs to be tilted
But I couldn't rotate the camera when I tried to use “follow path” and “track to” it

"

Add an empty as a child of the main object to 0:0:0 location (so follow the object) and set the camera child of the empty. So when you rotate the empty the camera will move around the object and pointing to it.

That's a good idea. Thank you!

Just tried this and you can rotate the camera using 'Damped Track' instead of 'Track To'.

That's what I want. Thank you！

@YaoFq No problems, glad it helped!

thanks dan! thanks dan! thanks dan! thanks dan!

Damped Track didn't work in my specific case, so I used a second modifier: Track Rotation on the empty it's tracking.


text:
Joining all meshes in any context gets error
When I run this code:
import bpy

# Select all and only meshes.
item = 'MESH'
bpy.ops.object.select_all(action='DESELECT')
bpy.ops.object.select_by_type(type=item)

# List of all known subcontexts.
subcontexts_list = ['INVOKE_DEFAULT', 'INVOKE_REGION_WIN', 'INVOKE_REGION_CHANNELS',
                    'INVOKE_REGION_PREVIEW', 'INVOKE_AREA', 'INVOKE_SCREEN',
                    'EXEC_DEFAULT', 'EXEC_REGION_WIN', 'EXEC_REGION_CHANNELS',
                    'EXEC_REGION_PREVIEW', 'EXEC_AREA', 'EXEC_SCREEN']

# Try to join using each subcontext.
for sub_context in subcontexts_list:
    try:
        bpy.ops.object.join(sub_context)

    except Exception as e:
        print('{}: {}'.format(sub_context, e))

I get these errors:
INVOKE_DEFAULT: Operator bpy.ops.object.join.poll() failed, context is incorrect
INVOKE_REGION_WIN: Operator bpy.ops.object.join.poll() failed, context is incorrect
INVOKE_REGION_CHANNELS: Operator bpy.ops.object.join.poll() failed, context is incorrect
INVOKE_REGION_PREVIEW: Operator bpy.ops.object.join.poll() failed, context is incorrect
INVOKE_AREA: Operator bpy.ops.object.join.poll() failed, context is incorrect
INVOKE_SCREEN: Operator bpy.ops.object.join.poll() failed, context is incorrect
EXEC_DEFAULT: Operator bpy.ops.object.join.poll() failed, context is incorrect
EXEC_REGION_WIN: Operator bpy.ops.object.join.poll() failed, context is incorrect
EXEC_REGION_CHANNELS: Operator bpy.ops.object.join.poll() failed, context is incorrect
EXEC_REGION_PREVIEW: Operator bpy.ops.object.join.poll() failed, context is incorrect
EXEC_AREA: Operator bpy.ops.object.join.poll() failed, context is incorrect
EXEC_SCREEN: Operator bpy.ops.object.join.poll() failed, context is incorrect

What am I doing wrong?

Make sure one of your mesh objects is active. You will get that error if you try to join without one being active.
This works with 2.80
import bpy

#Deselect all
bpy.ops.object.select_all(action='DESELECT')

#Mesh objects
MSH_OBJS = [m for m in bpy.context.scene.objects if m.type == 'MESH']

for OBJS in MSH_OBJS:
    #Select all mesh objects
    OBJS.select_set(state=True)

    #Makes one active
    bpy.context.view_layer.objects.active = OBJS

#Joins objects
bpy.ops.object.join()


text:
Why do blender crash?
Hello iam new to blender,
when I started to make a high poly mesh it is not responding(blender 3d crashes)
I have a 4 gb ram I3 processor 1 tb hard disk laptop is it a reason pls help how to fix it

4GB of RAM does not seem adequate for anything high poly. It's quite likely your laptop is the problem depending on what you mean by high poly.

High poly means I used subdivison surface solidify and mirror at the same time in one object

Buying a new more powerful computer with a lot more RAM and better GPU would probably fix it. Else than that, trying to work smart could also be some sort of solution - maybe don't use subdivision modelling - it's quite wasteful in terms of unnecessary geometry. You can also work on smaller parts of what you are doing at a time while hiding everything you are not working on.

This question feels equivalent to, “I tried to drive up a mountain with a heavy cargo and it didn’t work. I have a small sedan with a 4 cylinder engine and a large trailer. How to fix?” As others stated, by analogy, if you aren’t able to use a more powerful car, try to find a way around the mountain, or don’t haul as much cargo at once.

Take a look at the
Hardware Requirements
Minimum
64-bit quad core CPU with SSE2 support
8 GB RAM
Full HD display
Mouse, trackpad or pen+tablet
Graphics card with 2 GB RAM, OpenGL 4.3
Less than 10 year old
https://www.blender.org/download/requirements/


text:
Convert specific faces on planar mesh to image mask
Suppose I have a planar mesh like the following screenshot, with 4 faces (and face indices sloppily drawn on):

Is there a way to turn this mesh into an image texture, to use as a material mask? If so, is there a way to use only certain faces as the mask? Lastly, can the faces being used as the image mask be dynamically updated? Like, start with face 1 as the mask, then use face 1 and 2, or 3 and 4, etc.?
I am not familiar with geometry nodes, but I imagine that will have to be utilized. Any help would be appreciated. Thanks,

this is one of the questions i think it might be better if you tell us your "end goal" instead of asking for 3 different technical questions, because there might be easier/faster ways of what you have in mind.

If you select a face you want to use as a mask, add it to a new vertex group. Then in shader editor add an Attribute node, set the type to geometry and enter the name of the vertex group. Add a color ramp to finetune the masking area. Plug the color ramp output into the Material output. Add an image texture, create a new image, select said texture node. Now navigate to properties>render>bake, set the bake type to emit and leave all other settings as they are and just hit bake. You now got an image texture of the Vertex group, don't forget to save it.
I hope this helps.
Oh,make sure you're using cycles. After baking you can switch back to eevee if you need to.

is this what you are trying to achieve?

or using as mask:

and yes, it works "dynamic":
https://github.com/luckychris/blender_gifs/blob/main/dynamic%20material.gif
still SE cannot upload gifs...so i have insert a link - sorry.


text:
Property Tabs - Menu (Custom Hotkeys)
There are 14? property tabs that allow you to enter into such things as the Material properties, modifiers properties etc.
My question, is it possible to create a custom hotkey or script that can select that window (instead of clicking it)? I mainly use Materials, Modifiers. I would like to set a hotkey to access these faster when an object is selected.

Creating a custom hotkey just opens this menu, not really what I'm after.
Let's pretend I press 1 on the keyboard, Materials Property would open up. Or if I called via a pie menu through an operator. Hope the explains what I'm after.

I have no real solution for that, the only thing I'm wondering is, do you really need specifically this tab? Because personally, most of the time I use the Shader Editor for everything material related, so I just have a window with the Shader Editor opened and saved this configuration as my default startup file.

Natively I don't think there is, but you could probably write a Python script for this relatively easily

You can copy paste this into Blender's text editor and save it as a .py file and install it as an add-on to have an operator that switches all Properties editors to some tab:
import bpy

bl_info = {
    "name": "Properties Tab Switch",
    "author": "Martynas Žiemys",
    "version": (1, 0),
    "blender": (4, 0, 2),
    "location": "Search -> Properties Tab Switch",
    "description": "Properties Tab Switch",
    "warning": "",
    "doc_url": "",
    "category": "UI",
}

class PropertiesTabSwitch(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "wm.properties_tab_switch"
    bl_label = "Properties Tab Switch"
    bl_options = {'REGISTER', 'UNDO'}

    tab : bpy.props.StringProperty(
        name="Tab",
        default='MATERIAL')
        # ('TOOL', 'RENDER', 'OUTPUT', 'VIEW_LAYER', 'SCENE', 'WORLD', 'OBJECT', 'MODIFIER', 'PARTICLES', 'PHYSICS', 'CONSTRAINT', 'DATA', 'MATERIAL', 'TEXTURE')
#    @classmethod
#    def poll(cls, context):
#        return True

    def execute(self, context):
        for area in context.screen.areas:
            if area.type=='PROPERTIES':
                try:
                    area.spaces[0].context = self.tab
                except:
                    self.report({'WARNING'}, "Cannot switch to " + self.tab + " tab")
        return {'FINISHED'}

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

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

if __name__ == "__main__":
    register()

Once it's enabled, you can add a hot-key calling the operator in the Preferences( F4  ->  P ), Keymap tab:

The operator you want to add is called wm.properties_tab_switch. You probably want to add it the whole window:

Then you can change the property called "Tab" to whatever you want ('TOOL', 'RENDER', 'OUTPUT', 'VIEW_LAYER', 'SCENE', 'WORLD', 'OBJECT', 'MODIFIER', 'PARTICLES', 'PHYSICS', 'CONSTRAINT', 'DATA', 'MATERIAL', 'TEXTURE')
You can add as many hotkeys for different tabs as you want.


text:
How do we add the Mesh: Snap_Utilities_Line tool to Object Mode?
How do we add the Mesh: Snap_Utilities_Line tool to Object Mode?
We can create full 3D shapes with it. It's an object creation tool as well
The Mesh: Snap_Utilities_Line tool is only in Edit Mode but it's a line tool we can use to trace architectural plans and also create full 3D objects using it. It is both an editing tool and object tool. How do we add it to Object Mode?

It seems to be only designed to be used in Edit mode according to the Blender manual entry so it's only for manipulating the mesh of existing objects not creating new ones which is what you seem to want.


text:
I imported an obj file into Blender and cannot add an uv wrap from a png file
I'm use to modeling in Fusion 360 and then export the file into an obj. I practically use Blender as a rendering tool because Fusion isn't as powerful.
Overall still learning how to model in Blender but in a meantime would like to know how I can add an uv wrap from a png file onto an imported obj model.

To do this you must unwrap the .OBJ, (wavefront). You can do this by going to Edit Mode, selecting all of the faces by hitting 'A' on the keyboard, and pressing 'U' to unwrap. Then select unwrap or smart UV unwrap in the options drop down menu you get when hitting U, and you are done with the first step. The next step is to select a texture. By the way, you must be in Blender Cycles render mode to continue. Once you set your renderer to Cycles, go to the material settings for the object in the properties tab. Select whatever material you want for the object, and set the color to image texture. Then you can import your texture by clicking the file icon next to the image texture settings.

select your mesh press TAB to go into EDIT MODE

Select EDGE SELECTION select edges to cut Press W click "Mark Seam"
press A to select all
press U to unwrap

or

in edit mode press A
press U
select "Smart UV project"
after this apply your material or image texture


text:
Help on Embossing Letters Need a Larger Effect
I am trying to recreate this emboss effect:

I've tried doing so through displacement nodes and I'm not seeing a good result. I've rendered two images with different approaches and still looks the same

Some existing answers are outdated and not specific.

While blender has evolved and changed as a software package, the workflows have not changed much. You came here to ask the community for help. How is that you can demand that the community give you specific answers? Have you tried any of the older workflows before asking your question? If the duplicates do not answer your question, then [edit] this one and clearly explain how.

I'm just posting this so I can post the pic. This is just an example of how you should set up your nodes. I used a multiply on the MixRGB node because I often transfer dark ridges this way, but I don't know what your image looks like, so I can't tell what the values are doing. If you need the lights, use Lighten or Add. Or disregard all of that, and use whatever looks best. The main point is that you must convert the sRGB image into black and white before introducing to the Bump Node.

I didn't show it here, but I also often mix the procedural component of my textures heavily with white (or black sometime depending on the need) using another MixRGB node to easily soften the contrast (strength) before mixing it with the others. I find the default values are often too strong, and look unrealistic.

Thanks, It was the same effect but its okay.


text:
Messy UV after Tris to Quads
I've downloaded an .obj file with a texture map.
When I try to reduce faces with tris to quads the result is messy.
Is there something I can do ?
Thanks

Edit mode > select all > Face > Tris to Quads > the "last operator panel" will pop-up at the bottom left corner of the 3D viewport. In this panel try putting a check-mark against the Compare UV's and or the the Compare Seam options. (and if necessary try increasing the values in the Max Face Angle and or the Max Shape Angle).

Compare UV worked, thank you.

Side note: you kinda don't reduce face by converting triangles to quads, the triangles are still there under the hood, just not shown in your wire. It's fine for other motives, but if you thought this to be a solution to reduce polycount or make the mesh lighter: it doesn't, aside from your own eyes' convenience.

Thanks @3fingeredfrog, you are a savior


text:
Bevel a curve in blender
When I bevel a curve in blender I end up with something like this
I'd like something more like this
Is there a way to achieve it ?
Thanks

Ther are no curves in either of your images. Show one with a curve in it and the settings you're using and we may be able to help.

https://blender.stackexchange.com/questions/57284/is-it-possible-to-extrude-a-curve-in-two-directions/57288#57288

Curves cannot have junctions or branch off. A curve is one or multiple splines, each spline a consecutive row of segments with each control point having a maximum of 2 connections, 1 to its predecessor and 1 to its successor. The start and end point each have only one connection unless you set the spline to Cyclic, which automatically connects the end point with the start point. So what you see in the first image is happening because the spline with the rectangular corner is not connected to the other spline (and cannot be). Only vertices in mesh objects can have more than 2 connections.


text:
random texture placement in material, based on frame
I have a puzzle... 100 shapes with 4 separate textures that apply to each polygon.
I want to have the 4 textures cycle in a random manner based on the frame number.
with the option to change the frequency of change...
1 per frame
2 frames then change ( on 2's as explained in animation terms)
3 frames then change
4 frames then change
on through to 8
its important that the 100 polygon puzzle shapes all change the texture randomly of each other.
in my mind I figure it could be done in either the material nodes or the animation nodes.
I would like to use the animation nodes if possible.

Could you provide some illustrations (steps) of the animation and an example of the textures?

I have a file and illustrations on blender artist... here is the link...

https://blenderartists.org/t/random-textures-based-on-frame/1254177/5?u=fleabilly

How can I create an variable event...
Every Frame
every 2nd frame... (1,3,5,7,9,11,13,15,17,19,21...)
every 4th frame... (1,5,9,13,17,21,25,29...
every 6th frame... (1,7,13,19,25,31...)
every 8th frame... (1,9,17,25,33...)
The Event would be-randomly cycling between 4 image texture nodes.
could I also make the random event trigger a new random frame advance, based on the 5 random frame sequences listed above.


text:
sharp corners after subdivision modifier
I have a mesh pattern with inside and outside corners...
in the inside corners one one layer, I am getting a sharp edge.
but the inside corners on the other layer are subdivided...
ive looked online...
is not the normals... all facing out...
is not unjoined mesh (ctrl+m)
ive fiddled with all the settings in the modifier and cant figure it out... my only conclusion is just a damaged mesh.
any suggestions?

figured it out...
forrest through the trees...
internal faces at the junctions...
but the next question is how to remove about a thousand of these faces...?
at the moment I am having to isolate each junction pull it up on edit mode, remove the faces, then repeat.

Hello :). Blender can select and delete internal faces. Get into Face select mode and go Select > All by Trait > Interior Faces

brilliant... thans a ton!


text:
replace with instanced collections
Ok...
I have an imported fb, lots of separate mesh, all needing to be separated (editmode/mouse over+L/P and repeat) a majority of the mesh items are the same. I would like to model  a simpler geometry, as the original FBX is a tech render from rhino with dirty mesh... so remodeling items in blender and replace... its a routine that I do often, but I need to stream line more, and have questions.
if my created instance is on the orgin point (0,0,0) with the rotation 0'd as well... is there an easy routine to match the rotation and position of the fbx originals... mainly to match the rotation... the position is easy as they are spherical objects with an easy set origin, but this still leaves me with the guesswork of rotation. but I think its an impossible feet, but I thought I would throw it out there and see if I was overlooking something.

Hello :). You could make a custom orientation from the original (.fbx imported) mesh, and then apply it to your instance. Please add some images to illustrate your issue.


text:
Set active object with box select (blender 2.8)
I am looking to use the select box tool to make an object active. When I point and click on an object, it becomes active. However, when I use the select box tool on a different object, the second object is selected, but not active.
For instance (in the gif below), when I click and drag to select the light, I want it object to become the active object.

I looked at this question: How To NOT extend selection with Box Select? thinking the box select may be extending my selection. But, I am not seeing the extend selection option in the 2.8 user preferences.

I am using blender 2.8, and am in object mode. I am also a blender beginner, let me know if I am misunderstanding the difference between selected and active objects.
Thanks,

I'd love to know as well. This is a big problem when moving around multiple object with varying rotations in local mode. I have to click on each object rather than using the box select. Super freaking annoying.


text:
Trouble with custom script in Sverchok addon
I am trying to implement a custom script through the Sverchok addon, but am having some trouble.
Here is my script:
"""
in number s
out list v
out new_vertices v
"""

import geopandas as gpd
import pandas as pd
import fiona
from shapely.geometry import shape
import numpy as np

# read in gpkg layer as geopandas data frame
gpd1 = gpd.read_file("D:/0_RMaps/Testing/PythonPackagesInBlender/PythonPackagesInBlender.gpkg", layer = "shape1")

# read in geometry of gpkg layer as geoseries
gs = gpd.GeoSeries(gpd1["geometry"])

# call geo interface method on geoseries
gi = gs.__geo_interface__

# get coordinates from geo interface, returns coordinates as tuple
coords = gi['features'][0]['geometry']['coordinates']

# convert coordinates from tuple to list
coords_list = list(coords)

new_vertices = []

for x in range(5):

    new_x = coords_list[0][x][0]
    new_y = coords_list[0][x][1]
    new_z = 0

    new_vector = [new_x, new_y, new_z]

    new_vertices.append(new_vector)

print(new_vertices)

The goals of this script are to:

read in a layer from a gpkg
convert this layer into a format usable in Sverchok

starting with the geometry

So far I've been able to read in the layer and extract the geometry as a tuple. Now I am trying to convert the tuple into an array that Sverchok can use. When I implement this script and connect the output of the 'new_vertices' socket to a viewer node, I get a 'no data passed into socket' error:

Additionally, when I make this connection, I get the following message in the blender system console:
ERROR:sverchok.core.socket_data:116 :52:No data passed into socket 'data1'
INFO:sverchok.nodes.script.script1_lite 482 (SN: geopandas3.py):334:Unexpected error: <class 'TypeError'>
INFO:sverchok.nodes.script.script1_lite 485 (SN: geopandas3.py):334:on line: 26
Traceback (most recent call last):
  File "C:\Users\davis_000\AppData\Roaming\Blender Foundation\Blender\2.93\scripts\addons\sverchok-master\nodes\script\script1_lite.py", line 470, in process_script
    exec(self.script_str, locals(), locals())
  File "<string>", line 26, in <module>
TypeError: 'list' object is not callable

Not sure what the 'list' object is not callable error is about, I tried googling this but couldn't find anything.
And, when I run the script from the blender text editor, I get the expected output in the blender system console:
[[-3.68836355049336, -1.3570760357535328, 0], [1.7759814269738783, 0.14000477999091565, 0], [1.2894301618569308, 4.361772680390262, 0], [-7.273872104201315, 2.385626003607589, 0], [-3.68836355049336, -1.3570760357535328, 0]]

I'm confused as to why running the script from the text editor works (or at least produces an output), but why this output is not being recognized in Sverchok. Am I formatting the output of the for loop incorrectly? Any help or guidance on this would be great, feels like this is very close to working, but I can't figure out this last part.
Here is the output of the gs.__geo_interface__ line for reference:
{'type': 'FeatureCollection',
 'features': [{'id': '0',
   'type': 'Feature',
   'properties': {},
   'geometry': {'type': 'Polygon',
    'coordinates': (((-3.68836355049336, -1.3570760357535328),
      (1.7759814269738783, 0.14000477999091565),
      (1.2894301618569308, 4.361772680390262),
      (-7.273872104201315, 2.385626003607589),
      (-3.68836355049336, -1.3570760357535328)),)},
   'bbox': (-7.273872104201315,
    -1.3570760357535328,
    1.7759814269738783,
    4.361772680390262)}],
 'bbox': (-7.273872104201315,
  -1.3570760357535328,
  1.7759814269738783,
  4.361772680390262)}

zip file with blend file, gpkg, script, jupyter notebook, and qgis map files: https://drive.google.com/file/d/1YGvzuPAhKAXhPsfV4FXDr0nOHNc_TFEE/view?usp=sharing
Thanks in advance,

Ugh ok, figured it out shortly after posting this, but changing my script as shown here works:
"""
in number s
out list v
out new_vertices v
"""

import geopandas as gpd
import pandas as pd
import fiona
from shapely.geometry import shape
import numpy as np

# read in gpkg layer as geopandas data frame
gpd1 = gpd.read_file("D:/0_RMaps/Testing/PythonPackagesInBlender/PythonPackagesInBlender.gpkg", layer = "shape1")

# read in geometry of gpkg layer as geoseries
gs = gpd.GeoSeries(gpd1["geometry"])

# call geo interface method on geoseries
gi = gs.__geo_interface__

# get coordinates from geo interface, returns coordinates as tuple
coords = gi['features'][0]['geometry']['coordinates']

new_vertices = []

for x in range(5):

    new_x = coords[0][x][0]
    new_y = coords[0][x][1]
    new_z = 0

    new_vector = [new_x, new_y, new_z]

    new_vertices.append(new_vector)

print(new_vertices)

I just removed the part where I converted the tuple coords to a list (which was then referenced in the for loop). I'm not sure why this worked though, so if anyone has some insight into that I'd be glad to hear it.


text:
Composite two renders into one image
I am looking to produce an image like this:

Where there are two objects, with one object casting a shadow on the second object. The catch is that I do not want to create this by rendering two objects together in the same scene. I want to create this by combining separate images of each object, rendered separately.
Basically, I want to take this image:

And combine it with this image:

To get this:

Any ideas how to do this? To reiterate, I want to get this result through compositing or other post-processing means, not by rendering the images together. So far, I’ve messed around with the compositor a lot with various render passes, but haven’t figured it out. If you have an idea or method of how to do this, I would love to hear it!
zip file with renders and blend file: https://drive.google.com/file/d/1xR1FEJ3vdHYK5oZvHU1jwf8EZqUBtntq/view?usp=sharing
Thanks,

This may be of some help: https://blender.stackexchange.com/a/205654/66773

In this specific case you can fake it.
Since small monkey doesn't cast a shade in the shadow of big monkey ... you can just Z-Combine these two renders.
To fake the shadow casted by the big monkey on surface of the small one you can use Mix node > Multiply the Diffuse Indirection pass. It gives you an illusion - it is correct, but it is not, you are just lucky this pass looks like the casted shadow :)

But this will fail in other cases.
You can't get exactly the same result with totally separated files since the geometry of first one affects light bouncing on second one. So both renders needs to know about geometry of others. Some of those data can be saved in EXR (like Depth to be reused in Z-Combine node, or save Normal pass to try relight render), but there will be always parts totally impossible to composite in natural look.
So ... you would have to share object data info across those renders. Like by using Scenes (as suggested by HISEROD in comment) or View Layers ... or something similar that let you render thing separately, but already affected by shadows, indirect light, reflection etc. of other elements used in final composite.
Even with deep-compositing (used in other softwares) you can't mix everything, for the same reason. This deep-data just handles pixels in space in better way for combining, so these data contains also only pixels visible by camera, so back part of big monkey is not there to cast proper shadow with side light onto small monkey.

Thanks, I really appreciate the in-depth answer. Unfortunately my actual use case is different than the scene with the two monkeys, I had put that together to more easily convey my question. But, this still answers my question and is going to help me move forward. I was hoping to combine a few large renders via the compositor, to save on render time and increase flexibility, but knowing all this I guess I have to rethink my workflow.


text:
Got stuck following a tutorial please help
I am stuck while following this tutorial
https://www.youtube.com/watch?v=28AlRLMlqW8&t=4251s&ab_channel=FlyCat
At 0:33. The youtuber highlighted the vertical line in the middle of the hexagon and did something to make it split into 2 vertical lines.
It happened pretty fast in the video so i took some screen shots too.

Can someone please tell me how he/she did it?
Thanks in advance.

Ctrl + B (Bevel hotkey) - Move the mouse to change the size of the "gap" . Scroll the mousewheel to make extra "loops"

They used the Loop Subdivide tool. It creates loop cut(s) around the area selected by the user.

hotkey: ctrl + r
a yellow line shows what section will be cut - click to confirm cutting this section

Once confirming the section to cut:
 scroll wheel increases/decreases cuts
move mouse to slide where the cut will happen
click again to finally cut

Here's the Blender documentation for further reading: Blender Loop Subdivide
Good luck with the tutorial, hope this helps!


text:
How to get more options in the Viewport shading?
in another question thread i made. Another community member showed me his viewport shading window. in his window he had alot more options than mine.
His screen:

My screen:

How would i be able to get those options too?
The blender version that i am using is 2.9 by the way.

You need to be in Solid Preview mode to get the options to choose a matcap - . (Second circle from the left) . These options will not appear in Wireframe, Material Preview (LookDev), or Rendered Preview modes.

You are showing 2 different things: Matcaps for Solid preview in the first case, which are sort of material + light simulations, and HDRI, which are environments, for Material preview in the second case. So you must switch to Solid preview to see the kind of matcaps you show. By default you'll have less matcaps but you can download and install some, click on the little gear icon on the right of the matcaps list.

Make sure you are viewing in solid mode and go back into the menu to choose the matcap you'd like to you. You should be able to change it and see your changes clearly from there.


text:
Can some one explain what me what this guy did at 4:03 of this tutorial?
Hello all I am trying to learn how to sculpt a face. My Blender version is 2.9
I am watching this guy's tutorial on YouTube.
https://www.youtube.com/watch?v=KqZ-uUJCaAg
At 4:00 he told the viewers to go into sculpting mode. On his screen the ball instantly turned from gray to red.
However on my screen, my ball stayed gray.
Later on, he informed the viewers that he will be using the grab brush.
Between 4:05 and 4:10 he dragged something on the object and a black spot bloomed. What did he do here.
After that, with the brush tool. He dragged the 2nd last horizontal line downwards to form the chin of the face. only the bottom half of the original ball shape moved.
When I attempted this. The entire shape of my ball moved downwards. Can someone explain to me what I am doing wrong?

The color of the object in sculpt mode (by default) is the result of of a Matcap used to display detail. Older versions used brown clay by default, so I'm guessing that's why he chose that for his setup. You can change it from the Viewport Shadings tab:

The "black circle" I believe is just him resizing the brush. Press F to place it into size mode then drag with your mouse to resize and click to set that size.
As for your whole model moving, this is likely related to your brush being too big. Resize it using the method above (F), and see if a smaller brush has less of an influence on the rest of the mesh. If not, make sure your mirroring is off.


text:
In the UV Editing mode, how do i rotate the camera on the left side of the split screen?
Noob question. How do i turn the camera of the left side of the split screen in UV editing mode?

Hello :). Select all vertices and use the rotate tool. You can't rotate the view in UV editor.

The person that im following on youtube had the table top from the topview. Do you know what i have done wrong?

Hello :). You need your viewport camera to look from top, before you unwrap from view. Go View > Viewpoint > Top and then unwrap. Check the tutorial again, you just missed a step :).

Or, if the tabletop is not conveniently aligned to World Z, selct the face in Edit mode, and hit Shift - Numpad 7 to look straight down on it.

I believe it is no-can-do. I dont believe u can do it in blender given that the uv editing window works like image view window.
i Guess what u wanna achieve is that ur uv looks like the top view ? And based on the uv, You probably unwrapped it from the view. If so, on the right 3D Viewport, change ur view to top and unwrap it from the view again should suit ur need. BUt I Suggest u do "smart uv project"
Go watch a proper UV unwarp tutorial will make ur life easier


text:
Cutting an object with several plans with geometry nodes
With geometry nodes, I'm trying to cut a cube with several plans instances.
Some cuts doesn't appear and this is worst if i'm trying to cut an extruded text.
Can someone explain me why it doesn't work ?
Is it another way ?
Thanks for all

Boolean won't play nice with instances, try putting a Realize Instances right after Set Position. You're boolean-ing planes with no thickness though so you still might get a result you didn't intend. If so, try to edit your question with a visual describing the end result you're seeking.

It works very well ! Thank you Kuboa !


text:
Output edge selection in geometry nodes?
I want to procedurally select edges, based on their position criteria, and store that selection for later.
But can selection be an output attribute?
If not, is there any way to just output a visual highlight of the selected edges, like Sharp, Crease, Seam, even freestyle?
I don't want to change any geometry procedurally, just highlight / select.
Anything that I could see in edit mode for further manual edits after I apply the GN modifier.
In Blender generally, there doesn't seem to be many ways to manipulate edges procedurally. There are no edge groups/sets, not many nodes around edges stuff...

Are you talking about a geo node tool or geo node modifier?

I am talking about modifier. Don't know anything about geonode tool though.

Geometry Node Tools will help you with edit mode execution and selection. (Since you stated, that you would apply the modifier anyways.)
They act as an operator (and not a modifier) that is used in the workflow and changes the mesh directly "for further manual edits".

Go to the geometry nodes editor, set it to tool and create your node tree. In tool mode you have node that get or set the selection. Additional input attributes are converted to editable parameters. See the example node tree in the image. I named it EdgeSelect.
Go into edit mode in the 3D view. Choose your tool from the Geometry Tools dropdown in the 3D viewport menu or search for its name with F3.
Adjust the parameters of the operation.

Cool, I didn't realize there was a hidden bucket in Blender with more geonodes :D This is just what I needed, thank you!


text:
An object won't move
Tested in Blender 4.0 to 4.2.
Object mode
Trying to move a door object and I can't. I can rotate and scale though.
Any other object would move normally in that model.
Checked:

transforms scale applied
no modifiers or constraints
no affect origins
selectable
origin near geometry
geometry at world origin
snaps off
no scene drivers or weird custom properties
no parenting or specific hierarchies.

Also, there is no move gizmo for the door, but rotate and scale gizmos can be shown.
Really, I think I stripped the file with anything that could potentially interfere.
This is part of a collection I downloaded from BlenderKit and copied to an empty blend.
Nothing like this has happened before.
How to live?
The file:

The Location and X and Y Rotation of your object are locked as you can see from the marked closed padlocks. Click on each padlock or drag the mouse down over all of them with the left button down to unlock them and you'll be able to move the door. You can leave the rotation ones locked as the door should only rotate on the Z axis.

Thank you. I am again ashamed for missing such a basic thing.

No problem! :^)


text:
Select curve objects by extrusion profile object
I need to select all curve objects in my scene that have their bevel geometry set to OBJECT and share the same “profile object” (bevel object):
bpy.context.object.data.bevel_object = bpy.data.objects["MY EXTRUSION OBJECT"]
Or do it in the “reversed” way - first select a curve object that is shared between multiple curve objects as their profile, and then select those objects.
Either of the above will satisfy me.
I guess that would be some simple script?
Can you help?

Using the second method that can be this script:
import bpy

# get the bevel object as the active one
bevel_object = bpy.context.active_object
# or get it by its name
#bevel_object = bpy.context.scene.objects["bevel object name"]

# loop over all objects in the scene
for obj in bpy.context.scene.objects:
    # select flag:
    # a curve
    # in object bevel mode
    # that has the bevel object we want
    select = obj.type == 'CURVE' \
            and obj.data.bevel_mode == 'OBJECT' \
            and obj.data.bevel_object == bevel_object

    # select if yes / unselect if no
    obj.select_set(select)

For the first method, if you have several bevel objects in use the selection may mix everyone... so I don't think this is easier.

I dared to use my lack of coding skill and even simplified the code a little.
Anyway, thank you very much for your input. This is exactly what I needed :)

That's the slightly simplified version:
import bpy
for obj in bpy.context.scene.objects:
    select = obj.type == 'CURVE' \
        and obj.data.bevel_mode == 'OBJECT' \
        and obj.data.bevel_object == bpy.context.active_object
    obj.select_set(select)

The "simplification" here is resigning from bevel_object name and just using its value directly in the following code, plus removing comments. If you really want to code golf the shit out of this, try from bpy import context as C;for o in C.scene.objects:o.select_set(o.type=='CURVE'and o.data.bevel_mode=='BEVEL'and o.data.bevel_object==C.object)


text:
Wireframe mode not really being wireframe (z-fighting occurs)
Thing is, when I set viewport rendering to wireframe, I expect only edges to be rendered, not faces.
And this is true until two faces overlap - then I experience z-fighting.
I would really, really prefer this not to happen.
Here you can see two cubes, partially overlapping each other.

If you don't want that to happen, then avoid overlapping faces.

There are situations when I NEED to have overlapping faces. That's when working with maps. I used an example with cubes because it is clear. I wish Blender was rendering wireframe mode properly.

If you have overlapping texture maps then use overlapping UVs, Overlapping geometry will create z-fighting not only in wireframe but in the render.

I'm not going to render these maps. It's more CAD-like work that I do, and it's bound to have overlapping objects, for the sake of calculations and other stuff. I use CAD-style Transform addon and noticed that it has problems with snapping when faces overlap. I think if I could somehow totally get rid of face display and have pure edges on the screen, snapping might work properly and also visual response would be clearer.

Not sure if this is going to help, but if you make one of the objects a bit small, like in the cube example one cube size = 1 and the other cube size =0.999, you will see just edges

But then I will lose precision that I need like air. And still I will have problem with snapping.

Any known solutions?

I found disabling Outline in the Viewport Shading popover removed the z-fighting

Thank you, Duarte, I almost missed your reply. That works for me too.


text:
Combine two armatures and keep weight painting?
So I have an animation of a gun firing, and an animation of a flying pear enemy, and I want to combine their two armatures so I can export them together as one action into a game engine. I've tried to ctrl+j the armatures, but the weight painting gets messed up. I've tried making a new armature that has one massive bone for the gun, and one massive bone for the Pear, but the weight painting still won't work, since there are already other bones. Any help is appreciated.
Pear Animation
Gun Animation
Before I ctrl+j the armatures
After I ctrl+j the armatures

did you make sure that the bones of the 2 armatures had different names? Also, are you sure you want to join these 2 armatures? Seems weird, but I don't know a lot about game engines...

@moonboots I tried renaming all the bones, but I don't think I matched the vertex groups. Will try that now. Also yeah I'm sure I need to join the armatures.

Yeah it didn't work


text:
Object and Parent move separate from each other
before I begin I would like to say that I am new to blender so please be patient with my lack of knowledge.

I want to make a donut to learn the basics of Blender,so far is good,but when it comes to parenting I don't know if either my model is so badly made or maybe there are some values that are not the right.

One object moves faster then the other and.I would apreciate any advice.
Thank you for your time

it looks like you've enabled the Proportional Editing option (blue circle icon on the top header menu), it may be your problem

Yes,this was the problem :)))
Thank you!


text:
How can i edit an image to make it shake in the video editor?
I'm trying to add a bulldozer shaking super fast for a video i'm editing and i  don't know how to make the effect. I tried transform and adjust each frame to move over and over but it just didn't save the changes and didn't work for some reason. Any help is appreciated!

Hi! Just to clarify completely.. do you want the dozer to shake, or the camera to shake? Or do you want  the final 2D render to shake?

just the dozer, thank you

You can do it by keyframing object location and giving it a noise F-curve modifier. I chose my camera to add some shake into it.

Select the object you want to shake. Press i and choose Location to keyframe the object location.

Keep your object selected and go to Graph editor. Shortcut is Shift+F6.

Select the dimension you want to shake your object to. I chose Z but you can do this to all dimensions if you want to. Select Key and under Add F-Curve Modifier you find Noise.

From Modifiers panel you can adjust the strength. If the panel is not visible you can press n key. You can play with other settings if you want to.

Just play the animation and you have some shaking.
Video editor
In Video editor you can keyframe the offset location of your image or image sequence as can be seen in image below. Everything else is the same.

is this done in vfx?

I added little bit more info about how to do it in video editor. Does this answer your question?

Yep, thanks man

I would suggest checking out this tutorial by Ian Hubert and use those techniques to either animate the camera or bulldozer.
Animate Handheld Cameras in Blender - Lazy Tutorials There is a slower version linked in the comments where he explains what he's doing in a more detailed manner.

While the information on the link might be helpful, This site aims to have answers that stand on their own. Please outine the main ideas and worflow. If the link disappears or changes your answer will not be useful anymore.

The reason I linked the video as opposed to writing out a tutorial I the answer is that I do not have the time to do so currently. Someone is more than welcome to either edit my answer or write their own answer based on the video. I am unable to do so and figured a video would at least help people while it is up and not giving an answer because I don't have the time to create a tutorial myself.

If you don't want to write an answer, it's fine. Use comments instead.

Fair enough, I'll remember that for next time.


text:
How do you differentiate relative and absolute shape keys?
My question regards the difference of relative and absolute shape keys.
As it stands, relative keys are great for easy shapes and are measured on 0-1.
Absolute keys are measured in frames and are used for deforming mesh in more complex ways than relative keys. If you want to use relative and absolute shape keys in the model, it has been suggested to use mask modifier and two overlapping shapes to differentiate the shape keys. This leaves a definite sharp line on the edge of masked parts.
Has anyone seen any examples or videos where someone has used the absolute keys?
I'm interested in this topic, but have not found any material so far in the internet.

Relative Shape keys:
With absolute shape keys, the value shown for each shape in the list represents the current weight or influence of that shape in the current Mix.
Absolute Shape Keys:
With absolute shape keys, the value shown for each shape in the list represents the Evaluation Time at which that shape key will be active.

Could you simplify and show some example about absolute shape keys?

For example, if you have the shape keys, Basis, Key_1, Key_2, in that order.Evaluation Time will show this as frame 100:
Basis 10.0
Key_1 20.0
Key_2 30.0     Maybe it will help u bud..

Unfortunsately it did not.


text:
3ds importer porting for Blender 2.80 is done?
I've been spying hard on when 3ds import/ export functionality will be ported to Blender 2.8/ 2.9.
Looks like it's done or at least in advanced development stage and it's already usable.
Please see there:
https://developer.blender.org/T66329
There is a DIFF file shared and I don't know how to use it. It's not a fully usable add-on itself, right? How can it be turned into a usable script that I can install in Blender 2.8?
I completely don't understand devs' discussions. I'm just a beginner user, so I don't even dare to post anything on DEV forum. Just want to know if the data they shared on the linked page can already be used as a functional importing add-on.

Did you try it yet? You can help the developers by trying it and reporting errors if you find them.

No, because I don't know how to use it. For the first time I saw something like DIFF file. I googled the definition but still don't know how to do it.

There is also export_3ds.py file. Maybe that's the compiled add-on? I installed it for Blender 2.90, got a message looking like a successful installation, but I cannot see the add-on on the list in Prefs. Perhaps I should install Blender 2.8, because the add-on is not compatible with 2.90? Or maybe I shoud use the DIFF file, but how? So many questions, so little answers.

The 3DS import and export will be available again in Blender version 3.6 as stated in the Blender 3.6 Release Notes

Ok, found out that the addon is already shipped with 2.92 alpha, so I downloaded the freshest build and copied the addon to my 2.90 addons folder.
It works flawlessly ^^


text:
Selecting verices by angle
I am working on a road net mesh that only contains edges, no faces. They all share a common plane (I'm basically working in 2D). There is a ton of redundant edges that form ALMOST perfectly straight paths between crossings and could be dissolved but doing it manually with take me ages. On the other hand, there are some road turns that I want to keep.
I'd like to know if Blender has any command that will select my vertices by angle or select similar angle to the one I selected, so I could later dissolve them. Say, my selected vertex connects two edges that are almost parallel, and I want to dissolve all vertices that are like that. I want to be able to set a threshold, so I can keep vertices that connect edges with deviation from parallel larger than 2 degrees, for example.
Here goes a screenshot where I manually selected what I want to be done automatically. The whole mesh is much larger, that's why I'm asking.

If there's no such an option, natively or with an addon, please tell me if it would be difficult to write a script for such an action. Any help greatly appreciated.

X > Limited Dissolve does almost exactly what you're asking for, allowing you to set a threshold by angle. It works for frameworks without faces:

(Limited dissolve with increasing thresholds.)
I don't think there's a way to select vertices by edge-angle, though.
You can select edges by face-angle, but that wouldn't suit this case.

Limited dissolve works fine and it might even substitute your script in my case. But thank you for it anyway! Do you share somewhere all of your scripts?

@michalpe I think this might have been for batFINGER? The reason I put the select-by-angle remark in, though,  is that you could tweak his script to select all verts on angles in a range, which would be very useful, and Limited Dissolve can't do.

Sure, sorry, I haven't noticed that this answer was not from batFINGER. But it's useful too!

Select inline verts.
Quick edit mode bmesh script. Run in vert select mode.  Selects all vertices connected to 2 edges that have an angle of within 2 degrees of  180 degrees.  Think of it like a clock, and the angle between the two hands with respect to the clock centre.
import bpy
import bmesh
from math import pi, radians

context = bpy.context

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

def is_inline(vert, eps=1e-4):

    o = vert.co
    e0, e1 = v.link_edges
    v0 = e0.other_vert(vert).co - o
    v1 = e1.other_vert(vert).co - o
    return pi - v0.angle(v1) < eps

for v in bm.verts:
    v.select_set(
            len(v.link_edges) == 2
            and is_inline(v, eps=radians(2))
            )

bmesh.update_edit_mesh(me)

Man, I didn't have enough time to make 1000 $ bet that you'll be the one to post the solution and it will be a custom script :D

I guess the last value (following "eps=radians") determines the angle threshold and I'm not supposed to change anything else here, right?

Did you just write it or did you have it in your chest of drawers? I meant, chest of scripts. Do you have more scripts like this one? It's not the first time I came across your script on this forum, and it saved my day.


text:
Sound speaker like in game engines
I want to have a speaker playing a sound in 3D space that behaves like a speaker in a game engine. When you place a speaker in UE or Unity, it can play a sound which you’ll hear louder as you approach it with your character, camera view etc. In Blender, it doesn’t seem to work so smooth. I expected that the sound would be played while animation is running, and I would hear louder or quieter sound as I move the view or camera around the speaker, but that doesn’t happen. Instead, I hear glitchy sound, getting sped up, doubled frequency or played backwards…
It is even possible to achieve that 3D space “distance-wise” sound source that will be played, preferably in a loop, in animation or just in the viewport, as I navigate?
I don’t consider the old BGE, just the new Blender 3.X versions.

Just to be clear.. can we can take it as read that the Speaker object settings and audio cache are not working for you? Or, do you need to clarify those?

Could you elaborate on that? Because I don't quite understand your question. What is Audio Cache, how does it work, and how do I know whether it's working or not?
First, I want to know if it's even possible to achieve what I had described.
There is that "Cache the sound in memory" setting at import, but I don't know if it should affect the result.

I ALMOST got it to work. When I'm playing animation in viewport and stay in camera view, the sound does get louder and quieter as I navigate closer and further to the speaker, but it's still glitchy. I guess that could be due to Doppler effect, but I'm not moving very fast and my scene has only sever meters across. The sound is restored to proper playback when I hit Update Animation Cache in Scene Properties, but I want to know if it's possible to make it work "on the fly", so I'd be moving camera and the sound volume would be automatically adjusted, without glitches and need to update cache.

Is the speaker's audio synced to F-curves?

Here is a method that works.  Add a driver based on the distance variable of the camera and your speaker to set the volume of your sound clip.
You add a sound strip to the sequencer, your music clip.

You select your sound strip and press n to go to the side bar.  Then go to the volume property and right click to add a driver.

You must then edit the driver.  Specify the two objects, your camera and the sound emitting object,  and switch the variable to "distance".
Divide the variable by 1 or another number so that the volume change is what is appropriate for your animation.

Now, by moving the camera towards the sound object, you get an increase in volume.

Yep, this works!

Sorry for late response. It initially seemed too complicated to me and took me a good hour of staring at your answer and googling drivers, as I've never used them before, but now it no longer appears difficult. Thanks a lot!


text:
Grid/ smart fill but with only 3 "rails"
I have an outline that has 3 curved "segments". Actually it's all connected edges. I want to fill them with a grid that has one "pole", so it's like of 1/8 sphere but irregular.
SketchUp has a plugin called Curviloft which is very smart and handles grids like this one. It can also do stuff like Blender Grid Fill tool. I want to achieve the same result in Blender but Grid Fill tool does not help.
I know there are addons like Smart Fill and Curve to Mesh. I haven't tried them yet. Perhaps this is the way, but they are both paid, so I want to ask first.
Would you have any suggestions for me?
Thank you

Blend file:

https://blender.stackexchange.com/questions/1503

So your suggestion is to use curve tools? Could you show me how to do it? What I learned is that each "rail" has to be a separate curve, directions and order of selection matters too. It seems quite complicated and there are many opportunities to make a mistake. I will be trying by myself but further help I would appreciate.

Just a related method, not sure it actually works with three rails at all

I guess Sverchok addon should be able to handle that like in somewhat similar article, in this case usage will be different though

Yes and I wanted to mark it (accept) as a solution but SE says I can only do it tomorrow.

I just found a workaround and it actually is described there:
Triangular grid fill

You can have something close to what you want with a bit of tweaking with the CtrlE > Bridge Edge Tool:
Select the vertices on the 2 sides, don't select the top one:

Bridge, tweak the parameters on the Operator box so that it looks the way you want:

Give some corrections on the bottom and top:

Wonder if there's a way to make one  3-pole akin to https://blender.stackexchange.com/questions/84167/whats-the-fastest-way-to-turn-a-triangular-face-into-three-quads then grid fill?

I'm not sure what you mean, maybe give an answer, I know mine is not completely satisfying (it works because the base is circular), there might be cleaner way

it looks like a Nurb Surface except I don't know if you can convert this into curve then into a nurb that would be filled?

I think what batFINGER means is to create a mesh which looks like bevelled corner if you bevel all edges of a cube with many segments. Perhaps this would help but I don't know how it would be achieved and my goal is to create a mesh which looks like 1/8 of a sphere.

@michalpe  Yes that was the idea, (have one 3-pole in center instead of n-pole at apex) no idea how to do it (simply) either.  Would say question is a dupe of your linked answer, (as noted by lemon)  in which case there is no need to link to and accept your answer. Instead consider accepting this answer, or moonboots consider adding this answer to that question.


text:
How to select parallel edges
As in the title - how do I select edges that are parallel to the edge or edges that I preselected?
I don't mean selecting edge loops or rings. My mesh is triangulated, so I don't have any of them. I need to select edges that are mathematically parallel in model space.

Shift G, select similar, direction.

Yup, that works. Thank you!


text:
Submarine with inside furnishing?
Is it possible to create an object so that a person could sit inside and see the equipment inside of the submarine?

Yes it is.
Just create furnishing and equipment, position it inside the submarine, and then put the camera there.


text:
is there 3ds max like sweep functionality in Blender?
can I do something like this in Blender (link below)? 3ds max has an awesome sweep modifier. The curve bevel option in Blender is not good enough for such results, neither the array modifier + curve modifier, because in Max you can control the bank angle.
https://youtu.be/0FxEPymScO8

could you please describe the kind of object you'd like to create and why the curve bevel is limited according to you? I don't see the difference...

You can modifiy the roll of each vertex of the curve, is this what banking refers to ?


text:
Getting a "waterfall" effect from 2d image only facing one direction, not wrapping
>>PROJECT FILE HERE <<
I took a look in search but I guess I didn't put in the proper search terms because I got a whole lot of results unrelated. I'm 100% sure this has been asked before but I just can't find it.
Basically I want to apply this image to the entire building in a way that it wraps around with the same sizes, consistently. However, I'd think I wouldn't have to unwrap the whole model to do so, right?

A simple solution without unwrapping would be to set the Image Texture projection to Box instead of the default Flat. After changing to Box there will appear an option Blend, you can set this to > 0 if you don't want too sharp transitions on the edges.

You need to UV unwrap, or for this model a method like triplanar projection might work.

@AllenSimpson That's why I said use Box  ;-)  I guess not every beginner will realize that the Box projection in the Image Texture node is triplanar projection.

@GordonBrinkmann I use it all the time with the blend option for quick rocks, it's great

@AllenSimpson Yeah sure, never doubted that... I just meant saying "triplanar projection might work" could be difficult for beginners because some might not know what that is and it's not called liked that in the Image Texture node.

Since you are using Object texture coordinates, and your shape is rather "boxy" I think you could get away with using Box projection (instead of Flat):

THAT'S what that BOX/SPHERE/TUBE stuff is for eh? thanks!

Yes, it creates an imaginary bounding box around your object for whatever shape you choose and uses that to make the texture projection calculations. Default is flat, because most people use UV coordinates for image textures and they're 2D (X&Y only - ie. "flat").


text:
How can I have Alpha 0 but only shows highlight
couldn't find tip on this. Maybe I was using wrong search terms.
I want to create "cartoon glasses". By that, I mean, a plane that is completely transparent, has no refraction effect, but we can see it's glare/highlights only.
When I apply "transparent" the highlights also lose their strength. If I use glass in Cycles, it distorts the pass-through light realistically (I just want it straight though, like transparent/alpha). If I use Evee --- well, Evee's a mess when it comes to glass. But I want the glare to move/live in the scene, not just be an image PNG pasted over it.
I'm still pretty basic in my Blender.

Using Eevee, you can use the "shader to RGB" node from a "glass" node. "shader to RGB" is like a prerendering from with we can get colors.

From it, we can use 2 color ramps: the first to control the light reflexion intensity and color and the other to control the level of transparency.

Color is given directly to the Principled and its alpha value is given by the intensity of the light.
Make sure to set the object transparent (alpha blend) in Eevee material settings.

Alternatively, you can also keep the original environment/light colors with this setting (look nicer, I think, but...):

works as promised. Built it in Evee, switched to Cycles, & it still worked but I'm working in Evee so it didn't really matter. I was just curious to see if it still worked.
I tried swapping out the Glass  for a PBDSF & it didn't work right when I turned on transmission & high reflection. Curious.
Thanks!

The "shader to rgb" node is not available to add in Cycles (but switching does not delete it) as it shouldn't work..


text:
Saved PNG is very different from the rendered image
it looks like this

how can i save it as png and have same color and glaring fx?

Did you try using 16 bit depth (instead of the default 8)? PNG also lets you choose the compression level - default is 15% - maybe try turning to 0?

Related: https://blender.stackexchange.com/questions/239795/why-is-my-saved-png-not-as-good-as-the-render/239804#239804

It's on a different background, make sure you use the same BG twice to rule out optical illusions. Also make sure you checked RGBA in the image format.


text:
How to bend UV Map?
I guess the correct procedure is create uv map 1st then drew texture onto it
but I have a texture in the 1st place and I want bend the uv grip to match it
is there a way to bend it into a curve without move ever point? since it not very nice.

I might try creating a cylinder, deleting one end, unwrapping all with no seams, then deleting the other end. That will create a UV map in the shape of a cutout circle, but the mesh is cylindrical. Delete one-half of the mesh ring, and there you should be.

You could create a basis shape key and a second shape key, then modify this second shape key so that it looks like your UV circle arc (you can use your image in the 3D view as Image Reference so that your mesh matches its shape):

Unwrap, put your UV over the image in the UV Editor:

Now that your UV is ready you can get rid of your shape key if you want.

what do you mean?  ;)   I saw this method several days ago, I don't remember where but I found it pretty smart

aha sorry, but I count on you for the complicated solution  ^^

Miiiaow!  I think I detect a backhander :D

Thank you so much trying!

so did it work?


text:
Why isn't my rig working at all?
I'm trying to make a character model. When I try to parent the model to the rig, it says it worked but when I try to pose it, the model doesn't move or deform, at all. my process was: make the model > join pieces of model into one object > make metarig (basic human) > set up rig > make the rig parent of the model with "Automatic weights."
here's a link to the project: https://drive.google.com/file/d/1r0Vg4sNNSJEkzCE7F9_ewxF11PSLtumv/view?usp=sharing

First apply the transforms of both the object and armature, then select the object, go in Edit mode, select all and M > Merge by Distance with a distance of 0.001. Also put your Armature modifier above the Subdivision Surface.


text:
Modelling a smoothly curved ramp between two edges
I have a shape that I made out of extruding a circle a few times and adjusting the size of the edges.
I'd like to make it so that the highlighted edges form a smooth ramp, but I'm not sure how to do this. I've tried bevels, but it's beveling the vertical edges only, without making any kind of curve

This is roughly the shape I'd like to achieve

What are some ways of accomplishing this?

You could create this shape:

Then bevel the bottom edge, tweak the parameters in the Operator box so that it follows the curve with the amount of segments you want:

Or just create this cylinder shape, create horizontal edge loops:

then scale the edge loops so that it fits the shape, create additional ones:

If you use Proportional Edit  set to Sphere, you can select an edge loop just above the centre and scale with SHIFT-Z to create the curve.

@John Eason oh ok I haven't tried


text:
How can i link a group or verticies/edges/faces to be easily selected with the "L" key?
I am not very experienced with blender so apologies if what I'm saying is either obvious or complete nonsense.  I have a model with 4 separate parts that I would like to rig.    When I use the "L" key to select them, it selects mostly the entire piece but a few edges are left out and stick to the main mesh.     I have gone and manually selected these pieces and moved them out of the way for now, but when I need to rig it later, I will need to easily and quickly select them using the L shortcut. How can I join these faces and define a part to my model so I can select the entire body without missing these faces?

It's hard to understand, but L will select the vertices that are connected, not the ones that are separate. And of course it won't select any mesh that is not part of the same object

Clearly either UV seams aren't displayed for some reason - pressing Numpad + a few times helps in such situations - or unselected faces aren't connected to the rest of the piece. Try pressing A, M, B to merge all vertices by distance.

It was just the vertices not being connected at some places. If anyone else encounters this problem, make sure all vertices are connected. Use the merge tool and select merge by distance and set it to something really small to get rid of those double vertices. Worked for me!


text:
How do I average values in a field per ID with Geometry Nodes?

This spreadsheet corresponds to a point cloud I have generated in Blender 3.6 geometry nodes.
What I want to do is average together the positions of points with the same ID. Do you know how it could be done?
The attribute statistics node doesn't work for what I want, because it outputs a single value, and I want a field of averages with as many values as there are IDs.

Use Accumulate Field node, which allows you to group elements. One to sum up all values, one to count the number of values in a group, and then you can calculate the average. For example below I'm reproducing Scale Elements node's functionality by calculating the average position for each mesh island (I only set ID to make it clear it can work with ID):

OK thank you, that seems to work for what I want, as far as I can see...


text:
Grab object corner to Move it, like in Rhino?
Coming back to Blender after years in Rhino, where your mouse can snap to a corner (or mid point, etc) of an object and Move it from there. Since Blender's cursor can snap to a corner, it stands to (my noobish) reason that our mouse could snap and grab to a corner, as well.
What I'm seeing in replies on other sites is:

You need to select the object, then Tab into Edit Mode
Select one of the corners
⇧ Shift + S ,  Cursor to Selected (2).  Tab out.
Object > Set origin > Origin to 3D Cursor.
⇧ Shift + S, Cursor to World Origin.
⇧ Shift + S,  Selection to Cursor.

Is this accurate?

Hi. You might want to look at these two sections of the Blender manual: https://docs.blender.org/manual/en/latest/editors/3dview/controls/snapping.html  and https://docs.blender.org/manual/en/latest/modeling/transform/modal_map.html You might also look on YouTube. Maybe search for something like blender snapping.

In case anyone else comes from CAD, this is the video that explains how to easily select the object pick-point to move (in the example, he is able to select the base point of the back right foot of a dog model and snap it to the corner or mid-point of another object’s edge, etc.) It’s from almost a year ago, and you had to download a Experimental add-on, so I’m not sure if this has made it in as a basic feature or not (I’m not near my computer to check) Hope this helps some people. https://youtu.be/m5UvuJgZgP0?si=qu5anW3Kj9npeyS2


text:
What are "Leaf" bones? (Collada import question)
I was wondering - there is an option called "Fix Leaf Bones" when importing Collada format. Do you know, what exactly these Leaf bones are?
Also, if there is some expert able to tell me what the other options mean, Id much appreciate it!

I'm not versed in armatures or rigging, nor an expert in that matter, but a little Google research yielded some results about it.
From the Makehuman bug tracker we can learn that apparently most applications and file formats don't store bone length information. This is normally not an issue, since bone length is rarely a needed information. In most cases it can be extrapolated from child bones.
A bone normally extends from its head until it's child's head, length is implicit and can be calculated from the distance between these two points.
It can however represent an issue for end bones, on the extremities of the armature, where no child bones are present.
On such cases an extra fake dummy bone can be created exclusively to represent the end of its parent, and no other function of its own.
These loose bones at the end of an armature are then called "Leaf Bones" by analogy of a tree leaf, I assume.

The point of leaf bones in other applications is to orient joints (rarely used for length). Last finger digit joints are more difficult to orient without a leaf bone, since they don't point anywhere. That's why leaf bones are added: to orient the penultimate joints. Blender has a tail on every bone, which is already a representation of the orientation of the bone (the combination of rotation and roll).

If the joints are oriented and the orientation is not going to be changed (and there are no complex constraints like IK), then the leave bone could be deleted without a problem.

Sounds like a better explanation than mine. Care to add your own answer? I shall delete this one

I don't have collada import/export installed (on another app) to verify how the leaf bones are handled. I'll just leave these comments here, people in the future can search for joint orientation and will find plenty of resources.


text:
Quickly flip your camera / scene horizontally in 2.8? (like in Photoshop)
I would like to be able to flip my camera / composition horizontally in Blender 2.8 quickly, without the need to render the scene and flip it in image editor.
I found other topics explaining how to use S,X,X,-1 shortcut on the camera itself, to scale it on negative X, this way flipping the composition horizotally. However, this does not seem to work in 2.82.
Please, do you know of any quick solution for this in Blender 2.8?
Thankyou!
Martin

Hello :). It still works in 2.82. You can just type -1 into the Scale panel, but other methods work too.

Note: when you flip the camera X=-1, face orientation displayed through the camera is flipped. This was always the case, it's just easier to notice in newer Blender versions.

Thank you, indeed, it worked after a while of playing around with some setups. I guess only my original test did not work :-D

Happy to hear you made it work :).


text:
vertex paint seems to be "low res" or weird on some parts of the mesh
This seems to be a problem of the mesh or the UVs because it also happens on weight paint. But I don't know what to do. the left object seems to work somewhat fine but the right side is just too bad, I can't paint properly paint on that side.
I tried redoing the UVs and it's still the same.

Vertex Paint and Weight Paint will completely depend on your topology, so if you have for example stretched faces the vertex paint will appear stretched, maybe it's the case here?

What moonboots said, and to add: vertex paint is completely independent of UV.  You might consider creating and painting a UV mapped texture instead, to make your colors (relatively) independent of the topology/vertex density.


text:
Artifacts at particular edges after Subdivision modifier
So, the problem is basically visible at the pictures. The edges (the vertical one at the corner and the horizontal one going all the way to the back) seem "pinched" after adding subdivision surface modifier. What's strange is that the vertical one starts to behave abnormally in 1/3, where it connects to the horizontal one.

As you can see there is no such problem at the back with the vertical edges, however the horizontal edge is still wrong.

I've tried creating loop cuts to make the bent more round (as it is at the back) and make the vertical edge look better, but nothing really changed. I've also tried the loopcuts to fix the horizontal one with the same effect (or lack of any). I've read that weighted edge creases might help, but I'm not sure where and how to apply them in my case.
Thanks in advance to anyone trying to help me. I'm still a noob in 3D modelling, so go easy on me :D

Thanks to whoever helped me by linking to another question. It was in fact a problem with inverted faces.

Glad to be of help, good luck with your project :)


text:
Merging objects
I’m trying to create a nose for a toy figure I’m working on but I can’t figure out how to move objects in front of each other in order to merge them? Like when I create a new shape it appears either behind my first shape or inside it? Any help?

You can change the position of the 3D cursor by holding Shift and right clicking. When you add a new object it will appear at the position of the 3D cursor. Place the cursor where you want the new object to appear.

Can you edit your post? Title is about Merging objects, description about how to place objects. Screenshot would be helpful. You aim to this technique  - merging silhouettes cuts into object? https://www.comsol.com/blogs/modeling-irregular-shapes-how-to-import-curve-data-and-loft-a-solid/ or here http://www.colacola.se/wip_p47_model.htm


text:
White outline around renders when compositing in Photoshop
I'm pretty new to Blender so bare with me.
I'm making a GUI in Blender using Cycles.  Altho I have been doing my compositing in Blender, for the final composite, I'd like to export all the elements independently and do the final composite in Photoshop.
I am able to break out the elements by making the background plane a shadow catcher and rendering everything individually.  The issue I'm running into is there is a 1 pixel border of some alpha pixels around sections of the render that turn white when everything is put together.
I'm hoping there is a simple solution but I've been searching for days and can't seem to find an answer.  Any help would be greatly appreciated!
Thanks so much.

Export as EXR? Are you using PNG?

Jagged edges can be fixed over the Photoshop Alpha channel or by using an ID Mask . https://blender.stackexchange.com/questions/73770/how-can-i-avoid-jagged-edges


text:
Use value as scalar field in Marching Cubes node (Sverchok addon)
I am trying to use the marching cubes node (in the sverchok addon) with a set of points as follows:

So, I have a set of points with xyz coordinates, and “w” values at each of these coordinates. I would like to use the xyz coordinates of these points as the bounds, and the w values as the scalar field.
What I don’t understand so far is, how to convert the w values into a scalar field that is usable by the marching cubes node? Any ideas how to convert the w values to a scalar field?
Here is a zip with the set of points and blend file: https://drive.google.com/file/d/1h4F8KKpS4NqOUjcxeR3y-JS_zq5zGncU/view?usp=sharing

scalar field is XYZ as i understand.

bounds can be added with separate BOX node.

to make scalar field use XYZ and W.
Bounds can be as Box node generator or any other simple geometry creating square
Follow screenshot

or even this:


text:
Unfolding an Icosphere, with Sverchok
I am trying to "unfold" specific faces of an icosphere, using the Sverchok addon, such as this:

Where the selected faces of an icosphere are spread or scaled outwards, similar to how the petals of a flower would spread outward from the bud.
My node setup so far:
I'm thinking the process would be something like:

separate faces into separate polygons
modify coordinates of vertices (in selected polygons) to be more "spread out" from their original positions

Where I'm having trouble with this setup is joining the modified vertices back to the list of face objects, not sure how to get the two lists back together.
Any help with this would be very much appreciated, I'm also open to other ideas to get the desired effect. I was messing around with fields a bit, but wasn't having luck with that either.
blend file: https://drive.google.com/file/d/16Fv4vtsfa2HshTTdv44YLCWdg_4_tDxp/view?usp=sharing
Thanks,

I think it would be simpler not to separate vertices in the first place. You can use your mask as multiplier for applying transformation. In your case you should replace False values with 1 and True values with desired weight (1,3) in the mask and connect it to the math nodes.

To rotate anything in 3d space you have to know the center and direction of rotation. In the example I used center of polygons as centers of rotations. Ideally the center should be the center of opposite, to the points, edge. Axis input of the Rotate node expects normal of rotation surface. To get this normal I used cross production of face normal and up direction. And finely I applied degree of rotation only to selected points with help of the Switch node.

https://drive.google.com/file/d/15lhtLdhC9COZgV8OdOlXn__S1XmWfA62/view?usp=sharing

Perfect! thanks for the answer. I'd like to take this a step further by keeping the faces connected to the same mesh when increasing the subdivisions of the icosphere. I'll try a few things and probably open a new question.

authors: Сергей Солуянов


text:
Powdered sugar sprinkling?
I'd like to know how to create a powdered sugar sprinkling like the one shown on top of the cake in the image below. If you could provide a picture of the node setup for a material, that'd be great. Thank you! :)

Hello :). What have you tried so far and where exactly are you stuck?

I tried a voronoi texture, but I just got dots lol.

Use a noise texture, scaled to around 80 or so, with the roughness turned up to full. You may also want to adjust the detail value.

https://blender.stackexchange.com/a/193174/2214

Shader Method
I used a Noise Texture with a Color Ramp set to Constant to generate a sugar sprinkle mask.

Then I mixed some noise into Generated Coordinates and separated out the Z axis.  I could then apply another Color Ramp to isolate the top of the cake.

Multiply these two masks together with a Math node and you get a mask that you can use as the Factor of a Mix Shader between your cake and sugar.  The top Color Ramp controls the size and density of spots of powdered sugar.

Particle System Method
Instead you could "model" a sugar particle by adding an icosphere.  Put it somewhere out of camera view.  Give it a suitable material for sugar.
Start a Particle System on your cake.  Set it to Hair and under Render select to Render As Object and set the Instance Object to your Icosphere.

Since we're emitting from faces you have to worry somewhat about an even distribution of faces on your object.  I didn't bother since this is just an example, and it might be useful to someone to see the consequences of it.
I've marked all the settings I changed to get this result.  (Note: Hair Length is the same thing as Normal Velocity.  In this case it is in effect a multiplier for your object scale.)

I thought maybe interpolated children would solve the problem automatically.  It does not, although it may make it easier to deal with in some cases and it provides an interesting result nonetheless.  Also beware that at default settings you'll generate 100x the number of particles on render.

If you want to limit to only a certain region, you can create a Vertex Group either through assignment or Weight Paint mode, and assign this as the Density group of the Particle System.


text:
Duplicate displaced plane and have edges line up?
I have a displaced plane (shown in image 1,) which I'd like to duplicate and move next to itself to expand it into 2 tiles. However, when I do that, the edges don't line up and I can't get the individual tiles to generate new bumps while also lining up properly with the last. How might I fix this? Thank you! :)

do you need a repetitive pattern? do you need separate objects or could you use just one big grid? in the latest case, check: https://blender.stackexchange.com/questions/26692/how-do-i-create-repeating-patterns-with-cycles-procedural-textures

@moonboots Hi! I would like them as separate and completely new terrain tiles to specify, thank you for that though! :)

@moonboots I found an answer that worked for me and posted it if you'd like to see, thanks for helping! :)

ok, I think I may have misunderstood your question  ;)

He he .. @MmmChezBurgerz, you beat me to it! You can put the texture into the space of any object you choose.. here, an Empty called 'Texture Space'. This answer is only for illustration..

Thanks for this! I set your answer as the main answer since you included that image. :)

@MmmChezBurgerz  That's very sweet of you! It's your answer, really. The whole 'texture' mechanism is a bit of an odd legacy.. IMO.. to the user, it should look and work like shader nodes, for consistency.

You can try duplicating the plane and then scaling it by minus 1 along whichever axis you moved it on. That way, you basically mirror the plane so the edges line up. A better way however, would probably be to just use a seamless displacement map.

Thanks for this! It did work, but like you said it just mirrors it but I'd like new terrain that still matches up. I might just try the seamless displacement map, if you wouldn't mind linking a tutorial on how to do that it'd be great please! :)

I just found an answer that works for me which I posted above, thank you! :)

I found out how to do it (with inspiration from this post: How to animate the Displacement of the Displace modifier)! So basically, take the tile and duplicate it next to the main tile. Now, change the displacement modifier to "Object" for the tile that you just duplicated. Set the object to the main tile and you're done. Now, as you duplicate the tiles, they (should) line up fully with the tiles around them while also generating entirely new bumps. I'm not sure if this is flawed or doesn't work in some situations, but from my experimenting it worked perfectly fine. Thank you to all those who helped! :)


text:
Ideal workflow for lighting / rendering / compositing animation with multiple shots in one blender file
Usually when I work on an animation project I split it in one blend file per shots, then rendered each one in EXR, then do the compositing in After Effects.
From now, I would like to composite in Blender to stop switching back and forth between programs.
Let's say I have an animation with 8 camera shots.
In my blend file I first did the layout (one camera per shots), then I split it in 8 scenes inside the blend file.
After I did the animation and lighting in each of these scenes.
Now I have to render and composite the whole thing...
I setup the compositor for each scenes, that's the easy part.
The I create an empty scene only for the VSE and I put all the shots after each others in the timeline.
When I hit render sequence, it works... but I only get the final composite, not all the render passes.
Moreover the file is less stable, if hit escape during the rendering on the VSE scene Blender crashes. If I hit render on a shot scene, Blender hangs.
I suppose that these behaviors shows that I missed something but I can't tell what.
Is this workflow good ? Or do you have others inputs ?
Also, if I want to keep all my render passes I have to setup a File Output Node in the compositor right ?
Thanks everybody !

Is this a good workflow? Subjectively, no. Continue to compile your multi-shot-edit in AE.

You can keep your render passes by rendering directly to multilayer exr in Properties>Output. OR manually set the output with the file output node.

Haha, thanks @Leander. Compose all the shots in AE works for years so I guess I will have to stick with it.
I'm curious though, if you want to do the compositing in Blender, you do it file by file, render it then edit the sequence in Premiere ? But if you have any modification on the compositing, you have to rerender it again, then do a new export of the sequence from Premiere ? (that's the kind of thing I would like to avoid with the new workflow)

As for the Multilayer EXR, it works fine in the scene containing the shot, but not in the scene with the VSE. I had to setup a file output node in the "shot scene" for it to work in the "VSE scene".

Separate the rendering process and compositing process. Render to images (multiple sequences or a multilayer exrs) and the use a new blend file or new scene for the compositing, where you just load the rendered images.

Having a gigantic setup that renders, composites and compiles all scenes in one click may be compelling, but is futile. Break down the process into meaningful stepsIf you move the data forward using exrs you don't loose enough quality in the process for it to matter.

You saw it right, I'm mainly looking to speed up all the lookdev validations steps by having Blender processed everything in one click.
For the end of this project I'll try this : during the production one scene per shot with a compositing pass for each one. Like this I can quickly export composited previews for each shots. For the final render I will keep this setup, but keeping all the passes on a Multilayer-EXR like this if I have anything to modify I'll just have to change the input from Render Layer to Image Sequence and reconnect the passes. No re-render.


text:
Joining seperate objects in armature?
Hey everyone!
I'm new to Blender and finishing up my teddy bear model/rig - however, when I turn the head of the bear, the seperate nose layer turns and distorts differently to the mesh.

(The bear front on, vs bear when the head is rotated 90 degrees left)
I've tried joining the objects (CTRL-J) to no avail. Perhaps it's to do with my hierarchy? Please let me know if you're able to help!
BLENDER FILE AVAILABLE HERE

There's a bad rigging of the nose, i.e. bones influencing the nose while they are not supposed to.
So what you need to do is select the whole mesh in Edit mode and remove the nose vertices from all groups, then assign them to the good vertex group which is "spine.006" (name of the head bone).
Now when you rotate the head you can see that the nose goes far away, but this time it's because the head is flattened, this is because the head is also bad rigged. So do the same things, and it will work.

Thanks, Moonboots! Fixed it beautifully for me, gonna go through and properly rig each piece to each bone to improve it. Originally rigged it with Mixamo which didn't work for me, hence the messy groups


text:
Blender to Unity: Animation is wrong applied
getting animations to Unity is usually not a problem at all, but today I tried something new.
I animated this 4-parted horizontal sliding door by creating ONE armature with 4 bones for each part of the door. Then I parented each door-part-object to the correct bone. Everything is working fine.  Once I export this to Unity, I get a couple of clips, which is fine, but none of them contain the animation.

Instead, each clip moves all 4 door-parts at once. enter image description here Does anyone have an idea how to fix this problem? Thank you in advance!

I made a workaround:
Instead of weighting (CTRL + P > Bone) for each door-part-object, I joined them to a single one and applied ( > With Automatic Weights). Than removed the vertices from the vertex groups and asigned them manuelly.
Now the animation worked as expected in Unity