text:
Is there any way to create a boolean input to a ShaderNodeGroup in Blender 4.x using python?
I'm working now on a plugin that includes NodeGroups and I want to make a Boolean Socket. I remember that in the older versions it was possible to do this, but in the Interface system, I didn't really find a way because it limits to very specific types of input when creating a Socket.
So is there a way to do it?

In Blender 4.1 you can do
bpy.data.node_groups['NodeGroup'].interface.new_socket(
    name='My Socket',
    in_out='INPUT',
    socket_type='NodeSocketBool',
)

The easiest way to find out what enums you can pass for socket_type is to pass a wrong one and read the error message. Here you would get
TypeError: NodeTreeInterface.new_socket(): error with keyword argument "socket_type"
-  enum "X" not found in (
    'NodeSocketBool',
    'NodeSocketVector',
    'NodeSocketInt',
    'NodeSocketShader',
    'NodeSocketFloat',
    'NodeSocketColor'
)

Strange, What I get in the error show me just those ones:
TypeError: NodeTreeInterface.new_socket(): error with keyword argument "socket_type" -  enum "NodeSocketBool" not found in ('NodeSocketVector', 'NodeSocketShader', 'NodeSocketFloat', 'NodeSocketColor')

Oh, I see that it works in 4.1, but not 4.0.

Alright, I'll upgrade soon


text:
"attribute is read-only" error when trying to set a PointerProperty of a Shader Node
I'm working on a addon that makes use of custom node groups that has a Pointer property that holds a specific custom class type.
like that:
class BM_ShaderNode_mask_texture(bpy.types.ShaderNodeCustomGroup):
    ... [some other code]
    mask_texture: bpy.props.PointerProperty(name="mask texture", type=MaskTexture, update=update_node_tree)
    ... [the rest of the code]

This is the class type it's refers to: class MaskTexture (bpy.types.PropertyGroup):
I want to set this Proeprty from somewhere else, which should be simple, apparently, but when I try to do it, I get the following error:
AttributeError: bpy_struct: attribute "mask_texture" from "BM_ShaderNode_mask_texture" is read-only
It's weird, I haven't come across this anywhere else, I tried changing the Property type to Object, and it worked great, for some reason it only happens in this specific situation.
I would appreciate it if someone could help me.

This way is an example of how I do it, Valid for all shader nodes:
from bpy.props import PointerProperty, StringProperty, BoolProperty
from bpy.types import Node, PropertyGroup

class MyClass(PropertyGroup):

    prop_string: StringProperty()
    prop_bool: BoolProperty()
    # Etc...

bpy.types.Node.my_pointer_prop = PointerProperty(type=MyClass, options={'HIDDEN'},
                                           name="My Pointer")

Remember to register the class
Now you can test with:
mat = D.materials['My Mat']
node = mat.node_tree.nodes['Your Node']
node.my_pointer_prop.prop_string = "This is a string"

source: Stack Exchange

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

sort: votes


text:
Is there any way to make a procedural blur on the Shader Editor that isn't so noisy?
I am looking for a way to do a procedural blur in Shader Editor (not compositing), and the current way that I see that is mostly used is to use White Noise Texture or a simple noise texture and mix it with the vector for the texture, but this always leaves the texture noisy and very inconvenient for rendering or baking.
Is there a less noisy way to do it? maybe some add-on or custom nodes?

You could use a convolution, like at https://blendswap.com/blend/20964 .  That's old, but it may still work, and in any case demonstrates the technique.

That's works perfectly! Thank you!

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


text:
Help with understanding the color theory of Blender's color ramps
I attempted to create a straightforward material that utilizes a grayscale texture. The goal is to assign different materials for the values 0, 0.5, and 1 (black, gray, white) of the texture.
Here’s the object with the original texture applied:

To achieve this, I employed Color Ramps set to “Constant” mode. However, here come the problematic part:
The grayscale value of the gray part is 0.5 (0.5,0.5,0.5).
but on the color ramp it’s work just if I set the position of the white step to 0.21 or less instead 0f 0.5.

Any assistance in resolving this issue would be appreciated.

For your purpose you have the wrong number of handles (aka color stops)
You should use 4  instead of  3
HERE :

To add a new color stop (handle) you should press [+] button on the node :

On the GIF we can see the "GB" which tells us you set the image to "sRGB" color palette.

What it means is you tell Blender the image stores color data using sRGB color transformation.
In sRGB color transformation, colors are shifted in order to even out perceptual range of brightness. The idea is: if a human doesn't see much difference between a light of 100% strength, and a light of 99% strength, but sees much better a difference between a light of 1% strength and a light of 0.5% strength, let's arrange the possible light values to be denser on the dark part of the spectrum and sparser on the light part.
So if you have a linear gradient (meaning, as you travel through the gradient with constant velocity, the rate of numeric change of pixel data is constant regardless of where you are on the gradient) in sRGB space, it seems linear to the eye (replace "numeric change" with "brightness change"), but isn't actually linear when it comes to the energy of the light. Shading in Blender is physically based, so if an image isn't saved in "linear" color space (and you tell Blender it isn't), Blender will use a so-called gamma curve to convert it. Then your 50% grey becomes about 21% in linear space.
The simplest solution to your problem: set the color space to non-color:

Thank you so much, that works!


text:
Are there any good addon for remind you which axis is which?
After I click  G, I frequently need to think about whether the direction I want to move is x or y or z. I also disable the object move gizmo since I find it sometimes gets into my way of selecting adjacent stuff.
Are there any good addons to show you the current default X,Y,Z axis next to your selection, but are not move controllers that you can accidentally click on?

You could just enable these Axis from the Viewport Overlays:

They should be on by default, strange why you don't see them. As you can see, these are not gizmos. If you even don't want these, just press the axis key on your keyboard, for example, X, Y, and Z for moving on each of their separate axes. You could also press Shift + the respective key of axes to move on 2 axes except for the one you pressed the key on.
You can change your axes to local from here or just double press the respective key on your keyboard for that:

I want the axis location to change as I change my selection in the edit mode though. Also I want this to change as the transformation orientation changes. E.g. global, local, normal, etc.

@RuiLiu Check my edit, and also, it works in both edit and object mode, both.

Those axis are always global but I want to show local or other orientation as well. Also when you are working on a local part of the model, this is not always visible easily like the move gizmos.

@RuiLiu Check my edits. As for convenience well... What can I say ;)

That's not what I want. However, I have found out I can click middle mouse button while in g/r/s mode to quickly check which axis you want to constraint to. In case anyone need this.

@RuiLiu Yes, that option is available too, but you said "without clicking" so next time kindly frame your question more accurately :) At least you got it.

Go to the top, then click where it says Global, then select Normal.

Um... Isn't that already mentioned in the screenshot of the previous answer? Thanks ;)


text:
Looking for a good way of texturing a keyboard keycaps
Is there any good and efficient way of texturing a mechanical keyboard keycaps? I made a mesh, but now I need to texture it, and I faced two problems I am not sure how to solve.

I have more than 60 keycaps, and every keycap has its symbol or text. Is there any way of texturing it fast and precise? Maybe not fast, but precise.
I'm modeling those keycaps for RGB mechanical keyboard (Keychron K2 v2) and I need to make material for my letters and symbols to be translucent.

Can I do it by tweaking texture nodes, or do I need to mess with my mesh (add vertices for the letters&emboss it)?

Try to find a black and white keyboard map that suits you, use it as a reference to model your keyboard:

In your image remove everything except the letters themselves, choose the top orthographic view and unwrap your mesh with the Project from View option, move the UVs until they fit (here a simplified version):

Now you can use the image as a mask (as a factor in a Mix Shader for example) to create a separation between the basic plastic material and the letters material:

You can use a blurred version of your image and a Bump node in order to create a bit of fake relief around the letters:

This solved my problem, perfect. Thank you!


text:
Help setting up a remote render farm for my projects
I’m setting off in two weeks to Europe and possibly many parts of the world travelling and doing my own blender work as well as client work to fund my lifestyle. I’m traveling with a high spec laptop and I also have a high spec desktop at home that I want to set up as a personal render farm for animation projects. I understand there are plugins that will enable me to do this, I’ve been trying out Crowdrender for the last few hours, but as far as I’m aware that needs the master computer to be connected to the network until the rendering is finished. This brings me to my two main keys as why this has been tricky to find an answer to.
I want to set a project to render from my laptop sharing the .blend and all the packed information with the desktop back at home, turn the laptop off, and have that rendering while the laptop is powered off and in my bag. I can then come to it hours later and develop, send to client ect.
I wont be connected to WiFi all the time so I want the render farm to still function as normal while using a hotspot from my phone to give my laptop internet to then upload, render and receive files as normal.
Unfortunately I am awfulwhen it comes to less computer surface knowledge stuff like this. I don’t know the first place to turn or the first thing to do!
Any and all help and/or pointers in the right direction would be greatly very greatly appreciated. It would be a nightmare traveling around - having to stop around a hotel / hostel room regularly just to twiddle my thumbs for 12 hours while it renders to then get it back, make changes, do the same thing again until the project is finished. I have a very capable PC sitting at home collecting dust.
Here’s some more information that might be useful:
Desktop specs: Windows 10 RTX 3070 similar tiered everything else
Laptop specs: Windows 10 RTX 3080ti mobile similar tiered everything else


text:
Where are all the options?
I am trying to make liquid and I need to go to inflow on fluid but it doesn't show. I only have four options to choose from and I should have more. I have searched everywhere and can't find the answer to this question.
This is what I have

This is what I need

In the latest blender releases, you first select flow and then you will get a lot of settings, which can decide if you want liquid or smoke or things like inflow, outflow, and geometry.

If you choose Flow, you can immediately below that choose Flow Behaviour under Settings, there you have Inflow as an option.


text:
Is there a way to create custom Node types or Nodes Categories using Python?
I want to create custom Nodes for my plugin, and I've found a few places on the web that say it can't be done, and a few places I've seen people say yes, but haven't explained how.
So what is the truth, is it possible or not? And if so, how easy is it to do it? Any examples?

Blender analyzes a node tree by starting with the output and checking what is connected to it. For each connected node, it looks up the node's type, and reads from a mapping (hard-coded in Blender source) what function is assigned to each node. Then it calls those functions, implemented in the Blender source, and use the values returned by these functions to obtain the end-result. Obviously, each of those nodes may also be connected to more nodes, and these will be called recursively.
Also, in case of a shader the "end-result" is simply a shader code, that is sent to the GPU, and the end-end-result is the actual rendered image or viewport.
So there it is, Blender source, written in C++. If you add a custom group, that's just another node implemented in C++ source, which simply recursively does the entire process, starting at the group's output.
So what are custom nodes? You can define a node, with some custom looks, and custom behaviors. The node can dance Macarena inside the node tree, it may automatically reconnect links connected to it, it can even change things outside of the node tree, for example you could have a node with a dropbox, in which you change the render engine setting.
What you can't do, is write code that is injected inside the C++ code responsible for executing the node tree. This is because the C++ source at no point has a function that reads some kind of a string input with a path to a .py file, to then execute a Python interpreter process, sending some data to it and receiving the processed data. It's just not implemented currently. So you can't, in your Python code access data passed through links, be it reading from input sockets or writing to output sockets. You can, from Python, check what is the other end of the link, and then, in case of going left, if there's a constant value (e.g. an "Integer" node), you can just read the default_value of that socket. When going right, you can "behave as" (extend a class) a standard node, and set own default_value to some value. Just keep in mind it will be a single value, so e.g. a single color for the entire render. Of course, instead, you could "Behave as" a custom group, and insert inside e.g. $32×32 = 1024$ Value nodes, and a similar number of Mix nodes, to output a different value for each pixel of a very small render. Or you could be smarter and generate, inside your code, a texture, and then just "behave" like an Image Texture, using this texture.
So there are ways, but you need to be creative. It's hard then, to say something is impossible. After all, you could dynamically modify the memory contents, to alter the machine code of Blender and inject additional code containing the machine code for your custom node, as if you have modified Blender source. But I don't think anyone has done that, and I'm certainly not up for writing a tutorial on how to do this...
One more consideration is: when does your Python code run? In case of a shader it runs either before the shader is executed on the GPU - which means you cannot possibly read the color generated by previous nodes, because they weren't yet executed - or after - in which case it's too late to alter the rendered color, unless you want to render twice. For all intents and purposes it's the same for geonodes, your Python code will be run either (typically) before the C++ execution of the modifier, or after it. So you could hack a solution, in which the geometry nodes tree is split at each Python-node, the object is then evaluated with the leftmost fragment, your Python code then reads the evaluated data, changes the node tree to the next fragment with some input added to it, evaluates again... And so on. It would be tricky to obscure this process from the user as something that happens just behind the scenes, but not impossible.
Disclaimer: I'm not a Blender source contributor, I've read some of it but not much and not thoroughly and so I'd expect this answer to have some factual errors. I also intentionally committed quite some simplifications and omissions: as you can see the answer turned out rather long anyway. However, I think I fairly explained how this all works in principle.
Here's an example of a workaround:
Creating custom node types for geometry nodes


text:
Is there a way to change the active texture in texture paint mode using Python?
Is there a way to access the variable that is responsible for the active texture of a certain material for texture painting and change it?
It is better to use the image variable itself and not an index.
Apart from that, I would like to know if there is a way to set the color for all the tools in texture paint mode instead of just the active one or to prevent their use.

For the other aspects of your question, do you mean "tools in texture paint mode" are brushes? and what means "prevent their use"?

The active texture in texture paint is given by:
bpy.data.materials['Material'].paint_active_slot

It is modifiable.
And the active material for an object o is:
o.active_material

or its index:
o.active_material_index

You can of course combine the two:
o.active_material.paint_active_slot

PS:
Blender indicates all that hovering its menus:

And:

These tooltips are available if you activate "Python tooltips" in the preferences:

Complement to get the max possible image slot index, for a given material:
import bpy

# get the object
o = bpy.context.object

# get active mat (or the one you want)
mat = o.active_material

# catch nodes of type image texture
images = set(m.image for m in mat.node_tree.nodes if m.type == 'TEX_IMAGE' and m.image is not None)

# get the max index for this material
max_index = len(images) - 1

Thanks! It works! Is there a way to check what the index of an image is in the list of possible images of the material and make this image active accordingly?

I'm not sure of that: maybe it's the list of the images in the material nodes sequence. Iterate over the nodes, keep the one that have an image and complete the list. That should be the possible length (so possible index).

thank you! I found the way.
it's something like this: https://justpaste.it/1qkim


text:
There are random damaged (?) wrinkly spots on my sculpture. How do I fix this? (ps: it happened while I was sculpting. Smoothing didnt fix it)

There are random damaged (?) wrinkly spots on my sculpture's tip of nose and his bottom lip. How do I fix this? It happened while I was sculpting. No amoutn of amoothing fixed it sadly. Also any idea where I did wrong for these spots to happen? Thank you in advance!

What does it give if you use the dyntopo andits option to simplify the topology, then smooth?

Thanks ı tried remesh and smoothing worked this time so problem fixed


text:
The collection of the armeture and model has an error
When I make the collection of my rigged model invisible, only the armature goes invisible and the model is still visible. the collection has the icon of the armeture. But since the model is now in the collection, shouldn't the model also go invisible when the collection isn't invisible?
Did I do something wrong while parenting the armature and model?

you have 2 characters and 2 armature, and non of them are in a collection, have share the good file?

The "collection" with the armature symbol is not a collection, it is the armature. That the model is shown below in the hierarchy means that it is parented to the armature. Disabling the visibility is to be set individually in the Outliner or with all selected by pressing H in the 3D Viewport or you you have to Alt + click on Show In > Viewport/Renders under Object Properties > Visibility.


text:
spray option in the ocean modifier?
I've been trying for days to figure out the spray option in the ocean modifier... I'm pretty new to blender and there's like one little question here with a very short answer which I didn't understand... Any of you know how?

are you referring to this question? https://blender.stackexchange.com/questions/233048/how-to-use-spray-in-ocean-modifier

Yes that’s the one


text:
How to make a plane turn into a pyramid-like shape (with subtle edge rather than a very smooth edge) when using Proportional Editing
I am using Blender 4.1, and I have been following a tutorial regarding Proportional Editing. From the tutorial, it shows a subtle edge when it is transformed. But when I try the same thing, it only shows a very smooth version.
I want to know if there any setting to create a subtle edge when transforming a plane using proportional editing: Linear.

It is sometimes easy to explain why it doesn't work as expected if you just check which Blender version is used in a tutorial. The behaviour in the tutorial is from a much older version and only appearing if you used Connected Only (which you do not either in your screenshot) - but it was not intended behaviour. It was treated as a bug because it could lead to distortions and was removed, read more about it here: Proportional Editing: 'Connected Only' option can cause distortions depending on topology

Legend! Thank you so much for the info!


text:
What's the differences between posebone's vector and bone's vector?
I want to get a certain bone's head/tail coords in world space in pose mode. I've seen some answers about Bones.vector and PoseBone.vector.
When I set different frame of the armature, the PoseBone.vector is changing while Bone.vector never changes.
So I wonder the differences between them and how to get a bone's head/tail coords in world space.

i am not totally sure but i think the bone's vector is the one which you set in edit mode (so this is AFAIK the rest position) and the pose position is the current pose position, so maybe you can say the "animated" position? Hope that helps.

thanks i understand what you mean. But i still wonder how to get a bone's head/tail position in world space. In pose mode, different from Bone, PoseBone do not have head_local or tail_local to describe position in armature local coords, just only PoseBone.head and PoseBone.tail which is relative to the parent. Is there anything can provide some position information?

maybe this helps you? https://blender.stackexchange.com/questions/109815/how-can-i-move-a-posebone-to-a-specific-world-space-position

That's exactly what i want. Appreciate!


text:
Way to high Solve Error or it is not accurate with the refined trackers
Blend file
I tracked the thing and I do not think, that I tracked it so badly that the solve error should be 255.86. And before I wanted to change some things I had a Solve Error of about 1.03 but in a real scene I was not able to use it because it shook really bad.
I stumbled upon a post of refined tracks and mine are way of where they should be. I really do not know why, cause I think I didn't make that bad of a job.

before uploading your blend file, you should do this: file -> external data -> pack all into blend file

the footage is not visible, as its not included in the .blend file... you should first do what the previous comment said

I made a new question with the right link


text:
OBJ - FBX - From Z brush - Always crashing on import
I found out Maya LT cant export high res mesh's so got to find a new way to scale my sculpts for retopo, sadly right out of the gate every type of map from OBJ, to FBX. BIN just sends Blender unresponsive, gave it 20 minutes to see if it was just a loading error but nope.
Any ideas?

Hello, is it crashing or is it hanging for a really long time ? The imports / exports in blender are using the python API so they can be quite inefficent for very large files, exponentially so

Its going unresponsive on anything over 2GB then eventually crashes.
Manged to get a 1.5gb file in after awhile, but its super laggy? Im very lost haha

Might be you run out of RAM, check your task manager while you are importing to see if you don't hit the limit

Seems too sit around 63 - 67% with everything else closed, the smaller file i dont have much issues moving it till i want to CTRL+Z or change between objects, scaling working fine. Any chance them operations are tied to something else?


text:
Why isn't Spin tool or mesh that has been rotated accurate when zooming in
I was working with some complex geometry and after a lot of calculations some vertices should have perfectly connected. I tried to just merge them since they were supposed to be at the exact same spot but instead it didn't work.
This is where I decided to zoom in and realized that it wasn't actually at the same location, but the difference was so small that you wouldn't notice it unless you zoomed into max.
Ok so either my calculations are wrong or blender isn't as perfect as I thought it was.
I decided to recreate the problem in a simpler way that anyone can recreate.

Cursor or object origin at world center.
Extrude a single vertex from the center to any distance. In my case it was 50 meters.
Now press "." and change the pivot point depending on what you chose at step 1.
Zoom into the vertex that was extruded until you cant go any further.
Now select the vertex and duplicate it "Shift + d"
Rotating it should now pivot world center and 360° should equal to one circle so it should end up at the exact same spot as the original vertex right? well you wont notice it with such small rotation so try to increase it to multiple round trips like 1800° which is five circles around world origin. Now you should see that it's not in the same spot and the discrepancy increases with each full rotation added.

Is this intentional, bug or just some minor detail that nobody would even bother with.

You've just encountered one of the nightmares of doing maths on computers, and it's not a blender bug.
Blender uses floating point numbers internally, and they have finite precision.  This means that when you do complicated calculations like calculating movement through an angle, you only get an approximation of the final answer.
For the majority of uses, the approximations are close enough to the right answer that people don't notice, but you've found one of the rare cases where it does.
If you want to merge the two vertices, select the one that is in the right position, then select the other by holding shift when you left click on it.  Type M to get the merge menu and select "At First":
select the first vertex with left mouse:

select the second vertex with left mouse while holding shift:

notice that the first vertex is orange.  That means it's the 'active' vertex.
Now type M to bring up the merge menu

and select "At First"

Thanks, makes sense. I guess I need to quit my perfectionism to such absurd level...


text:
How do you edit the dimension of an edge?
How do you edit the dimension of an edge without effecting the rest of the object?  I have tried the properties tab in Object Mode but that only effects the overall dimensions.  For example, if I have an object with an appendage that I want to be longer changing the axis dimension effects more than the appendage.

hello you have some answers here: https://blender.stackexchange.com/questions/4890/how-to-set-a-specific-edge-length-numerically


text:
Blender UV Mapping - FBX models in arch viz
Relative newbie and I'm here having slogged through this issue for last 2 days.
I'm trying to come up with a workflow to automatically map (or at least semi-automate) FBX models from BIM programs and I'm getting a bit stuck.
I need to map a texture around the wall so it tiles continuously. I've tried unwrap, Smart Project unwrap and follow active quads all with marking and unmarking seams, but not seem to work.
Thanks

@Duarte Farrajota Ramos, The answers from the link that you used to close this question does not create a continuos seamless texture that wraps around the model. https://gyazo.com/3a74ff3880fc74c7966d4fc4b361c3e3  To achieve this it is necessary to UV unwrap in such a way that the walls unwrap in a single horizontal strip extending from U=0 to U=1 in the UV space then from U=0, Y=0 scale up as required using a whole number.  https://gyazo.com/3e564d39aba9df691b857cc53717d1a3

Not sure if the OP expects a continuous seamless texture, I'd expect real buildings to have some sort of discontinuity at most corners above a certain threshold. Maybe Chris Ford can clarify if the duplicate satisfies his needs or not

Quote from the question "I need to map a texture around the wall so it tiles continuously"

Thanks veru much @fingeredfrog - I have recreated the solution here and nearly got it to work. Can I ask, did you unrwap the wall normally or apply a cube or smart unwrap. I have the shader node setup as you have but the uvediting view isnt landscape like yours, is still stacked.

Unfortunately I don't have time this evening to give a full answer but will do tomorrow. Setting out the Uv's is not difficult at all IF you have a mesh with the correct geometry. From the image you posted yours is not ideal. While the model itself is a single mesh object all the walls appear to be made up of separate meshes. This means the model needs to be edited so that hidden faces are deleted and unconnected vertices of one wall section need to be merged to the appropriate vertices of the next section.

When this is done then UV unwrapping for example the outer wall, is just a matter of assigning one vertical edge of the outer walls a UV seam  and then isolating it from the rest of the model using seams along the horizontal edges.(top and bottom as required). This outer wall will then unwrap as a single long UV island which is scaled up to suit your seamless tileable texture. The result is the tileable texture will be repeated along the walls length without any visible seams. Example file   https://blend-exchange.com/b/rDrzY9oa

Hey @3fingeredfrog - before you get to this, I think I have found a way to do it based on your prompt above. Ive selected all external wall faces and used UV packmaster to unwrap and align in a row. I think thats worked for me so your advice above was spot on.
It will be slightly manual each time I import an FBX architectural model but its not a huge time suck as I will only need to do this for walls with visible texture joins.
Thankyou!

If it works for you then all is good. :)  And thanks for letting me know.

Standard workflow with marking seams and unwrapping is the way to go here. I would recommend trying again until you find a way to make it work. Watching some tutorials could be a good idea. Looking into various selection tools might also be a good idea. For example you can select linked flat faces on top and bottom

, or select coplanar( Shift  +  G  menu) then select boundary edge loop to select a lot of edges

that might be useful to select all at once in this case. Other loop selection tools are also helpful as well as selecting shortest path( Ctrl  + click on another element after selecting something). Mastering or getting used to selection functionality can speedup the process and make it a lot easier and faster. It's the best approach because it's more flexible than any automatic ways to map textures as you may want to map different kinds textures in different ways and this standard approach is really the most robust and flexible approach there is.
Keep in mind you can set hotkeys and add operators to your Quick Favourites menu( Q ). Just right click on something in the menus to do so:

Select Linked Flat faces used to be  Ctrl  +  Shift  +  Alt  +  F   by default quite a few versions ago and it may be useful to have it if you do that a lot.
In any case, just wanted to let you know it's definitely possible to make this workflow work for you with practice and it can become very flexible, fast, easy and intuitive workflow even when it's done manually.

Thanks @Martynas, thats really helpful. Appreciate you taking the time to answer. I'll have a play and test it out.


text:
Adding many animations from seperate armatures onto a resting armature
I've made some progress, I used this script from 2 same rigs, different poses, but animation acts weird when trying to merge all into 1 rig
    import bpy

# Get references to the 'Armature' and 'TPose' armatures
ARMATURE_SOURCE = bpy.data.objects['Armature']
ARMATURE_TARGET = bpy.context.active_object

# Initialize a count for bones with no equivalents
no_equivalent_count = 0

# Loop through all bones in 'ARMATURE_TARGET' armature
for bone in ARMATURE_TARGET.pose.bones:
    # Check if there's a bone with the same name in 'ARMATURE_SOURCE'
    if bone.name in ARMATURE_SOURCE.pose.bones:
        # Remove all constraints from the bone to avoid redundance and potential issues:
        for constraint in bone.constraints:
            bone.constraints.remove(constraint)

        # Create a Copy Transforms constraint and set the target bone
        constraint = bone.constraints.new(type='COPY_TRANSFORMS')
        constraint.target = ARMATURE_SOURCE
        constraint.subtarget = bone.name  # Use the same bone name as the target
        print(f"Constrained '{bone.name}' to its equivalent in '{ARMATURE_SOURCE.name}'.")
    else:
        # If no equivalent bone is found, print a message and increment the count
        print(f"No equivalent bone found for '{bone.name}' in '{ARMATURE_SOURCE.name}'.")
        no_equivalent_count += 1

# Print the count of bones with no equivalents
if no_equivalent_count <= 1:
    print(f"Number of bones with no equivalents: {no_equivalent_count}")

Long story short all of the animations have different resting poses so I need to iterate through the bones and adjust them.
That works for one animation, but I can't add any other ones, they just keep overwriting each other.
When I go to just do them one by one, I cant delete the animation rig because it messes up the rested armature.
I'm not too experienced in blender so if someone could give me advice on how they would approach this problem.
The dope sheet and action editor is confusing.


text:
Blender plugin importing UVs Wrong - Marvel Guardians of the Galaxy model import plugin (*.pc_prim)
I recently started import Marvel GotG models but whenever I import (Blender 2.9 - 3.3.5 or any other version) the model looks perfect but the UV is wrong. Only 1 UVMAP

bl_info = {
    "name": "Guardians of the Galaxy PC (*.pc_prim)",
    "description": "Import Guardians of the Galaxy Models",
    "author": "kboykboy, Irastris",
    "category": "Import",
    "version": (1, 0),
    "blender": (2, 90, 0),
}

from math import log2
from struct import unpack

import bpy
from bpy.props import BoolProperty
from bpy.types import Operator, Panel
from bpy_extras.io_utils import ImportHelper

def unpackShort(prim):
    return unpack("<H", prim.read(2))[0]

def unpackLong(prim):
    return unpack("<I", prim.read(4))[0]

def unpackLongLong(prim):
    return unpack("<Q", prim.read(8))[0]

def unpackFloat(prim):
    return unpack("<f", prim.read(4))[0]

class GOTG_OT_ImportModel(Operator, ImportHelper):
    bl_label = "Import PRIM"
    bl_idname = "gotg.import_model"

    import_lods: BoolProperty(name="Import LODs", description="Whether or not to import all LODs or only LOD 0.", default=False)

    def execute(self, context):
        with open(self.filepath, "rb") as prim:
            headerLength = 12
            prim.seek(92)
            meshCount = unpackLong(prim)

            for n in range(meshCount):
                loc = prim.tell()
                meshLOD = int(log2(unpackLong(prim)))
                meshNum = unpackLong(prim)

                if meshLOD > 0:
                    if not self.import_lods:
                        prim.seek(loc+296)
                        continue

                prim.seek(64, 1)
                uScale, vScale, uOffset, vOffset = [unpackFloat(prim) for _ in range(4)]
                vertnum = unpackShort(prim)
                prim.seek(6, 1)
                vertloc = unpackLongLong(prim) + headerLength + 4
                prim.seek(8, 1)
                faceloc = unpackLongLong(prim) + headerLength + 4
                facenum = int(unpackLong(prim) / 3)
                prim.seek(vertloc + 6)
                if unpackShort(prim) == 15360:
                    vformat = "half"
                    FVF = 8
                else:
                    vformat = "float"
                    FVF = 12
                prim.seek(faceloc)
                faces = []
                for n in range(facenum):
                    index1, index2, index3 = [unpackShort(prim) for _ in range(3)]
                    faces.append([index1, index2, index3])
                prim.seek(vertloc)
                verts = []
                if vformat == "float":
                    for n in range(vertnum):
                        x, y, z = [unpack("<f", prim.read(4))[0] for _ in range(3)]
                        prim.seek(FVF - 12, 1)
                        verts.append([x, y, z])
                if vformat == "half":
                    for n in range(vertnum):
                        x, y, z = [unpack("<e", prim.read(2))[0] for _ in range(3)]
                        prim.seek(FVF - 6, 1)
                        verts.append([x, y, z])
                prim.seek(vertnum * 24, 1)
                uvloc = prim.tell()
                uvs = []
                for n in range(len(verts)):
                    x, y = [unpack("<h", prim.read(2))[0] for _ in range(2)]
                    x = ((x / 32768.0) * uScale) + uOffset
                    y = ((y / 32768.0) * vScale) + vOffset
                    uvs.append([x, y])

                mesh = bpy.data.meshes.new(f"Mesh{meshNum}-LOD{meshLOD}")
                obj = bpy.data.objects.new(mesh.name, mesh)
                bpy.context.collection.objects.link(obj)
                mesh.from_pydata(verts, [], faces)
                me = obj.data
                if uvs != 0:
                    uvlayer = me.uv_layers.new()
                    me.uv_layers.active = uvlayer
                    num = 0
                    for face in me.polygons:
                        for vert_idx, loop_idx in zip(face.vertices, face.loop_indices):
                            uv = uvs[vert_idx]
                            uvlayer.data[loop_idx].uv = (uv[0], uv[1])
                            num = num + 1

                print(f"{obj.name} {uvloc}")

                prim.seek(loc+296)

        return{'FINISHED'}

classes = (
    GOTG_OT_ImportModel,
)

def menu_import_draw(self, context):
    self.layout.operator(GOTG_OT_ImportModel.bl_idname, text="Guardians of the Galaxy (.prim)")

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    bpy.types.TOPBAR_MT_file_import.append(menu_import_draw)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
    bpy.types.TOPBAR_MT_file_import.remove(menu_import_draw)

if __name__=="__main__":
    register()

Is this a script you wrote or is this an addon you got from a third party? If it's the former then are you asking for us to help debug your script? It would be helpful to see the UVs in whatever application you're importing it from as well. Nothing seems too off looking at the script to import the UVs, but we can't really tell much beyond that as you're working with some custom binary struct parser. It could be that the 3rd party app is messing up the UVs, could be the binary it's written in is off, could be your script. No way we can tell.


text:
Delete the bottom half of a geometry along the Z-axis using geometry nodes
I just can't figure it out why it does not delete half of a mesh. Trying to do so in geometry nodes.
I want to delete the bottom half of it along the Z-axis but I can't, it acts like it has only 6 faces, these subdivided faces aren't helping at all.
Normals of new faces do not seem correct, I don't know why. It's like there is only 3 states for faces: -1, 1, nearly 0.

If I do it with UV sphere it works

Why Normal? Why not Position?

I didn't actually know what are the normals, but now I understand

If you want to remove the lower half of the geometry, I would use the input node Position instead of the input node Normal:

The normals of the faces are definitely not the right way here, because they always point away from a face with a unit vector, and thus do not provide useful values for a position comparison on the Z-axis.

Thank you a lot, it helped


text:
How to create realistic grass displacement or grass areas
I am trying to recreate the scene shown in this video: https://youtu.be/LsdpKXD_2hM?t=99 (with timecode).
You can see, there are pathways and grass areas. I already have recreate the main scene, but I struggle with the vegetation part. I can't understand, how they did the grass displacement part as seen in the video? Did they placed them or is this just a texture with some displacement maps?
In the screenshot below I will provide you my current status of this scene:
I have used an RGB seperate node to create this ground map from an PNG image of the actual launchpad. But how can I now place the grass there? Should I use a displacement texture or some actuall grass clumps? Or is this displacement like in the video, some rendering trickery?
I am aiming for the same result like in the video, but I don't know what can I do to enhance my scene to make it more realistic?
I would appreciate some help from the community. :)
in this screenshot, you can see, that I already have the pathways created:

hello, you could use a b&w map to separate the grass from the road, and for the grass, as it's pretty far from the camera, just use a Noise Texture plugged into a ColorRamp with 2 greens?

but that will not have any displacement going on.. as you can see it in the video..

i don't see a lot of dispacement but you can fake displacement with a Noise Texture plugged into a Bump node?

Here is a try of material: Basically it is a mix (MixRGB in Multiply mode) between 2 Noise to create 2 levels of details, and a bit of Bump to create fake 3D relief:

You can use a b&w image as factor in a Mix Shader to create the road: Here to keep it simple I've just plugged a Diffuse in the other input but of course it also needs noise and bump:

B&W mask - where should I pluck it into? into the mixRGB node? or where?

I've edited my answer, I hope it helps @raytracin'_02

Thank you for your help!
It starts to look nice. But in the video, they have used probably actual grass clumps.. because you can see there much more details. Your attempt does give good results, but it looks flat.. I don't know if it can be improved :)
But thanks again, for your help.

in that case use a particle system?


text:
Python script not iterating through all objects in collections
I've written a script in order to create simplified versions of objects which I will later import into Unity to form a Level Of Detail group (LOD). The script is supposed to perform the following tasks for each object of each collection in the project:

Rename the source object by adding "_LOD0" to its current name.
Duplicate the source object and rename the copy to "..._LOD1".
Add and apply a Decimate modifier with a 0.1 ratio.
Duplicate the new object and rename it to "..._LOD2".
Add and apply a Decimate modifier with a 0.1 ratio.

It works fine but doesn't perform the aforementioned actions for every object in the collection.
Is there something I'm missing/doing wrong? Any help would be appreciated.
import bpy

C = bpy.context

for vl in C.scene.view_layers:
    for l in vl.layer_collection.children:
        l.exclude = False # Activate the collection
        for obj in l.collection.all_objects: # Loop through all the objects in the current collection
            # LOD0
            obj.select_set(True) # Select the object
            bpy.context.view_layer.objects.active = obj # Set the selected object as the active one
            obj.name = obj.name + "_LOD0" # Rename selected object
            name_list = list(obj.name) # Create a list of all the characters in obj.name
            # LOD1
            lod1_name = ''.join((name_list[:-1] + list('1')))
            bpy.ops.object.duplicate() # Duplicate the active object
            active_obj = bpy.context.active_object # The dublicate object will be active
            active_obj.name = lod1_name
            modifier = active_obj.modifiers.new(name = "Decimate",type = 'DECIMATE') # Add a decimate modifier
            modifier.ratio = 0.1 # float in [0, 1], default 1.0
            bpy.ops.object.modifier_apply(modifier = "Decimate") # Apply the modifier
            # LOD2
            lod2_name = ''.join((name_list[:-1] + list('2')))
            bpy.ops.object.duplicate() # Duplicate the active object
            active_obj = bpy.context.active_object # The dublicate object will be active
            active_obj.name = lod2_name
            modifier = active_obj.modifiers.new(name = "Decimate",type = 'DECIMATE') # Add a decimate modifier
            modifier.ratio = 0.1 # float in [0, 1], default 1.0
            bpy.ops.object.modifier_apply(modifier = "Decimate") # Apply the modifier
            active_obj.select_set(False) # Deselect object
        l.exclude = True # Deactivate the collection

Here is an example of the state of the objects before...

...and after the script has been run (Part.3 has not been duplicated).

Hello ! This looks like a classic programming gotcha. You're iterating over a list that you're modifying. Try using a copy with for obj in l.collection.all_objects[:]:

@Gorgious Well that was simple! Thank you!


text:
Problem with Baking Dynamic Paint with Ocean modifier
I've got problem with baking Dynamic paint which I use to make wave from Brush object and foam trail from it. And I use Ocean modifier

This is how it looks in viewport without baking, it should look similar in render

When I bake Ocean modifier foam spreads everywhere

But when I bake dynamic paint everything (waves from ocean modifier and foam trail) looks good, except it doesn't have waves from brush object (sphere)
Maybe, I making some dumb mistake, but I can`t find reason

press bake all dynamics and save file.

doesn`t solve problem

ok, then please provide blend file

https://yadi.sk/d/76QQTE_C4iPmxQ

bad link/permissions

First thoughts: apply transforms like scale where you can. Make sure the origin of the objects is in their geometric center (origin to geometry)


text:
Not showing full model in rendered view and camera view after a certain distance
In my view port full model is showing, but in camera view and also in render view the full view of model is not showing.

You likely need to adjust the clipping range of the camera.

You probably have two different settings for your view port clipping and your rendering camera clipping.

To check the one in your view port (in Blender 2.8+): press
N , select View and you have Clip Start and Clip
End.
To check the one used by your camera select the camera object, go to
green Object Data Properties and in the panel Lens.

By default, they do not have the same value


text:
Simulation using GPU
Is there a way to bake fluid simulations using my GPU instead of my CPU?
It takes a lot of time to bake fluid simulation using CPU. I am using Blender 4.1. I have a RTX 4060 and Ryzen 5 7600 CPU.

No, that's not how it's implemented in Blender. If it was, there would be an option to switch between CPU and GPU like there is for rendering or compositing.

Like I guessed. Thanks for answering though


text:
Rigify Error: Bone 'upper_arm.L': Input to rig type must be a chain of at least 3 bones

I got this error once I pressed Generate
RIGIFY ERROR: Bone 'upper_arm.L': Input to rig type must be a chain of at least 3 bones.

Incorrect armature for type 'limb_rigs'
I was hoping someone was willing to help with this rig by trouble shooting the rig setup
This is the rig file
https://www.mediafire.com/file/jzffr0uir3e5jy2/Kxley.blend/file
I'm pretty new to 3d modeling

The bone which is preventing the generation is the thumb one, named forearm.001, which has to be separated from the arm chain (Edit mode, select it, Alt P > Disconnect bone).
There are many others errors in the setup:

Scale of the Metarig has to be applied (Ctrl A)
animation data have to be deleted before generating
model should face you when in front view
knee should be pushed forward a bit
feet are wrongly placed
every newly created bone which is alone or first in a chain should have a rig type assigned in Pose mode

Maybe you'd better watch some more tutorials about Rigify use.


text:
Texture paint python script?
I am using MPFB to procedurally generate people. I then export a high res XYZ file of their head. Then, I want to place a texture paint on their forehead of a red arrow, and take a photo of it. Currently, I can generate the humans, export the xyz, and export the photo, but I cannot for the life of me figure out the texture paint. I keep getting context errors, and I can't find the source code to edit it.
Other things I have tried:

Creating a cloth plane and having gravity pull it onto the forehead: This doesn't work because it is colliding with the underlying model, not the procedurally generated one from MPFB

Placing the image above the head and down projecting every pixel: For some reason this is not pasting the color onto the head

I need proportions to be maintained in the final image, which is why I am not just applying this to every UV mapped skin option.
Relevant code that I have tried:
For down projecting:
    def move_image():
        """
        Moves the 'image' object to center it on the 'PaintArea' vertex group,
        accounting for all modifiers and transformations.
        Only updates X and Y coordinates, preserving Z height.
        """

    # Get the human and image objects
        human = bpy.data.objects['Human']
        img = bpy.data.objects['image']

    # Get the evaluated mesh data that includes all modifiers and deformations
        depsgraph = bpy.context.evaluated_depsgraph_get()
        eval_human = human.evaluated_get(depsgraph)
        mesh = eval_human.data

    # Get vertex group
        vertex_group = human.vertex_groups['PaintArea']

    # Get vertices in vertex group from evaluated mesh
        vertices = []

    for
     v
    in
     mesh.vertices:

    for
     g
    in
     v.groups:

    if
     g.group == vertex_group.index:

    # Transform vertex position to world space
                    world_pos = eval_human.matrix_world @ v.co
                    vertices.append(world_pos)

    if
     not vertices:
            print("No vertices found in PaintArea group")

    return

    # Calculate center of vertex group in world space
        center = Vector((0, 0, 0))

    for
     v
    in
     vertices:
            center += v
        center /= len(vertices)

    # Move image to center position, preserving original Z coordinate
        img.location.x = center.x
        img.location.y = center.y

    # Z coordinate remains unchanged

    def project_point_onto_mesh(
    point
    ,
    target_obj
    ,
    direction
    ):
        """
        Projects a point in a direction onto a target mesh.

        Args:
            point (Vector): Starting point for the projection
            target_obj: The target mesh object to project onto
            direction (Vector): Direction vector for the projection

        Returns:
            Vector or None: Hit location in world space, or None if no hit
        """
        ray_start =
    point
        ray_end =
    point
     +
    direction
     * 1000.0

        hit, location, normal, index, obj, matrix = bpy.context.scene.ray_cast(
            bpy.context.view_layer.depsgraph,
            ray_start,

    direction
        )

    return
     location

    def project_image_onto_mesh():
        """
        Projects an image onto a mesh and colors the projected points on the mesh.
        Projects straight downward (-Z) from the image object onto the Human mesh.
        """
        mesh_obj = bpy.data.objects['Human']
        img_obj = bpy.data.objects['image']
        image_position = img_obj.location
        image_width = img_obj.dimensions.x
        image_height = img_obj.dimensions.y
        paint_color = (1, 0, 0, 1)
    # Red color
        direction = Vector((0, 0, -1))

        print(f"Image position: {image_position}")
        print(f"Image dimensions: width={image_width}, height={image_height}")

    # Create or get vertex color layer

    if
     "Col" not in mesh_obj.data.vertex_colors:
            mesh_obj.data.vertex_colors.new(
    name
    ="Col")
        color_layer = mesh_obj.data.vertex_colors["Col"]

    # Get evaluated mesh
        depsgraph = bpy.context.evaluated_depsgraph_get()
        eval_mesh = mesh_obj.evaluated_get(depsgraph).data

        colored_vertices = set()

        width = bpy.data.images['arrow.png'].size[0]
        height = bpy.data.images['arrow.png'].size[1]

        print(f"Using resolution: {width}x{height}")

    # Calculate step sizes in world space
        step_x = image_width / width
        step_y = image_height / height

    # Project from each pixel

    for
     i
    in
     range(width):

    for
     j
    in
     range(height):

    # Convert pixel coordinates to world space
                x = image_position.x - image_width/2 + (i * step_x)
                y = image_position.y - image_height/2 + (j * step_y)
                point = Vector((x, y, image_position.z))

                hit_location = project_point_onto_mesh(point, mesh_obj, direction)

    if
     hit_location:

    # Find closest vertices to hit point

    for
     poly
    in
     eval_mesh.polygons:

    for
     loop_index
    in
     poly.loop_indices:
                            vertex_idx = eval_mesh.loops[loop_index].vertex_index

    if
     vertex_idx not in colored_vertices:
                                vertex = eval_mesh.vertices[vertex_idx]
                                vertex_world = mesh_obj.matrix_world @ vertex.co

    if
     (vertex_world - hit_location).length < step_x:
    # Use pixel size as radius
                                    color_layer.data[loop_index].color = paint_color
                                    colored_vertices.add(vertex_idx)

        print(f"Colored {len(colored_vertices)} vertices")

    # Update the viewport
        mesh_obj.data.update()

For texture painting (sorry it's commented out):

    # def apply_mark_with_world_space():
    #     # Get the active object
    #     obj = bpy.context.active_object
    #     if not obj:
    #         print("No active object")
    #         return

    #     # Store current mode and switch to texture paint
    #     original_mode = obj.mode
    #     bpy.ops.object.mode_set(mode='TEXTURE_PAINT')

    #     try:
    #         # Get or create a single brush instance
    #         brush_name = "ArrowStamp"
    #         if brush_name not in bpy.data.brushes:
    #             brush = bpy.data.brushes.new(name=brush_name, mode='TEXTURE_PAINT')
    #         else:
    #             brush = bpy.data.brushes[brush_name]

    #         # Set as active brush
    #         bpy.context.scene.tool_settings.image_paint.brush = brush
    #         bpy.context.scene.tool_settings.unified_paint_settings.size = 10

    #         # Configure brush settings
    #         brush.strength = 1.0
    #         brush.color = (1, 0, 0)  # Red color

    #         # Find a 3D View area and its region
    #         area = None
    #         region = None
    #         for a in bpy.context.screen.areas:
    #             if a.type == 'VIEW_3D':
    #                 area = a
    #                 region = a.regions[-1]  # Usually the last region is the 3D View
    #                 break

    #         if not area:
    #             # If no 3D View is found, temporarily change the current area
    #             original_area_type = bpy.context.area.type
    #             bpy.context.area.type = 'VIEW_3D'
    #             area = bpy.context.area
    #             region = area.regions[-1]

    #         # Create override context
    #         override = bpy.context.copy()
    #         override['area'] = area
    #         override['region'] = region
    #         override['active_object'] = obj

    #         # Cast rays and create stroke points
    #         start_point = Vector((0, 0, 1))
    #         end_point = Vector((0, 10, 1))
    #         num_points = 50

    #         stroke_points = []
    #         for t in range(num_points):
    #             alpha = t / (num_points - 1)
    #             point = start_point.lerp(end_point, alpha)

    #             hit, loc, norm, idx, hit_obj, matrix = bpy.context.scene.ray_cast(
    #                 bpy.context.view_layer.depsgraph,
    #                 point,
    #                 Vector((0, 0, -1))
    #             )

    #             if hit and hit_obj == obj:
    #                 stroke_points.append({
    #                     "name": "Stroke",
    #                     "mouse": (loc.x, loc.y),
    #                     "pen_flip": False,
    #                     "is_start": (t == 0),
    #                     "location": (loc.x, loc.y, loc.z),
    #                     "pressure": 1.0,
    #                     "time": t
    #                 })

    #         # Draw the stroke if we have points
    #         if stroke_points:
    #             bpy.ops.paint.image_paint(override, stroke=stroke_points)

    #     finally:
    #         # Restore original mode and area type
    #         bpy.ops.object.mode_set(mode=original_mode)
    #         if 'original_area_type' in locals():
    #             bpy.context.area.type = original_area_type

Why are you painting it instead of overlaying a texture with blend mode using alpha and flattening or baking it? It just seems easier to arrive at something with a compositor output with python than to try to force the program to texture paint with code that looks more like baking using raycasting. I am not solid enough of a programmer to understand all of this, but surely a composite would be an easier result.

A recent feature of MPFB is the concept of makeup and ink layers. You could use this to place a red arrow on the forehead. See the release notes at https://static.makehumancommunity.org/mpfb/releases/release_20b2.html or the specific docs at https://static.makehumancommunity.org/mpfb/docs/assets/makeup.html
This way you don't need to modify the underlying skin texture and can get away with less complexity than when trying to texture paint.
If you need to script this, you can take a look at the "mpfb.load_library_ink" operator, https://github.com/makehumancommunity/mpfb2/blob/master/src/mpfb/ui/assetlibrary/operators/loadlibraryink.py
I did not test, but you should be able to call this from a python script with something akin to
import bpy
bpy.ops.mpfb.load_library_ink(filepath="/path/to/an/ink_layer_json")


text:
Importing .OBJ with Selection Sets
I'm an experienced C4D & Redshift user. I'm trying to create some (product) glTF files, and it seems like Blender is substantially more capable, than Cinema or RS.
So I'm trying to learn Blender (only installed it this morning) well enough to bridge the "divide" between Cinema & GLB.
I've exported my model from Cinema, as an .FBX (including materials and selection tags).
Blender sees the textures, and even does a fair job of creating the initial node-shaders.
However, it doesn't seem to recognize the polygon selection tags. Pretty critical issue.
I have unique materials, associated with each selection tag in C4D.
Do those not automatically import into Blender, as vertex (or whatever the proper term) selections?

I'd have thought that was down to the export file format and I don't believe it's possible with either wavefront (.obj) or fbx files. This is the Blender manual section on the FBX format and the .obj format section which you mention in your question title is here.


text:
Liquid material shading problem
I am beginner with blender and I'm currently trying to create some liquid (coffee for example) inside a cup. The cup is not a problem, shading of the liquid is.
I've tried to follow few tutorials on Youtube and always end up getting the same 'bug'. When I set any volume properties (volume absorption, volume scatter), these weird pixelated rectangular shapes start appearing and they flicker a lot when you rotate the view.

I've just added new material to the liquid, set the transmission to 1 and roughness to 0.01.
Then I started playing with the volume absorption and after that it starts happening.
Additional details:

Rendering engine used is Eevee
The more density, the more it is flickering and overlaying other objects
It still appears if anything else besides the "liquid" itself is invisible
It appears both in view mode and in render result

Link to project: cup_filled.blend
I'll be glad for any advices since I wasn't able to google this specific problem.
Thank you.

Switch from Eevee render engine to Cycles, and also choose the Rendered viewport shading mode. Volumetrics don't work the same way in Eevee, by default it will be shaped by the cubic bounds of the object, while in Cycles it will really follow its shape.

Thank you for the info. So there is no way to work with volume using Eevee, is Cycles necessary?

Volumetrics doesn't work the same way in Eevee, you need to create an object > Volume, then give it a modifier Mesh to Volume with the liquid object as Object, then set the various parameters, but I'm not even sure you'll have a result as good as in Cycles

Selecting the right Viewport Shading was really helpful!


text:
Hue like texture with glow, outer and inner with cycles and node editor
How it is possible to create texture as on the provided image in Cycles and node editor ?
So it has this nice HUE glow inside around edges, almost x-ray-ish felling

and second nice glow outside which takes the color of the object in cycles

Tried different approaches and also tried to fake it in Compositing but nothing really worked.
Thank you for directing me to right direction.

I think you use a Fresnel node to emit color from the edges.  If you have picked the colors you want, use a Mix Shader to control the emission strength by the Factor input.

Notice in this example I've used no shader in the first input, because we want the color to come back pure black in the unmapped areas.

Thank you very much for your quick answer .... its something that I was looking for. One last question, how to achieve the gloving effect ? tried to use glow in Compositing but with no luck

Glare node set to fog glow should do it


text:
Change the custom property value by pressing a key
I have a rigid body car that I want to control by pressing the appropriate buttons (as in video games). I'm not very good at programming, and I don't have many ideas how to implement it. The car is controlled by drivers responsible for movement and steering, tied to custom properties respectively (they are shown in the picture). One of the ideas was to bind the keys to these settings in order to dynamically change them. For example, create a shortcut to the f7 button that executes a similar code "bpy.data.objects["Car"]["Acceleration"] += 1", and when you click f7, the car would start moving at a speed of 1. I tried it but I doubt that it's possible to execute such code in keybinding menu. Is it possible to implement something like this in a blender, or maybe there are better ideas how to create a car control with keys?(Do not offer to install unreal engine or something pls)

You can bind operators to keyboard hotkeys in Blender. So you will probably need to learn to code your own operators. You can see examples in the Text Editor's Templates -> Python menu:

Modal operators can keep running and changing stuff while in operation as well as react to input events, so you might be more interested in them. See the documantation.


text:
Subdivision surface and mesh
When I'm working with Subdivision surface, I can't get the mesh I want.
1img my initial version, 2img that's what I need.
I solve this problem with UV editor help, but it's long and annoying. In many tutorials the desired mesh appears automatically, but I don't know how to do it :(

what about just applying your subdivision modifier? but to be honest...i have no idea how you can solve this with the UV editor, because the mesh itself has nothing to do with UV editor....

what do you mean by "I solve this problem with UV editor help"?

Does this answer your question? How to select the cylinder object and not the outer reference surface?

@Chris
Thanks, this really helped! And do you know how to make it automatically applied when I am using a Subdivision surface?

go to edit mode -> right click -> subdivide -> in the panel (left bottom) set smooth to 1, choose as many cuts as you want


text:
Mesh problems Blender3d
Combined several objects with Shift + D, then I used solidify. When I'm switching to edit mode, the mesh is completely different from what I need.

First image - that's what I need

Second image - what I have*

I am a beginner and a lot of difficulties and incomprehensible things arise when I'm working with a mesh

Looks like you have some modifiers on your object.  Modifiers take the base mesh and apply a procedure to display a result in real-time, but the base object is actually just what you see in edit mode.

If you want the final geometry you need to apply the modifiers, this makes them 'real'

Apart from the other comments, Shift-D is to duplicate objects, not to join them! Ctrl-J joins selected objects.

It looks like you don't have the modifier viewable in edit mode. Click the button with the triangle in the modifier tab.


text:
UV is Mapping to Multiple Meshes
Can anybody explain why when I am in Object View, with Viewport Shading color set to "Textured", my UV map is correct for all the objects in my scene..
BUT when I switch over to LookDev Mode it maps the texture for one object over several objects? Attatched are pictures of Object Mode and LookDev as well as the blend file.
Any help would be appreciated, I'm at a loss here.

Blend file

I found the issue with the material assignment, but the blend file always needs the images packed into it so that they don't disappear.

Your bell, archway and other parts are all sharing the same material node tree which means the objects will all share the same pixels in the image texture. Separate them by pressing the '12' next to the material name'Stone arch' to create individual user materials that can be changed, or assign them new material altogether.


text:
Unusual Shapes on Baked Normal Map
So, I am basically trying to bake a normal map from my high poly mesh to low poly retopologized mesh. But I got some unusual shapes on my normal map. Some areas just work fine.
High Poly render sample here: . Low Poly render sample here: . Sample from normal map here: .

I solved my problem, it was actually about the displace modifier that I used for retopology process. When I just removed the modifier, the unusual shapes on the normal map are disapeared and I finally got a clear normal map.

Check your ray distance in the Selective to Active window of Cycles Bake. When in doubt, set it to 1 meter and it will capture all the data it needs. Good luck by the way!

Thank you for your suggestion but I've already tried to set its value between 0 and 1, and beyond but I got more awkward results. I am now also sending the image of colliding meshes in this link: https://imgur.com/6GhhUYD (Green one is low poly mesh and white one is the high poly mesh. Maybe my mistake is about the collision of these two meshes.)

There is actually a fairly large difference between the original high poly model and retopologized model. That would explain why you are seeing green on your normal maps, however the unusual shapes in the normal map are still strange.


text:
scale bone to negative didn't work?
I've tried looking almost everywhere , but no one seems to actually ask this question . I've created a 2D character in blender and rigged it .
My question is , why can't I scale non-root bones to negative values ?
Since im doing 2D , it's common to flip some body parts and stuff , but I've tried to flip non root bones (the head) with the child (hair and face) with   <-1> , but it snap back to positive scaling , the flipping works with the root bone but it seems it didn't work with individual child ? Then what workaround I could do to this problem ?

In 2D shouldn't scale of -1 be the same thing as rotation normal 180°? Assuming that the bone is in the same plane as the bodypart it controls.
Also, I'm not sure what you mean by none-root, I tried connected bones and their scales stays at 1, -1, 1 or -1,-1,-1.

Well , I hope this gif explain better , I mean the root bone is the main (first) parent , and the non root is the child , [bone] is the parent and [bone.001] is the child .


text:
How to smooth a mesh imported in .wrl format?
I imported a mesh in .WRL format representing molecules (I did it in PyMol).
This is what I got:

As you can see, there are big chunks of triangles everywhere. They are pretty big and it's not nice to see. Even putting the red material took no effect.
I also tried to export the mesh in .FBX format in Unreal Engine 4, but nothing changed.
Still not sure if it's a rendering configuration problem, or I have to find a way to smooth the mesh adding more polygons.
Is there a way to solve this? Thanks!

You need to delete the duplicated vertices. Go tab into Edit Mode then press A to select all vertices and hit M to merge vertices. Choose By Distance. Follow this video.
Then tab to return to Object Mode and while object is selected, right click then pick Shade Smooth.

I'm fairly new to Blender myself, so take what I say with a grain of salt, but in general, there's two ways to deal with this, depending on what you need the file for.
The easiest way is to just go object mode > select the object (for all objects, just press "A") > right click > shade smooth. That only makes it look more smooth though, it doesn't actually change anything about the file.
To actually change your mesh, use the subdivision surface modifier. In this video, both approaches are explained fairly well:
https://youtu.be/RaT-uG5wgUw?list=PLjEaoINr3zgEq0u2MzVgAaHEBt--xLB6U&t=584
PyMol itself is most likely using some type of modifier/effect when displaying Objects, while the base object has a rather low vertex count.


text:
New to blender. Trying to position textures correctly on a mesh
I have a mesh (a person) with different materials assigned to different parts. I have a png file of an eye iris. I have each eye on the model assigned with a different material so I can make sure I can position each one properly. Can someone help me figure out how to attach the file as a texture to the material and position it correctly on the eye? It keeps coming out out warped and twisted.

Did you check what UV map the texture is assigned to?

I tried several. I'm not sure what it's supposed to be set to.

A bit hard to know without a screenshot, but here are my 2 cents:
Assuming you have already correctly unwraped the eye UV map, you need to add an Image Texture node to your shader with the Texture Coordinate and Mapping nodes, like so:

On the Image Texture node, add your texture by clicking on the Open button.


text:
How to export animated character from Blender 2.8 as fbx to Unity?
I have a fully rigged and animated character with shape keys. I created it in 2.79, exported it using ASCII with the settings below and could use it in Unity without any problems.

However, after opening it in 2.8 and trying to export it, I realized that ASCII is no longer an option. I looked up tutorials on the binary export settings, but whatever I do the animations look weird in Unity. To be precise, the arm is deformed at the elbow (I have an IK setup and use baked animations).
I also find animations attached to the body when opening the character in Unity. These do not actually work (the character doesn't move) but I have no idea why are they there to begin with.
What export settings should I use in 2.8 to avoid these deformations? Or do I need to modify something on my model to be able to successfully export it from 2.8?

Does the IK bone have "Target" or "Pole Target"?

Yes, it has an elbow pole target.

The problem is the actions don't include contrains. If you disable the "All Action" and the "NLA Tracks" options in the exporter's animation tab probably the correct animation will be exported, but unfortunatelly you can export only one animation into one fbx file.

Hmm, I see. I thought that baking the animation means that it contains the constraints. Right now I have five animations. If I understand well, then I need to export five separated fbx files and import them all in unity to have access to all of the animations. But how can I choose which animation I want to export?
If there is really no easier method, then I guess I will be stuck with 2.79 since ASCII export is really quick and easy compared to that.

You will export what you see, so what you choose in the action editor. You can also put the animations in a raw in the NLA editor and export them as one animation and cut it into pieces in Unity.

Sorry for the late reply. I tried putting a baked animation into the action editor and export with "All Action" and "NLA Tracks" disabled, but in Unity I got no animation attached to the character. I tried tweaking the other export settings, but without luck. How should I set the other export settings in binary?

Sorry, I have no idea. But 2.79 worked pretty well so you can use that, or may be there is an addon or you can also import the blend file into Unity. Or you can use an fbx converter like Autodesk's fbx converter. https://www.autodesk.com/developer-network/platform-technologies/fbx-converter-archives Good luck!

Thank you! I'm currently using 2.79 for rigged models, but it would be great if I could eventually use 2.8.


text:
How to make texture painting easier?
I'm making game assets and characters in Blender. For easy shapes and simple coloring I use a painting software, then import the texture back into Blender. However, when I'm trying to handpaint models (for example fur patterns on cartoon animal characters etc.) I find it really dificult to do it nicely. I usually end up going back and forth between Blender and a painting software until it looks good enough. Am I simply bad at texture painting? Is there some kind of trick that would make it easier? Or should I try to switch to a 3d texture panting software like Armor Paint or Substance Painter?

For the moment Blender is much more limited than any painting software, but what difficulty do you meet exactly when painting in Blender? For example do you know all the brushes?

I know and use all of the brushes that can be found in the tool panel. If there are others, then I don't know about them. Well, the biggest difficulty is that I feel like I can't fully control my lines. Like I find it pretty easy to draw nice lines and shape on a 2D UV map, but mess it up when painting directly onto the 3D model. Ii's not that hard when the topology follows the exact shape I want to color because I can just fill that part, but when I paint over edges and seams I can only use freehand strokes.

maybe show some screenshots so that we can understand better?

I think this is too general a question to be possible to answer here - there are many video tutorials and specific posts on getting the most of blender texture paint out there, provided you can concentrate on specific aspects you are looking for. Many approaches exist, and you have to decide for yourself what add-ons you want to employ getting there - and also you need to get familiar with all that is available.

I mostly wanted to get to know whether I should learn how to texture paint with Blender more thoroughly (through more tutorials, add-ons, etc.) or would it be a waste of time and should I learn to use a texture painting software instead? I'm working on cartoon-ish characters as well as realistic assets, and I'd prefer to master one tool that I can use for all texture painting.


text:
How can I make a wall collapse from the top?
I have a wall made up of many cubes and I would like to make it collapse starting from the top, row by row, kind of like a domino effect. I am pretty new to Blender physics and just can't figure out how to do it. I played around with rigid body simulation and force field settings, but it always starts collapsing from the centre, or the top row collapses but the next row don't follow it, etc. Using rigid body constraits is an option I guess, but it would be very tedious to set that up with hundreds of cubes.

Just to understand the situation: in your animation what is causing the wall to collapse?

That is basically irrelevant, if an object is used to make it collapse I will not render that object anyway. I only need a video with a wall collapsing from its top. I tried to use a sphere like a wrecking ball, but that made the cubes fall too randomly.

Do you have any animation/video reference of what you are trying to achive? Can you show the animation your not satisfied with and point out the problematic aspects?


text:
Rigidbody - Change Dynamic simulation to animatic
I have an issue with the physics system (as you can see in the title haha).
The problem is : I have an animation where an object (dynamic) rebound on a surface (passive - animate). After a while, the surface drop down rapidly. At that exact moment, I want to activate the animation data of the object to go down with the surface.
I already tried to switch between both of the options (dynamic - animate) and animate the objectf with keyframes and no success.
I already tried to put a constraint (copy location) and no success...
Do you have any suggestions? thank you!

Detail -  Method 1 -
Switching from Dynamic to Animated doesn't come without it's problems.  There is a workaround but it's proven not overly stable in my own projects.  There are two suggestions here and the Blend file that demo's method 1.
I did this twice to make sure it wasn't going to act up...

Before setting the physics and at frame 1 a "Child-of" constraint is placed on the Monkey with the slab as it's target.
The "Set Inverse" button is clicked on and the constraint's Influence slider set to 0.  The 'Set Inverse' may have to be clicked on again AFTER the influence is adjusted.
The timeline is then taken to frame 76, which is well after the collision and where the Monkey's rolling motion is about done. At this frame the constraint's Influence slider is keyframed again with a value of 0.
One frame on from there (frame 77) the influence slider is keyframed yet again, this time to 1.
With that done and when played, the Monkey should fall and hit the slab, bounce around and when the slab also falls, follow it down.
It worked first time in my version (2.77a) and it may well be the order in which the constraint and physics are used that decide if it's going to act up or not.  Note, I did the 'Child-of' constraint first.
An advantage of this method is that the physics are still doing their thing whilst the slab is falling and even after it comes to a stop.  i.e. the Monkey is still rolling around.
-=============-
Method 2 -
A reliable alternative should things not go according to plan is to visually switch over to a duplicate monkey which would be parented to the slab outright from frame 1.
There'd be no hangups between the two constraints and the 2nd Monkey follows the slab down, unimpeded.
Detail -
Do the physics and once happy, at frame 77 when the Monkey's rolling has all but stopped, duplicate it and IMMEDIATELY clear the copy of physics and all animation.  Select it again and check the Dopesheet to make sure nothing remains.  Physics have a habit of hanging around and leaving a Dopesheet strip(s) even after it's supposed to have been cleared.  That strip has to be deleted!
With the 2nd Monkey now free of all constraint and therefore stable, we can visually switch over to that at frame 77 in the Outliner.  Their respective eye and camera icons can be keyframed to switch the original OFF and the duplicate ON.
Move back to frame 1 and do the inverse.  The original to be ON, the copy OFF.
At frame 77 both monkeys will be perfectly aligned and the switch-over therefore undetectable.
Monkey 1 would be seen to fall and bounce, Monkey 2 following the slab down.
Another more complex example of this is demonstrated in the video at the very bottom of this link - How to keyframe child of constraint in and out

Thanks a lot! It works perfectly!

No probs mate..


text:
define a rotation axis
Can I define a rotation axis for a 3d object then set a rotation amount for animation?
I will duplicate the objects than set them at different orientations and all will rotate about the defined axis simultaneously at a certain angle amount and speed.

Maybe use an Empty and rotate around that? (I'm no animation expert, but that would be my first thought!)

i would use a copy rotation constraint for that.

create an object, keyframe a rotation e.g. i keyframed z rotation at frame 1 and 60 with values 0 and 360, then in timeline press shift-E -> linear extrapolation to make it rotate forever

now copy that object, delete all keyframe and add "object constraint" copy rotation:

with these settings:

now you still can move and rotate that object as you like:

and then just copy this object as often as you like:


text:
Cycles image sequences not working (blender 3.6.7)
I forgot to add my project file in the last post sorry
PJ https://drive.google.com/file/d/1cKIk8dACivDxo-Is8FgdlMNddb64E1AW/view?usp=sharing
So I have this animation rendered as image sequence and in eevee the animation works fine but when I switch to cycles it just completely blank
EEVEE:

CYCLES:

thanks

Hello, hard to tell, maybe share your file?

The problem is your Texture Coordinate has the From Instancer option enabled, which can only work if your display object was instanced on another object from which it should inherit the coordinates. But it is not, so it does not show the texture correctly. This does not happen in EEVEE because this functionality only works in Cycles and is ignored by EEVEE.

omg thankssssss

@lamdi You're welcome. Maybe you would consider accepting the answer if it helped?


text:
How to make folded sails with rope animation
I recently saw a video of a guy who had done a simulation of sails folding, from what he said in response to a comment, an object was used to get stuck on one end of the rope and then he was animated to pull it and consequently doubling the sail, I tried to reproduce the effect by watching some simulation tutorials, but I was not successful, there were many problems with the collision and the system did not respond correctly.
Link: https://www.youtube.com/shorts/jzKBwFAuX-I

Not an easy task ... cloth collision is always tricky ... here something with self-collision enabled (to prevent intersection seen in video).

With one more subdivision more details, but also more collision artefacts ...

Usually when objects start to penetrate into each other you should increase distance collision.
Since my "rope" is single sided I switched Normal orientation inside.
Suggestion - Simulate "rope" as simple mesh (like a proxy) and hires model use just for final rendering.

You saved me with these tips, but I'm still curious how the guy in the video managed to use an animation of a string being pulled down to reproduce this effect. I think of a scenario where I would do an animation and I would need something like this


text:
Issues Modelling a complex bottle
I'm having an issue modelling the attached bottle. I'm not sure how to bulge the side planes and arc the top. Any help would be greatly appreciated.

My apologies for the simplicity of my question. I'm pretty green with blender, and am looking for some recommendations on how to approach modelling the complex planes. Any help would be greatly appreciated.

You'd probably get better results modelling these types of geometric technical drawings in a CAD program like FreeCAD and importing into Blender

https://blender.stackexchange.com/questions/75972/how-to-create-little-flanges-on-the-bottom-of-the-bottle/ https://blender.stackexchange.com/questions/50102/how-to-model-the-bottle-threads https://blender.stackexchange.com/questions/228436/how-can-i-model-a-bottle-with-triangular-base-and-circular-top-nail-polish-bot/ https://blender.stackexchange.com/questions/81596/how-can-i-make-a-rounded-indentation-on-a-cylinder-cosmetic-plastic-bottle-lid https://blender.stackexchange.com/questions/253199/how-to-create-this-detergent-bottle-recipient/

https://blender.stackexchange.com/questions/181914/carve-hole-in-a-metal-water-bottle-model/ https://blender.stackexchange.com/questions/206287/how-do-i-make-those-rhombic-indents-in-this-water-bottle-image-in-description https://blender.stackexchange.com/questions/177662/mesh-plastic-bottle-curved-indent-boolean-or-displacement-map-or-maybe-someth https://blender.stackexchange.com/questions/75692/creating-curve-design/75697 https://blender.stackexchange.com/questions/134710/how-do-i-make-this-twisted-surface-on-a-bottle/ https://blender.stackexchange.com/questions/55635/making-rounded-dips

Once you've modeled the basic shape...

pull this face:

Would you add a curve to the side plane  to account for the bend? Every time I try, the top arc adds strange geometry.

Could you please show your current topology? Maybe share it: https://blend-exchange.com/

You don't need so many edges at the top, instead work like I do, with as few edges as possible at the beginning, and quads as much as possible

Ok, I'll give it another go. You work on one corner and mirror it correct? Sorry for the noob question :P

Yes I've mirrored on X and Y but actually you should not mirror on Y as it looks like the opposite face is not the same

Also when you'll give a Subdivision Surface modifier to your object you'll add more edge loops to keep some edge sharp

@Beamer For the bad shading you show, you probably have inner faces, check inside your object, also select all in Edit mode and press Shift N to recalculate the normals. Maybe also press M to merge by distance

thanks @moonboots you were extremely helpful. got it looking pretty good!


text:
Adding more realism to my rendering
I've generated the bottle and labels, and am rendering in Cycles, but the result is looking too artificial. What can I add to the glass and label elements to make it look more realistic?

More subdivision levels, more roughness on the material, maybe also noise-based displacement or at least normal change. Add some HDRI as well.

Also a bit of glare and a bit of blur in the Compositor (or a bit of Depth of Field), a photo is never perfect with very sharp edges

As posed, this question does not have a definitive answer. What is 'realistic'  will depend on the environment you want to simulate? ... even if only in transmission/reflection. Could you provide some reference of the look you'd like to achieve?

Are you sure that the normals of the liquid are pointing outwards? I would give the sealing plug and the label a bit more texture, small noise texture and grooves for the plug, paper texture and a larger noise for the paper. Also give it a tiny bit thickness, and the rim a white texture, plus a few imperfections. For the glass, add a Volume Absorption node or fake absorption so the bottom where the glass is thicker becomes darker. Enable Cycles > Film > Transparent and .. > Transparent Glass, then "photoshop" the pure white background

For more realistic lights in Cycles try a spotlight with a IES profile. Additionally, you can place a "diffusor" (a plane with random holes) in front of the light to create interesting shadows.
Here an example with all mentioned tweaks:  https://i.sstatic.net/FGZRH.jpg


text:
Mirror-ish reflection on top face of liquid in glass cup model (Beginner)
I am making a Negroni glass and have changed the liquids base colour to an orange (#d0812e). However, the top face of the liquid remains this clear/mirror like colour. Even when putting a HDRI into the world section the top just reflects the HDRI like a mirror. I imagine this is an easy fix but I am super new to Blender and haven't been able to figure it out.

Random detail, when I change the view to be birds eye you can see the red liquid (Image attached)

Welcome to reality! :)  Sorry. not entirely fair to say that... but have a  look at a real-life glass of colored liquid below bright, relatively blank lighting. That's not to say the PBR is doing  a perfect job.. one aspect you might want a look at is the liquid-glass interface

Thank you that article really helped :)

np :) Also, you may want a meniscus around your ice-cubes... that might make an interesting question in its own right..


text:
How to sink roof
How can I extrude this middle part of the roof down so that I can start putting tiles on it? If I extrude + scale down it looks weird, same if I try extrude + move. I simply want it to become thinner, but not scale inwards on the sides.

you can't extrude down in that case, except with addons like Destructive Extrude, I don't know if it's available for 2.8: youtube.com/watch?v=beZau_wpR-U other than that, you you can do it the other way around, meaning you extrude up each side, etc…

The updated version is available on GitHub page.

Try Alt+E > Extrude along Normals. Not perfect, but it will probably do the job in this case with minimum geometry and a bit of cleanup afterwards.
Alternatively, you could separate the faces using P to create a new object, which you will be able to move freely. Downside is that you would have to adjust the polygons and create a new face for each side, of course.

One solution would be to Inset the faces with value of 0.
And at the same time add a negative depth.
Just like this.

Or, if you want better control. Leave the depth at 0 as well, and just use the Move Tool to move the top faces where you want them.

Start
Moved to horizontal
Top and side moved down and right by 0.3 respectively
Extruded by 0.3
Step 4 rotated 90 deg Y and sheared, rotated back.


text:
Issues baking normals and ambient occlusion
I have made a fairly simple house in blender using a single material with an image texture:

However, when I try to bake ambient occlusion I end up with a really weird result, I am very new to this so could be I'm making a simple mistake, but been searching for solution for a few hours and can't find any.

If I try to apply that to the model in my game engine in looks horrible:

I want to bake normals and AO, but not sure where I'm going wrong. I go to render -> cycles -> ambient occlusion -> bake. Same for normals.
My .blend file:

Have you UV unwrapped your model properly?

I have followed tutorials by minionsart which basically tells you to use "project from view" then drag the different parts onto the gradient color palette and move around as required. I do not know what you mean by "properly".

There are a few issues with this.  The overwhelming issue, that needs fixing before you can go any further, is that there is overlap in the UV map:

Here I've selected a UV island.  You can see plenty of other geometry behind it, on the same part of the UV.  When you bake any kind of texture to this UV map, Blender will be writing data from more than one part of the mesh onto the exact same pixel of the texture.  Which part of the mesh gets drawn on top is a crapshoot.  You need to fix this before doing anything further.
The next thing is, look at how much UV space you're using-- just a tiny little fraction of your square.  This means that the functional resolution of any bake using this UV map is going to be a fraction of the image texture.  This will lead to lower resolution on your ambient occlusion, that smears out the AO over larger parts of the mesh than you want.
That especially a problem because of how much internal geometry you have:

That beam stretches all the way through the house, even though there's only a bit of it visible at the ends.  Other geometry is similar.  When Blender calculates AO for this mesh, any internal geometry is going to be solid black AO, while anything else is not going to reach nearly that darkness.  This is a problem because your AO (both during the bake, and when you look it up) is going to be an average of near bits of the mesh.  You don't want to be averaging in completely occluded into visible, or you'll have ugly dark smears throughout your AO.  I'd strongly recommend removing any internal geometry here.

as far as i can understand you have only one uv at the moment that gives you the colors on the mesh, you will have to create a second one, unwrap it (you can try and assist https://www.youtube.com/watch?v=scPSP_U858k), and bake your ao onto the second uv.
using two uv's can be a bit confusing (Multiple UV mapping in 2.8 eevee?)
good luck

That does not sound right. Why would you need different UVs for AO and normal maps?

because at the moment he is using the uv to map colors onto the mesh, and they are overlapping as well

But you can use the same UV for all the maps ... ao, normal, diffuse, roughness ...

true, but not the way he is doing it as he is using color map texture to color the model


text:
odd distortion with smooth shading when extruding vertices
I am very new to blender, I am trying to create a simple creature, here I try to extrude some legs, but I get this weird distortion where the legs and the body meets when I use smooth shader, what is causing it?

could you please share your file?

This is an important topology issue, not strictly Blender-related. Basically you have to add some loop cuts, trying to have even quads over all the mesh, then add some others loop cuts to "hold" the edges.
Hover your mouse over the leg, press Ctrl R, scroll the wheel until you get the desired number of loop cuts and confirm with left click. Then do the same near the start and the end of the leg, moving the single loop and confirming. The direction of the loop is dependent by the mouse position.
Experiment with this tecnique and search articles and tutorials on Topology, it's an essential skill for good modeling.


text:
Remove a dotted cage?
Someone knows what it is that dotted cage, what it serves but especially how to remove it?

I'd need to see the .blend. The only cage like that I remember is from curve handles, when you twist them, with meshes, I'd have to have a closer look.
In the meanwhile check the physics tab if something is activated there.

it might be the Texture Space: https://blender.stackexchange.com/questions/14120/what-is-this-dashed-box-and-how-can-i-turn-it-off/14121

Thank you @moonboots ! it was a texture space ;) I was afraid that it adds elements to my models for my video game ^^ '


text:
Weird UI bleeding. Anyone know the cause/fix?
I'm using Blender 2.71, and a day or two ago this weird UI glitch started occuring:

^ Here's a screenshot of it.
The bleeding seems to trigger in various ways, the most common one being changing the user perspective viewing angle. The bleeding starts slow, going down one line at a time blurring the content (and diagonally, as you can see in the upper left).
Mousing over a bled UI element restores it to normal. I tried resetting to factory settings as well as changing the window size (full screen, small, etc) but to no avail.
I haven't had any graphical issues with other software (including games) so I doubt it's a graphics card issue.
I'm going to try and reinstall Blender and make sure my graphics drivers are up to date, hopefully that will work.
Any other suggestions?
Thanks in advance!

I've sometimes had this problem with anti-aliasing (multisample) enabled. Does it help if you disable it in user-prefs > system?

It was already off. Only text aliasing was enabled, but after disabling it the problem still continued. Any other ideas..? EDIT: Changing Window Draw Method to "Overlap" seems to have stopped the issue. :D

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


text:
Mirror without deleting or adding new material
I modified and existing rig and I want the left side to mirror the changes I did on the right side. Is there a way to do this without deleting half the character?

Did you modify the rig or the mesh or both?

I assume you mean that you edited the Rig. In that case you can do this:

In the tool shelf: Vertical Options Tab enable X-Mirror
In your Armature, in Edit Mode: select all bones which you have modified (similar like in the image)
press "g" followed by RETURN will instantly adjust the other side of your rig.

Note: This works only if the Rig's symmetry plane is YZ (character looks along Y axis) and when the Bones are named according to Blender's naming conventions, see http://wiki.blender.org/index.php/Doc:2.6/Manual/Rigging/Armatures/Editing/Properties

I added a comment about how I just modified only the vertices 6-8 hours ago? Sorry.

I do not see that comment that you made 6-8 hours ago. I have no elegant solution for mirroring one side of the mesh to the other side except using a mirror modifier, or possibly Mesh -> Symmetrize  (in edit mode). Actually x-mirror is also available for meshes, but it sometimes fails (depending on the mesh topology)

I think the closest you are going to get is Mesh > Snap to symmetry:

It works by snapping the nearest vertices to a mirrored position, however this won't always work perfectly if you have larger changes. It probably won't work at all if you have a lot of asymmetric topology.
If you have yet to make the changes (or you can make them again), you could try X mirror:

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


text:
Change the size of cylinder/rope in realtime (GameLogic)
I want a cylinder or other object to change size when the main object changes its position. The cylinder needs to be a line that connects two points. All of this need to be able to change in the game logic as the main object that moves is controlled by a joystick.
The Stretch To would work great if I could get the end bones to connect/parent to the end point objects. I have a cylinder created with bones and Stretch To but it does not work in game logic.

Created two "endpoint" objects that move in gamelogic mode. Then grab their center location do some geometry and python code changes the cylinder (rope). only used one endpoint in the code below as the other endpoint was origin (0, 0, 0). Also note that this only watches one plane (x and z axis).
#get endpoint center location
boom_endpoint = boom_point.worldPosition

#get distance between endpoints
y_pow = (boom_endpoint[2])**2
x_pow = (boom_endpoint[0])**2
rope_distance = math.sqrt(x_pow + y_pow)

#scale value for axis that need to be stretched
new_scale = rope_distance/2

#angle between endpoints to rotate the rope
angle = math.asin(boom_endpoint[2]/rope_distance)
rope.localOrientation = rope.localOrientation * mathutils.Vector((math.radians(0), angle, math.radians(0)))
#apply scale and location changes
rope.localScale = mathutils.Vector((1, 1, new_scale))
rope.worldPosition = mathutils.Vector(((boom_endpoint[0]+0)/2, 0, (boom_endpoint[2]+0)/2))