text:
Making two different bones copy different axis on a target bone's rotation
I am trying to rig a hand, ready to animate.
I have a hand bone that can rotate on y and z axes, and I have two other bones.I want the first one to follow the hand's bone y rotation and the second one the z rotation.
The hand bone is the green one and the red needs to follow the y axis of the hand. The blue needs to follow the z axis of the hand.

Are you talking about global or local axis? Are you sure your first bone can rotate on its Z axis?

i think i need it to be local because i will rotate the hand's bone (the green one) in normal orientation, and yes it can

I believe what you need is to copy rotation.
Under bone constraints, select copy rotation, and select the bone you want to take the rotation values from. You can also choose which axis to copy.

In your case, as you want the red bone to follow the hand bone's y axis, you would add a copy rotation on the red bone, and make the target the hand bone (green). Then you would uncheck the x and z boxes, so the red bone only looks at the hand bone's y rotation.
You would do the same with the blue bone. Add contraint, set target as hand bone, then make sure only z is selected.
If you are unsure of how to target the hand bone:

Under Target, select Armature
A new box will appear underneath, labelled Bone
In the Bone box, select the hand bone.

You can also use the eyedropper icon. Select it, on the right of the box, and click on your Armiture, in the 3D (main editor) view.

i used copy rotation constraint, but the problem is the bone that needs to follow the y rotation (red bone) is working fine while rotating the hand in y axis between (90, -90) degrees but when i rotate the hand bone on the z axis while being between (90, -90)  degrees (but in the normal orientation, which i think is the reason why) the red bone starts to rotate itself in the y axis. and i'm sorry for my bad english

I see. It could help if you tell us exactly what you are trying to do. Are you rigging the character ready for animation? Because if you are, you can get away with just having the bones rigged normally, like this: https://imgur.com/a/Bnw8a1h (obviously wiith the fingers rigged too). You only really need control bones if you are using IK.

i have animations ready but it was done using a rig for a human arm but it doesn't make sense when using a robotic arm because  the robotic arm cant bend between the forearm and the hand like a normal arm so i needed a way to make it make sense so i modeled an object that allows rotation on the y and the z axis ( because  human hand can rotate vertically and a little bit horizontally) and put it between the forearm and the hand (as you can see in the pic with the question) and weight paint it and rigged it. now i need to rotate it with the motion i get from the hand's bone rotation. so that it

In situations like this, where a fix is needed for a small problem like this, a simpler solution may just be to tweak the animations. You say you have weight painted it? You are using inverse kinematics?

i didn't bother to use ik since i only have two bones for the forearm and the hand

to put it clear my goal is not to worry about the joint between the forearm and the hand that i just talked about

How many animations do you have? Could it be easier to tweak them?

not too much but that's not the problem the problem is when i try to make more animations in the future i would need to animate the joint manually.

First, a copy rotation constraint, as described by Malted_Wheaties in another answer, is sometimes an okay solution to this problem.  You've expressed that this stops working when you have rotations greater than 90 degrees; that's because at rotations greater than 90 degrees, Blender's Eulers angles start aliasing-- that is, there's more than one Euler triplet that can represent the orientation, and Blender doesn't end up giving the constraint the particular triplet that you wanted or expected.
There is a more complicated way to set this up that should be what you want, although it doesn't work via Euler angles, so it isn't really about Euler axes-- but usually, that's a good thing, something that better matches our intuitions about orientations.
I'll assume here that the heads of both "copy rotation" bones will be at the same location as their target, with the same parent and the same rest pose orientation.  This appears to be the case from your picture.  (If it's not the case, it can be worked around, but with greater complexity, and it's worth understanding the simpler version first.)
To "copy Z rotation", use a locked track constraint, targeting the tail of the other bone, on lock Z, track Y:

This will rotate the tracking bone about its Z axis to be able to point its tail in the same direction as the target's tail, as much as that is possible.
To copy Y rotation, we'll make a duplicate of the tracking bone to "store" its starting rotation, then we'll copy the full rotation of our target, and then finally we'll use a damped track constraint, targeting the tail of our duplicate, to get back to pointing our original direction:

You can use the Transformation constraint to linearly map transforms and axes between target bone and owner bone.


text:
Operator camera_to_view_selected() doesn't work as expected
Gist:
Why bpy.ops.view3d.camera_to_view_selected() doesn't work from a Class method or even a global function, when it's called from any regular method within a registered Class?
My scenario:
I have a scene with multiple cameras "binded" to different Markers (in the Timeline) at different frame intervals. I am trying to re-align all the active cameras at their respective frame to a selected object. For example, lets the selected object be our default Cube here.

def cam_realign():
        for i in range(1, 9):
            bpy.context.scene.frame_set(i)
            bpy.ops.object.select_all(action='DESELECT')
            active_obj = bpy.context.scene.objects['Cube']
            active_obj.select = True
            bpy.context.scene.objects.active = active_obj
            bpy.ops.view3d.camera_to_view_selected()

cam_realign()

The above code snippet works absolutely fine if I use as it is, i.e. just as a normal function. However, if I try to execute those very set of instructions from within a Class method it doesn't realign all the cameras except one.
class CamRePosition(bpy.types.Operator):
    bl_idname = "object.cam_reposition"
    bl_label = "Repositioning of Cameras"
    bl_options = {'REGISTER', 'UNDO'}

    def execute(self, context):
        for i in range(1, 9):
            bpy.context.scene.frame_set(i)
            bpy.ops.object.select_all(action='DESELECT')
            active_obj = bpy.context.scene.objects['Cube']
            active_obj.select = True
            bpy.context.scene.objects.active = active_obj
            bpy.ops.view3d.camera_to_view_selected()

        return {'FINISHED'}

Any idea where I could fix this?

Edit: I did check in the console that the camera is being updated as it iterates through different frame (as also suggested by batFINGER).

Can you provide a test file?  As you are not changing the active object would suggest selecting cube (making it context object) and then run the operator.  Printing print(context.scene.camera) to console to check it is being updated (via binding)  in script.   I wonder too whether a frame change handler would be an easier option.

Sure, here is the test file: [link] (https://drive.google.com/open?id=1xFX6XO_U7K_G3OUW2c_WCBjEIggHMPhQ)

@batFINGER How would you make use of a frame change handler for a workaround in this scenario?

source: Stack Exchange

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

sort: votes


text:
Unwrapping a material on a cube face (Python)
I'm very new to Blender and its Python API so bear with me. I'm trying to create a cube and put an image texture (unwrapped, so that the entire image can be seen on the cube face) on each of its faces. I have everything but the unwrapping part working - the images show on the cube faces but they are cropped. Here's what I have, thanks in advance for the help!
def make_cube_with_material(size, x, y, z):
    bpy.ops.mesh.primitive_cube_add(size=size, enter_editmode=False, align='WORLD', location=(x, y, z))
    obj = bpy.context.active_object
    obj.data.materials.append(random.choice(mats))
    me = obj.data
    for edge in me.edges:
        edge.use_seam = True

    bm = bmesh.new()   # create an empty BMesh
    bm.from_mesh(me)   # fill it in from a Mesh
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_mode(use_extend=False, use_expand=False, type='FACE', action='ENABLE')
    for face in bm.faces:
        face.material_index = 0
        face.select = True
        bpy.ops.uv.unwrap()
    bpy.ops.mesh.select_mode(use_extend=False, use_expand=False, type='FACE', action='DISABLE')
    bpy.ops.object.mode_set(mode='OBJECT')

    # Finish up, write the bmesh back to the mesh
    bm.to_mesh(me)
    bm.free()  # free and prevent further access

May I assume that outside of this code you have created the materials that involve an image texture as color input to a shader node and that mats is a collection of those materials?

yep thats correct! the image displays on the side of the cube, but the edges of the image don't match up with the edges of the cube which is what I'm trying to achieve.

You have a couple of problems in your logic.  Some are from the way you're mixing mesh ops with bmesh ops and some are in the way you're using bmesh.
Bmesh requires that you validate the faces or edges lookup tables before you use the data with a line like this.  Replace faces with edges for the edge data.
bm.faces.ensure_lookup_table()

As long as you're doing things with bmesh, may as well use bemsh for the seams, so I changed that loop.
The mesh select and unselect mode calls don't affect the bmesh so I replaced them with a loop to deselect all of the bmesh faces before unwrapping.
In your unwrap loop, you don't update the mesh from the bmesh before calling unwrap.  Unwrap works on the mesh data not the bmesh data.
The cube primitive now comes with a UV map.  You need to reset the map before you unwrap.  The following script will do the unwrapping properly but you'll have to verify the code necessary for the materials yourself, as I didn't validate whether you're using face.material_index correctly:
import bpy
import bmesh

def make_cube_with_material(size, x, y, z):
    bpy.ops.mesh.primitive_cube_add(size=size, enter_editmode=False, align='WORLD', location=(x, y, z))
    obj = bpy.context.active_object
    #obj.data.materials.append(random.choice(mats))
    mesh = obj.data

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

    bm = bmesh.from_edit_mesh(mesh)

    bm.edges.ensure_lookup_table()
    for edge in bm.edges:
        edge.seam = True

    bm.faces.ensure_lookup_table()
    for face in bm.faces:
        face.select_set(False)

    for face in bm.faces:
        face.material_index = 0
        face.select_set(True)
        bmesh.update_edit_mesh(mesh)
        bpy.ops.uv.unwrap()
        face.select_set(False)

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

This worked perfectly! Thank you so much! Still trying to wrap my head around these APIs :)

You're welcome. I'm glad it worked.  The thing to remember about bmesh is that a bmesh is a separate copy of the original mesh so you must copy it back for the changes to affect the original and that bpy.ops almost always operate on the original mesh.

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


text:
How to bend and flatten a mesh
I have a model to be 3d printed. It is a figure sitting on a bench. As you can see in the image, the cloth is touching the bench. I want to bend the cloth and flatten the surface so that the figure can be correctly positioned on the bench.

I want to avoid sculpting the model. Is there other alternative?
Thanks in advance.

Another way of doing this is using the surface deform modifier. This still requires some sculpting/modelling, but should be easier that sculpting the original mesh.
First, create a grid mesh that roughly conforms to the complex mesh.

Then, with the complex mesh selected, add a surface deform modifier and set your grid mesh as the Target. Then click Bind.

With proportional editing, you can edit the grid mesh and the complex mesh will follow.

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


text:
Is there a faster way of character animation other than by hand?
Okay to start I have been doing blender for about 1 year (On and off). I want to understand if there is a faster way of doing animations other than hand doing it.
My conundrum is that I can get a Mixamo animation and retarget it on my rig. But the frames fit the Mixamo animation and not in the frames that I want. Also the mesh gets messed up when I do it.
I don't have too much time where I can hand do it but I don't want to retarget the animation if it gets messed up. I need a solution on animating basic movements fast. FYI I did think about motion capture, its too expensive.

I'm fairly new to Blender, but I've been doing animation for quite a while now. I'd like to try to help until someone else pops in. When you talk about the Mixamo animations not matching the frames that you want - are you talking about the timing of the animation?

i don't know what your experience level with blender is...but a good rig offers a lot of possibilities to make the animation easier e.g. IK. Or drivers. Poles. And i am pretty sure your problem with the frames to fit mixamo animation can be solved - unfortunately i am not a pro rigger so i cannot help you here.

Can you add some example of your specific issue (blend, screens) so we can understand what are you trying to solve?


text:
Joining & Rotating objects created in code through loop
I'm a Blender & Python newb, so the nuances haven't been all that enjoyable :)
I'm trying to create a 1x2 stack of cubes that joins and rotates each layer by 45 degrees.  Below is the code I have, which isn't working. The code as shown will create an aligned stack of cubes (like center example in pic).  If I comment the code for joining/rotating the object then it will rotate each object individually (like left example in pic, not what I want).
I would like for each layer of 2 cubes to be joined with object mass center as origin, as in the right-most example in the pic.
Why isn't this working?
import bpy

zRotor = 0.0
xCount = 1
yCount = 2
zCount = 6

for zAxis in range (zCount):
    for xAxis in range (xCount):
        zRotor += 0.5
        for yAxis in range (yCount):
            bpy.ops.mesh.primitive_cube_add( location=(xAxis *3 , yAxis *3, zAxis * 3), scale=(1.2, 1.1, 1))
            bpy.ops.object.select_all()
            bpy.ops.object.join()
            bpy.ops.object.origin_set(type='ORIGIN_CENTER_OF_VOLUME', center='MEDIAN')
            bpy.ops.transform.rotate(value= zRotor, orient_axis='Z', orient_type='GLOBAL', orient_matrix=((1, 0, 0), (0, 1, 0), (0, 0, 1)), orient_matrix_type='GLOBAL', constraint_axis=(False, False, True), mirror=False, use_proportional_edit=False, proportional_edit_falloff='SMOOTH', proportional_size=1, use_proportional_connected=False, use_proportional_projected=False)

You need to rotate each cube pair around their midpoint before you join them

Also, your join is failing because the select_all leaves you with no active object

A new object created with bpy.ops.mesh.primitive_cube_add() is active and selected but... all other objects are deselected by default. So only the last object is selected when you call bpy.ops.object.select_all().
The default action of this operator is Toggle. With this now the last object is deselected, all others are selected, and you get the error message that the active object, the last one, is not selected when joining.
To select all objects use bpy.ops.object.select_all(action='SELECT') Link
As Marty said, you need to join the objects on each level to rotate this level.
Please note that rotation values are in radians. In your example zRotor = 3.0 when zCount = 6. Radians 3.0 is about 172 degrees rotation.
import bpy

zRotor = 0.0
xCount = 1
yCount = 2
zCount = 6

for zAxis in range (zCount):
    bpy.ops.object.select_all(action='DESELECT')  # deselect all for each z-level
    level_objs = []                               # objs in level to join
    for xAxis in range (xCount):
        zRotor += 0.5
        for yAxis in range (yCount):
            # new obj is set active + selected, but all other objs get unselected by default
            bpy.ops.mesh.primitive_cube_add( location=(xAxis *3 , yAxis *3, zAxis * 3), scale=(1.2, 1.1, 1))
            level_objs.append(bpy.context.active_object)      # set obj in list to select and join level

    # one z-level is build , select and join all objs in this level and rotate level
    for obj in level_objs:
        obj.select_set(True)
    bpy.ops.object.join()
    bpy.ops.object.origin_set(type='ORIGIN_CENTER_OF_VOLUME', center='MEDIAN')
    bpy.ops.transform.rotate(value= zRotor, orient_axis='Z', orient_type='GLOBAL', orient_matrix=((1, 0, 0), (0, 1, 0), (0, 0, 1)), constraint_axis=(False, False, True))

# all z-levels build, now select all and join
bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.join()


text:
How do I hide grease pencil strokes behind the mesh in render

In the above image the back scrambling is just for showing purposes

Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.

nvm found it . just neded to enable the z pass
https://cdn.discordapp.com/attachments/701145948126052404/931642658366062592/unknown.png


text:
is there a way to export 3D model as a 3D rather than 2D render?
I want to post my 3D models on social media, not as a screenshot but in 3D view. (See this article for an example.)
Like if someone is opening it then he/she can have a full 3D view of it (mobile/desktop).
How do I output such a 3D image from Blender?

This is not a question about Blender, rather how to preview online models created with it. Look up Sketchfab or Marmoset Viewer services and their facilities to show data outside of their sites

It's a poorly worded question, probably because the OP doesn't know what a panoramic render is, but the OP is simply asking how to create a panoramic render.

Does this answer your question? Export model to show it in web-browser   https://blender.stackexchange.com/questions/178946/exporting-from-blender-to-browser-web-viewer-what-is-the-best-way


text:
Rigging weird shape problem, how to rig object that can rotate 90 degree naturally

May I know how to do rigging that can naturally rotate 90 degree?
Because left picture is my rigging shown that weird shape while rotate

i believe that is bendy bones in the small picture. select all those bones and in the bone property tab in bendy bone section hold Alt and increase segments max is 32 , you can then play with like ease in and out to get a nice result. (holding alt applys the change for all of selected bones)

You need a way to correct the shape.  You can try using corrective shape keys, or you can edit your geometry and weight paint to make the topology more likely to bend in the desired way.
See this answer for a detailed explanation of using weight painting and geometry to change the flexing.
Corrective Shape Keys is a add-on that is included in Blender but that you need to activate before you use.  There are several good tutorials on their use on YouTube, but the basic idea is

Create your geometry
Pose your model
Edit a copy of the geometry to achieve the shape you want
Make this copy a shape key for the original geometry
Use a driver to apply the shape key as part of the rotation of the object.


text:
How to animate vertex colors using animation nodes
How can animation nodes drive vertex colors on an object?
Details
I have a time varying dataset the defines the color for each vertex in a model. I'd like to use animation nodes to drive the colors of the vertices.
The best solution found so far requires a very complex setup.
It requires defining vertex groups and assigning colors to the vertex groups. This could require assigning a larger number of vertex groups. The preferred solution is to work directly with the vertices.

Add the object.
Assign vertex groups. These are used to get access to the vertices.

Assign a texture to the object using vertex colors.

Setup animation nodes using a script to assign colors to the vertex groups. In this example, instead of colors, a temperature is used, and converted to a color.

A script is used to assign the list of values passed to colors for the vertex groups.

def fraction(x,idx,n):
    # on a domain of 0,1 with n center points and
    center = idx/(n-1)
    dist_2_center = center-x
    portion = 1-abs(dist_2_center*(n-1))
    fract = max(0,portion)
    return fract

def find_color(x,colors):
    n = len(colors)
    f = [fraction(x,idx,n) for idx in range(n)]
    c = [0,0,0,0]
    for ii,ff in enumerate(f):
        for jj,cc in enumerate(c):
            c[jj] += ff*colors[ii][jj]
    return c

def t_color(t):
    colors = [ (0,0,0,1),(0,0,1,1),(0,1,1,1),(0,1,0,1),(1,1,0,1),(1,0,0,1),(1,1,1,1)]
    c = find_color(t,colors)
    return c

####################################################################

import bmesh

o = Object       # passed into node

colors = [t_color(t) for t in Temps]   # passed into node

#print(colors)

#########################
mesh = o.data        # get the mesh
bm = bmesh.new()     # place holder for working bmesh
bm.from_mesh(mesh)   # create a copy of the mesh

#build list of vertex indices in each group
vert_group_indices = []
for vg in o.vertex_groups:
    # check if vertex is in this vertext group using indexes
    vert_indices = [v.index for v in o.data.vertices if vg.index in [ vv.group for vv in v.groups]]
    vert_group_indices += [vert_indices]

# walk list of vertex groups, assign colors based on vertext groups

#colors = [(0,0,0,1),(1,0,0,1),(0,1,0,1),(0,0,1,1)]
color_layer = bm.loops.layers.color[0] # use first color layer
for vg_idx,vert_indices in enumerate(vert_group_indices):
    c = colors[vg_idx]
    for face in bm.faces:
        for loop in face.loops:
            if loop.vert.index in vert_indices:
                loop[color_layer] = c

bm.to_mesh(mesh)   # put mesh in the object

The result is an object with vertex group assigned colors that can be animated.

Is there any easier way? Is there a way to assign colors to vertices without using vertex groups when using animation nodes? Is there anything in animation nodes that makes this easier?
A sample file with this setup from Blender 2.83 is here :

Animation nodes have Set Vertex Color node which can assign colors to vertices, loops or polygons.

I am glad to see this node got enhanced ! Previously you could only set a single color for each and every vertex in the object mesh

@Gorgious Yeah that feature was added recently.


text:
How to make an inflated cloth object roll like a rigid object
When a rigid body interacts with an object, it will roll in a realistic manner. The animation below illustrates this effect.

If a similar simulation is setup with a cloth object that is inflated, to keep it stiff, the object doesn't roll like expected. It has too much sliding rather than rolling.

Are there ways to setup the cloth simulation so it will realistically roll?

Sure, just increase your friction of the collision object (half sphere) like this:

and you get:


text:
i want create a first person game, help
i want create a first person game, but i dont have idea, i créate a home, a car for drifting,, i think in a town by game in family, play with animals with home, someone can explain and configure / or tell me how configure for bodies and cars with Logitech g29, sorry im argentino and i want play games with no kill...,i want play online ,entertenament me ,and others like my family,
I DOWNLOAD SOME .BLEND FILES AND I EDITE, IN ONE FIND A FPS WITH GUN AND I QUIT THE ARMS WEAPON , HAVE A MOUSE LOOK AND JUMP I INTENTED JOIN WITH A WOLF TO PLAY LIKE AN ANIMAL, BUT DONT MOVE, I EDIT A TURISMO CARRETERA CAR PUT A BBS RIMS AND FINE TIRES TO GO TO THE CIRCUIT OR DRIFT IN THE TOWN WHAT I HAVE IN IDEA, BUT THE PC DONT HAVE A VIDEO CARD SO DONT FUNCTION GOOD AND I DONT KNOW HOW MAKE A DRIFT CONFIG TO GAME WITH MY LOGITECH G29 WHAT WE SALE, I CONFIG A CUBE WITH THE OPTIONS TO FRONT MOVE AND BACK BUT IS LIKE A BUTTON, AND I DONT FIND HOW WORK LIKE SIMULATOR,(I LIKE LIVE FOR SPEED) AND THE DIRECTION DONT FIND HOW MEAKE FUNCTION AND THE TUTORIALS OF BLENDER IN YOUTUBE ARE IN PORTUGES OR ENGLISH, I SEARCH IN SPANISH ARGENTINA OR ESPAÑOL, BECOUSE I DONT FIND A GAME LIKE LIVE FOR SPEED I TRY TO MAKE A NEW GAME
PLEASE HELP ME
 :)
thanks
Manuel Lopez Toigo

You can do it, but it's going to be a lot of work! Blender isn't the best tool for making the game itself, although it's indispensable for making stuff to go in the game.
Actually, making games with anything is going to be a lot of work, but it's easier with some tools than others. (:
I would check out the Unreal Engine, which is made by Epic Games. It allows you to make games without writing any code, by hooking up blocks  together. (It still uses programming concepts, but that shouldn't be too hard to learn.) It also has a store where you can buy models and things for your game. Be warned, it's a very big download!
They have a bunch of video tutorials here, and answers.unrealengine.com is sort of like Stack Overflow for UE.
Also, they require you to pay them 5% (as of 2017-12-24) of all the money you make from your game, if you make any at all. (You can see their terms here.)

thanks, but i dont have money to pay :) some other program?

@Manu Unreal Engine is free. You pay after you start to earn money from the game. You can check also Unity.

A tutorial series on creating games in the Blender Game Engine can be found in BornCG's playlists on YouTube. This will go through the basics and provide you with some of the basic thoughts required about setting up a game.
Yes, you can make the game in the Blender Game Engine and you can make a basic game without any coding (only using the logic bricks).
@seaturtle has a good point, newer tools (than the Blender Game Engine) have better functionality and more flexibility. However, using the Blender Game Engine as a prototyping or a learning exercise could still be valuable. And you would still use Blender to model the stuff inside the game.

some tutorial in spanish?

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


text:
How to disable reference images projection on top of all objects when rendering (blender render)?
im pretty new to blender and modelling stuff but i do have a problem here which i cant solve and didnt find anyone with the same problem (maybe its too basic).
Whenever i render my scene it looks like the reference images i used in the past are projected on top of all of my objects in the scene. Those reference images are not used anymore and i removed them from all planes and "Background Images".
Here is how it looks like:

In that image i disabled the model itself just to be sure that it has nothing to do with it and created a new cube. But the outcome is the same.
Am i missing something that obvious here?
EDIT: Here is the link to my .blend file (i know the texture in it is nothing special...xD). I hope it has everything it needs. I packed the textures which i used previously as example.
To reproduce the issue you just need to switch to rendered mode (shift+z).
Blend File

I'm not sure what you did mate, but by default, background images are not being projected onto objects. Could you give a link to your .blend file? It's pretty interesting. Only sensible thing, that is crossing my mind is that you added this image as texture for one of your lights, but you didn't right?

Thank you for your prompt answers! I just uploaded the blend file.
@Mzidare Nope, i didnt even know that you can do something like that :)

The link is not working. Could you check if it's correct?

Yes i made a mistake! Now the link should work :D

You added texture to both your lamps as correctly mentioned earlier by @Mzidare so they emit light according to texture pattern. Remove them and it'll work as usual

Make it an answer @MrZak. It might be helpful for someone with similar issue.

You added texture to both your lamps, thus the image was projected onto the objects, which were lighted by those lamps. Image below explains how to check if you have a texture added to a lamp.

Wow... i accidentally must have clicked a shortcut to do that because i dont remember doing that at all :D
Thank you for your answer and the screenshot!


text:
How do you delete part of an intersected mesh from a certain direction?
When there're 2 objects intersected like this:

If I wanted to remove only the part above the green line, how would I do it? the Boolean Modifier doesn't seem to have anything to be used in cases like this.
Better view of both objects:

I'm not sure to get it, but if boolean doesn't help, you could try "knife project" tool, eg: see https://blender.stackexchange.com/questions/7928/how-would-you-cut-a-shape-out-of-an-object-using-another-object/

@m.ardito turned out a mess, probably because they're intersected and the orange object passes through the yellow one completely.

By any chance, is it possible to separate the orange object into two different objects using the yellow object as delimiter? or creating faces in between above and below, in a way that makes the part above a loose part that I can delete after separating manually?

I tried doing this with a cube: https://i.imgur.com/kllWczd.png but it was pointless, the result looks so bad it could be said to be randomized. Maybe I should deal with the loose parts first, I wish there was a way to simply convert a mesh with loose parts to a solid mesh, I'll need to use a hundred boolean modifiers on that wig.


text:
specific volume should not block light
Is it possible to set a certain volume so that it does not block the light of the world wallpaper in Cycles? It is a cloud that is overhead, but not supposed to block the light from above. Yes sounds stupid but I need that in this case XD. So the object should simply not influence the environment, but should be there.
Kind regards,
Tim

have you tried to deactivate its shadow in the Object panel > Visibility > Ray Visibility?

Thanks for you answer! I tried it two times, but everytime i remove the hook, Blender crashes. With the checkmark activated, it is rendered without any problems. Do you know what could be the reason?

mmh no I don't see what can cause this, maybe a bug in your Blender version?

Hmm really strange but i have the latest version of Blender

yes so the latest version can still have some bugs  ;)

yeah it seems so. It just worked before it crashed again and it seems to be exactly what I need :) Then I have to take a look. Strangely enough, it seems to need more processing power than when it is checked. Maybe that will also bring the crash.


text:
How to always show vertices in edge select mode in blender?
I work in edge select mode to select and delete some edges but at the same time, I want to see vertices so I can decide which edges to delete.
I do not  want to change between vertex selection mode and edge select mode.
Is it possible in blender 2.9+ to always show vertices in edge select mode?

You can have both edge select mode and vertex select mode active at once by holding ⇧ Shift and pressing 1 and 2.

Thank  you, this answered y question


text:
How do I properly add a shortcut key to run a script.?
I'm having trouble running this script I found on the exchange. how do I go about running it? My efforts are:

open blender,
delete default scene,
add a cube,
switch to scripting workspace,
create new text data block,
paste script, and
run.

Nothing happens when I move the cube only a bpy.ops.text.run_script() in the console. How do I add the shortcut key needed to run the script.
Here is the original post with script
Version 3.0
cycles
windows
ZERO coding experience

@MartyFouts Shift-Q doesn't seem to work. How would I add the entry to the keymap?

Before I show you how to add the keymap entry, here's a changed script that installs the keymap automatically.
Paste and run this version so you can use Shift–Q to run it.  However, I've also added step by step instructions for adding the shortcut by hand, if you want to stick to the original code.
EDIT: I've modified the script to be closer to how the original script performs but I didn't have time to figure out what broke between releases so it's not exactly the same.
Modified Script with keymap entry
import bpy
from mathutils import Matrix, Vector

mode_keymap = None

class RollOperator(bpy.types.Operator):
    bl_idname = "transform.roll"
    bl_label = "Roll active object"
    def execute(self, context):
        dx = self.dx / 100
        dy = self.dy / 100
        #matrix = Matrix.Rotation((dx**2 + dy**2)**.5, 4, Vector((-dy, dx, 0)))
        #matrix *= context.object.matrix_world
        context.object.rotation_euler.x += dx*pi/4
        context.object.rotation_euler.y += dy*pi/4
        context.object.location.x += dx
        context.object.location.y += dy
        return {'FINISHED'}
    def modal(self, context, event):
        if event.type == 'MOUSEMOVE':  # Apply
            self.dx = event.mouse_x - event.mouse_prev_x
            self.dy = event.mouse_y - event.mouse_prev_y
            self.execute(context)
        elif event.type == 'LEFTMOUSE':  # Confirm
            return {'FINISHED'}
        elif event.type in ('RIGHTMOUSE', 'ESC'):  # Cancel
            context.object.location = self.location
            context.object.rotation_euler = self.rotation_euler
            return {'CANCELLED'}
        return {'RUNNING_MODAL'}
    def invoke(self, context, event):
        rotation = context.object.rotation_euler
        location = context.object.location
        self.location = location[0], location[1], location[2]
        self.rotation_euler = rotation[0], rotation[1], rotation[2]
        self.dx = 0
        self.dy = 0
        self.execute(context)
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

bpy.utils.register_class(RollOperator)

key_config = bpy.context.window_manager.keyconfigs.addon
if key_config:
    key_map = key_config.keymaps.new(name='3D View', space_type='VIEW_3D')
    key_entry = key_map.keymap_items.new("transform.roll",
                                        type='Q',
                                        value='PRESS',
                                        shift=True,
    )
    mode_keymap = (key_map, key_entry)

How to add the entry by hand

Edit Preferences, and go to the Keymap tab

Scroll down until you see the 3D View tab.  Click the arrow to open it.

Scroll down until you see the Object Mode tab.  Click the arrow to open it.

Scroll down until you see the Object Mode (Global) tab.  Click the arrow to open it.  You'll now be nested 3 deep.

Scroll down until you see the Add New button.  Click it.  That will add an entry labeled "none" just above the button.  Click the arrow to open it.

type transform.roll into the box that has "none" in it.  Change the A to a Q (don't shift, just click the A and type q) and click the shift button. The edit box should now look like this:

Now you can run the script with Shift–Q

Thank you for the in-depth response I learned a lot. unfortunately, the object doesn't roll when I use the shortcut. when I press shift Q it just moves, as if I just grabbed it moving it along the axis. no rotation :(. I tried troubleshooting different blender versions and both scripts but to no avail. Am i missing an add-on in pref?

You're not missing anything.  The script was written for an earlier version of Blender and it looks like it needs an update.  When I have some time I'll take a look at what the update should be and modify the script in my answer.

Thank you! I look forward to it.

did you find a workaround?

@mehnoy not yet.  Big holiday over the weekend meant entertaining family.

enjoy the holiday

@mehnoy This script now sort of does what the original did.  I kind of like it better.  You can "tune" it by changing the two Euler related equations.


text:
Why is the baked normal map more accentuated in some parts?
This one in particular is more accentuated in the middle:

Why does this happen and how do I make it uniform? I've baked a normal map for the leather part and it didn't happen, as you can see.

hello, what do you mean by more accentuated? could you please hightlight the part you're talking about?

The part in the middle of the guard is harsher than the rest, as you can see. Pre-baked it doesn't look like this.

it's hard to say, maybe share your file: https://pasteall.org/blend/

I recalculated outside normals and applied location & rotation (before baking) and it's fine now.


text:
I want to add moment to fingers on Vincent model in blender
I've been playing with this Vincent model which I have downloaded from blender cloud.
Everything seems to be good
but while playing with the fingers part, I'm not able to bend the bones correctly

I want to clench the fist but in the pose mode
after selecting that finger and clicking on  "R"
I tried to change position but this is how it is:

Is this the way? If not, then what exactly is the way to move fingers? I've tried move and rotate commands. Is there any other process for this?
attached blender file
please have a look.

There is a common technique used in modeling hands: use the scale of a control bone to set the curvature of the finger.  If you want to move the finger naturally, in pose mode, select the red rectangle that's right above it and use S to scale it.  scaling up uncurls the finger. scaling down curls it.

Vincent uses a rig called BlenRig and you can find out more about the controls of that rig on the Blender Cloud site.

just select this in pose mode:

and move it and you will get this:

well to be fair the OP wrote "i want to clench the fist "

Thanks Blunder. I am happy that you can read. This cannot everybody here….♂


text:
Remove black default clothes in MB-Lab
How is going?
I'm playing with the latest version of MB-Lab addon creating a model. But at the rendering time, I can not remove the default black underwear, so appears the whole time there.
(Here is an example of a character with the underwear in place.
Does someone know how to do it?
Thanks.

I don't know why this question was closed for lacking clarity, as it is clear enough to be able to answer. Hopefully my edit will get it reopened.  Meanwhile, here's one answer:   Select the character and go into the material properties panel.  Find the material MBLab_generic.  Use the drop down menu to switch it to MBLab_skin2.

Thank you—this answer is better than the one poster below—consider writing it as an Answer, please.

If you go into the shader tab, you'll see a material called MBlab_generic and then whatever the asset name is.
Go into Edit Mode and click the Select button with that shader highlighted, it should select all the faces that have that black shader. Select your skin shader and click Assign, it should then assign that shader to the black sections.


text:
How do you refresh Object Mode after quitting Edit Mode
When I switch back to Object Mode from Edit Mode, the displayed model still looks the same as it was before I changed the polygons (Texture, Rendered and Solid view, makes no difference):

Is there anything to force refresh? it works just fine when I edit with Sculpt Mode instead, but I needed to remove some vertex in this part.

Blender doesn't need any special action to refresh, changes should be applied immediately without explicit intervention. What were you expecting to see that didn't update?

@DuarteFarrajotaRamos see how the model in the circled part looks different? that's what I'm trying to understand, as you say it should refresh automatically but for some reason it's not happening, it's like the changes I did in Edit Mode never happened.

Its hard to see anything significantly different in the image. If it is different it is most likely caused by modifiers. Also see https://blender.stackexchange.com/questions/70334/blender-mesh-missing-loop

I didn't use decimate (or any other modifier), that is a manual edit of the vertexes. Here is an enlargement: https://i.sstatic.net/qxPaq.gif

Possible duplicate of Blender mesh missing loop

You dont have anything on your object that would be affecting it in object mode?

@David looks like it was indeed dependent on shape keys.

Check if you have added Shape Keys to your model. This might have happened by accident. Shape keys allow you to define vertex location changes relative to the original model, and animate those location changes using a value slider. Kind of like recording a coordinate difference / offset. For character animation, this can be useful (search for corrective shape keys on this site).
When you add a new Key to a model in Blender, its influence parameter is set to 0.0 by default. That means, if you go back out to Object Mode, your model jumps back to its initial state. It's easier to show this in a short video:

As you can see, I'm adding the Basis Key (that's always the unaltered stage of the model) and a Key 1 to the model. I'm going to Edit Mode while Key 1 is still active, so I am defining a change within that key. When I tab back out to Object Mode, my changes disappear. But when I slide that Value Slider all the way to 1.0, my changes are back in place.
If this is your problem, Slide your Key 1 value to one, and then first create a new shape key from mix, and then remove all shape keys, while taking care that the new mixed key is the last one you delete:

Sometimes js stops working when I use stackexchange... oh well, this looks like it was the cause of the issue. I created a new key and moved to 1.0 then the changes automatically appeared in the viewport. I'm trying to figure out how to deal with the already 23 existing keys now.

@Amaya The "new key from mix" solution stated in the answer wil work with any number of keys. Whatever you see in Object Mode should become the content of the new key. On the other hand, if you don't care about them, you can also remove all keys at once, there is a command for that in the same shape key menu (Delete All Shapes). Better save the scene before you try that ;)  On a side note, how come you have so many of them? Accident or on purpose?

I'm editing an existing project, I changed all keys to 1.0 to see the difference but nothing changed so I'm guessing they're just placeholders, or I messed up something when importing the project and some informations were lost.

This is the result of viewport optimalisation in blender.
To resolve this you need to check Draw All Edges located in the object panel's display tab.

This didn't fix it but it was still useful, I was wondering why some edges were invisible.

no problem, I noticed aliasguru's answer was more likely the solution. Best of luck!

Is your mesh in wireframe mode? If you press Z it will go into wireframe mode and look similar I believe. You can also change it in the tab to the right of the “Edit mode” and “Object mode” tab.


text:
When I Render, it renders a still image of one of my textures and not the camera view and animation
Here is my Blend File
I've made a scene with a small tv that plays a video.
But when I click render, blender decides to render the texture on the tv only, and not the animation I set up.

https://i.sstatic.net/4VYXN.jpg
somewhere there must be an improper setting that isn't letting me render the camera view but I've searched and can't find it.
Anybody got an answer?

Can you attach the blend file?

Cant tell what might be wrong from your image, could you upload the .blend file? http://blend-exchange.giantcowfilms.com/

I see you have animation on your camera, maybe your camera is so close to the tv screen at that frame thats all that renders just guessing

Did you setup strips in Video Sequence editor? see https://blender.stackexchange.com/questions/5285/came-back-to-a-blender-file-now-not-rendering. Or did you set up compositing nodes which might rewrite the result? Make sure that camera you preview animation from is the camera used in render (active)

okay I attached the Blend file.

You have your composite node set up to apply your movie over top of the entire render.  Just uncheck Compositing under Post Processing


text:
Import fbx from Nuke/ Maya and have the correct orientation
What is the proper way to import fbx from Nuke ? Does anyone has a successful experience ? I always fail to orient the scene properly. The best setup is to set FORWARD to -Z forward and set UP to Y up but the X axis is always reversed. Any trick for this ?
Thanks

No, i'm imported to Blender, not export. There's no ascii option in blender import fbx setting. Also when i write fbx out from Nuke and set as ascii, Blender will throw error saying "ascii in not supported...." . I'm using blender 2.8.

I find a way to fix the rotation , this is my setup in fbx import parameter :  turn on manual orientation and set forwar to -Z forward and up to Y up. Then DO NOT use the camera directly , but used it as reference only. Create a new camera, go to constraint property and choose 'child of' and select the original camera as parent. now clear out all translation/rot/scale of the new camera and set X and Z rotation to 180. Now i can see through the new camera.


text:
uv pack islands to fit/cover all area
I have uv layout like in the image. I just want to force it to occupy the empty area in the right (Right now it's only cover the left area) . How can do this ? but keep the overal rough shape without making all become square. So basically just like to scale it X direction but do it automatically to fit the space.
Thanks
blend file :
https://drive.google.com/drive/folders/18DxOHq_wxzXHrv7gVvsswGNwl8D-4Lwe?usp=sharing

Have you tried Scale to Bound? The option is available just after your unwrap, on the bottom of the left menu (activated with T when you are in 3D view)

@moonboots i can't find 'scale to bound'. There's similar setting but not in unwarp. It's in smart uv project , called "stretch to UV bound". But using smart uv project , it  will break the island, i'm not getting a single continuous island.

so I guess you've tried wall the options of Unwrap? Conformal instead of Angle Based and unclick the Fill Holes option?

@moonboots i update my post , i've included the link to the .blend file. Pls check it out.

if you go in top ortho view, enter in Edit mode, press U > Project from View, and click on the Scale to Bounds option on the bottom of the T menu, you don't get what you want?

Great , that's what i'm looking for . Thanks a lot.

Choose Top Ortho view, enter in Edit mode, select the whole mesh, press U > Project From View, and click on the Scale to Bounds option on the bottom of the left menu (displayed with T), or choose directly Project From View (Bounds).


text:
How to make the child object to match the location and rotation of parent object
I have 2 objects : A and B. A will become the parent object, it has position/rotation animation. B is static object (no animation) . I want the B to be the child of A so i want B to move/rotate exactly as A ... but also i want to be able to move B in its local coordinate. This is like regular parenting, but i want B to jump to A and match A orientation.

Are you trying to animate the transition from the untransformed B to the transformed B?

A has animation ( A can be an empty object) i want to parent B to A so B (child) will have the same movement /rotation/scale etc as A (parent) while B can still have its local indendent movement.

It sounds like regular parenting will do the job, unless you want to animate the "jump" where B enters A's reference frame. In that case, you could use a "Child Of" constraint on B, targeting A, and animate the influence property of the constraint from zero (off) to one (on).

As Justin says, you can easily do what you want to do with simple parenting: parent B to A, create some keyframes for the movement of A, create some keyframes for B when you want it to come closer or go away from A, where exactly is the limit of this simple method?

Thanks i already got the answer below, so when i clear out/reset position/rotation of B to 0, it should jump to A as if the A position is the 'world' of B.

yes but by default A will be the world of B, if you select B and press alt G, B will stick to A, is it not what you want?

if i press alt G,  yes .. B will stick to A , but in one condition, when parenting the A (parent) has to be in (0,0,0) . If A not in (0,0,0) when parenting , then press alt G won't make B to the center of A. The fact is my A is animated so it's in arbitrary position.

The trick i used to do is to add temporarty keyframe and set A pos/rot/scale to 0 then do the parenting. After that i will delete this keyframe.

oh ok I understand

use child of constraint and press alt G (alt R resets the rotation) to Reset the location of object B.

This way, i can't move/rotate B anymore.

if you want to still be able to transform the mesh use the child of constraint

nice, it works perfectly. Btw how can i bake this constraint if i want to export to fbx ?

i know very little about animation so i can't help you with that you should post another question.

Ok no problem , thanks a lot for the solution.


text:
How to simulate particle so bigger particles will fall faster than smaller ones
In Blender, i have a particle system with random size of particle element. How can i simulate so the bigger particle will fall faster than smaller particles. The idea is to have different 'drag' effect to each particles where the bigger the particle, the smaller the 'drag' will affect it or in simple word : the bigger particle will easily fight air resistence so it will fall faster. Is it any parameter to set to handle this task ?
So far i can think only to create multiple particle system with different 'drag' value then combine those particles systems.
edit :
additional notes...
 i'm not trying to simulate the ideal physical world, but real world. in ideal world v(speed) is not affected by mass, but by acceleration (a) or in this case gravity (g). v=v0+gt. and since the g is constant and no v0 (initial velocity) then the V will be the same -> in ideal world bigger and smaller fall the same, the only different is the energy need to stop them. So i want to simulate the real world where the bigger mass will 'easily' fight air resistance as its force (f=ma) is bigger so the air don't have enough energy to stop them. simple example : the real world like when bullet hits a wall and when debris is falling , the big chunk will fall faster (air can't hold it) while the smaller debris just need to float before hits the ground. The story will be different if there's no air.
Also what i mean by bigger particle is bigger in term of mass not just the volume. Bigger volume does not neccessarily have bigger mass. As in my example : bigger chunck of wall hit debris. Also i'm just curious if this can be done in blender simulation, i know for my case i can solve it with other way, but i'm just want to explore how far this blender sim can go.
Thanks

I'm not exactly sure what your end goal is but you might be able to use Soft Bodies. You can  apply different masses to them.

@Dontwalk certainly it could work, but OP is talking about particles so we can loosely assume that he has in mind a lot of them. In this case using soft bodies would be highly impractical resources wise. His idea about using multiple particles system (you can assign to them different mass and also a drag) seems the best way to do this. My answer contains information about one particle system.

@LukeD - I CLEARLY said I did not know what his "end goal" was. I was just offering up a "possible" alternative NOT in the "Answer" section. If it had to be particle system based I too would use multiple particle systems.

@Dontwalk I also clearly stated that we can "assume" taking in consideration before mentioned particle system and I didn't said that your alternative is invalid, just that it is impractical.

@LukeD - I NEVER assume anything. Just trying to help out... In addition maybe he or another reader might not have known that rigid bodies could have different masses and could use that approach in another situation. Knowledge is power...

@Dontwalk, well if you do not know the end goal, and yet you are proposing some solution than you are assuming something, am I right? Also you should have pointed that your proposal has huge downsides like being much heavier than asked particles system. Moreover talking about different situations isn't best suited for question-answer site. After all this is not the place for such irrelevant discussions. For me this is end of topic. Happy blending!

@LukeD - ??????

If you don't want a real world physics involved You can do that easily with Particle Texture.

Let assume that you want the particles to move downwards (-Z) emitted from a Plane.
Set the particle system Field Weights - > Gravity to 0
Set the direction of the particles to Normal : -3
Optionally, set the all the particles to be emitted from the Start frame
Set the size of the particles to some value. You don't need to randomize the size with the Random option at this point.
With the Emitter object selected go to Texture tab in Properties editor. Make sure you're in Particles Textures .
Create a new Texture.
Make the new texture to be of Type: Clouds and for Basis chose Cell Noise. Let Coordinates be Generated.
And finally in Influence deselect all and turn on Size in General and Velocity in Physics.

In this way the color of the texture will control the size and velocity of the particle by it's initial location. Lighter values will increase the size and velocity. Darker values will do the opposite.

I'd say this is the answer to go with.

This will be kinda 'nay answer'. I'm also not physic expert or amateur, not even physics noob so don't take my word for it.
I've read those:

Why do heavier objects fall faster in air?
DO HEAVIER OBJECTS REALLY FALL FASTER?
How does mass affect the speed of falling objects?

First of all your statement is invalid.
Bigger particles will not fall faster and certainly can't fight air resistance better than smaller one. That's because bigger ones have bigger size thus air resistance is greater - assuming they have the same mass.
They could fall faster though with presumption that they have significantly greater mass than small ones. Bowling ball vs. ping pong ball case.
Why we can't do this with Blender Particles?
As you can see in below example smaller ones are falling significantly faster than the bigger ones. This is because by default Blender keep the same mass for every particle so the difference is only due to particle size. Bigger size = more air resistance.
We have option Multiply mass with size, but after checking it only thing you can see is that this difference is just smaller. This is because mass will not be significantly different between particles. Really quick calculation from my example:
Mass * Size
0.01*0.3 = 0.003
0.01*0.2 = 0.002
0.01*0.1 = 0.001
All of this is because we can't assign different mass per particle (size/group) in Blender other than multiplying mass with size.

Thanks, but i'm not trying to simulate the ideal world. Pls check my first post , i just edit to add some notes. since i can't paste it here, it's too long.

@andio real world case is described when I wrote about Multiply mass with size. Sadly the difference between mass vs. air resistance is to low to simulate effect you want to achieve.

I am not sure how many particles you want to use but an option would be to add a Rigid Body World and use Rigid Bodies.

You can adjust the mass of the Rigid Bodies separately.


text:
With Geometry Nodes is there any way to align the Pivot Point of an instanced objects with the Geometry Nodes point?
What I want is for the instanced object's Pivot Point [actually origin - ed] to align with the Geometry Nodes point with is instancing it.
The objects Pivot Point:

This is what it gives me:

And this is what I want:

My node setup:

Thank you!

What exactly are you asking?  What you're showing in your picture seems to be the instances, rotated in the same way that the points are rotated-- rotated about the pivot of each point.  What pivot do you want?  Maybe you could make a quick pic of something like what you're after?  (It's probably possible to do.)

It's still not clear after the edit, could you add a diagram or an example of what you're trying to do ?

Edited the question and hope it's more clear.
I noticed that what I was asking was actualy not even what I wanted.

I think it's because of the point scale that is in float, i jut make your same set up and it's working correctly, the only difference is the point scale, mine is in Vector. here

Wow @Emir, thank you!
But now I wonder why?


text:
How do I assign Keyboard Shortcuts?
I would say about only 50% of my keyboard shortcuts are working.  I'm on a Mac running 10.13.6.  I can't seem to find the version of Blender I am using, but I've downloaded it within the last month.  I can't find anywhere in preferences to assigned hotkeys.  Any suggestions?
Bill Shortridge
Sebastopol, CA

Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.

If you click on the Blender logo in the menu bar, to the right of the File menu and select Splash Screen, it will tell you the version in the splash screen.

It should also tell you the version in the lower left corner of the Blender window. If it's not visible, right click there and enable Blender Version in the popup.

Keyboard shortcuts are under keymap in the preferences.

To set a shortcut, search for the command by name in the search bar, find the command in the list, and select an existing shortcut to replace.  Click on the shortcut and key in the replacement.
It's also possible to change short cuts using the right mouse menu:

hover over a menu entry or other item that can have a shortcut.
right click
select Assign Shortcut

As a Mac user i used this:

Go to preferences (shortcut: COMMAND , while the cursor is in the 3d viewport), click on input and check

emulate numpad (if you don't have one)
emulate 3 button mouse (if you don't have one)

This should solve some shortcut problems which includes numbers.
If you still have problems you can search in keymap for other shortcuts and change them as you like.
If still a shortcut does not work, let us know.
It would be good if you would have given us an example which specific shortcut won't work for you so we could give you a more specific help.


text:
Show object only on certain frames by script
I am trying to figure out how to write a script where I can set an array of frames on which the object is rendered and hide it from render on the rest.
fe. [1, 2, 3, 7] => the object would render only on frames 1,2,3 and 7.
Any help is appreciated!
Thanks.

Your code might look like
import bpy

visible = [ 1, 2, 3, 7 ]

# Assume that the active object is the one being hidden
object = bpy.context.active_object

# Initialize to hidden.  You can delete this if your first visible frame is frame 1
object.hide_render = True
object.keyframe_insert("hide_render", frame = 0)

# Walk through the array, adding keyframes
for frame in visible:
    object.hide_render = False
    object.keyframe_insert(data_path="hide_render", frame=frame)
    object.hide_render = True
    object.keyframe_insert("hide_render", frame = frame+1)

That hides the object from the render for every frame except those in the list.
This works because render visibility is called hide_render and is False when the object is visible in the render and True when it is hidden.  So we unhide it and set a keyframe.  Since you only want it visible on specific keyframes, we advance to the next frame, hide it again, and set a keyframe.
The initial hide is in case there are frames between the start and where you first want to display the object.  Your example starts at 1, so you don't need this code, but if you started at a later frame you would.


text:
2D interface question
I can create a new file in General, then add a 2D Animation tab to get into 2D.
I also can create a 2D Animation file directly.
What's the difference between these 2 ways?

quite simple, General file will give you piece of tabs that are most useful in General, Sculpt will give you tabs that mostly sculptors use, 2D animation will give you what 2d animators in Blender will probably mostly need, that's all, also If you use 2D animation file, you already have your file prepared for animation with Default Stroke, General is prepared with Default 3D cube, sculpting is prepared with default cubic sphere etc

@MikoCG This should be posted as an answer, not as a comment...

I didn't think that such a basic explanation is worth to be an answer... I hoped that someone will give more in deep explanation


text:
How can I reference the list of objects/materials in a scene using python?
I am trying to create an add-on that has a feature that allows the user to select up to 5 objects that exist in their scene. To do this I've created 5 enumerators, however, I'm struggling when it comes to the "items" parameter. So far I've figured out that an object is stored in bpy.data.objects[""].name, but I can't find the location of the list/dictionary for all existing objects in the scene in order to reference it in the code.
Is this possible to do? If so how can I code the enumerators to use the list/dictionary of existing objects?
Side Note: I plan on doing this with the list of existing materials within the scene as well, so would it be the same deal as the objects?
I would really appreciate it if somebody could help me figure this out, thanks!

My code:
import bpy

class Object_Enums(bpy.types.PropertyGroup):

    enum1 : bpy.props.EnumProperty(
        name= "#1",
        description= "sample text",
        items= [

        ]

    )

    enum2 : bpy.props.EnumProperty(
        name= "#2",
        description= "sample text",
        items= [

        ]

    )

    enum3 : bpy.props.EnumProperty(
        name= "#3",
        description= "sample text",
        items= [

        ]

    )

    enum4 : bpy.props.EnumProperty(
        name= "#4",
        description= "sample text",
        items= [

        ]

    )

    enum5 : bpy.props.EnumProperty(
        name= "#5",
        description= "sample text",
        items= [

        ]

    )

class ADDONNAME_PT_main_panel(bpy.types.Panel):
    bl_label = "ADDONNAME"
    bl_idname = "ADDONNAME_PT_main_panel"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_category = "ADDONNAME"

    def draw(self, context):
        layout = self.layout
        scene = context.scene
        mytool = scene.my_tool

        layout.prop(mytool, "enum1")
        layout.prop(mytool, "enum2")
        layout.prop(mytool, "enum3")
        layout.prop(mytool, "enum4")
        layout.prop(mytool, "enum5")

        row = layout.row()

class ADDONNAME_OT_my_op(bpy.types.Operator):
    bl_label = "Operator"
    bl_idname = "addonname.myop_operator"

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

classes = [Object_Enums, ADDONNAME_PT_main_panel, ADDONNAME_OT_my_op]

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

        bpy.types.Scene.my_tool = bpy.props.PointerProperty(type= Object_Enums)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)
        del bpy.types.Scene.my_tool

if __name__ == "__main__":
    register()

Suggest considering a PointerProperty(type=bpy.types.Object) instead of an EnumProperty. It will give you a drop down of objects for free.

You can list all of the objects in the scene with
for object in context.scene.objects:
    print(object.name)

since context.scene.objects contains all of the objects in the scene.
Version dependent in Blender 4.2.1 LTS the loop command is
for object in bpy.context.scene.objects:

If you only want to list each material once
material_set = set()
for object in context.scene.objects:
    for material in object.material_slots:
        material_set.add(material)

for material in material_set:
    print(material.name)

works because each object has a list of material_slots
or you can combine it all
for object in context.scene.objects:
    print(object.name)
    for material in object.material_slots:
        print('\t' + material.name)

If you want to see which materials each object contains.
Given that you know how to list the objects, it's easy to adapt the loops to use them for your enumerations.

Oh, duh! Once I read over the code you provided it became glaringly obvious haha. Thank you so much!

Note that sets have a random access rule so you might experience flickering when iterating over those in the interface.


text:
How to create a 3D virus envelope like this in image below?
I got the lipid bi-layer but just a plane of it, I need to make a aspherical envelope of virus, how can I recreate it in blender?

Link

Could you show screenshots of what you got? It will be easier to help you

Maybe related https://blender.stackexchange.com/questions/86541/deform-an-array-of-objects-without-modifying-its-geometry-just-the-relative-pos

https://ibb.co/mijQqR

Might be worth exploring "Meatballs".

Couple of specific questions: Is the end goal an animation like the one above? Is the end goal a 2d or 3d result? How realistic are you trying to make the end result? I have an idea for how to do an animation in full 3d like the one above that I need to test, so any specifics would help me get you an answer much quicker.

Here is a link as well to what I gather is exactly what you are trying to achieve. It may be worth trying to contact the author to find out how they achieved this result https://www.reddit.com/r/blender/comments/6ewo2s/animation_my_take_on_a_lipid_bilayer/?st=jbn8yc4k&sh=6dd47ba9

If you upload and share the blend file with what you’ve done, it will make it easier to assist.

@Dontwalk Do you mean "Metaballs"? :-P

Hi user1853, I ended up using a few of what everyone here have adviced....everything goes well thanks for everyone!!

I don't know if you still need to complete your work, but this tutorial is great for designing a coronavirus model. https://www.youtube.com/watch?v=bgm2chv6Z-o

The virus model and the animation of the merging into a cell wall can be generated using animation nodes.

Overview

The virus is formed from 3 meshes for the exterior surface, the interior surface, and the contents. Two additional meshes are used for the lipids and proteins on the surface. Animation nodes are used to place the lipids and proteins on the surfaces.
To animate the merge of the virus and a cell wall, the animation nodes are used to move the lipids and proteins from their initial position to their final position. This is done by moving the location of these items along an interpolated path between the initial and final mesh.
This example was done using Blender 2.79 and Animation Nodes 2.0.

Creation of the Virus

Create a lipid model. Once this is created, choose a scale so it can be used for the virus and the cell wall.

Create a model of the surface proteins. This should be in proportion to the size of the lipid model.

Add a small 'Ico Sphere' to represent the contents of the virus.
Add a larger 'Ico Sphere' to model the interior surface of the virus before the merge. The image below shows the virus contents and the inner surface.

Add another, even larger 'Ico Sphere' to model the exterior surface of the virus. The exterior sphere should be placed so the distance between it and the interior sphere is about equal to twice the length of the tails on the lipids.
Create the animation node trees as shown below for the inner and outer surfaces. The key concept is that the mesh for the ico sphere has vertices with both location and orientation (normals). This can be used to position the lipids and proteins. By mixing the lipids and proteins randomly on the exterior of the virus, the desired 3D structure is obtained.

Animation of the Merge

To move the lipids/proteins the animation is broken into 4 equivalent parts: the interior of the virus, the exterior of the virus, the top of the cell membrane, and the bottom of the cell membrane. For these 4 parts, the same kind of solution is applied. A source mesh is used to initially place the lipids/proteins. A destination mesh is used to define the location at the end of the animation.
For the sake of brevity, only the exterior of the virus will be explained in detail. A similar approach is used for the interior, top surface, and bottom surface. The ico sphere for the exterior is created. The mesh is duplicated and edited into a flat surface. This surface is made so the lipids/proteins will follow a simple path from the eco-sphere mesh to the flat mesh.

An animation node network is created to position the lipids and proteins as shown below. The position and the normal for the vertices is used to the lipids/proteins change their orientation when moving.

Similar networks are created for the interior, top, and bottom.
The meshes for the interior and exterior of the virus are animated moving towards and through the cell membrane. This helps make the merge look smoother.
The virus contents are animated moving with the interior and exterior meshes and finally into the cell.

The blend file can be found here:

The key technique to create this animation was by Jacob Verburgt at Milwaukee School of Engineering, Class of 2018. His original animation is at https://www.youtube.com/watch?v=9cV8KBup7Eo
Thanks to Brenticus to pointing to his animation on Reddit.

A good starting point will be the dupli faces option. An icosphere serves as the basic shape for the surface. This should give good packing of the molecules in the lipid bilayer.
Take one molecule of your bilayer, and parent it to the icosphere. In the Object tab of the sphere, set Duplication from None to Faces.
This will give you, after some fine tuning of sizes and subdivision of the icosphere, something like this (I have deliberately cut a hole in it to reveal the structure):

To make it fancy and add the bigger molecules, I would add a second icosphere, but this time use a particle system to randomly spawn the all the additional proteins and glycoproteins and whatnot.
This is for a static model because the OP does not mention the need for animation. I think it could be animated to some extent, but then I would suppose using only particles and force fields is the better solution.

Make a few cuts in an ico sphere
Then use a particle system, to instance the 'skin particles' on the ico sphere.
Next use shape keys for the deformation animation.
PS maybe 2D will be be easier to understand.


text:
How to animate a beating heart?
I would like to animate a heart pumping (Realistically) like this video below.
https://www.cgtrader.com/3d-models/science-medical/medical/animated-realistic-human-heart-medically-accurate
Does anyone know a Python script (it can be animated, does not have to be Python)  or can point me in the right direction for this?
I already created the heart.

Why Python? What is wrong with keyframes? Do you also need a model or you already have one?

It does not have to by Python, It can be keyframes. From the link I posted it almost looks like a wave modifier. I just figured maybe someone wrote a script to automate this. Yes I already created a heart model.

Are you looking for a relatively easy way to generate the pumping animation like the example at the link? Per the notes at the link, the animator manually generated the motion using something like keyframes/shape keys using CT scans as a reference.

Good catch I didn't see the notes below. I was in a rush for work and was looking for a quick way to animate the heart. I ended up just using a wave modifier on the different heart valve and although it was good enough for my job it didn't look as good as the reference video. I believe shape keys would of been best for this. Thanks.

An animation of a beating heart can be generated using a fixed geometry and armatures to animate the beating. This method is a way to generate the complex motion by animating a few elements.

(Geometry from Blendswap.com - courtesy Bruno Laurencich/elZancudo)

Procedure:

Load heart geometry as a single mesh

Add bones for the left atrium, right atrium, left ventricle, and right ventricle. Place the bones roughly at the center of each of these parts of the heart. These bones will be animated to make the heart pump.

Add bones for the arteries and veins. These bones will keep that part of the heart relatively stationary. The image below shows all of the bones in the model.

Select all of the bones and join them into a single armature. This can be done using ctrl+J after selecting all of the bones.
The armature is connected to the mesh using automatically calculated weights (see armature automatic weights). This allows each bone to affect only part of the mesh in the heart. This is done by selecting the mesh, then the armature, then hitting ctrl+P. The menu which appears will have an option for armature deform with automatic weights. Select that option.

This will automatically setup all of the weights for the different bones on the mesh. The weights for the 4 bones in the heart are shown below. For finer control, the weights can be edited.

To keep the rest of the heart still the other bones are affecting the veins and arteries. One of these is shown.

To simulate the pumping, the bones in the center of the left atrium, the right atrium, left ventricle, and right ventricle are scaled. Over the timeline, these bones are scaled between 0.9 and 1.1. In the animation that follows, the bones in the 4 chambers of the heart are animated by scaling the bones, this causes the rest of the mesh to smoothly pump. Because the other bones are kept in the same position and with the same scale, the veins and arteries stay relatively still. Looking closely at the following animation shows the small changes in the bones driving the changes in the mesh.

Adding material properties and rending gets the final result.

The blend file can be downloaded at:

You need shape keys.
Model the object (you have done that already).
Add two shape keys.
Select the second and edit the heart to be in the other beating position.
In object mode drag the "Value" slider up and down. See how the heart changes between the two shapes.
Add more shapes if you need. Select each new key and edit the heart.
When you have enough shape keys, you can keyframe between them.

Also if a single shape key doesn't give enough detail and realism to the motion, you can always create multiple shapekeys that turn on sequentially (like subdividing the motion).


text:
Creating an implant for spinal surgery - workflow questions
Pretty new to Blender here and with a pretty specific set of questions.
The situation: I'm a vet looking to operate on a dog's spine.  I want to put screws in a very specific location to avoid damaging the spinal cord (the corridor is about 4mm in diameter - I'm going to use 2.7mm screws with a 2mm hole drilled at exactly the right angle).
My strategy:  I have a CT of the spine that I have extracted into CT slicer, exported as an .stl file and made a 3D printed model of.  I am planning to 3D print guides on the left and right side of the spine that are shaped to snugly fit the spine with holes already placed to guide drilling before the screws are placed.  I have imported the .stl of the spine into blender.
My plan (halfway through completion):

Make a new cube (several thereof), size and rotate for the
approximate angle, place over the appropriate region of the spine
Add a Boolean (difference) modifier to the cube with the spine as the target
Slice the (now shaped) cube in half to give a left and right side that can be placed on the spine in surgery to fit
Make a new cylinder the right diameter and length for the drill guide.  Rotate and place into each guide, add a Boolean (difference) modifier to each guide with the cylinder as a target

My problem:

With a complicated 3D shape such as a spine, I need to carve the guides appropriately so that they can be slotted into place onto the spine from either side.
I have been doing my carving with Boolean modifiers applied to each guide and extra cubes as needed for targets to shave off appropriate areas
Sometimes the carving leaves the external mesh of the guides intact, sometimes it doesn't and I have to make new faces where old ones have been removed (not very straightforward but achievable by tabbing into edit mode, selecting edge loops via multiple vertex selection, using the C button to highlight select vertices then F to make faces where necessary)
Overall I'm getting there but this is an incredibly slow process given that I still need to print the shapes and test them for fit on my printed spine before going into surgery.

Surely there is a quicker way to do this?  I tried placing each guide on the spine and moving it along the X axis in incremental stages towards the middle (where it is supposed to be), applying Boolean modifiers along the way, but this invariably disrupts the mesh and leaves me with a million faces to recreate (and not confident I'm recreating them in the right places).
Carving as required:

Recreating faces when the carving doesn't work:

This is possibly the most interesting question here! Please take pictures of the procedure. I know there are many other blender users that would love to hear about this. (Other blender related medical uses have been featured on blendernation.)

In my opinion, the workflow seems appropriate. Booleans can be quite tricky because in order to make them work you should work with "good meshes" (correct normals orientation, watertight, no overlapping faces...), but I think is the right way to follow. Make sure you always work with volumes, never surfaces. When did the meshes start being messed up?

What version of blender are you using? A native boolean implementation was recently added in blender 2.78a. In this version you can choose between BMesh (the new solver) and Carve (the old). I haven't found one to perform consistently better than the other, but I have noticed that often one works when the other does not.

how long is there before the surgery? I might just put a bounty on this - but the system is making me wait to post one. (Blender + 3D printing + Dog is an AWESOME combination - especially when you're a vet 3D printing medical devices!)

Thanks folks - it's good (and bad) to hear I'm not missing something completely obvious.  I'm using 2.78a and the BMesh method for boolean carving and can't seem to pinpoint when carving will work and when it will need to be tweaked.  I'm putting the surgery off as long as possible (at least 2 weeks) to try and get this one right - and will definitely take pictures

@Sambo42 I assume the mesh is quite manifold? If so, I don't suppose it would be possible to upload an example of a troublesome part of the mesh for closer examination?

Bottom line here is that Booleans are not very good friends with Mesh models, they are more at home in the CAD Software family, with Solid Modeling and NURBS based geometries. With meshes things end to be always be very skittish and error prone. If feasible totally sanitize your scanned spine mesh as much as possible, before proceeding with any Boolean operations. Also make sure you narrow it down to the smallest simplest subset of the whole scanned data. Remove all unnecessary parts, the simpler the mesh the faster it will work and the less error prone it will be.

Also avoid NGons, those tend to make things harder, I think. Triangulate your mesh before making any booleans.

Hopefully this is captures the problem and a solution.
To create geometry for a fixure which can be lifted off a complex geometry like a spine, you can use a high resolution mesh and the shrinkwrap modifier. The resulting object should be 'water-tight' and able to be 3D printed.

Detailed instructions:

Import the spine geometry.

Add a plane which will be the dividing plane between the upper and lower clamps.

Select the spine and the plane. Use ctrl-J to join the geometry.
Add a cube for the upper portion of the clamp. Size it so it covers the area to the clamped. Keep it above the spline. This block should NOT intersect the spine geometry.

Select the cube and use tab to enter the 'edit mode'. In the edit mode, select the vertices on the bottom of the cube. Use subdivide to create a high resolution mesh on the bottom of the cube. With the bottom of the cube selected, add a vertex group and name it 'bottom'.

Use tab to return to object mode.
Add a shinkwrap modified to the cube. Project the shrinkwrap modified in the 'z' direction and only shinkwrap the 'bottom' vertex group. Set the spine as the target. This will project all of the vertices in the bottom group down onto the spine. Because the plane was added earlier, the shrinkwrap will either touch the bone or the separation plane. Since the vertices only project downward, the block can be removed by lifting off the spine.

You are done! Some other things to consider are increasing the mesh resolution in areas of interest to better match the scanned geometry and adding offset to the meshes to provide some fitting tolerance for installing and removing the blocks.

If additional clearance is needed between the scanned spine and the mold, the diplace modifier can be applied to the geometry. This will project the surfaces of the bones outward a little and give additional room. The image below shows the original spine in geometry as a solid and the displaced geometry in the wire mesh.

I am a veterinarian too and upon trying your work flow do not encounter cut geometry problems. Are your block objects dense meshes (subdivided) or are they low poly? I used a fairly dense mesh block for the attached images.

The exterior of the cut block:

The interior of the cut block:

Some feedback - sadly things didn't work out as I planned but going to keep going.  So @Ed_Tate your method worked perfectly. Or almost.
The process:
1) Import the segmented dicom spine file (from an .stl initially) and set up the trajectories

2) Add a plane at the appropriate angle

3) Add a cube, size appropriately, tab into edit mode, subdivide the underneath (I used an 8x subdivide).  I worked out that I had to rotate the spine first so that a z-direction projection would approach it from the right way...

4) Create a new vector group from the subdivided surface, tab out of edit mode, add a shrinkwrap modifier specifically to that vector group, project it in the Z direction (important to tick the 'positive' box in the constraints otherwise nothing happens with the joined spine/plane as the target.  If you don't restrict the projection to the z direction you get some odd shapes as well...

5) Add a difference boolean modifier to the block using the trajectories created in step 1.

6) Import the shape into a new file (using the append function), export as an .stl again, check the shape in kisslicer before sending it off for 3D printing (then sterilise prior to surgery)

So why didn't it work?  I played around with different offsets - 0.5, 1.0 and 2.0mm - I wanted the fit to be close enough that my trajectories would still be accurate but had to be able to get the piece into place.  and in the end still couldn't get the guide in place.  I think the problem was that the offset (I assume?) only applies in the plane you've projected in (z direction) meaning that there was no clearance around the bone in the x or y planes.  And the other issue is that taking the dicom image and exporting it relies on segmenting the CT scan - and it can be remarkably difficult to tell from CT what is bone and what is cartilage.
However - I will keep trying....

A note was added to the original answer to show a way to add room to the fixture using the displace modifier. This added extra space to the mold along the normals to the surface of the spine.


text:
Geometry Nodes: Distribute on texture in a grid
I would like to distribute evenly spaced geometry (like in a grid) on a globe so that only the black marked area is filled.
Currently, the objects are only randomly distributed via the Geometry Nodes tree in Blender 2.93.5.
If there is only a solution with Blender 3.0 (alpha), this would not be a problem.

After looking at this thread
here's what I found out:


text:
Realtime transparent painting
I want to create transparent texture using texture paint. Everything works fine but i'm just not convenient of how to preview the trasparent area. How to paint the transparent area and see the result instantly ? I'm using Blender 2.8. Eevee can't show transparent texture (i don't know if this is a bug) so i use cycle to preview. The problem is when i paint in cycle mode , it records my strokes, but doesn't update that transparent area i paint. I only can paint  black on white texture in realtime (when turn on overlay texture paint).
I just want to paint that transparent texture and see the result immediately.
Any idea ?

What is BG? Background? Is EEVEE answer acceptable?

Need screen shots of what you have now, as well as notes on set up and which Renderer and which version of Blender, etc.

Hi, sorry if i'm not clear enough. I 've just uploaded some images and edit my questions. Basically i just want to paint the transparent area and see the result (hole) immediately.

Using a comment because I am unsure of your issues here - but here is a file that works for me using Eevee and a generated image set up with nodes, material set to Alpha Blend in properties instead of Opaque. https://drive.google.com/file/d/1WGAunKcz3OMFzGp5XfOWqRGvq0sSJWxX/view?usp=sharing


text:
How to preview texture correctly with its UV in object mode?
I add 2 image textures and combined with mix node. Also i create 2 separated UV for each these textures. Everything works in render with no problem. It's just how can i preview selected texture correctly in object mode.
So i'm in object mode and set the viewport shader to solid and turn on texture. Now, in shader editor, if i click any image texture, it will be displayed in the viewport. The problem is it use the whatever current selected UV in property panel. I don't want this behaviour. I already attach UV map node and set the proper uv for each textures (and it's rendered correctly). So what i want is if i click any texture in shader editor , it should displayed with the correct UV i've attached.
Is it possible ?
video :
https://youtu.be/vUf8D8j63Ck

You should state what rendering engine you are using when asking any questions about shading. I assume Cycles. It would also be a good idea to  share screenshots of your material nodes. Have you tried Material viewport shading mode?

Hi thanks , it's already mentioned in my post, viewport shader is solid and set color to Texture (bold text). I just forgot to mention it's Blender 2.8.  I've just uploaded the small video to show that when i click the texture in shader editor, then in the property panel (right side) when i click back and forth from uv1 and uv2, the displayed image in the viewport also updated to match whatever uv i cliked. I don't want it . When i click the texture in shader editor, it should use the correct UV which i explicitly already apply using 'uv map' node.

In 2.80 it's called Look Dev instead of Material viewport shading mode.You should try that. Please mind the terminology - rendering engines and viewport shading modes are different things. If you used current version 2.79b, different things could go wrong if you use BI or Cycles in this situation. It is always a good idea to mention the render engine used that in your case could be Cycles or EEVEE even though it seems it might not be relevant in this particular instance.

That doesn't appear  to be possible with Textured shading mode in 2.79 as it doesn't use nodes in the Node editor. What you ask is generally possible with Material shading mode in 2.79 (make sure to connect output of certain node to the material output or Emit node with Node Wrangler) or LookDev in 2.8

Ok, let's make it simple: I open blender 2.79. create a plane and add image texture. Now create 2 different UV map. Set viewport shading to texture or material so you will see that texture. Now in property panel > uv map, click the 2nd uv map (just click the name, do not click the icon to make it active). You will see the texture will update as if the 2nd UV is applied. My question is why do i have that behaviour? The 2nd uv i created is not bound to the texture . The 1st UV is the active one. But why click the 2nd UV will update my texture preview ? I know it won't affect the render but why?

The second UV map is bound to object data as well as the rest of UV maps. Old viewport in 2.79 and prior used that to preview textures in Textured shading. I don't get your question now; switching UV maps just to preview them and not making them active allows to bake from active to selected UV maps and use new UV mapping for new texture, in some cases it's useful.

That feature is great, but i has nothing to do with showing the selected UV on the viewport. why clicking on the uv will affect the appearance in viewport ? For those feature you said , all i need is to relayout the new uv in uv editor , add emision shader in shader editor etc and just bake (emit mode). I just can do it wihout need to preview the selected UV on viewport. So i think in this case, the UV preview on viewport is meaningless. maybe you can show me that the  preview is useful.

Have your image loaded as a texture
Set your material Base Color to the texture you want
With Object Mode in the 3D Viewport Set Viewport Shading Color to Texture

If anyone can elaborate on how to attach multiple textures to a mesh's UV that would be excellent

!


text:
Blender 2.8 : how to render selected file output node in compositor without having to re-render the scene?
Is it possible ? it's silly if i want to just render a file output node then i have to rende the whole scene. Why there's no render button in this node so i can render  only that node ? Also is there any way i can render batch multiple selected file output or render layers nodes ?
Right now, to render multiple render layers node, i have to click the render button on each of those nodes one by one.

exr is not what i'm looking for, If i change selection then it means i have to re-edit the exr over and over again. i simpy want to render whatever output i select (pipe it into a file output node). I just want to create some custom texture in compositing without have to go to photoshop. So at least, a render button on each file output node will help a bit. Even better i can select multlple output node and simply hit a hotkey to run batch render. Sometime if i just want to blur and color correct a texture , i should be able to do it in compositing without have to open external app.


text:
Blender python : How to use environment variable?
I did this :
import os
print(os.environ['BLENDER_USER_SCRIPTS'])

and got error :
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
  File "C:\Program Files\Blender Foundation\blender-2.80.0-git.16fc62e15f0-windows64\2.80\python\lib\os.py", line 678, in __getitem__
    raise KeyError(key) from None
KeyError: 'BLENDER_USER_SCRIPTS'

can someone show me the correct syntax ? and how to check if BLENDER_USER_SCRIPTS is available in the environment var ?

What are you trying to achieve, What error do you get?

@JeffUK i've just updated my post with error message. Thanks.

Sounds like more of a general programming question than a Blender question...  https://stackoverflow.com/questions/4906977/how-do-i-access-environment-variables-from-python seems to answer it?  Maybe the second answer is more what you're looking for.

You can check if 'BLENDER_USER_SCRIPTS' in os.environ, but yeah - this is a python question rather than a blender question.


text:
How to UV unwarp and keep the original face proportion?
I have a simple cube and in edit mode , i stretched it in Z direction  so now the cube become very tall and the faces on top and botom are still perfect square. I setup the edge seams already so it will unwarp the box perfectly. The proportion of uv will be correct if i use square image (texture). If my texture doesnt' have 1:1 aspect ratio, the uv will try to adjust itself to the image aspect ratio. How to ignore image/texture aspect ratio ?

what version of blender do you have?

i use version 2.8

In 2.80 the active image on faces removed (because it is internal renderer property). So how to do you tell blender that the image, that you want to use, is active? Do this:

Open Shader editor (object mode)
Create a material in your object (if it doesn't exists)
Put image into Shader editor (you can drag&drop it from file browser or from data-block selector) or add and setup image texture.
Select this image node.

Now, when the node with image are selected, this image is going to be active, and UV-unwrapping will use it proportions.

If your texture is 800x600 do some simple math: 600/800=0.75, so scale the whole UV by 0.75 on X axis (A to select all UV, S X 0.75 Enter).


text:
Transparent images takes emission color
Trying to have some nice cut out trees rendered in Evee but having no luck till now.
The images are rendered black in Evee, I can change color of the image if I change the emission color but I can't have the original color of the image. I tried to change format of the image: png, targa, exr. Nothing changed. Here a screenshot of material nodes.

Feed the color output of the image texture into the Emission input of the Principled Shader.  That will cause the Principled Shader to use the image as the emission color of the trees.

Oh it seems banal now. Thank you

You can place a math node between the image and the emission node, set it to multiply and use a multiplier less than 1 to make it darker; or you can try using rgb curves to adjust.  Pretty much any manipulation can be done between the two.

Good to know, images were lighter, but it was depending on exposure set too high.


text:
How to determine the material of a face without rendered display?
I'm working with solids that could have several materials on different faces. Because the model is quite big, I'm used to work on wireframe display.
Sometimes I need to change face materials and it seems there is no way to tell which material the face is wearing, unless, it seems to me, to work on rendered display. This is inconvenient because as I explained before, the model is complex and rendered view tend to slow the work flow and, more important, sometimes different material could have same color!
I'm quite new to blender and I will not be surprised to have missed some basic tools. Please suggest me some ways to work with meshes with several materials and be able to easily detect them, thank you for your time.

Whenever you select a single face, the corresponding material should highlight in the material slot list

same as he said, also you can color materials in solid mode as well, just go down in material settings and find Vieport Display, there is a color input that is visible only in solid mode

That's the kind of reasons why we need the random color display to have different modes including "per material" instead of "per objects".

@DuarteFarrajotaRamos In Blender 2.8 the highlighted material in the slot do not change if I select a different face. Maybe new versions have this feature?


text:
Cycles transition effect doesn't show in render
We followed this tutorial with a simple t-shirt and it worked perfectly with cycles.
Then we did it with a dress that has different materials and it doesn't show the effect when we want to render it. Do you maybe have a solution?
https://www.youtube.com/watch?v=-rWGVzIKKGc
https://media.discordapp.net/attachments/870364990136270958/908820326266310726/2021-11-12_15-44-15.mp4

Hello and welcome. While files, images, and external videos or links may be helpful additions they should not be the only way to obtain information about your issue. Don't make understanding your question rely on downloading a file, watching a video or visiting an external site. Use the builtin tools to upload images or gifs, along with thoroughly explaining the problem in written form so it can be indexed and searched for thus helping future visitors with similar issues.

generally due to something that is disabled for rendering. Either object visibility or a modifier...

Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.


text:
Grease pencil curve editing doesn't work
In Blender 2.93.5 grease pencil 2D animation edit mode curve editing doesn't work. The Bezier points, lines, and handles show up but can't be moved. Am I missing something? Full disclosure: I'm a total blender newb.
Steps to recreate:

Create new 2d animation, add a simple curve in draw mode
Switch to edit mode
Select "Select Mode: Select only points" and "Curve Editing"
Select a point on the curve
Bezier line and handles appear but can't be moved with mouse or pen

Same result on:

Macbook Pro 2019 Intel macOS 11.6
Macbook Pro 2021 M1 Max macOS 12.0.1

For me in 2.93.5, I can't select-drag a control point or handle, unless I have selected the move tool in the tool panel (The one with the four arrowheads. But using the tool it works fine.

This is simply the way Blender Grease Pencil works: in edit mode left click (or pen click) is simply selecting. To move and edit curves enable Proportional editing (shortcut O), press G (or select Move tool)scroll mouse wheel, move and confirm with left click.
Try also sculpt mode, which has tools to move, smooth, emboss, empower strenght ..., and it's well designed for pen tablets.
,

beat me by 50 seconds ;)

Funny when it happens .... :)

In 2.93.5, it appears that left mouse drag doesn't work unless you've selected the move tool:

Once I've done that, instead of the default, which is the box select tool (arrow in dotted box at the top of the tools)  everything works as expected.
With the box select tool, the default, selected, you can select the handle or control point, but you have to type G to start the move.
To switch between tools, use Shift–Space Bar.  It will popup a selection menu:

You don't have to navigate in that menu to a tool name and click it, by the way. Each tool has a shortcut letter on the right of its menu entry.  Typing that letter is the same as clicking the menu entry.