text:
Controlling the density of individual objects from a collection info node
In geometry nodes I made two layers of cylinders containing two objects: icospheres and cubes. Both objects are added to the two layers through a collection info node:

Blend file: GN - layers test 3.
Currently, the density of the icospheres and cubes is jointly controlled from the distribute points on faces node. How can I control the density of the icospheres and cubes that come from the collection info node separately? I know I can split groups from the collection info node, but then the icospheres and cubes are already mixed.
Update of the blend-file (see my comment @Hulifier below): GN - layers test 5

Geometry Nodes:

The total density is the sum of the two densities.
The probability of a point being a sphere is the sphere density divided by the total density.
$$\text{For N Instances}$$

What this does is, first create a mesh line with an edge count equal to the object count in the collection, then it uses the density values to set the length of the edges, while keeping them stacked in a line. With this done, it generates a random with the interval $[0, S]$, with $S$ being the sum of all densities. The random is then used as a vector to get the nearest edge's index, which will be the index for picking an instance.
For every object added to the collection, you will need to add another Index Density Node Group to the node chain and connect the last sum to the Density Max socket of the Distribute Points on Faces Node.

The index of a density doesn't need to be specified since the chain of Index Density Nodes already calculates it, starting with 0 and adding 1 for each node.

You should also rename your objects in the collection since the index of objects inside comes from the alphabetical ordering of their names. That way, adding a new object to the collection will not change the index of the others.

Also, if you rename an object inside the collection, the index order will not update, for updating it, you just drag an objet which is inside the collection to the same collection.
Another thing is that some of the small cyllinders sometimes disappears, this is due to the distance from the bigger objects changing, this can be solved by calculating the distance to the objects before transforming them.
Here the transformation is done to the instances, not the points:

The instances before the transformation are the ones sent to proximity calculation.
Update with using normals

For using normals of the deformed plane while using the original position to generate points, we capture the normals from the deformed plane to the original, we will also capture the position. Doing this, points are generated in the original mesh, but they hold anonymous attributes with the deformed position and normal, which we then use to set their position and rotation.

This works great with two objects! Tnx a lot! :) It seems to get more complicated when there are more than two objects in the same collection, because the boolean is only true or false. Know a way to control it with more than two objects? Or do I have to add them in that case individualy by an object info node?

@EwSa I added to the answer a way to use more than two objects of the collection.

You are realy amazing!!! I could never ever find this out with the skills I have at this moment. I hope I can solve problems like you for once :) Tnx a lot!

Hope you can help me with one more thing. In the file, you see I use a geometry proximity to delete the litte cylinders in each of the two layers where the floating objects are insterted. The noise of the layers is driven by the "#frame" command. When I start this noise animation, the position of the little cilinders are recalculated around the floating objects and they sometimes disappear, because of the geometry proximity. Also the floating objects are "jumping" around the layer. Is there a way to prevent the "disappearing" and "jumping"? New blend file updated in my post above.

@EwSa Edited the answer with the solution to the proximity problem that was making some instances disappear. Also, the total sum should be connected to the Density Max of the Distribute Points on Faces node, and I forgot to do that, sorry for that. I updated the images and the blend file. Everything seems to be working fine for me now.

You're awsome! I had to put the set position in front of the distribute points on faces, because I changed the noise from the position to the normals of the grid points in the top layer. Thereby I put these to the off-set instead of the position input of the set position nodes (see the blend file in the first post for this arrangement). The floating objects are oké with these changes but objects inside the layers (i've changed the object inside the layers from cylinders to another object) are still disappearing or jumping because of their changing distances. Is there a way to prevent this?

@EwSa I Added to the answer a way to generate points on the base grid and get the deformed normals and position, therefore points will not disappear and reappear throughout time while still having access to the deformed position and normal. I also added at the end the file with the changes.

I'm speechless!! Tnx a lot!

May I ask you to take a look at this question of mine: link? I would like to expand the code of above but for me it is difficult to let the others know what you did. I hope you can help me once more. Thanks in advance!


text:
Control over individual objects of a collection info node
In the following scenario within geometry nodes I try to get control over the attributes of the individual objects within the used collection info node (eg position, rotation, normals, scale etc.). I know that I can adjust some of these attributes of the original object itself and that this continues to work in the instance, but can I also control this within geometry nodes? For convenience, say: all cubes up and all cylinders down. The tori must remain in place. De tori must rotate 90 degrees. Is it maybe possible to control individual instances?

Blend file of this scenario.

Please always try to stick to the content/title of your original question. The answers you can see below address it very well. If you now expand the topic too much to another individual problem, you run the risk that the question will be closed, because it simply can no longer be answered in a targeted manner, and others will have a hard time figuring it out. To be honest, it is difficult for me to study your nodes and try to understand what exactly you want to achieve in the end, and what the problem is. Please possibly consider opening another question instead.

Tnx for your reply, I will start a new question.

Agree with @quellenform.  If you could describe your desired final effect clearly, and reduce the problem as far as possible to its essence, that helps to give a good answer.

As is so often the case in Geometry Nodes, you don't know for sure if it's a bug or if you've done something wrong.
In any case, you can't capture the original index of an object after it has been instantiated. Why is probably in some unfinished part of the Geometry Nodes source code.
But...
But you can, conversely, capture a random value for an index on the geometry at which an instantiation is to occur and use those values for further processing afterwards:

I was expecting to be able to capture the index of collection instances, too. But on second thoughts, it's simpler to let the point's ID pick  the instance? The one-to-many relationship is the right way round.. you don't have to make a relationship between two sets of numbers. (There'd be no harm in being able to capture the instance-index as well, though.)

@RobinBetts Hm, not a bad consideration, you are right! But I think that both variants are equally semi-optimal, since in both cases something has to be calculated with additional nodes (either Substract -> Random Value, or Random Value -> Floor).  ...and actually one would expect that in some form the original ID/Index is preserved.

For identifying instances after distribution on points.
When you instance on points, the points take charge of the identity of the instances on them.

If you check 'Pick Instance', the point's ID is used to select which instance from a collection is picked for that point.
If the integer ID exceeds the highest index in the collection, then the  pick loops through the collection. (The selection is ID mod (collection size) )
The ID of a GN entity defaults to its Index, if it has not been explicitly set.

Here's an example where ID  is set on the points, randomly, between 0 and collection size:

.. and the instances are selected by the ID of the points.
(You could not set an ID, plug (the point's) Index into 'Instance Index' instead. Then you could select all index-2 instances, for example, by selecting all whose point index, modulo the size of the collection, equals 2.)
Since we've set an ID on the points, and the points have used their ID to pick their instances, we can select instances by ID:

Your example usage:

Ooops, I should have selected a random integer value for the ID. The floored float is a leftover from some experiments, adjusting the relative frequencies of the instances.

Even with the float output of the Random node, the Floor node is not required, as the conversion to integer will truncate the fraction, which is equivalent to flooring for positive values.

You need to know the ID of the targeted instances, using it as a selection.
In the example below you could plug the Compare (Equal) node output directly into the Rotate Instances, but not every manipulation you'll do will have a node with selection input. In these cases you use a Switch node.

source: Stack Exchange

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

sort: votes


text:
Improve visual look of multi transparent objects
I made this carbon atom with orbitals but I'm struggling with the look of the orbitals.

First, I want the orbitals to be transparent, so that also the nucleus is visible. But, I want clear orbitals with no overlaying colors. I tried this with the transparent BSDF (see picture below) and tried diverse blend modes but with no succes. The colors of the overlaying orbitals are, as expected, blending. Is there a way to prevent this?

Second, in the first picture, some inside shadows are visible, which I think are created by the four lights inside the scene. I want to get rid of them. In the viewport they aren't vissible (see below picture), only through the camera, so maybe something with the render settings but can't figure it out.

Last question: how can I make a more 3D-looking effect of the orbitals? Normally this effect is off course created by the shadows.
Please drop your ideas on this.
Update:
The shadows were due to a specific camera setting. No idea which setting. After replacing the camera by a new one, the shadows were gone. Other questions remains:

Is there a way to prevent the overlapping colors to blend with each other?
How to give it a more 3D-look?

Here you can download the blend file to see my idea and settings:
Carbon with orbitals

Can you add a sketch? How should this look like? "I want the orbitals to be transparent, so that also the nucleus is visible. But, I want clear orbitals with no overlaying colors." - Is this rendered in Eevee or Cycles?

Thanks voor your reply. I've added the blend file for downloading (see original post at the bottom). Thanks in advance for your effort!

One quick thought is that in your Mix shader, you can use a Fresnel node as the input to Fac. That would let you have color around the edges, and a transparent center.

I don't know if this is exactly what you are looking for, but I hope it can steer you towards your goal.
The orbitals still appear "transparent" but the colors aren't blending together - you can still see red, yellow, green, and blue clearly:

Basically I added a Layer Weight->Facing connection to each of your shaders, like this:

You can tweak the "Blend" value to get more or less of the colored edges for each orbital.
I also cranked up the "Alpha" to 1.0 so the colors aren't transparent at all around the edges; you might want to play with that if this isn't quite the look you wanted.
I changed the lighting a bit to give a little more "3d" look by reducing the emission of the one side and raising the other:

Hope this is closer to what you are looking for?

Tnx, a lot for your help! Appreciate it! Together with the comment of Blunder I worked it out :)

Additionally to Dale Cieslak's answer, you can turn off the Shadow cast for the sphere objects in Cycles.
The objects inside cast a shadow on the insides of the outer objects. And because they are transparent you see these shadows in the image as shown in screenshot 1 of the question and screenshot 1 of Dale's answer (red sphere).
For Cycles, the shadow can be turned off in the Object Properties tab, in Visibility > Ray Visibility > [_] Shadows.
Here's an example with shadow ray turned on:

... and Shadow ray turned off:

If you turn the shadow rays off for all objects this results in a cleaner image. The shader here is slightly different but it will also remove the artefacts as seen in Dale's answer.

Tnx, a lot for your help! Appreciate it! I used your texture nodes and worked it out :)

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


text:
Control over attributes of individual objects of a collection info node (part 2)
I have tried to implement the advice from a previous question, combined with controling the density of each instance on points. However, I still can't quite figure it out. I have done the following:
The basic setup is one layer consisting of cylinders and cubes. I started with an auto indexing using a mesh line to give al objects a specific index, after which I want to regulate various attributes of each object within the collection separately. In this example I want to translate the cylinders and cubes, up and down and later on delete some of them.

Total node tree:

Part of the node tree that explains the control of the density:

Overview of the node tree of the group inside the "control frame" with unique index to control attributes of individual objects (in this case the position of the density and the translation):

Blend file:

For now I'm able to control the ratio of the density of both the cylinders and cubes. Now I want to control the translation of both objects with the same unique index as for the density. However, when I translate the cylinders inside the "cylinder frame", the cubes go up. Inside the "cube frame" the translation is not working. What is wrong with this setup?
Update:
Ok, I'm one step further. There has to be a way to get this to work.
I have added a sphere within the collection and also created a frame for the sphere with an index group.

Regulating the density in each frame works. However, within the frame of the cylinder I control the translation of the cubes and within the frame of the cubes I control the translation of the spheres. The translation in the frame of the spheres does not work at all.
So I've found that it's the translation indexing that is out of sync with the density indexing. If I set the index on the equal node within the index group and set the B value of this equal node to 0, then I can move the cylinders. In that case however the auto-indexing is no longer working for the translation and I lose control over the cubes and the spheres (see gif below).

Blend file:
So, it probably can be resolved with some math node(s), but I can't figure it out. Can anyone help me with this part?

Hello ! I seem to understand you're using the node group as a loop, that goes back and acts on the next instance that's passed to it, is it the case ? (spoiler : it's not possible)

Thanks for your reaction. It must be possible, see my update.

The reason for the one index offset when translating is because the node group's $\text{Auto Index}$ starts at index $1$:

This is for letting the position of the Mesh Line's first vertex at zero (if the line start position is $0$, and it needs to start at $0$ so the randon index using probability works correctly), since the first edge needs to start at $0$ and end on the density of the first instance.
To make it work with the instance translation, you will need to subtract one from the $\text{Auto Index}$ before comparing with the instance index:

Or you can set the default to zero, use the $\text{Auto Index}$ for the instances, and for the line you use the $\text{Auto Index} + 1$. Doing it this way will economize one node, since the value $\text{Auto Index} + 1$ is already used for calculating the next index.

Note: When Changing the default value of the node group, you will need to delete the node and then readd it (Duplicate won't work), this is because node groups doesn't update default values on nodes added before the change.
Edit:
After doing some modifications, the execution time seems to be a little smaller. I tested with eight different instances, the time difference was almost nothing, but maybe it could become bigger with more.

Index Properties node group:

End Properties node group:

With this modification, you won't need more to use the sum of densities for the Max input of the Random Value node, the value needed is now $1$.

The question can be understood as:

How can I control the distribution of an extensible number of objects from a collection with a given probability and transform them group-wise?

Note: The main difference from the other solution posted here is that control of the distribution of points lies entirely with the node Distribute Points on Faces, and it is not the probability of distribution set in the objects that affects the number of points. ...which just sounded more plausible to me.

Two things are necessary for this:

A cascadable node group, which can be connected arbitrarily in series.
A mechanism that translates the probability or weight defined in these groups to the number of distributed points.

I arrived at the following solution:

Cascadable Node Group
The first group is a cascadable node group used per object. It allows setting a probability for instantiation, as well as transforming a specific object in the collection.

The node group has the following inputs, which are modified and provided again as output:

Segments
Sum
index
Instances

In addition, there are the following fields for control:

Propability
Translation

Segments
Here, a mesh line is simply created. The starting point is the sum of all previous values, and the end point is the addition of the sum and Propability. So I draw a line consisting of two points, which starts exactly at an existing line.
I then convert this into an instance with Geometry to Instance, and add it to the group of segments with Join Geometry.
Each node group thus adds a line whose length corresponds to the value you specify with Propability.
Sum
This is the sum of the values given by the value for Propability of each group. All other groups after this one, again use this value as a starting point.
Index
This is an integer value incremented in $1$ increments, each of which is used to select and transform a particular object in the collection.
Instances
Here, the instances from the collection are simply passed so that they can be transformed individually.
Translating to Index
The next node group deals with translating the previously determined probability of an instantiation into an index.

It has only two inputs:

Distributed Points
Target

In the output, this node group returns the distributed points, but the attribute ID has been added, which now contains the indexes for the instantiation as values.

Distributed Points
The object that contains your distributed points, in this case the output of the Distribute Points on Faces node.
Target
This input receives the group of segments previously created by the first node group.
By saving the index of each instance with the Attribute Capture node in the first step, and then converting the instances back to lines with Realize Instances, I get back their original index.
Since we know the number of distributed points with the node Domain Size, we can now scale the consecutively threaded lines all together in such a way that their dimension corresponds to the highest index value of the distributed points.
As you show in your example, I then use the node Random Value, which I use as Source Position in the node Transfer Attirbute.
This now returns a certain value from the Nearest Edge.
However, I'm fishing out the previously captured original index of the segment, ...and that's exactly what we need here in the end.
So that I can use this value comfortably outside of this node group, I save this into the ID of the single points.
Overview
So in the last step I just have to put the previously supplied ID into the input Instance Index of the node Instance on Points, and you get a distribution of objects from a collection, with the previously supplied values.

PS: I would request you to adjust the title as well as the content of your question according to what your concern is. Personally, it was quite difficult for me to figure out what you actually want to achieve.


text:
How to change deselected objects color in edit mode at blender 2.9 series?
In blender 2.9 series when enter in edit mode other objects getting darken!

While in blender versions older than 2.9 and also in version 3.0.0, selected and deselected objects have same color in edit mode:

How to change deselected objects color in edit mode at blender 2.9 series same as older versions and newer versions (3 series)?

I do not know how to adjust the colour of the inactive object in edit mode, but I do know how to control the fading level of the object. It`s very simple just tab into edit mode, go to the 'overlays', check 'fade inactive geometry' box and then change the value to whatever you want


text:
Is It Possible to Select Faces (in Edit Mode) Based on the Normals of the Faces Connected to It?
I understand how weirdly specific this is, but is there no way to select faces based on the normals they're facing AND the adjacent faces' normals?
What I want is a little complicated, but if I were to have a subdivided cube with perfectly flat faces, would I be able to select every face on the X positive normal but make an exception for any face that's connected to a different face with a Z positive normal?

I've tried putting specific selections into different vertex groups, but I'ven't been getting much luck using that work around. Could I not use python to make a custom search and dot in my own parameters?
[EDIT 1]
Alright, thinking a little better this time, I realised that what I was asking was odd because of the examples I used. So, I'm editing this to better clarify, using a model that correlates much better to the issue I'm having.
I suppose there'd be 2 options to what I'm asking: "select adjacent faces of normal based on the faces' normals" or "limit selection of faces based on the connected faces' normals." Though in all fairness, I'd only profit from the 2nd case. Giving examples now.
In the first case, "select adjacent faces of normal based on faces' normals," I've set up an example. In this case, I asked to select all the Z+ normals AND select adjacent faces that have the Y- normal. As you can see, only the faces that are making contact with the Z+ faces are selected.

In the second case, "limit selection of faces based on the connected faces' normals," I've another example. Again, I ask to select all Z+ faces, but this time, avoid any faces that are on the Y- normal.

Is there any way to do this? Not a big deal if there isn't, I just spent the better part of my day trying to do something like the earlier 2nd example with only commands and couldn't.

Hi, thanks for the post.  This question was in the review queue.  I think it's a good question and I'm pretty sure I understand what you mean, but can you be more specific?  Can you include more examples of success cases for this type of selection?  Maybe even failure?  For example, what should happen at higher levels of subdivision?  If a mesh has an odd number of faces such that one normal could be considered to be both Z- and Z+, what should happen?

There is Select -> Select Similar -> Normal but that is only part of what you asked.

@AllenSimpson I already racked my mind immensely trying to convey my issue, I'm not so sure I can do any better, but I can still try. Imagine a staircase, and imagine that I select a tread (google stair anatomy) somewhere in the middle of the staircase. What if I wanted to select the riser that's directly below it? If I do Select -> Select More, I'd get the riser above the tread and the riser below the tread when I only want one. This example makes no sense since, in theory, every riser has the same normals; imagine that it's a SINGLE step instead of a staircase, with only 2 risers and 1 tread

Man, if I knew that pressing enter immediately uploaded the comment, I sure as hell wouldn't've pressed it.

yeah this site is full of surprises  I think you should model that out in blender and include it in the question.  There's an edit button underneath your post.

Your first example selects Y- adjacent to Z+, but only downwards. That's the tricky bit. If you wanted up and down, that would be easier.

Select +Z faces and neighboring -Y faces if they go down:
import bpy, bmesh
from mathutils import Vector

up = Vector((0, 0, 1))
side = Vector((0, -1, 0))

def main():
    me = bpy.context.active_object.data
    bm = bmesh.from_edit_mesh(me)
    for face in bm.faces:
        if face.normal == up:
            face.select = True
            conditional_select_neighbors(face)
    bmesh.update_edit_mesh(me)

def conditional_select_neighbors(face):
    for loop in face.loops:  # each edge has a 'loop' associated with it for each face
        loop2 = loop.link_loop_radial_next  # radial_next gets the loop of the same edge but another face
        is_side = loop2.face.normal == side  # as R. Betts spotted, this is not enough
        loop3 = loop2.link_loop_next.link_loop_next
        is_lower = loop.vert.co.z > loop3.vert.co.z
        if is_side and is_lower:
            loop2.face.select = True

if __name__ == "__main__":
    main()

Select +Z faces without -Y neighbors:
import bpy, bmesh
from mathutils import Vector

up = Vector((0, 0, 1))
side = Vector((0, -1, 0))

def main():
    me = bpy.context.active_object.data
    bm = bmesh.from_edit_mesh(me)
    for face in bm.faces:
        if face.normal == up:
            conditional_select(face)
    bmesh.update_edit_mesh(me)

def conditional_select(face):
    face.select = True
    for loop in face.loops:  # each edge has a 'loop' associated with it for each face
        loop2 = loop.link_loop_radial_next  # radial_next gets the loop of the same edge but another face
        if loop2.face.normal == side:  # in this case this is enough
            face.select = False

if __name__ == "__main__":
    main()

Thanks Markus, this worked! And thank you for giving both of the solutions, I actually needed a mix of both to do what I wanted. Despite my question being somewhat vague, you still understood it and gave me the answer I wanted. This'll save me at least an hour of time each time I need to make a new blocky map.

@user123645 Knowing the question is half of the answer. :)


text:
Hair particles/fur goes through mesh and is behaving weird randomly on moving object/armature
I have a low poly figure with three separate particle systems of hair that is combed and modified with  Particle Edit. I´m playing around with making the hair move and react. I have baked all three of them.
Problem 1: When the arm moves up the hair on the upper part of the arm dissapears through the arms mesh... how do I make it not do that?
Problem 2: When rendered; the particle system with short hair behaves weird. It looks and acts fine mostly  through out the anmimation - except for certain few frames here and there when moving. It goes haywire wild and huge/dragged out...!?
EDIT: I tried sizeing down it since it was a huge figure. Now when I bake and try the hair still goes wild. Before baking the hair followed the armature fine on frame 1... but after that the armature and mesh goes on its own through the hair. Whats going on?
EDIT 2:
Disabeling Hair Dynamics solves the hair going wild... but when I tried appending it in a new file/project and then turn om Dynamics - it´s still the same (se video/GIF below).

ADDED: BLEND-file

maybe first in the modifiers stack put the Armature above the ParticleSystem? And also in the Particle System panel > Emission > Source, enable Use Modifier Stack?

Armature is above. Tried with the modifier stack. Still doesnt work...

if you disabke Hair Dynamics it won't happen anymore, also if I append your objects in a new file it seems to work fine, I don't know why...

But later on when I want the hair to react to motion (charachter walking/jumping etc) and wind.... will I not have to enable Hair Dynamics?

If you append your objects in a new file it will work with hair dynamics, i don't know why, so you can keep the option

OK.... so one last, possibly stupid question; how do I append an object? I have only appended materials before....

File > Append > double click on the blend file > Object > select all the objects and OK

It has something to do with your Particle Edit of 'KROPP'.  If I delete the edit, all behaves well.  I tried playing with Pin Goal Strength, Collision Quality, and Impulse Clamping (very useful in Cloth fly-away problems) with no luck.

"the armature and mesh goes on its own through the hair" -- try adding a collision object to the cube.

Thanks for your effort James. This is annoying... I want to be able to edit the hair manually (particle edit) and still use with dynamics... anyone else have any idea how to solve this?


text:
4 vertex shape alignment
How do i get these vertices to align perfectly?
The left image is the actual wall of the center shape.
Every vertices of the 6 external walls are calculated to stand on the radius of a sphere.
I can rotate the mesh 60 degrees at a time and all the vertices of the walls always end up at the exact same X,Y,Z position.
Therefor, theoretically, i should be able to tile this shape side by side and form a sphere.
The problem is that blender doesn't allow a true edge hinge. I can snap a vertex from both shape and then use it as a pivot point to snap the opposing vertices, in essence snapping, let say, the upper edges together.
This part is easy even when i reach far from the actual X,Y,Z axes.
But then i have to align the bottom edge and that is where it all goes to smurf!
Even on the exact axes it doesn't align perfectly, so the further i go from the X or Y or Z axes the more i get drifting.
By the time i have filled a sixth ring around the central shape, when i try to merge the shapes into a single mesh, the vertex merger begins to create zig-zags.
If i select two opposing vertices on the upper edges, after aligning it, i can only get a pivot "POINT" in the middle of the 2.
The problem with that is that the mesh can swivel in every direction from a "POINT".
I need a way to pivot from the entire edge.
Either by keeping the 2 points as simultaneous pivot or by having an actual "EDGE HING" instead of a "POINT HING".
Been searching everywhere for a solution but haven't found anything that can achieve this easily, and i have to put a lot of them together to form a sphere.(by ring it is: 1, 6, 12, 18, 24, 30, 36 and by then i already have 127 copies and not even a quarter of the final mesh completed).
(The shape is actually made up of 4 different meshes which are parented to their top part, so they moves as one mesh.)
So if anyone can provide me with a solution i would greatly appreciate it!
p.s. i am not looking for a geometry lesson, as you can clearly see it does tile perfectly. there is no need for you to understand exactly what i am trying to do this since what i'm asking is how to achieve the equivalent of using an entire edge as a swivel instead of just a point, you know like a door hinge does.
or how to get the four opposing vertices of one wall of one shape to all line up perfectly with their equivalent vertices on the other shape as that shape gets copied and displaced in 3d space.

It's unclear what you're trying to achieve. What do you mean by "tile this shape side by side and form a sphere". Tiled hexagons or hexagonal prisms don't form a sphere but a flat plane.

you are concerning yourself with the wrong part of this problem, not looking for a geometry lesson. i am trying to get the four lite vertices of the shape on the right to snap perfectly on the four light vertices of the shape on the left, so that both shapes (identical copies of each other)line up perfectly vertices to vertices as i create a tiling. my reasons for doing this and all the rest is without importance. whether it was for this or that reason or purpose would change nothing to the problem.

these two shapes are specifically designed to be tiled up to my needs, that's why in the question it said "each vertices are specifically calculated to stand on the radius of a sphere". and i don't understand why every time i ask a question here i get people trying to give me geometry lessons? after all the question explains what i am looking for and if i wanted geometry lessons i could find a million of them on the net. so again i ask:

Is there a way to create a "EDGE HING" instead of just a "POINT HING" or is there a way to achieve the equivalent of swiveling a shape by one full edge instead of just a point on the edge?

If its not important, then why are you even mentioning it? My point is that there's wall of irrelevant text and you have to break down your problem to make it clear to the reader or you probably won't get an answer.

The problem is stated multiple time already. How do i get those four vertices to snap on the other four vertices so that both shapes align perfectly vertices to vertices. i don't see your confusion. I read it 3 times and each time i appears very clear to me that i am not asking, "how do you tile stuff". But i am asking how do you create the equivalent of a true line hinge instead of a point hinge.

Hi :). When the hectagons are aligned, do the two "walls" align perfectly?

i even described the process in the sens 1) snap the first vertex to the destination vertex of other shape. 2)use it as a pivot to snap the opposing vertex of that edge, creating a single edge with both shape in the process. 3)? how do i now pivot the rest of the shape in 3d so that the bottom edges line up and snap vertex to vertex.

and yes i admit it takes a lot of words to say very little but by now i have explained the process in every imaginable fashion. So any ideals on how to do this or just that i dont express myself competently enough?"

Hi :) This is rather easily done using direct vertex snapping. But could you wait till tomorrow? The Dune stars in about an hour...

to jachym... NO! that is the problem as stated. there is always a small discrepancy between adjacent vertices and it causes precision problem at every subsequent ring.

Jachym, given that i have tried every thing i could find on the internet i don't really have a choice right now but to wait. But if you can help me solve this, which i have been convinced all along must be a simple thing that requires the experience i don't have, i will gladly wait till tomorrow for your reply. in the mean time i'll finish watching Dune, half way through already!

Hi :). Enjoy! In the meantime, you can drop a simplified file here so I can try the solution directly :)

Dang. Blender reaaaally doesn't want to do this predicably :))

No it doesn't! and yet, it should be simple to implement a edge hinging fonction. none the less, here is the file https://pasteall.org/blend/78309e2da66d4aec9a85181f69bab27a

If I've got you right, you're looking for snapping a rotation about an arbitrary hinge? When you create a Custom Orientation from an edge, or any 2 vertices, the Y axis of the orientation is the line between them.
Starting worst-case, no alignment.

Set Pivot to 3D Cursor, Snap to 'To': 'Vertex', and 'With': 'Active'
ShiftS Put the 3D Cursor at one end of your hinge.

Create a Custom Orientation from your hinge-edge, and make sure it's being used. (Mine is in my Quick Menu, with 'Use After Creation', and 'Overwrite Previous' set.)
G snap a suitable active vertex to one end of your hinge.
With the other end-vertex active, snap to the other end of your hinge, by rotating in the non-Y dimensions of your hinge-orientation.. (X, then Z, or Z, then X)
Now, RY will rotate about the hinge-edge, and you can make another vertex active, to snap about the hinge to another target.

Oh, this works like a charm, nice one :))

@JachymMichal.. where are you getting to watch Dune ?

Well those HBO guys have it available online... :))

@JachymMichal  Ahhhh.. maybe should subscribe :)

BRILLIANT! i knew it couldn't be that complicated. this is simple and all vertices finally line up perfectly. i couldn't thank you enough. been looking for this for a month now. very much so newbi. have a great evening, i know i will!

I've solved this via scripting.

Make a vertex group for each of 3 of the points on the first object.

Make a vertex group for the corresponding 3 points on the second object in the same order. Make sure the vertex group of a point has the same name as the vertex group of the other object containg the point it should land on.

Make a new text file in the script editor. Paste the script.

Select the two objects. The active object (selected last) will land on the other object.

Run the script.

import bpy
from mathutils import Matrix

selected = bpy.context.selected_objects
assert len(selected) == 2
obj1 = bpy.context.active_object
obj0 = [obj for obj in selected if obj != obj0][0]

# get the coordinates of the points from the vertex groups
def get_coords(obj):
    pts = []
    for vg_name in ["Group", "Group.001", "Group.002"]: # group names
        for v in obj.data.vertices:
            if obj.vertex_groups[vg_name].index in [i.group for i in v.groups]:
                pts.append(v.co)
                break
    return pts
pts0 = get_coords(obj0)
pts1 = get_coords(obj1)

# construct a matrix for each object:
def make_matrix(o, b, c):
    x_axis_dir = b-o
    z_axis = x_axis_dir.cross(c-o).normalized()
    y_axis = z_axis.cross(x_axis_dir).normalized()
    x_axis = x_axis_dir.normalized()
    mx = Matrix([x_axis, y_axis, z_axis]).transposed()
    return Matrix.Translation(o) @ mx.to_4x4()
mx0 = obj0.matrix_world @ make_matrix(*pts0)
mx1 = obj1.matrix_world @ make_matrix(*pts1)

# place the object from the first to the second matrix
obj1.matrix_world = mx0 @ mx1.inverted() @ obj1.matrix_world


text:
FileNotFoundError: [Errno 2] No such file or directory - Blender Python API
Hello Blender Community,
With my groupmate, we are working on a traffic simulation on Blender as our graduation project. Initially, the simulation engine runs and outputs a .txt file, sim_log.txt, containing the details to be processed by the script on Blender. Then, we run the script and get a visualization of the traffic flow.
Sometimes, I could not really figure out why, the Blender script throws the following exception when trying to read the output file which is in the same directory with the .blender file:
Info: Deleted 0 object(s)
Traceback (most recent call last):
  File "C:\BlenderTest\CS402\SimulationAnimator.blend\Text", line 24, in <module>
FileNotFoundError: [Errno 2] No such file or directory: 'sim_log.txt'
Error: Python script failed, check the message in the system console

The script up to the line that the error occurs is as follows:
import bpy
import os
import numpy
import random

#Test values
time = "day"

# Clean console, view and orphan data
os.system("cls")
bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete()
bpy.types.BlendData.orphans_purge()

# Set world background
if time == "day":
    bpy.data.worlds['World'].node_tree.nodes['Environment Texture'].image = bpy.data.images.load("//hdris\day.hdr", check_existing=True)
else:
    bpy.data.worlds['World'].node_tree.nodes['Environment Texture'].image = bpy.data.images.load("//hdris\\night.hdr", check_existing=True)

cameraCar = "" # Name of the car that camera will follow

# File read section
f = open("sim_log.txt", "r")

I mostly encounter this problem after another program accesses this file, but sometimes it occurs randomly. I could not find a way to tell Python API/Blender that the file actually is there, so I have been copying the file and updating the filename in the script. I thought the community could spot the problem, so I would not need to work with sim_logv19.txt anymore :)
If you would like to take a look at the project repository, here is the link:
https://github.com/sefasenlik/TrafficSim

I think based on the Error that open is trying to load the file from the Blender project as a directory, but the project is a file and doesn't have this subdirectory "Text". You could probably fix this by using an absolute path and store the "sim_log.txt" in the same directory of the blender project. To get the absolute path you could use os.path.join(os.path.dirname(bpy.data.filepath), "sim_log.txt")

Thank you, Rivin. It seems it worked, and I also think this can even be used as a generic solution for many relative path errors.
By the way, I guess I discovered that ending Blender's process on Task Manager resolves the problem temporarily.

If you agree with the answer, please accept it.


text:
How would I go about creating an oval/circular cut within 4 vertices?
I'm trying to create a model of the Xbox One X for learning purposes. I'm currently trying to create this oval shape part shown in the image below.

My attempt to this was using the knife tool and and moving vertices manually to create the curvature around the corners (progress shown in the image below) but found it painstakingly slow and not very accurate and I know there's definitely an easier way to do this.

How can I create the circle/oval shape more efficiently. I want to create the oval shape within the 4 vertices as shown in image below? I think another easier way I would do this is to add another cube mesh, minimize and add subdivisions so it takes the rectangular/oval shape and move it to that area and cut a piece from the main model from it but is there a way where I can just tell Blender to automatically create a circle/oval lines within the 4 vertices?

Your topology looks like this so let's start from here:

Firstly remove those extra n-gons and make it cleaner
Make a cross from loop cuts like this:

Now you have two options...
Option 1 vertice bevel, select 1 vert in the middle of the cross and use Ctrl+Shift+B and pull with mouse: (shape it and clean it with knife)

Option 2 (without knife cleaning) with Insert:
Select 4 faces and insert new faces with I

Use Looptools (it's a default addon that you can activate in preferences)

Both options will give you nice symmetrical hole that you can shape to your needs much easier, goo luck

Oh, beveling a vertex is a really neat idea! And to make a circle, you don't even need an addon :)

Well you don't but I think that Looptools is the fastest possible idea if you want a perfect circle and not a bit oval-like in your idea, and even if it is I would still prefer just to shape it with Scale :D


text:
Blender running slow when editing rig, changing poses, and during animation
I've posted a similar question in the recent past, and have gotten some good advice, but it didn't solve the problem. Currently, I'm working on an anime-styled female character. I've completed the mesh for the body, the mesh for the clothes, and the hair. When I started rigging I had no issues with lagging or freezes when editing my rig.
Then it comes to the hair. When I started the bones for the hair I noticed Blender running slowly, but not anything serious. Now I can't edit the rig without having to wait several seconds between edits, changes in poses, and don't get me started on the .64 fps animation, even when the rig is standing still. I wanted to add physics to my hair so I added wiggle bones, but the lagging was occurring prior to adding the modifier. With the advice from earlier, I removed millions of unnecessary faces and triangles, mostly from prematurely applied subdivision modifiers.
Currently, my mesh has
41 Objects
504.667 vertices (down from 4 million)
1,003,840 Edges (down from 7-8 million)
499,302 Faces (down from 4 million)
1,002,692 Triangles (down from 7-8 million)
My PC isn't old or outdated (relatively mid/higher mid-tier):
Processor: Intel Core i9-10900F CPU 2.80GHz, 2808 Mhz, 10 Core(s),
GPU: AMD Radeon RX 5700 XT
Ram: 16GB
If anyone has a way to upload .blendfiles with instructions I'd be more than willing to upload the file! Thanks for the time to help me out!
PS this is my first project, so I'm not the most knowledgeable in all things Blender.

All I say is many people experience their PC slowing down when working with complex meshes and/or hair, although their machine isn't old or outdated. Especially hair is really not resource-friendly. And the misunderstanding many people make is that they expect the viewport to always run at the given FPS rate. This works well in simple scenes. But the FPS rate is mostly for playback of rendered files (Ctrl+F11), for setting the FPS creating movie files and for simulations to have a time relation. Anyway, if you want to upload a file, follow the instructions here: https://blend-exchange.com/

You might want to reduce subdivision modifiers and particles or instancing. The order of modifiers also affects performance. It is preferable to have the Armature as the last modifier in the stack. Your tri count still seems a bit excessive but shouldn't affect your computer this much. (also, please refrain from using comma or period as a thousands separator as it is not internationnal. use space if necessary)

When editing the modifiers, should the armature come before or after the subdivision surface modifier? And will do for next time! thanks for the help


text:
How to get my uv maps to not stack everything together? (FIXED)
hope y'all having a great weekend. I'm pretty new to blender but these uv maps are KILLING ME! First, they'd disappear when I'd join two together. Now when I load them, the uv map is all smashed and stacked together. HELP I have no idea what's happening. Here is an image of what it looks like. Thanks so much for any help. I'm using 2.79 if that means anything.

they should not overlap, you need to select all and unwrap once, not select each part and unwrap them successively. Anyway you can select the island you want in the UV Editor and scale/rotate/move as you want

Thank you moonboots. :-)

If you want to avoid islands overlapping, don't unwrap each part of your mesh independently, instead unwrap all at once. You may need to create seams so that it unwraps correctly.
That said, from your current situation, you can also select each UV island with L and move/scale/rotate the way you want.

Yeah I found unwrapping individually was a lot better. Thank you so much moonboots!!


text:
glTF export has twice the vertices it should
I am turning instances on a template into copies in a glTF file. When I import that glTF file into Blender again, the number of vertices has doubled.

The number of faces also shows as double, but interestingly, the number of tris matches.
I can't see what is causing this. There is an array modifier creating the stack of objects inside the tower, but it seems to be applied correctly. There are no other modifiers, or constraints, or parenting. But when the glTF is imported, and the object that is that stack of rings is edited, and all vertices are selected and then merged by distance with Ctrl + M, almost 15,000 vertices are removed, reducing the total count by more than half.
What could be causing this?

glTF is a last-mile format.  It stores its mesh data in a ready-to-load-onto-the-GPU kind of state.
But the graphics hardware doesn't want the same vertices that artists want to see in Blender.  At the hardware level, there are "vertex attributes" for things like normal vectors, UV coordinates, etc., that must be specified per-vertex, not per-face.  Likewise, quads and N-gons are not welcome at the hardware rasterization layer of many devices, including mobile devices, which generally accept only triangles at that layer.
So a finished, exported glTF will be fully triangulated, with all discontinuous UVs and all discontinuous normals separated into co-located vertices.  This way, when the glTF arrives on a client device for rendering, it should not require the client to spend much in the way of cycles or battery power processing the raw mesh data.  It should just load into the local graphics API and render immediately.
This does mean that if you load one back into Blender though, you'll end up with these un-merged verts, and any faces that weren't triangles will be cut into multiple faces.


text:
Why does this NLA strip have no action, and how do I fix it?
I hardly do animation so I think these tracks were created automatically. Two tracks have a strip labelled "No Action" and I can't do anything with them. I think they are what is causing me to not be able to export the animations as part of a .glb file.
I can't seem to change them or delete them. Looking at the manual about such tracks and strips has only been confusing.
How can I format those strips properly or delete them and make new ones?

Here is the part in the manual that concerns you
Also here is a link to a tutorial on the NLA
Deleting & Converting
If you decide that you no longer want a stashed action anymore, simply delete the corresponding NLA strip, then save and reload the file.
Also, note that since these are NLA strips, you can reuse these as normal NLA strips simply by un-muting (and renaming) the NLA track they live in. You may also want to move it above all the other stashed-action tracks.
Remove Empty Animation Data
This operator removes AnimData data-blocks (restricted to only those which are visible in the animation editor where it is run from) which are “empty” (i.e. that is, have no active action, drivers, and NLA tracks or strips).
It is sometimes possible to end up with a lot of data-blocks which have old and unused Animation Data containers still attached. This most commonly happens when doing motion graphics work (i.e. when some linked-in objects may have previously been used to develop a set of reusable assets), and is particularly distracting in the NLA Editor.

I gotta say, i find this confusing too. And the tutorial is old and not very good. I already looked for tutorials. An overview of NLA use is probably what i need, but i haven't found anything yet that is current and clear.

Thanks for putting this up. It's gone into my 'little black book of helpful info'  I've had little success with the NLA but plenty of hair tearing trying to figure it out!  lol. It has however increased my vocabulary!   I've developed a system of exporting Dopesheet action sections into other projects, but it's like treading a minefield when it comes to location keyframes, particularly those items parented to another.


text:
How can you access a registered class of a Blender add-on from another Blender add-on?
TL;DR: I would like to use a subclass of PropertyGroup defined in one add-on as the type of a PointerProperty property of another add-on.
I have two addons, Foo and Bar like this:
Foo
# foo.py
# ...

class FooProps(bpy.types.PropertyGroup):
    foo_value: bpy.props.IntProperty(name="Guess what", default=1)

# ...

class SOMEONE_OT_FooMaker(Operator):
    bl_idname = "someone.foomaker"
    # ...

# ...

# __init__.py
# ...

def register()
    # ...
    bpy.utils.register_class(foo.FooProps)
    bpy.utils.register_class(foo.SOMEONE_OT_FooMaker)
    # ...
# ...

Bar
# bar.py

class BarPrefs(bpy.types.AddonPreferences):
    # ...
    foo_stuff: bpy.types.PointerProperty(type=bpy.types.FooProps)
    # ...

Here I would like to access the registered class FooProps of add-on Foo from the another add-on Bar. As FooProps is registered with Blender, I would expect it to appear in bpy.types, however it doesn't appear there. While debugging I can list what bpy.types has to offer, and while I can find bpy.types.SOMEONE_OT_FooMaker, there is no bpy.types.FooProps.
What may I overlook? Shall I follow the wrong path, can you nudge me to the right one?
Full (non-)working example here

Could you add a full minimal working example, please?

Sure, @Leander, published to https://drive.google.com/file/d/1wjLDNXUNZ5LUl1V-d1xXhBPJcJfyQ15R/view?usp=drive_link -- Line 11 in sample_bar/bar.py is where I want to use that prop group. Let me know if more clarification is needed.

scripts\addons is in sys.path. You can just import the addon. A thing to take care of is the order they get register and unregister.
Also can use: bpy.types.PropertyGroup.bl_rna_get_subclass_py('FooProps') which gives <class 'Sample_Foo.foo.FooProps'>
For listing all subclasses: bpy.types.PropertyGroup.__subclasses__()
bar.py
import bpy

import Sample_Foo.foo

class BarProps(bpy.types.PropertyGroup):
    bar_value: bpy.props.IntProperty(name="Bar Value", default=1)

class BarSettings(bpy.types.AddonPreferences):
    bl_idname = __package__
    barProp: bpy.props.PointerProperty(type=BarProps)
    fooProp: bpy.props.PointerProperty(type=Sample_Foo.foo.FooProps)

    def draw(self, context):
        row = self.layout.row()
        row.label(text = "Property defined here")
        row.prop(self.barProp, "bar_value")

        row = self.layout.row()
        row.label(text = "Property defined in Foo addon")
        self.layout.prop(self.fooProp, "foo_value")

bpy.types.PropertyGroup registered subclasses are not exposed in bpy.types. https://projects.blender.org/blender/blender/issues/52599

However subclasses of [Header, Menu, Operator, Panel, UIList] remain accessible from bpy.types.

https://developer.blender.org/docs/release_notes/2.80/python_api/addons/

Thanks, that's almost perfect, and both solutions work until I try to reload scripts! Do you have any idea why reloading yields
"TypeError: PointerProperty(...) expected an RNA type, failed with: RuntimeError: , missing bl_rna attribute from 'RNAMetaPropGroup' instance (may not be registered)"
and "ValueError: bpy_struct "BarSettings" registration error: 'fooProp' PointerProperty could not register (see previous error)" during registration of Sample_bar? Is there a way to control the order of registration if that's the root cause?

To register Sample_Bar.bar.BarSettings Sample_Foo.foo.FooProps should be registered. So Foo should be registered first then Bar and then to unregister Bar should be unregistered first then Foo. You can add a check for the property being registered for one or both addons if it has not been registered in either of them and register if it is missing.

Yep, I get the pipeline, but how can Sample_Bar force Blender to try to reload Sample_Foo first to make sure FooProps is registered? If I use the bpy.types.PropertyGroup.bl_rna_get_subclass_py('FooProps') approach, reloading the module will not help, will it. If I use the import approach, registration/reload in Blender won't happen will it? Anyway, the issue mentioned comes even after Sample_Foo and Sample_Bar is reloaded while to latter is not enabled, and then I enable it (after both are reloaded). Let me know pls if you think this should be a different post/question.

By reloading you mean importlib.reload? Do you manage both addons? What is the real usage case?

Yep, I manage both. The shared add-on can check if there are updates available for my other add-ons. I would like these "other add-ons" to be able to use the shared add-on for update checking by passing some info like their uid. I'd like to avoid adding the same update checker module to each of my add-ons. The shared one can perform the check and generate the necessary UI.

By reload I mean the Blender > System > Reload scripts command, which executes bpy.ops.script.reload().

I can suggest you to conditionally create and register the classes with the properties if the type for them has been registered and add an update button to rebuild the UI. And yes, the matter of that is a different question.


text:
NURBS convert to MESH and reverse operation
I encoutered the same problem asked by @Travis here, and I applied the solution proposed by @Moog.
I tried thus to convert NURBS Sphere to MESH and delete Vertex, but when I tried to perform the reverse operation, I loose the object (see below).

Is there a solution for this ?
Thanks a lot in advance for your answer.

I think it doesn't work because in Blender curves control points can't be linked to more than 2 other control points. This is a limitation and I don't think you can do much about it, the software can't guess which edges you want to keep. What you can do is extract the vertical and horizontal edge rings, and then convert to a curve.
Illustration :

Thanks for the .gif but it's too quick for me. I don't succed to apply what you did. How do you move the selected vertical and horizontal Edges ? Is there several copies of the inital MESH ? Please, could you also send me a link to better understand this : "control points can't be linked to more than 2 other control points." Thanks again.

For information, I found this : https://blender.stackexchange.com/questions/65061/mesh-curve-to-nurbs?rq=1

@arum ALT + Click on Edge ring, then Select > Select Loops > Edge Rings then SHIFT D to duplicate and H to hide. Then do the same for the horizontal rings, duplicate, hide, delete the base meshj and you only have unconnected edges. You won't go back to NURBS though, only regular curves

Thanks a lot for your reply.

You cannot convert a surface to a curve without losing data AFAIK. I think you meant to convert to mesh.


text:
Planning a mini ramp build
playing around with bender to optimize my material use to build my 6 year old daughter 2 mini ramp (or quarter-pipe).
Building the main structured posed no problems but now I am trying to "bend a piece of plywood". The idea is I create a cube of the plywood dimensions and place it in the curvature of the ramp. That way I have excellent visuals if it fits and how much I need.
I tried simple modifier but it tends to change the size of my plywood.
What is the best way to make this work?
Plans are used from: DIY Skate plans

So basically: bend the selected box (plywood sheet) onto the curve of the quarterpipe

can you please show us in a picture what you want to have?

Maybe you could select these edges (marked green) https://i.imgur.com/rGi2sh4.png and then extrude them along X axis (E key, then X), towards the other side? This will give you a plane, that you can extrude again (or use solidify modifier) for thickness. You could also enable LoopTools add-on and bridge those edges with the edges on the other side.

Bending needs geometry, make sure you have enough loop cuts in the direction you are bending

I want to create a box (plenty subdivisions) with a fixed sixe (I. E. 2.5mx1.25mx0.01m). Now I want to bend it to the same curve as the transition (created by a cylinder radius 1.8m boolean). Once bent I can see how it fits/cuts.
I know how I could create a surface to fit the image but that does not translate for me to real world measurements.

Ok, seems that the problem I was facing was mdue to the positioning of the cylinder to the "plywood". Once I created a circle on the same origin I could bend the plate to my wishes. Now just figuring out the exact amount of degrees but for now close enough.
This gives me a rough estimate what the plate will cover


text:
Stacking UV's for more detail from bake?
I'm texturing a house to use as a prop in my game project and I'm quite happy with how the original model looks in Blender. The baked version however looks quite undetailed, first I tried to increase the texture size from 1024 to 2048 and then to 4096 and it does indeed get better but 4096 texture seems quite a lot higher than people usually use. So I did some digging and if I'm reading it correctly it would be a good idea to stack my seamless UV's (mainly the walls and windows I guess) on top of each other so I can make them all a lot bigger in comparison. I'm not quite sure of the workflow however. Even more because I'm guessing the origianl UV's and the bake UV's must be stacked exactly the same way (rotation of the stack shouldn't affect this though?) or the baking will make artifacts when it bakes the UV's on top of each other? Can someone please explain me how this is done or link to a tutorial that explains it? This must be quite a standard skill to know, right?
EDIT:
So here's some pretty paint pictures to demonstrate what I'm trying to do but don't know how and if its the right way.
First my main models UV that are separate and which I'd like to stack on each other:

Secondly the UV (didn't draw the other objects UVs for simplicity) of the whole model I'd like to bake it into. Because there's more UV's (doors, roof, windows etc.) to unwrap this materials UV's are usually all over the place. I'd imagine that you have to stack that materials UV's identically to the original map and then I'd scale it up to as the stacking gives me more room for all the UV's.

And thirdly a picture of what how the model looks like right now. It might help to figure out what I'm talking about:

brockmann was talking about using multiple objects to accomplish this as well, but I haven't found a good resource yet to tell me about drawbacks (if there are any) of using multiple objects to build one object in a game engine (Unity in this case).

You can offset the UV's x units if they are identical. However, there is only one UV slot in Game Engines so what you can do is splitting up the object onto multiple ones, highly depends on the goal and the model though. Suggest add more detail to your question.

Thanks for the comment. Is it better etiquette to edit my original question with the added information or to post it as a comment to yours?

No problem, just edit your question if you can provide further details: https://blender.stackexchange.com/help/how-to-ask

Alright! Added some details that hopefully help. And I'll check the help section next time!

If you're baking, either bake just one object or don't reuse UV space. It's contradictory to bake multiple objects expecting different results for each, but still expect to use a shared UV space for them - you can't have your cake and eat it too!

Okay. So how should I tackle this? If I just bake everything on a 1024 texture it looks like a something straight from golden eye. The model doesn't need to be fantastic looking but it'd be nice if it was a bit closer to the original model. The 4096 texture is a bit closer but I just have this gut feeling that there's a trick or two I can use to make the texturing more high definition without just pumping up the texture size.

If you have bricks made out of geometry and want to bake it, you can make a bigger wall of bricks, bake that to a texture, and then use that texture. If you have a continuous texture, you can offset those textures a little bit (or flip horizontally, vertically etc.) as brockmann suggested. But if you bake your textures directly to objects, you have only the information in exact spots, you can't (shouldn't) offset. Offsetting a baked texture also defeats the purpose of baking, which is supposed to generate a texture specifically mimicking a high poly object.


text:
Texture just wraps around arm rather than the whole shirt
I'm currently following Amelylina's video tutorial and I'm down to the last step of texturing. All has gone well until now. I'll have images attached to show what I'm talking about. When I go into either rendered mode or material mode or heck even solid mode it goes a dark grey and then the texture just wraps around a sleeve. Am I missing something? I've also attached a picture of hers showing what it should do.

Hard to tell. Is the UV map ok? Is there another object in the same spot?

Blunder, I added a picture of the uv_1 and uv_0 maps hopefully that'll help tell ya what I've done wrong. Thank you

Hm, You have 2 UV maps? uv_0 looks ok (2nd screenshot) but uv_1 looks a bit strange overlapping vertices? Looks like there are seams missing. Which UV map do you use in the material? (I am not that familiar with Blender 2.79. Is there a reason why you use this old version and not the 2.83 LTS?)


text:
How to fix the Data Transfer (CLOSE) I FIGURED IT OUT
Okay, I finally got the one problem fixed now it's another one. So sorry I'm such a noob! Anyhow, as it shows in the picture when I go to do a data transfer zero uv_0 or uv_1 shows up to apply. Where have they gone to? Any ideas on how to fix this without starting the project over?

If you solved your problem, then please write an answer in the answer section so that other users may learn from it.

Click on Source Object and then click on your reference or whatever you named it. Then you can click on UV's and the layers will show up.


text:
Broken scene/world lighting on shader to rgb material?
I've been playing around while following a guide to make a material that makes use of the shader to rgb node, and somehow the lighting is now either completely black or washed out when I switch from shader preview to rendered view. I've replaced and fiddled with all the scene lights and world background to no avail. Is there any way to fix this?
Behavior using Shader-to-rgb material (broken):

Behavior using Toon-shader material (expected):

Better demonstration with video
Nodes:

If you happen to be using Cycles you should know that the Shader to RGB node is an EEVEE exclusive feature. Additionally, the Toon shader is a Cycles exclusive feature.

@Avereniect Huh, well all screenshots were taken with EEVEE so I'm not sure what gives


text:
My fire has extremly low resolution
I started experimenting with fire and smoke and now i have the problem that my fire and smoke both have are in terrible resolution.
I know that the Resolution Devisions are just on 64 but I also tried it with 128 and 256, but both just even worst. It had a bit better resolution but there was much much less fire at all and i wasnt dense at all.
How can i get a good dense fire with good quality?

You showed wrong setting, go to your smoke settings, what resoĺution are you using? Try to give it higher number

Is your Noise enabled (higher res flames).  See 1:40 into https://www.youtube.com/watch?v=vSYMjhFXcr8 ... also what is the object type of the Inflow?

Is your Noise enabled (higher res flames), and are you using a Texture  on the domain? See at time 1:40 and beyond in this example video  ... also what is the object type of the Inflow?
My example

Thanks that helped a bit, but its still not good. I now tried it with resolution devisions of 128 and noise Upres factor at 3.


text:
Fluids simulation went crazy
I have a problem with fluid simulation.
The project is pretty simple, I have just a domain object and an inflow object.
The inflow object is supposed to start drop oilish fluid at frame #1100 and ends after 8 seconds.
It was working almost correctly until I moved the inflow object a little (inside the domain), after that it started to act in a weird way.
The inflow seems to behave if it was a long tube (instead of a little sphere) and the fluid seems dense and is not following the initial velocity settings.
As you can see in this picture that strange long melting tube is supposed to be a flow of oil sprinking in the direction (x, -y, -z).

I've already tried to delete the bake cache, restart Blender, using different OS (Windows, Linux and macOS), but with no luck.
You can download the project file here.

Have you Applied Scale on each of your mesh objects (inflow and domain)? Odd scaling can cause odd behaviour.

Yes, I've scaled the both objects after I've assign it the fluid type, just to fit better in the scene. Is it a problem? I rebaked the simulation (removing the cache). It would be a bad/odd limitation requiring to not scale object of simulation. What if baking the simulation you realize that the inflow or domain object has a wrong size?

Changing the size before the bake isn’t a problem providing you then CTRL+A and Apply Scale. This ensures the scale is 1.0 in each direction - otherwise the skewed scale can cause problems with the simulation. If you need to change the elements of your simulation you should always re-bake anyway - otherwise the simulation won’t be accurate to the new situation.

Sorry, maybe I didn't get your comment. That is what I have done: I changed the size of both objects and then I rebaked the simulation (removing the cache folder and pushing again the [Bake] button), but anyway it seems to acting in a weird way.

Problem appears to be with a negatively scaled Inflow object - I've added an answer that should hopefully resolve your issue.

The problem appears to be due to the geometry of the Inflow object - it has a negative scale (-0.025). This causes havoc with the Volume Initialization of the inflow in the domain.
The simple solution is to select the Inflow object and simply press S-1Enter. This will 'flip' the scale of the mesh so that it is enclosing the correct volume.
Re-baking produces the following :

When using Volumes it's imperative to ensure the Normals are facing in the correct direction - in your case the negative scale resulted in them pointing 'inwards' rather than 'outwards', confusing the fluid sim.


text:
Is it possible to take a mask clip and 'connect' it to a specific point on a moving object?
I have a video clip of a car driving by from left to right. My goal is to add a decal (mask) to the car door.  Right now I am painstakingly moving the mask via X and Y.

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


text:
Blender Normal baking with & without cage not working
Recently I designed a can to use in my game. It is extremely High-Poly and it has a subdiv modifier with 2x subdivisions. Because a model (especially a prop such as a can) would be extremely inefficient in a game space with a large polygon count (tens of thousands), I decided to bake my normals to a lower poly mesh, with only a few hundred polygons. Initially I attempted to bake to a model without a 'cage' and it was off as the normals were not accurate and did not feel realistic. Then I attempted with a cage and had the same look and issue

^^^This is the High poly initial model (with a 2x on subdivision surface).

^^^High Poly Model Preview

^^^ This is the Low Poly model

^^^This is how it bakes without a cage (I turned up the ray distance a little but it is still an issue when at zero). However with the cage it looks exactly the same, it looks ugly and weird
I have tried all these things and none of them have seemed to achieve a relaistic clean result so I can have the detail but maintain efficiency without my computer spontaneously combusting when I interact and see this object in game. I will provide the model link here if needed, which you can use for getting a clearer view of the problem.
I'm slightly stuck for ideas at this point so any help would be greatly appreciated.
Model
Thanks!
Edit: here is your fixed versison when I download into 2.91.3

In addition to @moonboots answer below your normal map image is 2048x2048 but due to the large cylinder much of that image space is wasted and you will see pixelation on the surface. Also you may want to scale up your high poly slightly since the low poly mesh intersects through the high poly near the top.

First apply the scale, and lower down the bake Extrusion value down to 0.1 (more in your last version). Now you need to select your low-poly object, right click > Shade Smooth, also in the Object Data panel > Normals > Auto Smooth. Select the high-poly, shift select the low-poly, bake. Lower the Normal Map node strength value down to 1. Result:

Thanks but still a similar issue. It's a little better but no real difference

mmh it fixes the problem for me, could you please share your file again, with all the changes you've made?

May you send a screenshot of what your result is first just to see what the fix does on your side?

Here is my file with the changes applied https://blend-exchange.com/b/2992gjSS/

Yes it works fine for me with your current file, I've edited my answer, you also need to apply the scale and invert the normals even though this was not the problem here, maybe you've have skipped a step, or try with another version of Blender?

Did you apply the subdivision surface?

Are you talking about the high-poly Subdivision Surface modifier? No, I didn't, it wouldn't change anything

By the way your new low-poly is much smaller now so you need to either adjust the scales of your cans in Edit mode or increase the Extrusion value, but it is still not the problem here

May you share your fixed version. Also what version are you using?

Is that photo of the high poly or low poly mesh. Because on the download the ridges/divits look nowhere near as realistic as my viewport, even in render mode

it's a picture of the low-poly with the normal map, I've shared the file

what version of blender are you on? I'll show a picture of the normals on my download of your fixed file

Let us continue this discussion in chat.

Sorry to disturb you again. I have another issue I added some more to the mesh and the bake isn't working again. Here is the issue blend-exchange.com/b/N8VogLzE. It is not baking all details and there is errors.
If you manage to fix please share on blend exchange, sorry fo hassling you im not good at texture baking :(

it works fine, pay attention to the objects you select, first select Mesh HighPoly, then shift select Mesh LowPoly.001, bake


text:
How to I create text with a rounded face?
After spending the best part of 2 days on this I'm still totally baffled. I'm trying to create a badge to be 3D printed and I'm having trouble getting the text to look right. The effect I'm going for is for the face of the text to be beveled, but not just on the corners, it needs to be pretty much a complete curve over the face of the font. Attached is a photo of the badge I'm trying to replicate:

I've tried doing this a number of ways but it hasn't given me the desired result.

Converting the font to a mesh then using the bevel tool appeared to give me a lot of artifacts
Trying the extrude and bevel settings in the text palette just gave me a round edge

Once I manage to get the font looking right, how would I then go about getting the underline that I plan making with an elongated cube to have the same bevel? I was able to get satisfactory results using the bevel tool, but how can I make it a perfect match?
My blend file is available here: https://formandmotion.com/5_0_Badge_18.blend
Edit: Here are the steps I took to resolve this thanks to the link in the comments below.

Add Text object
Convert to Curve
Set to 3D in tool properties
Convert to Mesh
Mesh -> Cleanup -> Decimate Geometry to reduce the number of vertices
Create new edge between these vertices
Create new faces between edges
Select new edges
Edge -> Subdivide (twice) to split it in 3 as I wanted a rounded top
Switch on proportional editing (smooth)
(G)rab -> Z(key) -> 2 (to move it upwards 2mm)
Cleanup vertices that look out of place

did you try to lower text resolution from 12 to for example 5/6 and using beautify faces? However it would still need some manual tweaking to prepare it for bevel but it sure can be done with bevel

After you convert the text to mesh, try using a Decimate Modifier set to "planar". It will leave a couple of (necessary) un-deletable edges, but this may or may not pose a problem for you. Extrude your text, add a bevel modifier set to .05 or so, with 3 or so segments. Shade smooth. If it works, it's fast. If it doesn't, well, then it doesn't. You'll have to look at other options.

https://blender.stackexchange.com/questions/64980/how-to-make-a-metal-emboss https://blender.stackexchange.com/questions/58457/how-to-make-a-bevel-on-text

Related: How to model text with ridges (car badge)

@JachymMichal, this is exactly what I needed and I managed to get it working following this. It turned out to be a little messy with having to clean up some vertices, but from what I have seen this is to be expected.

Glad to be of help :)

Add a text,
convert it to curve,
remove the "double vertices" so that you got one single line per letter (i did it just for the c, because i was lazy) like you see in C:

uncheck cyclic in your curve object
add a circle as curve
give this circle as bevel object of your text curve

result:

you might to adjust the circle size and character spacings


text:
One material becomes dark/black after baking
tried to bake all my house materials into one. But for some reason my roof texture ends up being black after the diffuse bake. I'm quite new to this stuff, but I'm sure I did it as the baking tutorial instructed and everything else seems alright. The original texture is greyish just like it looks in the original (left) object.
EDIT: Actually now that I compare the models more, everything seems to be a bit darker than the original, but I'm guessing it and what's happening to the roof are two separate things, so I'll wait for the answer and ask about the second thing later.

So, I found the answer at last. Here's for you that have the same problem:
I'm not quite sure why but if you have a full metallic material (perhaps it darkens less if your material is less metallic. Didn't have the time to play with the bake), the diffuse baking will bake the material as black. So to fix this issue disconnect the metallic map/put the metallic value to zero before baking diffuse and voilà the diffuse map will have the real color.

Subsurface Scattering results also in black baked images. Set it to 0


text:
When I import a model form 3D builder , its wireframe looks weird
How can I solve it automatically? I import this in Obj format;
and I only get blender file , so it must be solved inside blender.
this

to this

[![enter image description here][3]][3]

Hello, what do you mean by weird ? What do you want to do with the model ?

Do you mean it looks triangulated? This often happens where quads will become triangulated. It's all dependant on the export options that you use. What format are you exporting in? .OBJ, .FBX, etc?

Try one of these:
Beautify Faces.
Remesh Modifier.
Limited Dissolve.
Tight Budget

Limited Dissolve works . Thank you so much :)


text:
Using cloth simulations to model a realistic Snickers wrapper?
I am just getting started with blender and would like to model a Snickers wrapper incl. UVs. The basic shape is no problem, but what's the best strategy to get a realistic plastic foil look with all the creases and imperfections?

I tried the cloth simulation with a bit of pressure, but that's more on the side of a potato chips bag rather than a bar wrapper. Would sculpt mode be a better approach? Or something else?
I am basically after something like this:

Any tips would be much appreciated.
Many thanks,
Lukas

Hello, you have better chances of getting a relevant answer if you use a detailed title for your question. Cheers

thanks for the hint @Gorgious

i would try using cloth with shrinking factor

Or perhaps put a candy inside, set it to collision, and then use negative pressure. Probably fairly realistic that way, but maybe delete the candy afterward.

@ZargulTheWizard: But the candy won't be destroyed if he uses soft low pressure.... ;)

@Chris eh, the wha..? Oh, I meant manually delete it afterwards.

@ZargulTheWizard: Damn. I misunderstood you. I thought you were joking and meant that the candy would be destroyed by the pressure. My fault. sorry.

@Chris it’s alright. Certainly not worth a damn, anyway.

@ZargulTheWizard that sounds like a good approach. Would you know a good starting point for the cloth properties to get that plastic foil behaviour? I tried shrinking factor, but that seems to only mess up the mesh.

@Lukaszzz nah, not at current. Actually, looking at a candy wrapper since then, I’m wondering if it’s actually wrinkled because of vacuum-ness, or actually because the way it’s folded. Sewing might be a better option.

Sewing…did not know that feature. definitely worth a try. Agree, I think it's more the welding and pressing of the ends that creates the wrinkles. Thanks @ZargulTheWizard


text:
Single color render background with orthographic camera
I set up the file to render an animation with pure white background. This works fine when the camera is in perspective mode. When I switch the camera to orthographic, I do not get the white background. I just get transparent color instead of white.
I am fixing this issue with a video editor.
Is there a way to get a white background with a orthographic camera?
Edit: With the camera in perspective mode the background is still transparent. In the render properties I checked the Transparent checkbox in the Film group, then I changed the View Transform from Filmic to Standard in the Color Management group, In compositing I added a Alpha Over node between the Render Layers node and the Composite Node, then I changed the Premul from 0 to 1.

Please provide your .blend file and several screenshots of your setup. Users cannot help unless we have sample data as to your render settings, camera settings, etc. Go to Blend-Exchange.com and follow the instructions to attach your .blend file.

Something was wrong in the file's configuration.
I created a new file, imported the objects, setup the background color, and the problem was solved.
Thanks.


text:
Missing polygons and texture oddities with imported models (Cycles viewport/render 2.92)
I recently decided to try my hand at posing rigged models for fun, so I just grabbed some 3d models off of mihoyo's official downloads and imported it into blender using MMDTools, since that was what they were originally for. However, after setting everything up and converting all shaders for use with cycles, texture oddities occur in thin objects and polygons are missing not from the viewport cycles render, but the final render. The texture oddity in the viewport cycles render is acceptable, as most people won't notice that it is particularly different and it feels just like a pattern, but it gets worse in the final render, becoming more splotchy. Everything works fine in Eevee except for the hastily-made hairBSDF shader I applied to the hair since I couldn't find out how to modify the rest of the shaders on the model. As demonstrated below, there are missing polygons in the render once you press f12, specifically just in the hair. This is consistent no matter the shader I use, meaning that even if I took off my own hastily-made custom shader and used the auto-generated "toon" shader, it will still provide the same result. I am running cycles on CPU compute only, cpu is a Ryzen 9 3900x running at stock with a boxed cooler (will get something better at some point, opencl doesn't work properly with my GPU due to known issues with AMD gpus)
Images (top/bottom): Cycles final render at 1024 samples (no denoise), Eevee final render at 64 samples, Eevee viewport render at 16 samples, Cycles viewport render at 128 samples

Hello and welcome. 2.93 Is still in alpha state, try to use a stable version

oh wait, it's actually blender 2.92 haha, I just misread my numbers, but yes I am running stable (my blender 3.0 exe hasn't been touched since installation)


text:
Blender only shows blank image when rendered
Can anyone help me. I tried rendering my animation in blender 2.9 but apparently, it only shows a black image. Even in the render option, it only shows an empty image. I think I messed up something in its settings. Hope anyone can help me, I'm just new to blender so please bear with me. I'll upload the .blend file, hope anyone can look at it. Thank you.
https://ibb.co/JRV0zz6

Screenshots, please! This is terribly general unless you have images to show us what you mean.

@ZargulTheWizard here is my link file can you look at it?

alright, I’ve downloaded it, but now you are waiting for things in my life. If you add screenshots to the question we can help you faster. Stackexchange allows you to embed them directly.

I've already added it. Thank you for your patience.

…and a shot of the Rendering screen?

already updated at the top

Many duplicates of this question end up being solved in that an object hidden in the viewport is not hidden in render and obscures the camera and or lighting.   https://blender.stackexchange.com/search?q=render+is+blank

ok, much better. @batFINGER that is not the case here, unless it’s the camera.

I don't think it's the camera either

Your World is set to Glass BSDF... Use a Background Shader instead.

@batFINGER: you were right.

@Gorgious: you were partially right ;)

Thanks, @Gorgious!

If you tap the right most button here:

you can check how the rendered image would look like.
There you can also see the black screen.
Then tap on the two button right to your cube001: (eye + camera)

Then add a sun : strength : 50
and you will get:

hint: without any light in the scene (whatever "form" of light) you won't see anything (which results in black screen)
instead of adding a sun you could also change the world shader to a background shader as @Gorgious said.

Oh my goodness!!!! It worked!!! Thank you so much y'all!!! I tried changing my world properties from glass BSDF to Background surface, and it worked! Thank you so much!

you are welcome. would be nice if you could check the checkmark left to my answer. thank you.

Already did ma friend. Thank you so much for the effort, I don't know that I should put light scenes in my scenes.  Appreciate your effort, thanks!

thank you!!!!!! no problem, we all started some time ago and didn't know anything about blender...but some people seem to forget this here very quickly :(

hope you could help more people in the future. Thank you!


text:
Why is the liquid's reflection look so weird after the render? (Blender Guru tutorial)
I was doing the coffee cup tutorial that made by Blender Guru,and this happened:
The shadow looks weird when there is liquid in the cup.(Look like dimanods?)
But everything looks right when there is nothing inside the cup. Don't know why is that happening.
Here is my compositing.(I didn't turn on the denoising in the render properties.)
Here is how it looks like in rendered view mode

The wireframe of the glass and the liquid.
Cup's wireframe
LIquid's wireframe

Have a nice day.

Please add your blend file to your question (Grab the URL of the question.
Go to https://blend-exchange.com/.
Select the blend file.
Add the url of the question.
Grab the url that results.
Go back to the question and edit it.
Add the new url to the bottom of the post.)  My guess is that the problem has to do with the way you made the object that is the liquid, so if you can't include your blend file please at least add a wireframe of the liquid and glass

This might be caused by less geometry at the top of water!
try adding loop cut s(ctrl+r)  at the top of water geometry.
As marty fouts said it's best to share a blend file or a wireframe it makes easy for people to look into the issue.
Have a nice day!

So I think it was the way I made the liquid is causing the problem,it has the weird flower look on the top.(Also,I add the wireframe in the question.)

Blender Guru clearly shows in the tutorial how to inset faces, make loop cuts etc. to improve the liquid, also he scales it into the cup. Your sceenshot looks like you stopped modeling before he is doing all that.

It looks like your liquid mesh is intersecting very slightly with the cup.  It's possible they have different render values for their Subdivision Surface modifiers, or a common fix (and one given by Price) you could try is scaling the liquid mesh up very slightly.
This intersects the liquid's outer faces into the glass completely which gets you a pretty good render.
Additionally, there are several posts on this site and others regarding the proper physically correct method of rendering liquids in glasses, which I will link here.
Liquid / glass interface IOR and normals in Cycles - BSE
fluid in a glass - BSE
Fluid in a Glass - Greg Zaal's blog


text:
My final render with cycles look blurry after denoise

I am new to blender and try to make a room everything look good until I use final render to get a high quality picture the light look wrong
I try to use 1 light bounce and it didnt help at all
pls help me impove it
this is a link to the file
https://drive.google.com/file/d/1xbyjeavqvRbqsibHUftfH_fEZm8niYbh/view?usp=sharing

What sample count did you use? If the sample count is low, of course it will look blurry after denouse. This is not related to light bounces at all. If you wan't a sharper image after denoising, you will have to increase your sample count.
At sample counts as low as 128 for the final render, your render will look blurry after denoising. Nice interior by the way.

My sample counts is 128 it a basic setting i think? so i have to  increase my sample count
I will try. thank u

@ธนบดีบัณฑิตสุวรรณ Yes. It is a very basic setting for interiors like these. It starts looking better around 350-500 samples and looks very nice at 1000 or above samples.


text:
My Cycles render Display wrong image

My Cycles display mode didnt project the object correctly
Am new to blender and this is the first time it happen
pls help

hello, it's hard to understand what's happening and what you mean, could you please share your file? https://pasteall.org/blend/

Looks like you have a displacement map that translates one of the objects along Z axis

https://pasteall.org/blend/92c24b2606224ddd846864a6449f28f1
this is the file

Left pic is render preview and right is material preview
See the outer circle of my object shouldnt cross with my inner circle

I do everything again with the same way i do before but now it didnt have the same problem so i will end this now


text:
Clearing Screen Layout List
I have two items showing on my screen layout drop-down list (blender 2.71). Clicking on them takes me to the file browser screen, where the screen layout list doesn't show, so I can really delete them. If I click Back to Previous, it takes me to the addons screen.
How can I get rid of these two items, or clear the screen layout list?

The following code will remove all screens from bpy.data.screens except the last one (because there must always be at least one screen):
import bpy

for screen in bpy.data.screens:
    bpy.ops.screen.delete({'screen': screen})

There is no RNA method to remove screens. In general, you shouldn't deal with screens a lot with Python scripts, because the API is incomplete and not fully working (joining is buggy and requires coordinates of the split/join widgets for instance).
Modal areas like the file selector a special, as well as other maximized areas, which create a additional, temporary screen.

Thanks for the reply CoDEmanX. Unfortunately, the code didn't work, because for some reason, Blender doesn't recognize these two screen names in the list as layout screens. It deletes the current screen layout. Is there any other way to reset the screen settings to the default Blender list?

I just replaced the startup.blend file with one from a previous version I had, and that fixed the problem. Thanks anyway.

there is actually no default set of screens, as in from the factory settings. the ones you call default screen come from the startup.blend as you already discovered. It's not ideal IMO this way, but there is currently no other way than to replace that .blend

You say it takes you to a file browser screen. Change the window type to the Info type instead of File Browser in the header. If the header isn't visible, there should be "+" to make it visible again. Once you have the Info screen header you should be able to delete that screen layout type. Repeat as needed for other layouts.

if the area is maximized, then it's impossible to change the space type. you need to use the back to previous button.

That's correct, the area was maximized so I couldn't change the type. But when I used the previous button, it took me to a maximized addons screen. The only way I found to fix it is replacing the startup.blend file.

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


text:
VSE limited to 32 channels?
I'm putting together a music video with Blender.
I've noticed I can't move my strips higher than channel 32 in the stack.
I'm surprised, becasue there isn't any visible information that there is any limit. I tried finding some option for that in the User Preferences to no avail.
Is there a way to rise this limit?

Try collapsing some of your stacked effects into Meta-strips. That should mean that you can get more channels into the 32 available on the main timeline. You can also use another VSE timeline from an alternate scene, as a scene strip. This will come in as a single strip but not as easy to edit timing wise.

From what i have searched, u might have to try changing the source code....
Look in content in the below posted link:
Hope you find your answer.
https://developer.blender.org/T42194


text:
How to stop execution of a Python script without closing Blender too?
I'm debugging my Python code and I wanted to make my script only execute until a certain line, so I can easily see what is happening.
# python code I want to execute

break_here_and_let_me_read_the_console_output()

# more python code I don't want to execute

I've found out that there's Python's built-in functions like exit() and quit(). The problem is - if I use them, not only my script it terminated, but the whole Blender instance that I was running that script inside is terminated too.
How can I stop only my script, but not Blender itself?

The only way I know to 'terminate' a script is using the return {'FINISHED'}. This is used in operator scripts though...

Maybe not too elegant, but it will stop the script in the middle and won't close Blender:
raise KeyboardInterrupt()

BaseException is a type you should never raise. I think raising an exception is a good idea, but I would rather choose KeyboardInterrupt or something along those lines.

Could I check if a key is pressed in a loop, and exit the loop if pressed? Ideally, the key press would be cached, so timing wouldn't need to be perfect?


text:
How to add an object to an existing group from Python?
I'm trying to add objects to previously created groups from a Python script.
What do I do?

It is actually pretty simple:
import bpy

grp = bpy.data.groups.get('bacon')

obj = bpy.data.objects['Cube']
grp.objects.link(obj)

This avoid the hassle of setting up the context for bpy.ops operators.

You can do as follows:

Make the desired object active
Assign it to an existing group
bpy.context.scene.objects.active = bpy.data.objects['Your Object']
bpy.ops.object.group_link(group='Your Group')

It's better to not use operators in Python scripts, if possible. See Mutant Bob's answer to see how it can also be done.


text:
Can I use object's Custom Properties inside Cycles materials?
I wonder if maybe the Attribute node in Cycles can bring in a Custom Property of an object.
I have a model that has an LED light, and I wish I could change the color of the LED on different instances of the model, without using different materials.

Related: https://blender.stackexchange.com/questions/3493/can-i-get-the-object-dimensions-in-cycles

Since V2.92, Cycles and Eevee feature an Attribute Node.
Add a Custom Property to your object.

Set the Type to Object and type in the name of your custom property.

These objects share the same material :

An alternative to using the pass ID is using the object name and an OSL script. It is not very elegant either, but at least allows for setting multiple values. I have explained it here.

I upvoted your post. However, including a summary of the method (copy paste it maybe) would be great.

Use the object's pass ID.
That's a less than elegant, jerry-jigged way of doing it, but I've managed to animate the emission of some cartoon stars independently with this, even they're sharing the same material.

I collect the objects pass ID with the Object Info node, then perform some operations on it so I can operate under an arbitrarily defined range of 100 to 110. You can use any range you want. Notice I have only 10 different brightness levels on my shader. If you need something smoother, get yourself a wider range.
After doing that, it's just a matter of setting the object's pass IDs and the material will react accordingly on a per-object basis. You can even animate them by hitting I on the pass ID field.
This approach has lot's of limitations, though:

You'll waste some pass ID channels on this, and you'd better not use them elsewhere. Make sure you have them marked as used if you're on a larger project.
You have a single channel to transfer information, so no complicated
things like colors can be properly and freely animated.
Also, the pass ID is an integer, and that means either using a large enough
range if you need fine detail or going for a coarser animation.

But it's the best I've found until now.

There's a patch that adds exactly this functionality in the works:
https://developer.blender.org/D2057

note that this has been in the tracker unchanged since juli 2016.