text:
Character holding an object
I'm trying to get a character (robot) to catch a vinyl record. I have both objected linked into a blend file. I tried to use a Child of constraint on the vinyl record and parent it to the thumb bone of the character. It's moving, but it's not following the thumb. In fact it appears like it's going in the opposite direction. below are a couple of screen caps to show my issue

I'm thinking that some how the bone axes and the object axes are not aligned. So it's not following it properly? But I'm not sure and don't know how to go about fixing that.
Any help would be much appreciated.

Has the vinyl record been animated before introducing the child of constraint? Maybe it has some keyframe left that are now interfering. On the other hand, it's hard to tell more without seeing oh the armature is like, modifiers, constraints... I would suggest to upload at least a piece of your file for examination.

Could you provide a .blend file to be able to help you?

I'm having trouble separating the blend file to include it here. But I found some info while doing this. I have the robot and the armature grouped. And then I link that group into a separate blend file. Then link the vinyl record into the same file, make proxies (Ctrl+Alt+P), then add the constraint to the record. That doesn't work. When I tried it. the record jumps to the thumb location, but then when I move the armature record doesn't follow. If I append the group instead of link it, then everything works as expected. Am I doing something wrong with proxies?

My previous comment wasn't entirely correct. I was seeing strange behavior, but as I tried to reproduce again, it seemed to work ok. So I'm suspecting something I did is causing an issue in my original blend file. I also tried linking the robot group in a different blend file, then linking in the action from my animated file, and that also worked. So this could be my work around. I'll just create a blend file and link the robot, action and vinyl record. Here is a link you can download the problem state files from: https://drive.google.com/open?id=0By7_pLesGvS0Uk50bjlmTEM3blU

I think I figured it out. when I add the childof constraint I was picking the armature object. But when I used the picker took and pointed it at the armature of the robot, it showed a different object; the proxy. Once I selected that, things worked as I expected.


text:
Subsurface color disappeared from the Render Layers after Blender upgrade. Does it exist in 2.93?
So I upgraded blender from 2.82 to 2.93, and a render layer called "SubsurfaceCol" has disappeared from the Eevee render layers.
This layer appears when a material with subsurface radios is used in the scene.

Was it an experimental feature that got depreciated?
How to bring it back?

I have checked Blender official manual for you and yes, SubsurfaceCol only appears in versions 2.80 to 2.82, it is removed since version 2.83

Thank you for checking. I was probably looking in the wrong place for the documentation. The https://docs.blender.org/ doesn't return any search result for the "SubsurfaceCol". Can you give me the correct link, please? I hope to find an alternative.

At the bottom https://docs.blender.org/manual/en/2.82/render/layers/passes.html SubsurfaceCol is short version you need to search for subsurface color in Render layer > passes. I am not sure what is alternative, I am not even sure what this SubsurfaceCol does

Thank you for the link, MikoCG.
I used SubsurfaceCol as a workaround, but now I switched my solution to Cryptomattes and it's much cleaner.

source: Stack Exchange

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

sort: votes


text:
How to make normal and displacement maps only apply to certain areas of model?
So I'm trying to make this old rusty radio and this is where I've gotten so far.  I'm trying to figure out how to apply the rust texture's normal and displacement maps only to the rusty parts of the texture.  As of now it's applied to the entire surface.  Anyone know how to solve this?

One possible way you could do it is use this node setup:

So the idea is to create a vertex color layer, which you paint manually which represents the rust. Then in the shader editor you use this vertex color information to use the rust, otherwise your "normal" shader.

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


text:
3d printing a paused simulation
I'm a total newbie to blender and 3d printing and conscious I'm taking on a lot here, so I'll try to be as clear as possible.
My concept is to make (that is, get someone to 3d print) an object that casts specific (different) shadows when a light is shone through it from different angles. I want it to look like slightly random abstract art in normal lighting, then I'll embed some LEDs in the object for the shadow casting.
I considered using booleans to subtract the light paths from the outer shell of the object but I'm concerned that will just leave very precise holes in the outside making the shadow shapes very obvious at first glance - I want it to appear a fluid and abstract shape, but still cast the shadows precisely.
The best workflow idea I have hit on so far is to create the light paths as solid interlocking objects each going to a point where the light source will be, then use a fluid simulation to 'pour' around those paths/objects, then freeze (bake?) the fluid, analyse and export the 3d model (fluid only) and 3d print that. It's kind of inverse shadow casting in a way.
My question is, how do I save the results of a simulation once it's finished or in progress, as a static 3d model? Is using simulation as a modeling technique even workable?
I am of course open to any and all suggestions of better workflows etc that you recommend.

By the way I am aware that for 3d printing I'm probably going to have to split the model and print in two halves, to cope with the overhangs of a (probable) internal cavity.

This concept is very interesting and I'd love to help out (and have access to a half dozen different 3d printers of various technologies, along with knowing Blender well) but I feel like this could kinda spill outside of the normal context of an answer on here.  Can I contact you through email/social media?

When you are satified with your simulation, go to your domain object, then the modifiers tab(wrench icon). Then click the arrow down and press apply. Your simulation is now permanently there.


text:
How do I add a custom UI Panel to image editor with Python?
I am trying to add a panel to the sidebar in the image editor. I used the template "UI Panel Simple" provided by Blender. The template works just fine if I leave it as is, but if I change "bl_space_type" to 'IMAGE_EDITOR' and change "bl_region_type" to 'UI' then the script doesn't work anymore. If I copy the same script into the Console, I get the Error: "IndentationError: unexpected indent" in a ton of places in the Console. I don't know what I'm doing wrong, all tutorials I've seen on Youtube do basically the same thing. I've tried deleting portions and it seems that the problem is "bpy.utils.register_class(HelloWorldPanel)" but I can't find out why. What is happening? I'm using Blender 2.93.4
import bpy
class HelloWorldPanel(bpy.types.Panel):
"""Creates a Panel in the Object properties window"""
    bl_label = "dsnldfbnsln"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'IMAGE_EDITOR'
    bl_region_type = 'UI'
    bl_context = "object"
    def draw(self, context):
        layout = self.layout

        obj = context.object

        row = layout.row()
        row.label(text="Hello world!", icon='WORLD_DATA')

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

        row = layout.row()
        row.operator("mesh.primitive_cube_add")
def register():
    bpy.utils.register_class(HelloWorldPanel)
def unregister():
    bpy.utils.unregister_class(HelloWorldPanel)
if __name__ == "__main__":
    register()

The python console hates blank lines, so if you remove those, you should be able to paste your code to the console.  You would still need to indent the doc string though.  But that won't get your panel attached to the existing panels.

You need to make some changes to switch to the image editor.  Here is a version of the class that will work:
class HelloWorldPanel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "label"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'IMAGE_EDITOR'
    bl_region_type = 'UI'
    bl_category = "hello"

    def draw(self, context):
        layout = self.layout
        obj = context.object
        row = layout.row()
        row.label(text="Hello world!", icon='WORLD_DATA')
        row = layout.row()
        row = layout.row()

Note that this will not  append the panel to any of the existing image editor panels, but will instead add another tab to the image editor side bar called 'hello'.
Here are the changes:

add bl_category to give the panel its own tab. The name you use for the category will appear in the tab on the sidebar.
Remove any references to objects, since there are no objects in image context.

If you want to make the panel a subpanel, instead of bl_category you need to set bl_parent_id to the id of the panel that you want to make it a subpanel of.
If, instead, you want to make the panel sit in the same tab of one of the existing panels, set bl_category to the category of that tab.  Your tab will be appended below the existing tab.  If, for instance, you would want to append it to the image tab,  use
    bl_category = "Image"


text:
Why are my object's shadows so janky?
I'm trying to sculpt some stylized boulders for use in Unreal Engine.  I got something I'm happy with:

However, whenever there is light on them, the shadows look pretty messed up:

After digging around for clues, I found a few posts here regarding non-planar faces.  I tried using Clean Up > Split Non-Planar Faces, but it really messes up the look:

As does Clean Up > Split Concave Faces

How might I go about fixing the faces while preserving the look?
Thanks a million in advance!!  I've also uploaded the blend file in case it helps.

The reason this mesh has strange shading is because of the topology.

Polygons which are made of more than 4 vertices are called ngons. These ngons are pretty extreme in your mesh as you can see. While ngons have their place (on totally planar faces) if an ngon face has even the slightest twist, then it will cause horrible shading.
This is why in 3D modelling (especially for beginners) people avoid ngons and aim to keep faces consisting of no more than 4 vertices, which are called quads.
Another way to make these kinds of stylized rocks is to add a cube. Subdivide it with constant detail and then enter sculpt mode.
With the scrape brush, you can scrape away at the faces of the heavily subdivided cube to get nice flat edges.
Once you're happy with it, you can leave sculpt mode and then add a decimate modifier and decimate the rock to reduce the polygon as much as possible (lower the value in the slider to somewhere near 0.01).
The decimate modifier will retain the detail best while keeping the shading looking the best. Once you find a happy medium between detail and polygon count, you can apply the decimate modifier and move on to UV unwrapping and later texturing.
This is how I make stylized rocks.
Hope that helps! :)
I just added a rock I did just now.
https://www.dropbox.com/s/rcbo7lwoyoetbln/RockSculpting_Demo.blend?dl=0
I just rushed this so with a bit more time and effort put into it, you could get something looking nicer but hopefully it'll give you an idea of how the topology should look.

Amazing, thanks so much for the detailed response!!  Did you use an external application like photoshop or substance to create the rock texture after you UV unwrapped it?

This was all done in blender.

I duplicated my rock,

then I added the decimate modifier to the duplicate.

Then I applied the decimate modifier and that was now my low poly.

After I Smart UV unwrapped it.

I baked the normal map from the high poly to the low poly.

Then I made a material on the high poly to get the colouring which was all procedural.

Then I baked the colour to the low poly again using a Viewer Node (Emission Shader) and setting bake output to Emit.

Janky shadows are the result of janky topology:
Large N-gons with non planar faces.

At the time of rendering all objects get subdivided into triangles.

I cringe just looking at this horrible mess.
The takeaway is this: objects (yes all objects) should be created with some notion of the topology. Fixing things later is much harder and time consuming. It has been written many times in this site "topology is your object", is not something that you add at the end like icing on a cake.
So how to fix it? you need to re-topologize. There is no de-janker tool...
There are a lot of videos out in the Wild World Net detailing how to do it. Basically it comes down to creating a new object, and using the old one as reference to pin new faces, using proper quad topology.
If you want to try blender 2.9 there are new tools to make re-topology much easier.
https://www.youtube.com/watch?v=BEwEWKOH5ws

After looking at your uploaded file, I would say you don't have enough geometry to describe the object without having non-planar faces, and using the Split Non Planar Faces command will only produce more non-planar faces as it tries to remove the old ones. You can see this if you do the same command again, it still splits faces.
What you need is more even geometry, instead of long, thin faces, or 'curvy-edged' faces where the vertices describing those points are not on a plane.
First, try retopologising to get rid of those long thin triangles, then add edges across your faces to produce quads or tris that are planar.
You can also experiment with the remeshing tools in the remesh section of the object data tab in the properties window.
I'm curious how you ended up with that geometry, it looks you you used some non-standard workflow. Nothing wrong with a non-standard workflow, but sometimes, unless you know what you are doing, you can end up with problems like this.


text:
Help with Modeling Shotgun Handle
I've been trying to model a sawed-off shotgun and have run into a wall on how to model the handle. The general shape isn't too much of an issue as I just extruded a plane based off of a reference image (the second image), but there are sections that I don't know how to model.
For instance, the handle transitions from a circular base to a more squared-off shape. Also, on the sides there is a raised, triangular portion that I've found is tricky to model.
Any advice on how to go about modeling this would be greatly appreciated.
Reference Images:

What I've tried so far:

I'm lazy, so I'd let Blender do most of the job.
Make the rectangular part and the round part, and let Blender make the transition for you.
A nice final render (to boost my ego)

Project blend file for your inspiration:

01) Square part
- Start with a basic cube, add loopcuts, extrude it and stuff...
- Use proportional editing (I used Sharp profile)
- Use subsurf modifier
Use proportional editing for those tapered edges

02) Round part
- I used a basic cylinder and extruded it.
- Just make sure the number of vertices (and edges) is the same as in the open loop of the square part.
It's 24 vertices (and edges) in this case.
03) Bridge Edge loops
- Select and bridge the two edge loops (Edge > Bridge Edge Loops)
- Both loops need to have the same number of vertices
- Both meshes need to be in one object (you can join them into one with Ctrl+J)

What would be optimal to use for the smoothing? As sub-surface distorts my model.

Hello :). There could be some problem with topology, hard to say. Ask this as a new question, and I'll be sure to look into that.


text:
Cell fracture using annotate not working
So I wanted to create broken glass and do a rigid body simulation. I used the annotate tool and using the project to surface feature, drew a couple of bullet holes. When I proceeded to use the cell fracture add on, it displayed the error in the screenshot. I opened up a new file and tried it but nothing changed. I couldn't find a solution anywhere and pretty much all the tutorials I watched online were doing the steps I did, but their cell fracture add on was working flawlessly instead of displaying an error like in my case. What should I do?

It would have been helpful to see this screenshot you are talking about. Also the scene with the object you want to fracture and the annotations. And probably the Cell Fracture settings as well?


text:
How to make Extended Asset Browser feature turned on by default in 3.0?
Blender's 3.0 release is awesome especially the asset browser. However, I notice that I couldn't mark a Collection as an asset. In previous beta releases you could turn on Extended Asset Browser feature in Preferences that would solve the problem, but we don't have this feature in 3.0 stable.
I found that this feature is still in the code, but is not activated. In order to activate it i edited the source file named space_userpref.py, in class USERPREF_PT_experimental_new_features on line 2275, which has "use_extended_asset_browser", i added @classmethod:
class USERPREF_PT_experimental_new_features(ExperimentalPanel, Panel):
    bl_label = "New Features"

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

    def draw(self, context):
        self._draw_items(
            context, (
                ({"property": "use_sculpt_vertex_colors"}, "T71947"),
                ({"property": "use_sculpt_tools_tilt"}, "T82877"),
                ({"property": "use_extended_asset_browser"}, ("project/view/130/", "Project Page")),
                ({"property": "use_override_templates"}, ("T73318", "Milestone 4")),
            ),
        )

After that Extended Asset Browser feature has appeared in Preferences - Experimental, and i can now chose collections from Asset Brwoser's filter menu:

But the problem is when i close Blender and then open it again Extended Asset Browser feature turns off by default, so i need to go back to Preferences and turn it on again. Is there a way to make it turned on by default, so i won't need to go to Preferences every time?

Hello ! Wouldn't it be less bothersome to use the 3.1 alpha release ?

Hi! I had a lot of issues with non-stable versions resolving in Blender crashes, which i don't have in stable release. So for my work i need it to be 3.0 for now and get those collections working for asset library to use. But it can be a good option for others!

Makes sense. Can you confirm that the option to enable extended asset browser does stay in the preferences panel, even though it automatically turns off every time you reopen Blender ?

Yes, it does stay in the preferences panel and i do Save Preferences, but check box is empty when i reopen Blender.

Maybe a simple addon that would turn on this value on startup would do. Have you considered it ?

That is a good idea. I guess i will have to do so, if there are no othere simple solution.
Thank you for yout help and time!

This handler will do I think : https://docs.blender.org/api/current/bpy.app.handlers.html#bpy.app.handlers.load_post


text:
Weird light fall of on spheres
I've been experimenting with making planets in Blender with Cycles. However, I've run into this strange issue that I'm not even sure if it is an issue with the way that light is falling off of a sphere in Blender. I'm using a sun with a strength of 10. I've tried setting things up using just a blank sphere with no difference. I've also tried just starting over with no luck. I've messed with the max bounces, step size, and max step options. It seems as if these things aren't changing anything. Even if this is how it's supposed to work I would like to make the light fall-off more gradual. Especially in the render included, I think it really harms the look with the dramatic fall off. All hep is appreciated, thanks!
No atmosphere (Sorry I had to crop)

atmosphere

I can see nothing wrong abou that.

I find sun lamps to never be very realistic in many cases. Try swapping the sun lamp for a large (proportionally) area light. You might have to make it relatively powerful given the distance, but I think it gives a better look:


text:
Why do I have these weird reflections?
For some reason some objects in my scene have these weird reflections, but others don't. All objects in my scene have the same material, but some behave differently. If i make the specular value 0 the reflection goes away, but then it looks different than the other materials, and I want them to all behave the same.  Please help!
Attached is a link to a video of me showing you the problem. You can see the weird effect on the door, and on the wall.
https://drive.google.com/drive/folders/1inH5VpxNH4FzB5Dj2GUt-8H5olSETlda?usp=sharing
FYI (to the moderators) I tried using blender exchange but the upload never worked.

Just posting this so I can post the pic. I suspect the problem is that you have your light radius set too large. It's hard to tell from the video, but it looks like you have a point light above your "room". As you can see from the image below, a large light bleeds through the walls and reflects off the roof similarly to how it does in your video. If you have a point light with a radius that is large, consider reducing the size. If you don't want it coming through the walls, also consider enabling contact shadows, but bear in mind, this may require your walls to have some thickness to work properly. See below:

I have no point light above my room. I'm mostly only using the world light shining through the windows to light my scene, and these material issues were a problem before I added any other lights such as the ceiling lights. This room was a downloaded room, so maybe there is a typical problem that comes with setting up someone else's scene?


text:
Grey Spots Cover Visibility of Vertices, Edges, Faces
Pictured below is a super annoying thing I can't tolerate anymore. How can anyone model when the edges and vertices are hidden under this gray film? This is just one object so there are no intersecting surfaces. Anyone know how I can fix this? I'd really appreciate it!

The problem ist the subdiv modifier. The cage and the shrinked mesh are intersecting each other.
You could either shrink the cage or toggle x-ray as shown in my screenshots:

Greetings


text:
Why does my heavily divided surface look like it has flat shading?
Even though my surface has smooth shading on and is heavily subdivided, the geometry seems to be faceted. Anyone know why?!
Project File Linked Here

subdivide your other object too, the one you use as a source of data for displacement... try to compress file when saving or set in preferences

if you refer to those segments visible in your first picture then you need to subdivide the other mesh, the ring, the one you use to deform the grid... if you ask about the faces in the third image it is more a smoothing problem, may need an extra subdivision and use a 'set shade smooth' node... but I see you got it covered in the third picture
guess you are using a 2.93 version of blender, that smoothing node may not be there..? I'm new to GN so never used those attribute nodes either

Fuck yeah! That worked. Appreciate you!! @alambre

no problem, looks like a cool project


text:
Why is this object black in my scene?
No matter how much light is pointed at the projector screen behind the chair, the object comes out black in the render. It has the same material as everything else. Also why does the door look the way it does with those dark shadows?
Blender File

FYI to the moderators, I tried using blend exchange and it wouldn't work.

Is it missing a texture, or output shader node set to the wrong renderer?

It has a texture and the output is "all" so it should work in both cycles and evee

Okay this took me a bit to figure out. The problem was on the screen_roller object hidden in the viewport, not the Plane.002 object that's overlapping it.
You were right the material is fine! It's identical to the materials used on other objects, and even removing it doesn't change anything. The problem is the normals for the screen are facing the wrong way, so the light doesn't reflect off the surface toward the camera. I fixed this by clearing the custom split normals data:

This data was taking priority over anything calculated directly from the geometry. Though if you need the custom normals, you're free to adjust them manually.
[Edit] Oops didn't see you ask about the door! But it looks like it's having the same problem as the screen, just to a lesser extent. Clearing or tweaking the split normals should fix it as well.

Hi there : ). Nice and detailed answer . I like it. Next time don't forget to ass some links on certain words like normals which direct u to the blender manual page.

You are a god! That fixed all my problems and has created tremendous relief in my project. Thank you!!

@Nxdhin2005 thanks for the feedback. i added some links and tried to improve the clarity a bit

@NickAbbott haha i'm glad i could help! those models were looking good. happy blending :)

Perfect !! Thanks for editing your question. :D

Check the face orientation of the object. If it is red, go to edit mode, select all, shift + n
See if that makes a difference.
(Face orientation is in the overlays tab)

Hi there : ) .Please use the answer section to post detailed and simplified answer. Do not post something that you are not sure about. To ask such things use the comment section. . If it is the normals explain what normals are and give a brief intoduction on it.Thank u


text:
Archimedes screw?
I'd like to make an archimedes screw in blender.
I can't use a pre-built STL file, because I'd like to render it as a book/story illustration, so to avoid copyright kerfuffles, I need to do it my own self.
Only problem: doing archimedes screws in something like a CAD program is difficult, I imagine doing it in something like Blender will be ooober difficult.
That is my only option, however, so... ...alas, please tell me how to do it.
PS: remember, and archimedes screw is an auger, so; it exists inside of a bore, and I can do: the bore (a cylinder with an object modifier in the shape of an other cylinder cut out of the middle of it, then, another optional openning to open up one of its sides as though it were cut in half, by using another object modifier, this time: a cuboid, stretched and then placed halfway into and subtracted from it), then, the central drive shaft is obv just a cylinder, but then, the spiral which passes through that driveshaft at a near exact 60 degrees? That's the part that's got me stumped. I've done curved tubes in blender before, but, this challenge... ...thinking about it has me scratching my head, no offense.
So, I really just need help making a spiralling screw-cut surface endowed with the exact properties of an archimedes screw.  I know there is a "screw" plugin, but I haven't played with it too much, so I don't know if that'll come into play, if it is a viable solution though: I'm all ears, thanks in advanced

This might help https://youtu.be/XTSRnj3XXqw

Just revisited... Do not follow the tutorial, if you want a manifold mesh.

Working looking down Z, X across, pivot: 3D Cursor at origin.

Start with a plane
In Edit mode, GX it to the left, so its left side is at the desired radius of the screw in X, leaving the object's pivot at the origin.
X > Delete its right edge (also deleting the face), scale to the thickness of the screw blade in Y, and move the inner vertices to the desired radius of the shaft, in X.
E extrude the inner vertices, dragging and right-clicking to leave the extrusion in place. SY the extrusion up and down a little way in Y.
If you need to adjust the angle between the blade and the shaft from the 90 degrees shown, you can do it at this stage.
CtrlShiftB the corner vertices to tighten the profile.
Assign a Screw modifier, axis Y. To obtain an exact screw angle, set the 'Screw' field to tan([angle])*2*pi*[r], where [angle] is the screw angle expressed in radians, and r is the outer radius of your profile. My angle is 30 degrees, and radius 3, so I typed tan(pi/6)*6*pi into the 'Screw' field. You may have to check 'Calc Order' to turn the solid the right-way-out.
Check 'Merge' in the modifier, and then scale the previously extruded vertices in Y until the spiral gap in the shaft is just closed, and the 'Merge' catches.

You are free to edit the profile at any time, to adjust the result, before applying the modifier.
You're basically done. Trimming the ends for good topology varies from case to case, but if this is for illustration, (presumably you can retouch the image) you should probably get away with a Boolean to a cube.
The bore is a cap-less cylinder of radius (r + tiny), with a Solidify modifier directed to the outside.

This example has kept the vertex count as low as possible, and assigned a Subdivision Surface modifier at the end to smooth the result.

I have not gotten this technical before, so I'm a bit nervous, but I'm going to set a day aside to try this, and then once it works: I'll consider my question formally answered. This seems vert helpful thank you. Once it was very helpful [in the future] I will hit the checkmark, I obviously need to apply it before I can absolutely know for sure

@user179283 No problem at all.. I wouldn't want approval of an answer that didn't work for you.. come back with a comment if you get stuck. I guess the most important thing to understand to start with is the difference between an object and its mesh. Leave the object's pivot point at the world origin at all times, moving its vertices in Edit mode, and you're on your way.

Just checking in. I have not died. Just very slow, sorry (I can literally watch the sun rise and set like Snake in that one Metal Gear game trailer, so when I say "slow", I just mean "unnaturally slothic". Not lazy, but it is a struggle. It's like every moment is a race against time, it's tiring sometimes)

@user179283  ..strangely reminiscent...:)

Not sure if I understand the problem correctly...
What about the screw modifier?

Oh I didn't know there was a screw modifier, that's very simple and very helpful thank you


text:
There something wrong with my trophy

I use UV Sphere to make thìs trophy, and I choose the smooth, in Blender, it is quite good and smooth.
But when I export to .model file, and import to the Pes 2017 game, it shows the edges.

So there could be few reasons for that. The first that the game engine does not smooth shade the same way as blender viewport engine. You can try of course making it high poly, or at least minimalizing the angles between faces. Also I would check if material/texture is applied correctly and faces are not overlapping - that can cause the artefacts at angles as well.


text:
Need tight corner, but end up getting pinched geometry!
I'm looking to create the following surface with a tight radius corner, but the only way I know how to do that is to create loop cuts close to each other, which results in pinched geometry. Anyone know how to fix this? I've linked the file below.
Link To Blender File

Your file is locked so no-one can download it!

Thanks for letting me know! It's unlocked now!

I was able to solve the problem by copying the normal vectors of non-pinchy vertices and then pasting them to the pinchy vertices and flatten them out. I needed to do this separately for every problem vertex though. I don't know a way to do it all in one fell swoop. I tried to multi-select and paste, but it ended up breaking other normals by me trying to do too many at once.
Go into Edit Mode and select a vertex that has no pinch. Press Alt + n to bring up the Normals Menu, and then choose the Copy Vectors option. Now select a problem vertex. Go back to the same Normals menu and choose the Paste Vectors option. You may find that some trial and error is needed to ensure that you aren't making things worse, but in relatively short order, I had the smooth surface you see here.

There may be a more elegant solution. Anyway, hope this helps.

Really appreciate the response and the effort it took to construct and explain!!


text:
How do I model tight corners without getting pinched geometry?
Anyone know how to model a curved surface with tight, rounded corners without getting the pinching like I am in the images below?
Blender File Link To Examine

You probably need to add more topology, see the before and after, in Edit mode and in Object mode. Sometimes use Vertices > Smooth Vertices or right click > LoopTools > Relax in order to smooth the edge loops:


text:
Problems with Solidify
I'm looking to solidify this surface, however when I do the shading is strange. Autosmooth is already activated and my other solidified modifiers on other surfaces works as expected. Any ideas? Thanks in advance!
Blender File Here

Go into the Properties panel > Object Data > Geometry Data > and Clear Custom Split Normals Data, it will reset the split normals which I guess created the problem:

That did it, thanks!


text:
Pinching problem with Solidifier
I'm receiving this pinching problem when I add a solidifyy modifier to my surface. ANyone know why this is happening? The mesh is pretty simple.
Blender File Here

Quick answer: move your solidify modifier above your subdivision modifier, and give the soldify modifier an edge crease:

Bottom layer: your original.  Selected: my recommendation.  Top: Your object without any modifiers, but with a wireframe.
So the problem here isn't really with your solidify, but with your subdivision, and how it interacts with the shapes you've given it.  It's the subdivision that's pinching, and the solidify is only making that pinch much more apparent.  If you look at the problem area, you're going to see that it's getting screwed up by a quad that is almost degenerate (three verts lie on a line, ie a 180 degree corner), and the only thing making it not degenerate is that it's out of plane with the rest of the quad.  It looks like you're trying to force quad topology onto something without thinking about other characteristics of good topology, and you're paying the price for that.  (This is pretty normal in my experience; the first thing people learn about topology is "Quads!" before they can even say why, and it takes a while to learn anything else.)
What would good topo be for this?  Maybe something like this:

By changing the edge flow, I can maintain quad topology, without any degenerate quads, at the price of a nearly-planar 3-pole.  And we lose that pinch.

Solidifier above subdivision, and then edge creasing the edge worked beautifully, thank you!!


text:
How to repeat a generated texture like it was an image texture set to repeat
Hi everyone and thank you for taking the time to read this.
I'm wondering how I could make this repeat on the X location, so that it doesn't just clip out of existence when I change the X value, think of image texture repeat rather than clip.
Any advice would be incredibly welcome, node setup below :)

https://blender.stackexchange.com/questions/135437/how-to-make-tileable-procedural-noise-texture https://blender.stackexchange.com/questions/26692/how-do-i-create-repeating-patterns-with-cycles-procedural-textures/26703#26703

Hello and welcome. This question seems to have already been asked in various forms over time and already has a multiple answers, but you never acknowledged any of the existing posts. We are not sure if you aware of them but none of the described techniques fulfil your particular requisites, or you simply didn't do any research at all. Could you [edit] you post and clarify how your question differs from the suggested duplicates? Otherwise could you rephrase it to focus on a particular step you are stuck with?

An Image Texture node samples the texture in a normalized $0…1$ space on both $x$ and $y$ axes (also called UV), where $0$ means (the center of) the first pixel (first row or first column) and $1$ means last pixel (last row or last column).

Well actually the second coordinate ($y$ or $v$) should have $1$ at the top, but I won't redo the image now that I realized my mistake ♂
And so a question arises, if you try to sample a value higher than $1$ (or lower than $0$, i.e. a negative number) on either axis, what should happen?

Clip will just return (transparent) black
Extend will return nearest valid pixel (it will clamp the coordinate, so if it's greater than 1 it will be 1, if it's negative it will become 0)
Repeat will repeat the $0…1$ range:

I achieved the above line chart using Desmos with the simple formula $y=\operatorname{mod}\left(x,1\right)$, so that's what you want to do in Blender, except Blender's modulo is 1 lower for negative input (Looping Hue Animate), so use Wrap instead, or even better, Fraction, which is the same as Wrap with hard-coded $0…1$ range (discards the number to the left of the dot):

Beware of the problem that $1$ is mapped to $0$, and so you may want to check against this specific value and in such case output $1$ instead…

Hey there, thank you for the explanation here. Is there any way to get the tiles to be seamless as well with the provided method? The primary reason I'm asking is because this is meant to be a smoke like glow that will trace from the tip of a sword's blade, to its very top before dissipating (hence all the alphas, since it fades out.) because with the fraction solution, the tiles are seen and when I still change the X value of the texture coordinate, the effect still 'disappears' and doesn't repeat.

Making it seamless is quite a different question… How to make this animated texture seamless from a 2D perspective


text:
How can I make an object move along the vertex of another object?
I want to make an object move along the vertex of another object. I converted the object into a path and used a follow path, but I didn't move along the vertex and moved along the edge, so I couldn't get the movement I wanted. How can we make it move only along with the vertex?

This is what I want to make.

And This is something I've tried, but I don't want to.

Just ocurred to me, in case of a cube the length of the animation can probably be adjusted so that all frames happen to catch the sphere at the corners...

With animation nodes it is sooooo easy :)
Use this node setup:

With the B value you can vary your speed.
Result:

Note: The advantage of this solution is: Just add two other objects,
choose these two objects in the node tree and you are good to go. No
extra work. I appreciate the other solutions...but they are a lot of
work...

Nice! I never learned animation nodes, wondering if maybe it's time to do that...

@MarkusvonBroady: I just can say from my experience: it is just awesome. One of top 5 add-ons for Blender at all - in my opinion. I just know 5% of it (and 0.1% of Blender) but this is already blowing my mind!!!! Watch the Showreels for it...https://www.youtube.com/watch?v=UB8R_xPpaSc ...if you aren't falling in love with it...i cannot help you. Jacques is a fucking genius. And by the way...that guy is now co-developing geometry nodes...so, i think, there is a lot to come...

Give the object a shrinkwrap constraint.  Target object with the vertices you want to follow.  Set the shrinkwrap constraint to "nearest vertex".  Move and keyframe the object; you'll see that it snaps to the nearest vertex of the object you've designated.

It's a hacky solution, it relies on the order in which modifiers are evaluated, and it produces an error for the first vertex...
Name your Cube Main. ShiftD duplicate it. Hide Main and name the copy Instancer. Tab and in Edit Mode select everything if it's not selected already, X Delete, O Only Edges and Faces. Add a vertex group and assign all vertices to it. Tab in Object Mode add Build modifier, set its length to the number of vertices (8 for a cube) and set scene's frame end to the same number.
AltD to make a linked copy of the Instancer. Name the copy Mask and hide it. Select the Instancer again, set Build's modifier starting frame to 0. Add Vertex Weight Proximity modifier, set the vertex group, the target to Mask and Proximity Mode to Geometry. Add Mask modifier and set the vertex group.
In Object Properties > Instancing choose Vertices. Create a UV Sphere and parent it to the Instancer. Hide the Instancer and unhide Main. In the outliner, disable rendering of all currently hidden objects.

One corner is being missed... A workaround: select Instancer Tab for Edit Mode, AA to deselect all, CtrlRight Click to create a new vertex, menu Mesh > Sort Elements > Selected to put it in front, also increase the Build modifiers lengths by 1 (to 9 in case of the cube) and decrease their start by 1 (to -1 and 0).

Replacing with a more complex object is surprisingly easy: delete Main, insert the new object (I added Suzanne), select Instancer, in Object Data Properties switch the mesh to the new Main's mesh, make a single-user copy, remove edges and faces, add a vertex, move it in front, use statistics to count vertices, update the Build Modifiers length and scene.frame_end, change Mask's mesh to the same the Instancer uses. Done.

Man...you are just toooo intelligent. You missed the easy solutions :) +1 but i love hacky... ;)

The way I would do that is by giving a keyframe for each location by snapping the sphere to the cube vertices in the viewport.
Then on the Timeline from the animation menu selecting all the keyframes pressing T and setting the interpolation to Constant.
Also here is the blend file:


text:
How do I create an animation that moves along the vertex using an animation node?
Last time I asked how to make an animation that moves along the vertex, thankfully I learned how to use an animation node (How can I make an object move along the vertex of another object?),
But is there a way to make the animation below using the animation node?

Each time the camera rotates along the vertex, the light source moves
to the next vertex.
The camera repeats movement until the light
source reaches all the vertices.

I'm a beginner and I don't know how to make it.
Thanks in advance!

you can use this node setup to achieve your goal:

Basically it is the same as last time, just a bit more math.
Instead of moving 1 step per frame, i use the modulo so that it repeats it pattern. e.g.
frame modulo 2
1    1
2    0
3    1
4    0
5    1
6    0

frame modulo 3
    1    1
    2    2
    3    0
    4    1
    5    2
    6    0

so basically modulo repeats counting from 0 to modulo value - 1 if modulo is an integer.
By this i got that repeating (neverending pattern).
for the direction of the sun i just used a track to constraint, which tracks to an empty on 0,0,0. Same with the camera, which tracks to suzanne.

This is exactly what i wanted!!!! Thank you very much!

You are welcome


text:
How are these geometry nodes called in Blender 3.0? Or maybe you know a better way to achieve something like this (diamond on something)?
How are these geometry nodes called in Blender 3.0?

Or maybe you know a better way to achieve something like this (diamond on something)?

Check this tutorial. It descript Blender 3.0 geometry node. https://www.youtube.com/watch?v=4WAxMI1QJMQ

The Point Distribute node has been replaced by the Distribute Points on Faces node.
The Point Scale node has been replaced by the Set Point Radius node.
The Attribute Randomize node has been replaced with the White Noise Texture node.
The Point Instance node has been replaced with the Instance on Points node, and now allows you to set rotation and scale within the node.

Thank you. I got this partly working... One thing - rotation. Do you maybe know how to make items face (rotation) out of the model instead of facing one direction? It was made by default in 2.93 but in 3.0 I guess I have to set something in order to achieve this.
Nevermind; connected 'Distribute Points on Faces' rotation to 'Instance on Points' rotation and I think it's working.


text:
Single image texture paint doesn't export with texture
I'm trying to export my model with the texture I made in texture paint, but the exported models are always untextured. I don't think I've applied the texture properly, I'm still new to all of this. The texture isn't applied in object mode either. I've tried looking up the problem without any luck.

Your painting needs to be saved as an image in directory and also be part of your shader tree so that it will show up. Simply adding it as a color input to your diffuse shader will work.


text:
Shadding artifacts in transparency Cycles
I have an object which has a transparent bsdf applied on the surface. But there are these weird artifacts in the object. The topology is largely clear because I'm using simple Booleans and Bevels. How can I get rid of these?

try changing the blending method to alpha hashed

Hello and welcome! kindly share your blend file https://blend-exchange.com

Hey! Have a look at this answer :) https://blender.stackexchange.com/a/280681/130757

Hard to tell without seeing more of your project, but often booleans create n-gons which then cause shading problems. It also looks like there might be some z-fighting as well, but it's hard to tell from the image.


text:
Rescaling Mesh with Static Components
I'm trying to rescale a loop of rope without changing its diameter. That is, I want to increase the distance between the rings (some shown selected in this screenshot) ... but keep the rings themselves the same size.

Oh, and this is for a DAZ Studio morph, so I need to adjust the mesh without adding, deleting, or renaming any geometry. Is there a quick and easy way to do that, or will I need to select and move each ring in the loop?
Thanks for your help!
-- Problem Solved but not Question NOT Answered --
Clarification: I modeled this rope in Blender, using a cross section object and the Screw and Curve modifiers. I then applied those mods to get the mesh shown above and assigned Vertex Groups, which became bones when I rigged the figure in DAZ.
My rigging scheme for the loop uses seven bilateral bones: Base, Top, Top-Sides, Sides-Top, Sides, Sides-Bottom, Bottom-Sides, and Bottom. Imagine a pocket watch where the winding stem is the Base, the arc from 11:00-1:00 is the Top, the arcs from 10:00-11:00 and 1:00-2:00 are the Top-Sides, etc., down the loop to the arc from 5:00 to 7:00 at the Bottom.

I used bilateral bones -- rather than bones that start at one end and follow the loop down and back up to the other end -- so users won't have to precisely counter-rotate bones to realign the ends. It's easy to pose the loop, using each bone's Bend and Twist controls. But I thought I would need morphs to make the loop larger or smaller.
Problem Solved: As it turns out, I can make the loop larger or smaller, simply by using the bones' Scale sliders. That changes the diameter of the rope, but I can set limits on the Scale slider so the change in rope diameter isn't noticeable. So I don't need morphs to change the size of the loop.
Question NOT Answered: But that doesn't answer my question of how to expand the distance between parts of a mesh without changing the parts' size -- in this case, the rings that form the rope -- and without adding or deleting any geometry.
That italicized part is crucial, because a DAZ morph works by comparing the position changes of each vertex in the original and morphed meshes. It's not enough that the morphed mesh has the same number vertices, connected in the same ways. The vertices must also be in the same sequence in the underlying file.
For example, you can't use the Mesh>Symmetrize function while making a morph, as that deletes half of the model and replaces it with a mirror image of the other half. That changes the sequence of vertices in the underlying file, so DAZ's Morph Loader won't recognize the new mesh as a morph of the original.
@MrZak suggested a Curve modifier to deform the mesh. But I think that works like the Symmetrize function: applying the modifier deletes the original mesh and replaces it with the deformed mesh.
So ... does anyone know if applying a Curve modifier deletes-and-replaces the mesh?
If it does, I can't use it to make morphs, because the order of vertices in the obj file won't match the original.
But if it doesn't, it would be ideal for problems like this. I have the original curves that I used to create the model. I could copy the original curve, use it in a Curve or Deform mod on the mesh, adjust the control points, apply the mod ... and export the morphed mesh.

You could try to create a curve (e.g. select edgeloop from the rope, duplicate, separate and convert to curve), add Curve modifier to the rope and adjust the curve to get the desired shape. Tweaking Curve modifier can be tedious though.

Hi @MrZak ... Once again, this is for a DAZ morph, for which the workflow is: (1) import the mesh obj, (2) move vertices, edges, and/or faces, and (3) export the mesh obj. I can't add, duplicate, delete, or rename any vertices, edges, or faces ... or DAZ will not recognize the imported mesh as a morph of the previously exported mesh.

I didn't suggest directly editing mesh data for the rope.. The only mention of duplicating was for creating curve which was supposed to be used as a target for modifier; the rope itself should not be touched. Curve modifer is of Deform modifiers which doesn't create any new geometry.

Thanks @MrZak. Please see my clarification at the bottom of the original question.

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


text:
How can I import an addon into a Blender script?
I want to import an addon into a Blender script
Is this possible, are there any tutorials about it?

Something like from io_scene_3ds.import_3ds import load_3ds to use load_3ds(filepath, context, IMPORT_CONSTRAIN_BOUNDS=10.0, IMAGE_SEARCH=True, APPLY_MATRIX=True, global_matrix=None) code from the import 3ds addon? or do you want to enable the addon in a script?

i would like to enable to addon in a script @batFINGER

There are addon utilities available in 2.77/scripts/modules/addon_utils.py which you can import into your script.
Here is an overkill example, lists all addons and then tries to enable addons named ['mesh_looptools','mocap_madness','goose']
import bpy
from addon_utils import check, paths, enable

def get_all_addons(display=False):
    """
    Prints the addon state based on the user preferences.
    """
    import sys
    paths_list = paths()
    addon_list = []
    for path in paths_list:
        bpy.utils._sys_path_ensure(path)
        for mod_name, mod_path in bpy.path.module_names(path):
            is_enabled, is_loaded = check(mod_name)
            addon_list.append(mod_name)
            if display:  #for example
                print("%s default:%s loaded:%s " % (mod_name, is_enabled, is_loaded))
    return(addon_list)
#print all the addons and show if enabled and default
addons = get_all_addons(True)
#enable dependencies
addon_dependencies = ['mesh_looptools','MocapMadness','goose']
for addon in addon_dependencies:
    if addon in addons:
        is_enabled, is_loaded = check(addon)
        if not is_enabled:
            print("%s enabled" % addon)
            enable(addon)
    else:
        print("Error Dependency %s missing" % addon)

Answer from https://blenderartists.org/forum/showthread.php?234219-Check-if-Add-On-is-enabled-using-Python&p=1970462&viewfull=1#post1970462
Mainly only need
    is_enabled, is_loaded = check(addon)
    if not is_enabled:
        print("%s enabled" % addon)
        enable(addon)

okay, so would i have to change addon to what the addon is called

Yes,  like "mesh_looptools" for Mesh Loop Tools

how would i use the addon after it was enabled

Depends on the addon.  Addon foo_bar may register an operator "foo_bar" which you would call using  bpy.ops.foo.bar()

What im wanting to do is open a 3d view addon from python, ho would i do that

@batFINGER I'm trying to download the latest mocap_madness addon. Could you please share a link of the addon. I found this https://github.com/batFINGER/batFINGER-blender-addons/tree/master/mocap_madness and downloaded it then compressed it as zip file then installed it, but I can't find it in the addons list.

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


text:
How to invert 'INVOKE_DEFAULT' transforms behaviour in blender Python
I've made an Addon that allows Users to handle Uvs directly from the 3D viewport by overriding the context.
Everything works well except thaht when you run default scale, rotate or move everything seems to be inverted, wich is a normal behaviour because when you increase the scale of a face it decreases the size of the texture projected on it.
Same thing for moving: if you move the face to the right, texture moves to the left and so one.
So here is my request:
is there any means to tell Blender:
When Running this modal:
if: bpy.ops.transform.resize('INVOKE_DEFAULT')
bpy.ops.transform.resize(invert_'INVOKE_DEFAULT')
thanks for your answer.
Bests

The INVOKE_DEFAULT parameter has nothing to do with the actual values that are processed by the operator, it only tells the operator whether or not it should present you with a popup panel before executing itself, or whether it should wait for your input before executing. As suggested you can try creating a new modal operator, plug in the mouse event and feed the opposite values to an override of the operator

thanks for your feedback, i wanted to know if there was a mean to simply invert  move, scale and rotate without recoding this three items. It seems there is no alternative way to do it. Bests


text:
How to make an arch oval at the edges
this is my first time on blender so please bear with me. After 6 hours of trying deformers, scaling, all the tutorials I could get my hand into I got no solution… I am lost in this and about to quit using blender, it's frustrating to try what seems to be a simple thing and get nowhere.

If someone could do a quick fix in it and show me how it's done would be great.
Thank you to all
Ilda
Blender .zip file

You shared your reference image, but what exactly is the arch oval - do you want to create a "U" shaped curve? What have you tried, perhaps a Bezier curve?

I'm not sure if this is what you mean, but if you adjust your background image a little it almost perfectly lines up with a circle.  Here I have a cylinder with 16 segments and it matches the shape of the headphones:

I don't know what tutorials you're using but I would suggest a few things to make it easier:

cut the headphones in half and use a mirror modifier.  Then you only need to model half of it. If you want asymmetry you can add it later!
if you're using a subdivision modifier anyway, try to use as few vertices/edges as possible. The more you have the harder it is to make changes.
if you really want to continue with what you have, I would create a set of circle meshes and snap the vertices to them. Here I created 3 'circle' meshes with 64 vertices and lined them up with the headphones.  You could snap your vertices to those edges - but that's a fair amount of work.

Hope this is helpful, or at least points you in the right direction.

If you want asymmetry you can add it later - that's a great tip especially for an object that is symmetrical by design but then small asymmetry kicks in due to imperfections in production or the way the object physically rests when taking a photo etc.


text:
Divide a irregular format mesh into two parts
I got a doubt on what is the best method for me to select the left part of this mesh to divide this into two since this is a half-circle mesh.
I am looking at the options and cannot believe this has to be done point by point to then cut the object into two. The reason for this is that I have two different textures to apply, one on the interior part of this "arch" and another on the outside.
Like you can see I didn't do it right this time and some got selected on the other side

How can I in a fast way select the left part divide it and close it and then the right and do the same process?
Thanks
Ilda

If you have suitable topology, and can Alt - select an edge-loop, then one of the many selection options open to you is:
Header Menu  > Select > Select Loops > Select Loop Inner-Region...

.. and you can decide which side is inner, and which is outer, if they're both the same size.

Very elegant. Now I want to know how Blender decides which side is bigger or inner on a cube :))

This is perhaps dumb question, how do I close the inner and the outer parts since they are hollow?

@JachymMichal Since I am very lazy, and there are only two choices, I haven't given that one a lot of thought :) Leave it to the theorists..

@RobinBetts The technique you've shown was spot on! I am just starting out and I can wait for tomorrow for sure :)

@IldaLontaria Believe it or not, the 'dumb' question has options. 1. Do you need to expose the internal faces? (Not necessary, just to give the outside different textures). 2 If so, do you want the seam between the 2 halves to show, or to magically disappear when they are joined, as shown here?

@RobinBetts, the image you've uploaded was what I was looking for to do, to maybe hide the seams there since the UV is chaotic right now like you can see here

Hiding the seams in the geometry is not the same as hiding the seams in UV, I can't tell from your picture exactly what you're after.. but I take it you do need to make the halves look solid when they are separated?

Thanks for the acceptance I haven't forgotten all about you, was hoping to know if you needed the separated halves to look solid.. :)


text:
Can't see cycles render devices
I can't see cycles render devices in system tab. I use 2.93.6.

Hello and welcome. Rather than take photos of your monitor post actual screenshots instead, see How to take a screenshot. Photos are harder to read, because we have to guess if we are looking at a external interference like reflections or smudges or Moiré patterns, hardware issues such as a malfunctioning display or connection, a software level bug or driver malfunction, or an or actual artifact or issue with the model itself.

Cycles is an addon that it’s possible to accidentally disable. Edit preferences. Go to addins and search for cycles. Make sure it’s enabled.

Thank you for your suggestion. I have always been active in cycles render but I can't see in the system tab. That makes me confused. I have a Radeon Pro Vega display card. Would it make this problem?


text:
How to make keyframe animation constant?
How can I make the animation of the water go on forever? I keyframed from 1-10 and now I want it to go at the same speed forever. I know it's possible but the tutorial for it was unlisted.

ShiftE > Linear Extrapolation or in the Dope Sheet window > header menu > Channel > Extrapolation Mode > Linear Extrapolation


text:
How to make the pentagon always face the ico sphere no matter where I put it?

So how can I make it so that no matter where I move that pentagon, or ico sphere, the pentagon is facing the sphere?

You can do this with a Track To Constraint on the pentagon.

Thanks a lot. But do you also know how to limit it's distance from the object too? Another constraint?

Turns out I'm an idiot and there's literally a limit distance constraint. Nvm then. Thanks a lot.


text:
Cant draw on character
I know the question has been asked many times, but I could not find a solution to my problem. I have created a character, but in Texture Paint Mode i cant draw on the image:

I added a UV map and created an image texture (BODY) and added it to the material. Still I can't draw. I also do not get any error messages. Here are two more images:

I would be happy if someone can help me with this. Thanks a lot.

Hello, make sure that you have not enabled a texture for your brush, if so, close it. If it's not the case, please pack your image and share your file: https://pasteall.org/blend/

Many many thanks. I had activated a texture on my brush. Thanks a lot!!!

Make sure that you have not enabled a texture for your brush, if so, close it:


text:
How do i export materials in Blender
I want to export materials from my object so that for example in unity I can open it, add lighting and that it actually changes according to the lighting. So basically i want to export my materials with the bumps, reflections and transparancy. I made it in cycles.

Yeah i read that but I don't understand what they mean since if you bake a texture all you get is just a flat image with no information  on transparancy, bumps and reflections


text:
My onion skin doesn't work
When I switch to the next frame the previous frame disappear, I tried to convert a General 3d preset into a 2d Animation to understand better how it works but I think that something's missing.
Also Idk how to change the color of the world in solid.
http://sendanywhe.re/RIKOF9WM here's my file

Hi. Please add some images to explain your post. While links to files can be good, we ideally want questions to be answerable without having to download anything, which means clear, well explained (and illustrated) question content.


text:
Why I can't cut there with the knife tool, I want to make a quad out of this n-gons
Why I can't cut there with the knife tool, I want to make a quad out of this n-gons

You question is not clear

You can Cut Trough by pressing Z while knifing

Allow the Cut tool to cut through to obscured faces, instead of only the visible ones.

or using Knife selection Shift-K (by default)

Activates the knife with another set of options so only selected faces are cut and Cut through is on by default.

Knife Tool

The issue seems to be because the face is obstructed by other faces.
Try to hide all other faces by pressing Shift+H,
This will hide all faces, now you should be able to cut it easily, I suggest you to turn on vertex select mode to do so as you will see the vertecies more easily.
To unhide it all you press alt+H


text:
Why I can't go into the drawing mode?
Why I can't go into the drawing mode to adjust my wonderful worm?


text:
Twisted UV (caracters to makes 15)

I dont know why the island is twisted it should be display as a rectangular in uv editor. I marked seam as in ss, the very top of my mesh then hit unwrap. And yes I already applied all transformations.

are you sure there are seams everywhere it's necessary to have a good unwrap? Maybe share your file? https://blend-exchange.giantcowfilms.com/

I agree with moonboots. If you set your seams, where your creases are atm, it should unwrap decently, then you can start getting rid of superflouus seams.

moonboots and Frederik are correct I think. Is there only a seam around the top? And if so, is it completely around the top or is there one side missing? And did you unwrap with just the top faces selected or did you select the complete mesh?

Use Cube Projection to UV unwrap, no seams.


text:
Is there a delta transform for collection?

I made this guy here, he is made of 29 individual objects, I want to draw over it with grease pencil, but I cant rotate him with the rest of the frames. Its nice that I can use the delta transform to change the puppet size to make a variety of siluets without animate them once more but that's useless if I cant move them around.

Collections are not objects with a presence in the 3D space. A better solution would have been to parent all these objects to another object, such as an empty object.

create the empty object with ⇧ ShiftA > Empty > Plain Axes
Select all your meshes, then ⇧ Shift LMB the empty and hit ⎈ CtrlP > Set Parent

You probably also want to make sure that empty is in the same collection by selecting it and pressing M to move it in the right collection.

Works marvelously. Thanks!

 RMB your collection in the outliner, Select Objects.
Now you can move, rotate, scale, etc. all the objects together.
Or:
If all the objects you want to move together are the only ones visible, hit A to select all and move, rotate, scale, etc.

and Im supposed to do that for the rest of the 40 frames?


text:
How to fill vertices that have been traced with color
I already know how to trace a background image. I just want to know how to fill the vertices with a color of my choice. I have looked around, and even tried selecting vertices and assigning a material color, but that doesn't work. There is not enough info on the internet on blender. Please help an ambitious kid.

What is rendering? Because vertices do not display, it is the faces you see. You want to be assigning materials to the faces, not the vertices.


text:
HDRI scaling problem
I'm starting to work with HDRI images for lighting in blender. And I have a file that's acting a bit weird. If I open a brand new file and setup an HDRI image, and turn on the world background in Display, it looks as below:

But in my working file, if I add the exact same HDRI image with the exact same node setup, I get the following

The second case it's very zoomed in (I think), not sure exactly what settings I have that are messed up in the second case.
If I look through the camera it seems fine.
Any help would be greatly appreciated.

Your are in orthographic projection view.
For obvious geometric reasons you cannot view a equirectangular images in orthographic views because there is no perspective to speak of, so you are looking in a single direction, viewing a theoretically infinitesimally small portion of the background image, yielding an apparently flat looking background.
Switch back to prespective view by pressing Numpad 5


text:
Pose vs Rest position are different
I'm using a manuel Bastioni model and trying to add a facial rig. When I weight paint the eye lids even though they are at 100% they don't follow the bone all the way. Only when I remove them from the head deform bone will they follow the eyelid bone.
The other problem which might be related is that pose and rest mode are different. I tried to find the IK constraint that might be causing this, but I can't... Any help would be appreciated. link to the blend file:
https://drive.google.com/file/d/13uL7Bso-9EbK9btwYCpp1Tp_xsf815J1/view?usp=sharing
thanks in advance

In the Properties panel > Data > Skeleton, display all the layers so that you can see all the bones, now you can check the influence of the different bones, for example the head bone has an influence on the lids so of course the lid bones won't influence them 100%.
Also, if the bones in Pose mode have a different position, it's because they are influenced by some constraints like Copy Rotation or IK. To get exactly the same position as in Edit mode it may need some small bone readjustments.

Thanks for the quick response. I'm a bit confused with the workflow then. When weight painting and you have multiple bones. Is it that vertices can belong to only one vertex group to be 100% influenced by a bone? For example in my case the head bone controls all the vertices in the head. What's the proper way to add eyelid control? Should I be removing these vertices from the head bone?
thanks

exactly, remove the lids from the head bone influence. You can use the Vertex Groups list: Select the lid vertex groups in your 3D scene, then in the Vertex Groups list select the vertex groups that has the name of the head bone, then click the Remove button... now the head bone has no more influence on this part of the mesh

thanks for the pointer. I also found that if I have "Auto Normalize" on when painting that it seems to automatically reduce the influence of the head bone on the painted vertices. What do you think of that approach?

I don't use this option so sorry, I can not help you on this matter  :/


text:
How to model one object's edge to match another object's curved edge
I am trying to put an engraving object onto the surface of ring so that the engraving matches up with the ring's border (Picture 1). So far I have been doing this manually and it's a very time-intensive process, not to mention imprecise (you can see my results on the bottom engraving, very bumpy).

I was wondering if there is a way to "flatten" and have the vertices of engraving object's edge match up with the vertices of the rings border on the y-coordinate (Picture 2). The engraving and the ring are currently two separate objects; I plan to join them after they are matched up appropriately.
Any help is very much appreciated, I'm a first-time Blender user and have been working on this engagement ring for about a month.

Thank you,
Grog

Try using a combination of snapping. For your purposes you will probably want to consider the vertex, face, and edge snapping options. How well it works will probably depend on your topology and stuff, but it's the only method I know could work for sure. There are modifiers that might work too, but I don't have a lot of experience with most modifiers, and they seem a little touchy sometimes.
snapping options http://images.akamai.steamusercontent.com/ugc/171536664510008542/B850D16F4CE2FDE3175B3335D995E9232771F92A/
The horseshoe icon turns snapping on or off. You can also hold ctrl to toggle it on after grabbing the vertex or object you are going to move. With the ctrl hotkey it will only be on while you are holding the hotkey.
If having the engravings clip into the ring doesn't matter, then you can probably do it all with vertex snapping. Position an engraving so the back vertices are all inside the ring where the engraving will be sitting.
Then toggle your vertex snapping on and grab the front vertices and start snapping them to the appropriate vertices on the outer edge of the ring. MAKE SURE that while doing this, you lock your transform to the right axis. Hitting "g" then the "x", "y", or "z" key will lock your transform to the corresponding axis. In your case you will probably be using the "x" or "y" lock.
So you will position the engraving, turn vertex (or maybe edge snapping) snapping on, grab a vertex from the front face of the engraving, lock it to the x or y axis, then move it until it snaps to the closest outside edge vertex of the ring. Then repeat until the engraving is following the curve of the ring.
If you don't want the back vertices of the engravings clipping through the ring, do the same as above, only instead of vertex snapping use face snapping and snap the back vertices to the faces of the ring.


text:
Normals looking bad when tapering

This is my problem. The normals look too sharpwhere the carrot gets thinner and it just destroys any maps i put on it. If I add a lot more geometry the problem smoothes itself out. But I can't afford that much geometry as this is meant for a mobile game. Does anyone know of another way to deal with this?
Thanks in advance!

Possibly related

You could try some Smooth Vertex to a couple of the edge loops.

Thanks! This does seem to help a lot but it doesn't quite fix the problem.


text:
What exactly does "Cancelling" mean?
Just out of curiosity, what exactly is going on behind the scenes when that "Cancelling" is shown on the top header?
Example: In the compositor, add a viewer node and a couple of nodes.
Preview the final result. When Blender is computing the nodes there is a bar on the top header with the completion percentage.
But if I decide that I want to stop the preview for some reason and disconnect the viewer node then the bar gets lighter and a "Cancelling" message appears next to it.
This "Cancelling" can take a looong time when working with heavy scenes.
What exactly does it mean?
Thank you!

Not sure but I think some tile or piece of information have probably been sent to the active computing device for processing, until that chunk is processed and the processor returns the digested information Blender can only wait. It probably has no way of telling it to stop mid process. Until information is returned and a "stop" signal can be sent and acknowledged  it is "cancelling"


text:
Blender video render output looks bad
When i render my blender animation in with Eevee the scene looks ugly in the video:

But in the render tab, where you can follow your rendering process, the video looks much better:

Why the qualitiy is bad in the video output, but not while the rendering process?

Not sure what your screenshots are highlighting, maybe some color banding?
The thing is, what you see in Blender is the raw render output as it is when delivered by the GPU or CPU. What you get in a video file is a different data that might have been compressed depending the output settings you have used.
Typically if you set a h264 encoding, with Blender's default encoding settings, then it's a compressed result with a medium-low image quality most of the time. Which results in heavy color banding, boxings, loss of color constrats, ...
If you want a better quality, you have to setup a better render output. Though the usual workflow is almost never to do the 3D rendering and video compressing at the same time, we usually render into lossles or uncompressed picture files (exr for later editing, or targa), and only then we assemble everything into a video. This workflow also makes it easier to recover in case of crash while rendering, as well as do frame-specific updates.

Thanks a lot. You helped me a lot. Now it works fine. Thanks!


text:
Copying/Pasting nodes between Object and World shader editor modes
Recently, I have been trying to work a lot more in the world nodes for shading, and cannot figure out how would I copy a large node group I have for an object into the world editor.
Any clues?

You can use Crtl+C and Crtl+V.
You can also make a Group out of your selection, with Ctrl+G, then reuse it with Add Node / Group / NameOfYourGroup.


text:
ascending step array in geometry nodes with instances decreasing every step
so, i've been trying to make a large temple structure akin to this
using geo nodes, i need a way to stack these modules up while decreasing their number as they go up.
This is what i've managed to make while experimenting with mesh lines, it is very redundant and i really want to know if there is a way to make this easier using the repeat zone, but i haven't been able to make it work.

Here is the graph i have for this setup right now

any help is really appreciated, thank you very much!

(Using Blender 4.2.3)
Overview
A Grid mesh primitive is used to instance blocs at points selected by their row and column indices in the YZ plane. This grid is rotated around the Y axis to offset blocs in X direction. The grid size is computed from the blocs bounding box.

The GeometryNodes modifier is attached to the object to instance. This object origin is set at the center of its bottom face. For the demonstration, 5 rows and 10 columns are assumed ; the angle controlling the X offset is set to 12 degrees.
Analysis

The mesh generated by the Grid node is in the XY plane ; by a XYZ rotation of (90°, 0°, 90°), it is aligned in the YZ plane. The index $n$ of grid points is displayed in sub-figure (a). $n$ can be decomposed in a row index $i$ and a column index $j$ such that $n=i+j \times R$, with $R$ the number of rows. $i$ and $j$ indices, starting at 0, are displayed in sub-figures (b) and (c). To simplify the selection of instancing points, new indices $r$ and $c$ are computed from $i$ and $j$. Instead of bottom left corner, $r$ and $c$ origin is set at the top mid-point ; and $c$ is symmetric. $r$ and $c$ indices are displayed in sub-figures (d) and (e). Instancing points are such that $r \ge c$.

Let $H$ be the distance in "vertical" direction between two grid points (displayed as magenta bullets), $h$ the height of the object to instance, and $\alpha$ the rotation angle around Y axis controlling the offset in X direction. $H$ is computed as:
$$
H = \frac{h}{\cos{\alpha}}
$$
GeometryNodes modifier

Dark pink nodes: Computation of row indices, $i$ and $r$.
Dark green nodes: Computation of column indices, $j$ and $c$.
Dark red nodes: Offset in X direction.
Dark blue nodes: Initial rotation and translation of the grid.
Resources
(Blender 4.2.3+)

wow, thanks man this will take some time for me to understand but thanks for your help.

Here is another approach, I could not finish in the morning, so I'm finishing and sending now. It's nothing genial, just sort of step by step assembling. Please, pay attention to the min/max node, it helps to get instance size from sampling min max corner points of the realized instance bounding boxes. Hope it helps in some way.

And here is update with the correct top.

PS: and setup when you need an even count:


text:
Blender deform object in one direction with smooth cutoff
So, simply put I have this somewhat decimated but still high-poly mesh that I wanted to deform at the bottom of it, I have tried the simple deform modifier with every setting and pivot but I'm not really getting the results, I want to keep the rest of the object above the line unchanged while tucking in the bottom part, I need to figure this out somehow.

Hello, maybe try with the Pose brush in Sculpt mode?

oh thanks, i'll try that. first i was thinking about using an armature to see if it works

yes you can also try with an armature


text:
Blender 2.9 import fbx python Operator bpy.ops.object.mode_set.poll() failed, context is incorrect
I'm a bpy beginner and I'm facing a error with python scripting on the line
bpy.ops.import_scene.fbx(filepath="humor.fbx")
I tried several method but still not working. Anything would be appreciated, thanks.
Here're 3 lines to reproduce this problem.
import bpy
bpy.ops.wm.open_mainfile(filepath="bear.blend")
bpy.ops.import_scene.fbx(filepath="humor.fbx")

And here're the error logs.
Error: Python: Traceback (most recent call last):
  File "/media/johnny/5CD86FA3D86F7A62/checkpoints/proHMR_vec/1122/bear.blend/Text", line 3, in <module>
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/modules/bpy/ops.py", line 132, in __call__
    ret = _op_call(self.idname_py(), None, kw)
RuntimeError: Error: Python: Traceback (most recent call last):
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/addons/io_scene_fbx/__init__.py", line 220, in execute
    return import_fbx.load(self, context, filepath=self.filepath, **keywords)
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/addons/io_scene_fbx/import_fbx.py", line 2849, in load
    _(); del _
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/addons/io_scene_fbx/import_fbx.py", line 2843, in _
    root_helper.build_hierarchy(fbx_tmpl, settings, scene, view_layer)
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/addons/io_scene_fbx/import_fbx.py", line 2278, in build_hierarchy
    child.build_hierarchy(fbx_tmpl, settings, scene, view_layer)
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/addons/io_scene_fbx/import_fbx.py", line 2238, in build_hierarchy
    bpy.ops.object.mode_set(mode='EDIT')
  File "/home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/modules/bpy/ops.py", line 132, in __call__
    ret = _op_call(self.idname_py(), None, kw)
RuntimeError: Operator bpy.ops.object.mode_set.poll() failed, context is incorrect

location: /home/johnny/Documents/blender-2.93.2-linux-x64/2.93/scripts/modules/bpy/ops.py:132
```

When you load a new file with open_mainfile the current file gets thrown out. That includes the context of the Python script you're running. So you usually shouldn't put code after an open_mainfile call.
You can run code after a file loads by using handlers instead. It would look like:
import bpy
from bpy.app.handlers import persistent

# @persistent tells Blender this function should remain
# across file loads
@persistent
def load_handler(dummy):
    bpy.ops.import_scene.fbx(filepath="humor.fbx")

    # Unregister ourselves
    bpy.app.handlers.load_post.remove(load_handler)

# Register load_handler to run after we load a file
bpy.app.handlers.load_post.append(load_handler)

bpy.ops.wm.open_mainfile(filepath="bear.blend")


text:
Help with armatures
I'm trying to rig a gate to be able to open, but I'm not sure how. I want to be able to rotate the top bar then have the others follow naturally with gravity. How would I do this?

I'm not sure this is exactly what you want but let's try:

Create your bones. Only bone 4 is parented to bone 1.
Give bones 2 & 3 a Copy Rotation constraint with bone 1 as Target.
Give bone 4 a Track To constraint with bone 3 as Target, Head/Tail > 1, Space > Pose Space <-> Pose Space.

When you rotate bone 1 the other ones should follow.


text:
Shadow panel missing from Render Properties
It's been a couple of days since I installed the latest version of Blender and in the Render Properties I cannot see the Shadow Panel in order to increase the shadows' quality.

I searched in the Preferences thinking it could have been disabled but I could not find it there either. Do you have any idea what's wrong?
Thank you in advance.

You are in Render Engine > Cycles , switch to Eevee

Yes, I figured it out later but I still want to use Cycles as my Render Engine. Is there any chance I can improve my shadows quality?

it depends what you mean, actually as far as I know, contrary to Eevee, it all depends to your light sources

I agree, unfortunately. Thank you a lot by the way!


text:
Cannot solve uneven beveling due to vertices (?)
Hello!
I'm kinda new to Blender so I apologize if the answer to my problem is obvious but I cannot figure out how to solve it by searching it on the internet.
So, I made a curvy surface that is made of many faces.

I extruded it, applied Rotation & Scale, Recalculated Normals Outside, and then tried to Bevel the corner edges.

The Bevel effect came out pretty uneven because of the vertices getting in its way. I tried dissolving the top edges and making a surface again by pressing F and then I tried to dissolve some of the top vertices as well. The the beveling was actually even, but I was losing my curvy geometry as a result and messing up the faces a lot.

Do you know if I can get rid of the vertices without losing the curvy geometry or get the Bevel tool to work without stopping at the vertices it finds along the way, like skipping them or beveling precisely using a different method? (besides Bevel Node and the Bevel Modifier)
I would appreciate very much every sort of help anyone can provide me with, because I'm struggling with this issue and always let it slide but it's bothering me a lot as I always use the Bevel tool in order to make smoother corners and edges.
Thank you very much in advance!

Couldn't you add a loop cut around the top and bottom of the object to kind of "square out" the corners?

as CtrlAltF2 says you have a lot of edge loops, you could bend your plane with much less if you use a Subdivision Surface modifier, and therefore easily create your bevel, unless you have any reason not to use Subsurf. What Christopher proposes is another solution

@moonboots The thing is that I duplicated this surface from another object and I want the curve to fit perfectly the curve of the primary object. I will actually try use the Subdivision Surface modifier as the last resort along with what CtrlAltF2 proposed. Thank you!

Assuming you want to bevel at a 45° angle:
First (with the Ctrl + B hotkey) you need to press C to enable clamp overlay which will make the bevel stop when a bound has been reached.

Then you want to select the mesh and merge by distance (F3 and search it) because the 2 edges will be slid up against each other so that the vertices are very close.
Afterwards you can select the 2 edges forming the bevel and have as many segments as needed.

If you want to make the bevel even bigger, then you can repeat this process again (minus making all the segments) by bevelling the 2 outer edges with 1 segment and with Clamp Overlay turned on. Every time the outer edge meets with another edge, use merge by distance to prevent 2 edges in one place.
You should also join vertices to make sure you don't have an Ngon like so

You can do it like this but the cleaner and more efficient option is just to use less edge loops like what CtrlAltF2 mentioned earlier.
Edit: Additional picture showing the maximum bevels I could do, not pretty though.

This method actually helped me making the bevel slightly bigger by passing by the first edge like in your image. I tried to make it even bigger by doing the same thing only in the outer edges but the curve of the beveling stays the same, it's just extending by adding more segments past the outer edges. The point is that the curve doesn't expand while moving past the outer edges. You can change only whatever you did after defining the first beveling curve. Nonetheless, it helped expand it a bit so thank you a lot!

Did you make sure to merge all vertices? Because the same thing happened to me, after the first bevel it wasn't changing. Only after merging vertices was I able to bevel more and more. Just make sure to keep it at 1 segment until you're satisfied with the size of the bevel.

I just put the picture of the maximum bevels I did, if that doesn't look right to you. The best way to get the kind of bevel you want would just be to make a rotated cylinder and fit it to your mesh. Because it seems like you want a very steep angle/bevel.


text:
how to attach a camera to a single particle
Question:
How do I get a camera to follow/move with a single particle?
My example:
I have created a large particle system and I would like to have the camera sit behind and follow a single particle as it floats around. If i could also have the camera be animatible (moving back and forth left and right as a secondary key framed animation that would be great).
research:
this question seems to have been asked before on here, but not answered. Also i found this https://blenderartists.org/t/particle-as-object-for-camera-track-to-constraint/640226
seems like a good idea but i don't know scripting and was not able to get it to work.

This script assigns first particle location to another object(In this case Empty). you can parent camera to this object for further manipulation.
import bpy

ob = bpy.context.scene.objects["Cube"]
target = bpy.context.scene.objects["Empty"]

def my_handler(scene, depsgraph):
    eval_ob = ob.evaluated_get(depsgraph)
    particle_system = eval_ob.particle_systems[0]
    target.location = particle_system.particles[0].location

bpy.app.handlers.frame_change_post.clear()
bpy.app.handlers.frame_change_post.append(my_handler)

If you are looking for alternate solution, i recommend Animation Nodes addon, which can do this more efficiently.

thank you, the script works. but the empty position does not seem to update during render time. it only updates it position properly when i click select a frame in the time line.(scrubbing with the arrow keys also seems to freeze its position) is there a way to fix this?

@FrotoLaggins I updated the script. Check this works in render

Of opinion that ob = scene.objects.get("Cube") should be in the handler.  The handler will run for its event on any scene. Running code above when one scene has context defines ob.  A new blank scene without ob linked will evaluate the object against the depsgraph of another scene, not entirely sure but may or may not be unwanted consequences.

Bake an animation.
Instead of having this "live" via drivers, a handler, etc, etc, can bake the animation of another object to match the path of chosen particle.
Could say this is somewhat similar to the particle systems baked cache in that If the particle system is changed, will need to run script again.
Get particle location using python
Using above, a script to add an empty animated to follow the path of particle 0 of context objects active particle system, across the particle systems frame range.

Result on default PS. Falling in Z, notice retains last value after lifetime.
import bpy

context = bpy.context

dg = context.evaluated_depsgraph_get()
scene = context.scene
ob = context.object.evaluated_get(dg)
ps = ob.particle_systems.active
p = ps.particles[0]
locs = []
bpy.ops.object.empty_add()
mt = context.object
f = ps.settings.frame_start
frame_step = 1
while f <= ps.settings.frame_end:
    scene.frame_set(f)
    mt.location = p.location
    mt.keyframe_insert("location", frame=f)
    f += frame_step

Instead of adding an empty could, look for an object in scene of known name, eg "Target" , clear its animation.
Replace
bpy.ops.object.empty_add()
mt = context.object

With
mt = scene.objects.get("Target")
mt.animation_data_clear()


text:
Area Lamp in Viewport in Blender Internal Engine
I want to ask is there any way to make area lamp visible in viewport in Blender Internal Engine(GLSL) in Blender 2.79.
I cannot use Blender 2.8 due to some hardware limitations that is why I use Blender 2.79 Internal and Game Engine for my animation stuff.
Summary__How to get area lamp in viewport in Blender Internal Engine GLSL.

Area lamps, as you may already know are not supported in BGE/UPBGE 0.2x, however we can still bake lighting such as area lamp lighting onto an image.
Cycles bake tutorial. The same can be done with Blender Render, just with different, compatible materials to that particular render engine.
https://www.youtube.com/watch?v=7pcjenAfFto


text:
Cannot get path from custom ID property made with RNA
bpy.context.active_pose_bone.path_from_id("RegisteredIDProperty")
is used to access Registered ID properties. What would I have to do to access a Custom ID property?
bpy.context.active_pose_bone.path_from_id("CustomIDProperty")
does not seem to work in this case, I can't seem to find people running into my issue either.
I plan on assigning this to a driver later on.
        obj = bpy.context.active_pose_bone

        if self.x_rotincui:

            obj.rotation_mode = 'XYZ'
            rna_idprop_ui_create(
                obj,
                "increments",
                default = 10,
                min=0, max=360,
                soft_min=None, soft_max=None,
                description="A",
                overridable=False,
                subtype=None,
                )
            Xpath = obj.path_from_id("increments")
```

Change Xpath with
Xpath = obj.path_from_id() + "[\"increment X\"]"


text:
run an operator based on a pre-existing button or operator
I want to remove a driver with a custom property on the active pose bone.
removeinc_x = bpy.ops.wm.properties_remove(data_path="active_pose_bone", property_name="increments_X")

if "FINISHED" in removeinc_x:
  bpy.context.active_pose_bone.driver_remove("rotation_euler", 0)

This is how I make sure it does happen^^
But how do I access an existing button without creating a new operator? I have no intentions on using real properties (due to anim player limitations) or a custom UI for now.

I'm not sure what you mean by "access an existing button".  Could you expand on that?

@MartyFouts The X button to remove a custom property as an example. Rather than creating a remove button inside of Python.

You can't change the behavior of an existing button because all buttons do is invoke operators.

Is it possible to invoke a script if an operator is invoked?

The operator is a script.  You would have to edit its source code to change its behavior. Blender's Python API isn't really designed for the kind of substitution you'd like.


text:
Blender does not recognize keymap context, even though all works fine when running some parts of the function separately
Traceback (most recent call last):
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\modules\bpy\utils\__init__.py", line 238, in register_module_call
    register()
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 210, in register
    Keymap_Register()
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 116, in Keymap_Register
    km = get_keymap_items_ctx('Blender', 'Node Editor')
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 18, in get_keymap_items_ctx
    return window_manager.keyconfigs[keymap_config].keymaps[keymap_context].keymap_items
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
KeyError: 'bpy_prop_collection[key]: key "Node Editor" not found'

this is the error I get for this script: https://github.com/HannahFantasia/HANNAH_Blender/blob/master/scripts/startup/HEAVYPOLY_HOTKEYS.py
import bpy
window_manager = bpy.context.window_manager
for keymap_name, keymap in window_manager.keyconfigs['Blender'].keymaps.items():
    print(f"Keymap: {keymap_name}")

here 'Node Editor' does show


text:
Blender startup script runs too early compared to keymap async
def Keymap_Register():
    window_manager = bpy.context.window_manager

    for i in window_manager.keyconfigs.active.keymaps:
        print(i)

# add global keys
    global_keys(add_json_context)

gives me something along the lines of:
################# and all the maps before
<bpy_struct, KeyMap("Font") at 0x000002737CD16288>
<bpy_struct, KeyMap("Object Non-modal") at 0x000002737CD19768>
<bpy_struct, KeyMap("3D View") at 0x000002737CD176C8>
Traceback (most recent call last):
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\modules\bpy\utils\__init__.py", line 238, in register_module_call
    register()
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 199, in register
    Keymap_Register()
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 188, in Keymap_Register
    global_keys(add_json_context)
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 163, in global_keys
    add_keymap_attrs(
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 50, in add_keymap_attrs
    keymap_items_context = get_keymap_items_ctx(keymap_config, keymap_context)
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Blender\stable\blender-4.2.3-lts+stable.0e22e4fcea03\4.2\scripts\startup\HEAVYPOLY_HOTKEYS.py", line 20, in get_keymap_items_ctx
    return window_manager.keyconfigs[keymap_config].keymaps[keymap_context].keymap_items
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
KeyError: 'bpy_prop_collection[key]: key "Graph Editor" not found'
<bpy_struct, KeyMap("Window") at 0x000002737CD141E8>
<bpy_struct, KeyMap("Screen") at 0x000002737CD149C8>
################# and all the other maps after (including Graph Editor)

which means that the keymaps are loaded async and that loading keymaps in startup does not seem to work as often as effectively as it misses the keymap configs that are not loaded yet.
What would be a solution to solve an issue like this? I tried:

def delayed_keymap_registration():
    Keymap_Register()
    return None  # Stops the timer

bpy.app.timers.register(delayed_keymap_registration, first_interval=2.0)

def register():
    Keymap_Register()

def unregister():
    Keymap_Register()

if __name__ == '__main__':
    register()

```


text:
How to add a modal keymap inside of a created keymap

import bpy

window_manager = bpy.context.window_manager

def get_keymap_items_ctx(keymap_config: str , keymap_context: str):
    return window_manager.keyconfigs[keymap_config].keymaps[keymap_context].keymap_items

def remove_keymap(keymap_items_context, idname):
    keymap_item = keymap_items_context.get(idname)
    if keymap_item:
        keymap_items_context.remove(keymap_item)
    else:
        print(f"KeyMapItem {idname} not found")

def add_keymap_attrs(keymap_items_context,
                     idname: str,
                     event_type: str,
                     value_key,
                     any=False,
                     shift=0,
                     ctrl=0,
                     alt=0,
                     oskey=0,
                     key_modifier='NONE',
                     direction='ANY',
                     repeat=False,
                     head=False,
                     modal_dict=None,  # New argument for modal keymap entries
                     **kwargs):

    # Create the main keymap item
    keymap_added = keymap_items_context.new(
        idname,
        event_type,
        value_key,
        any=any,
        shift=shift,
        ctrl=ctrl,
        alt=alt,
        oskey=oskey,
        key_modifier=key_modifier,
        direction=direction,
        repeat=repeat,
        head=head
    )

    # Set properties for the keymap item
    for prop_key, prop_value in kwargs.items():
        if hasattr(keymap_added.properties, prop_key):
            setattr(keymap_added.properties, prop_key, prop_value)

    return keymap_added

# Map Object Mode
km = get_keymap_items_ctx('Blender',  'Object Mode')
add_keymap_attrs(km, 'transform.translate', 'SPACE', 'PRESS')

This is a function I wrote to deal with user created keymaps, ontop of that, I would like it to change the modal keymaps

Through bpy I would like to dynamically change these kinds of shortcuts.
https://docs.blender.org/api/current/bpy.types.KeyMapItems.html#bpy.types.KeyMapItems.new_modal
This is something I assumed I had to use but it didn't seem to work.
Did anyone ever make a solution for this? Or could anyone perhaps help me with a solution/new function similar to add_keymap_attrs

Something approximately like this should work, or at least get you nearly there.
import bpy

C = bpy.context

wm = C.window_manager
kc = wm.keyconfigs['Blender']

# Transform modal hotkeys found under this keymap
km = kc.keymaps['Transform Modal Map']

# modal dict with:
# key = propvalue to change
# value = new letter to assign

modal_dict = {
    "AXIS_X": "X",
    "AXIS_Y": "Y",
    "AXIS_Z": "Z"
    }

for item in km.keymap_items:
    pv = item.propvalue
    try:
       new_letter = modal_dict[pv]
    except KeyError:
        continue
    item.type = new_letter

On a functional level this is absolutely fantastic, I did not know that Transform Modal Map was in it's own keymap, I thought it was the child of the keymap that you were in haha.
what do you usually do to figure out what the API allows you to fill in in the cases of things like 'AXIS_X' ? I assume some print(dir()) function?

Yeah, I think I just went through and did a for item in km.keymap_items: print(item.propvalue) to see the name of each possible propvalue available.