text:
I don’t think cycles is working
So last night I was trying to make a crystal structure like the one in ducky3d’s video about fantasy crystals. I am very new to blender so bear with me. The transparency doesn’t work and I never see the lights do anything either. I’ve tried switching to cycles but nothing happened at all. Maybe it has to do that my computer is a lump of sh*t because it only has 2GB RAM and 1.4GHz
and 64 GB of ssd. My computer could be the problem but I doubt it because eevee works quite fast for my computer being so bad. So I’m starting to believe that cycles, when I turn it on, just doesn’t turn on. Any help would be appreciated because I am very frustrated and tired. I spent all night trying to figure this out. Thanks!
EDIT
I textured the inner crystal just now but it's not showing up on the layout or final render. I am starting to loose my patience because I have textured the inside, didn't work. I tried to make the outside transparent, Didn't work. I really need help.
Here's what I want it to look like:

and here's my .blend file:

Welcome to Blender!  It's a big, complicated piece of software where lots of things can go wrong, and it takes a lot of practice to get used to it, so no real surprise that you had a tough night working on this.
In the posted .blend file, the "inner crystal" had no material, so maybe you uploaded it before shading it green and blue.
The "outer clear part of crystal" did have a reasonable glass material.  It looked like this in my Cycles preview, with a fuzzy version of the inner crystal just visible.  Did it look anything like this for you?

If so, the main problem with the "outer clear part of crystal" material is probably the high roughness which makes it look pretty opaque.  If I turn the roughness value down to 0.25 in the principled shader, add a blue emission shader material to the "inner crystal", kick the area light strength up from 1 to 50 (i.e. 5000 Watts), and add a couple duplicate area lights, also 5000 Watts, it starts to look better.

Here's a .blend file with the changes I made.  If you load this up, switch to the "Rendered" view, and don't see a blue crystal like the image above, then yes, something's wrong with Cycles running on your admittedly underpowered computer.

Note that it looks even better if I select both the inner and outer crystal and stretch them out on the Z-axis ("s" to size, "z" to size along Z-axis, and move the mouse to stretch it vertically before left clicking).  The longer crystal reflects light better.
Getting this scene working with Eevee would be tough.  Eevee doesn't do a great job with accurate handling of area lights and glass materials.  But, you could try the following:

In the Render Properties panel, switch your Render Engine from Cycles to Eevee.  Further down in the panel, click on the "Screen Space Reflections" checkbox, open that subpanel, and check the "Refraction" checkbox.
Click on your "outer clear part of crystal", go to its Material Properties panel, and scroll down to the "Settings" subpanel.  In that subpanel, change "Blend Mode" from "Opaque" to "Alpha Blend", and below that turn on the "Screen Space Refraction" checkbox.

Switch to the Render view, and you should have something like this:

It looks pretty ugly and underwhelming, though it does look kind of cool if you middle-mouse-button drag the view around.
Anyway, hope that helps.

So, mine does not look like that picture at all. I think it’s my computer. And also, when you said it has no material, what do you mean by that? And how do I put material into it?

Ah, too bad.  With regard to the material, at 1:21 in the video, Ducky 3D is working on the inner crystal and says "I'm going to remove the material [clicks "-"] and add a new one [clicks "New"]".  In the .blend file you posted, it looks like you removed the material but didn't (yet) add a new one.

I am still confused by that because he went so fast in the video I couldn’t tell what he was doing.

With the inner crystal selected, and the "Material Properties" panel open in the bottom right, he scrolls to the top of the "Material Properties" panel, clicks on the minus sign (-) in the top right, which deletes the inner crystal's existing material, and then he clicks on the "New" button to add a fresh new material.

Also, note that for YouTube videos, if you click on the gear-shaped icon in the bottom right corner of the playback screen (it's in the row of icons for closed captioning, fullscreen, etc.), one of the settings is "playback speed".  I've personally watched parts of tutorials at 0.25x speed ten or fifteen times to figure out exactly what someone was doing.

Thanks! That is a really good idea.

DANG IT. I had the material in the inner part and the - sign deleted it :( I spent a lot making those colors on the inner part. Btw the color was not showing up in the final render or in layout so thats another problem. I am going to start over and see if it works.

Let us continue this discussion in chat.


text:
Camera Renders Floor very badly
I tried to render an image of my scene yesterday, and I did. It rendered really good for the most part, but the floor looked really really really stretched and it just look very bad, I tried to see it in rendered viewport but it looked fine, I tried changing the focal length but that led to my viewport being messed up. Also, I've rendered this using cycles and Blender version 3.10 Alpha I've tried changing where the camera is, I have tried changing the amount of samples, and I have tried adding a new camera and see if it did the same thing but nothing seemed to fix the problem. Here is a link to the blend file: https://www.dropbox.com/s/hzcr3gatmiipd86/WalkingAnimation.blend?dl=0
EDIT: I have fixed the dropbox link.
And here is the rendered image:

Can anyone help to solve this issue?

Your blend file link leads to a page that says "This Item was deleted." Try https://pasteall.org/blend/

@HISEROD I have fixed the link issue

Whenever something appears in a render but doesn't appear in the viewport, the first thing you want to check for are objects that have been hidden in the viewport but are still enabled in the render.  In the outliner, you'll see that several of your "Plane" objects are hidden in the viewport (closed eye) but still enabled in the render (filled camera icon), like so:

You'll either want to click the camera icons to disable these in the render or, better yet, move them all into some disabled collection.

Buhr Hi Buhr, thanks for the reply, I didn't realize that the planes were hidden, thanks for helping me solve my problem.

source: Stack Exchange

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

sort: votes


text:
How do I edit an image node in blender using python
In my scene I have an object that's using 4 different materials. Each material has it's own image node that looks like this:

How would I go about selecting a material by name and changing MyImage.png to a string I can input in python? I'm currently using this code to load the scene and render it.
def renderImage():
   bpy.ops.wm.open_mainfile(filepath="../scenes/bodyshot.blend")
   scene = bpy.context.scene
   obj_camera = bpy.context.scene.camera
   scene.render.image_settings.file_format = 'PNG'
   scene.render.filepath = "renderOutput.png"
   bpy.ops.render.render(write_still = 1)

renderImage()

Edit: Solved thanks to lemon.
The code I used to render the image:
mat = bpy.data.materials.get("shirt")
node = mat.node_tree.nodes["shirtImageNode"]
image = bpy.data.images.load("myShirtImage.png")
node.image = image

To get a material by its name:
mat = bpy.data.materials[ mat_name ]

To get a node in it by its name:
node = mat.node_tree.nodes[ node_name ]

To get all the image texture nodes in a material:
nodes = [n for n in mat.node_tree.nodes if n.type == 'TEX_IMAGE']

For the image part, I presume it is loaded and exist in Blender.
If yes, to get it from its name:
image = bpy.data.images[ image_name ]

If no, you can load it:
bpy.data.images.load( filepath )

Setting an image in a image texture node:
image_node.image = image

where 'image_node' is one of the nodes obtained as 'TEX_IMAGE' above.
and where 'image' is the object obtained from bpy.data.images

I'm getting the error KeyError: 'bpy_prop_collection[key]: key "shirt" not found'

Either use .get(key) to test it or try except. But if you have this error, that means the key does not exist in your collection (I dont' know which one you're talking about)

I have tried using .get and it's gone through to the next line where I get the error AttributeError: 'NoneType' object has no attribute 'node_tree'

Man, that means you're try to get something that is not existing in your context.

I've updated my question with the code.

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


text:
Access Face Maps using python script
I'm trying to access faces assigned to face maps groups. However, I couldn't find any relevant example of how to do it.
I need to get information about the face included in a certain face map. Is it possible to reach such information?

Welcome to BSE. I will answer this question. Wait a minute.

You can get an array of map indices with the following code.
>>> [m_face_map.value for m_face_map in obj.data.face_maps.active.data]
[0, 1, 0, 1, 0, 2, 1, 2, 0, 0, 0, 1, 0, 0, 0, 0, 2, 1, 1, 1, 0, 0, 0, 0]

However, it must be in object mode. In edit mode you get an empty array.
import bpy

# Important to run in object mode
bpy.ops.object.mode_set()

obj = bpy.context.object

# bpy_prop_collection of FaceMap
face_maps = obj.face_maps

# bpy_prop_collection of MeshFaceMap
mesh_face_maps = obj.data.face_maps.active.data

for i, mesh_face_map in enumerate(mesh_face_maps):
    if i >= 8:
        break
    print(f"faces[{i}]: {face_maps[mesh_face_map.value].name}")

""" OUTPUT
faces[0]: FaceMap
faces[1]: FaceMap.001
faces[2]: FaceMap
faces[3]: FaceMap.001
faces[4]: FaceMap
faces[5]: FaceMap.002
faces[6]: FaceMap.001
faces[7]: FaceMap.002
"""


text:
How can I seamlessly combine the two meshes?
I tried using the Boolean modifier in a similar way that from what you can see if in this video at 13:25 timestamp. However, I still have a noticeable edge rather than a curve-like blend, like you see if the second image, between the two pieces.
This is what I currently have:

What I'm trying to achieve:

Meshes in edit mode:

Hi Skymero, you are talking about a video with timestamp - but there is no video. You are posting 2 pics, where i hardly see any connection. Please, improve your question to make it crystal clear, what you have (i think the upper picture) and what you wanna have (i think the lower, but i don't recognize a cylinder there!?). Also provide blend file so we can suggest solutions. I think it is also useful to provide a link of your video.

Always have in mind: you want a free solution in our spare time, so you should make it as easy as possible for us to help you and that it isn't necessary for us, to ask/clarify, what you really want.

please consider this https://stackoverflow.com/help/how-to-ask thx.

You seem to have slipped up, and not provided a link to the video. Please include the link to the video, using the tools provided. then we'll have something to go on, and can re-open your post for you.

@RobinBetts I've added the video and I edited the images to show what specifically I'm trying to mimic.

@Skymero Could you attach an image of your mesh in Edit mode showing the topology after applying the boolean without the sub surface enabled ?

This is one way to (relatively) seamlessly combine two mesh parts,
first join the parts into one mesh object.

Make both part to have an open edge without a face.

Select both open edges.

Run the bridge tool.

Adjust bridge settings.

Potentially do some manual editing if the result isn't acceptable.

If your mesh parts weren't smooth to begin with, use auto smooth.

There are different bridge operators in Blender, built-in one does pretty much only a linear transition, and then there is the Loop Tools add-on, that comes with Blender, which has its own bridge tool. I recommend activating and trying it. It supports curved blend between joined edges.
If your mesh edges don't have a matching vertex/edge count, you'll end up having triangles in the fused area, but that usually isn't an issue for static meshes.


text:
How could I make the hilt guard look like one whole piece as opposed to three pieces put together?
I used two cylinders for the hilt guards but I pretty much just traces the rest of the hilt by extruding a vertex around the reference image (tracing it).
Reference:

My model:

I only used the solidify modifier, but as expected, it didn't help much. I'm still very new to Blender so I'm sure there is something out there I haven't found yet.
I'd also appreciate it if you have any tutorials you'd like to suggest for problems like. (It's not an easily youtubable title to find a solution for)
Edit:

I'm not sure where the Solidify is useful. As for the question, if you want to make it of one piece, create a face within a face (like for example with an inset operation) that has the shape of the extrusion to come? Maybe show what part in particular you're struggle with?

@moonboots what modifies should I be applying here? or which would you suggest I mess around with for this model?

use a Mirror modifier as your sword is symmetrical, and a Subdivision Surface to make the shape rounder?

Let's say that you want to have a cylinder extruded from a cuboid, but you want to make it as one piece, not several:

In that case add a bit of topology to your cuboid with some new loopcuts (CtrlR):

Inset the 4 top faces, then right click > LoopTools > Circle (you need to activate the LoopTools addon of course):

Then extrude, etc:

For the shape you highlight, here are the steps:

Thank you! Also, what about the corners from the larger piece? Would you just scale the edges down to look like it's transitioning into that shape? (if that makes sense)

Please see my edit


text:
pivot point for guitar's strap

basically i want to add a bone to my rigify rig which take the location data from this strap in the center, (particularly the rotation, and location) so that it can smoothly rotate around the torso with like r -> z. the next step will be adding bones in the guitar's neck to latch on to the player's hands during animations. This is the plan as it stands and I'm not sure how copy transform data between object and bone since a bone has the two ends? But would this seem like the approach you would take for this? any help is appreciated :) this is also gonna be for a game

Please add your image into your question rather than just adding a link to it. https://meta.stackexchange.com/questions/75491/how-to-upload-an-image-to-a-post

hey i just fixed it

Thanks. You're more likely to get answers if folks can see immediately what you're talking about rather than having to click a link to see your image.

does this forum have that issue like reddit where your post is supposed to get seen at the beginning? Should i consider reposting so it can be seen?

No, topics are sorted by latest activity by default. Do not repost anything ever here. Make your topic better by editing, or comment, that's plenty enough. The best way to have an answer is to have the best topic quality as possible anyway.

Rigging a prop so to have multiple anchor points for it can be a little tricky to do (and also to animate). Often the chosen solution is to just have one bone that will be dynamically parented to any other controller the animator wants (for example you can use multiple Child Of constraints that target either a hand bone, or chest, etc). and another bone as child, which is the actual parent of the prop. that way you can animate the offset, as well as which parent to follow using the constraints factors. Then you constrain the other hand to the prop with a similar system.

Another approach could be to have your prop parented to the chest or the hip, not the hands, and instead add anchor bones parented to the prop, which each a child offset bone for each hand's main IK controllers to be child of via constraints. That way, you position the hands as you wish on the guitar, enable their parenting to the anchor points, and then you can animate the guitar : the hands will follow, or move the anchor points and the hands around their anchors. This would allow for example to have an anchor point aligned with the handle, making slides really easy to do.

Hey I appreciate the answer. More of a concern is movement of the body and guitar 'as a weapon' since it's an action game. the type of things are swinging the neck out ahead as attack. A video I saw recommended duplicating the hand bone and having an identical one parented to the object which i could put on the neck. Another character I made used bones which u can click together to for example move and rotate a head with a helmet that's detachable. The reason my pose asked about the transform position of the strap is because the loop would move with the guitar for action poses.


text:
How to position a collection on a surface
How to position a collection on a surface, changing only the position on the Z-axis

rigid body, geometry nodes, animation nodes....and i know some add-ons can do this as well

Do you want the bottoms of the objects in the collection to sit on the surface? Are they always spheres?

@Robin Betts, yes move only along the Z axis of the sphere to the surface


text:
Trying to make a stone brick floor

I'm trying to make a stone brick floor, but I can't seem to figure out a way to do it other than manually. I don't know much about geometry nodes, but I've tried messing around with them to get something to work, but maybe I missed something. What would be the best way to go about this? (The floor in question will just be a simple square/rectangle and I'm trying to get a somewhat uniform look so that it looks like an old man-made floor) The top image is sort of what I'm going for, but I'm using rounder stones so it won't be as neat and aligned.
Any help is much appreciated.

Hi Eric :). Could you please add some images to illustrate what you're after?

I've added a reference image for those asking :)

Even though it doesn't incorporate the half-square offset seen in your example, you might check out "recursive subdivision" https://bbbn19.gumroad.com/l/rvxmtd?layout=profile

Well even though Blender has a 'brick texture' node, its not very powerful because it doesn't exposes the mortar vector in way it can be manipulated.
However, people usually mix two different textures to create what they want. Here is a good tutorial that walks you through something similar
https://youtu.be/9Tq-6HReNEk
Remember the technique can be used to make any brick/cobblestone texture you want.

Thank you to Ahmad Bilal for answering this. I don't why I was trying to make it harder on myself by using geometry nodes instead of making a shader. Sometimes the better way to do something just slips my mind.

Remember, to look at the workflow/tutorial videos for Substance. Even if you are not using that, it helps you understand the workflow. Take care bro

For tilings like this, all you need to do is recognize the repeating group (I called it the "pattern" and marked red), and how this group offsets when it repeats:

Assuming for simplicity (but the setup will work without this assumption if you adjust dimensions) the bricks are of sizes $2×2$, $2×4$ and $4×4$, the $A$ offset is $<8, 2>$, and $B$ is $<-2, -4>$, and you can see these numbers in the node tree below:

I got a little bit ahead of myself and subdivided the cuboids with this group:

So that either inside the "Pattern" zone (if you don't care about repetitiveness) or at the very end (after realizing instances, if you don't care about performance) you can randomly displace the bricks for some artistic effect:

I love this answer, and it shows very clearly how repeating patterns can be realized with Geometry Nodes. But strictly speaking the example is $2×2$, $2×3$ and $4×3$ ;-)


text:
Ground disappeared when using Cycle Engine
I am very new to Blender and just downloaded a campfire scene from https://www.artstation.com/marketplace/p/Gepz/campfire-diorama-blender-scene
I am totally confused that the ground will disappear in cycle viewpoint/render (you can still select it, but can't see anything)
The render visibility is all enabled and nothing is hided. Can anyone help?

Hello, if it's copyright free, maybe share it? Maybe it's a driver problem (do you use AMD?) but if it was you shouldn't be able to see the other objects either...

The floor uses an image to drive its transparency but that image has been mapped with the wrong UV map. See my answer below.

It's because of the UVMapnode's  From Instancer option, it messes up with the UV used for the image driving the alpha of the ground:

From Instancer maps the image using the UV of the object's parent. This option only works for Cycles as stated in the official documentation and doesn't do anything in EEVEE. That's why the problem is not visible in EEVEE.
It may be an error from the one that made the scene but this option should not be ticked in this case (since we are supposed to use the object's own UV Map and not another object's). Of course, it wouldn't have mattered since he created the scene to be rendered in EEVEE but that's even more reason to leave it alone (I say that but I honestly do not know why he checked that option in the first place, may be he has his reasons).
Just uncheck it (it will use the object's UV map instead) and the ground will appear:


text:
How to join my object with its mirror modifier?
I have an object that I would like to have it joined with its mirror modifier (I've already selected clipping inside the mirror modifier's settings). How do I do this?
Here's an image of the half-cube separated from its mirror modifier:

Select rim and move them to the center of mirror, until it stops by clipping plane:


text:
bpy: light animation from grid
First, I wanted to recreate this image applying also a animation to that.

To start, I create this code.

import bpy
import random

# Settings
name = 'PointLightPathMesh' #mesh and object's name
rows = 20
columns = 20
size = 1
gridOffSetx = 9
GridOffSety = 9
layer = 2
numLightPoints = 10

animFrameOffset = 15
animFrameTimes = 8

verts = []
faces = []

def face(column, row):
    """ Create a single face """
    return (column* rows + row,
            (column + 1) * rows + row,
            (column + 1) * rows + 1 + row,
            column * rows + 1 + row)

def vert(column, row):
    """ Create a single vert """
    return (column * size - gridOffSetx, row * size - GridOffSety, 0)

def createGridObj(rows_,columns_):

    # Create Mesh Datablock
    mesh = bpy.data.meshes.new(name)

    verts = [vert(x, y) for x in range(columns_) for y in range(rows_)]
    faces = [face(x, y) for x in range(columns_ - 1) for y in range(rows_ - 1)]

    mesh.from_pydata(verts, [], faces) #we can skip edges because of two parameters

    # Create Object and link to scene
    obj_ = bpy.data.objects.new(name, mesh)
    bpy.context.scene.objects.link(obj_)

    #Add to layer 2
    obj_.layers[layer] = True

    return obj_

def createLightPoints(numLightPoints_,allPositions_):
    list = []
    for t in range(0,numLightPoints_):
        light_Obj = bpy.ops.object.lamp_add( type='POINT', radius=1, location=allPositions_[random.randrange(len(allPositions_))])
        list.append(light_Obj)
    return list

def select(obj_):
    # Select the object
    bpy.context.scene.objects.active = obj_
    obj_.select = True

def getMeshPointPosition(obj_):
    coords = [(obj_.matrix_world * v.co) for v in obj_.data.vertices]
    return coords

def setKeyFrameLights(light_):#select and set key
    select(light_)
    currentAnimTime = 0
    for t in range(animFrameTimes):
        bpy.context.scene.frame_current = currentAnimTime * animFrameOffset
        #set position
        findNextPosition(light_)
        bpy.ops.anim.keyframe_insert_menu(type='Location')
        currentAnimTime += 1

def findNextPosition(obj_):
    currentPosition = obj_.location
    nextposition = [0,0,0]
    #find next
    coords = [(obj_.matrix_world * v.co) for v in obj_.data.vertices]
    for p in coords:
        if(p == currentPosition): #find current position
            #add or subtract 1 to each axis position
            nextposition = (p[1] - (random.randrange(0,2)-1) * size - gridOffSetx, p[0] - (random.randrange(0,2)-1) * size - GridOffSety, 0)#p[0] => x
            return nextposition

def getRandomPosition(obj_):
    coords = [(obj_.matrix_world * v.co) for v in obj_.data.vertices]
    return coords[random.randrange(len(coords))]

grid = createGridObj(rows,columns)
lights = createLightPoints(numLightPoints,getMeshPointPosition(grid))

for light in lights:
    setKeyFrameLights(light)
#end

But I get this error
SceneObjects.active expected a Object type, not set
I'm new to a python and I don't know how to fix that.
And also I will be happy if you give some choices about how to recreate that image.

I fixed something but I still not getting the result
import bpy
import random

name = 'PointLightPathMesh' #mesh and object's name
rows = 20
columns = 20
size = 1
gridOffSetx = 0
GridOffSety = 0
layer = 2
numLightPoints = 10

animFrameOffset = 15
animFrameTimes = 8

verts = []
faces = []

def face(column, row):
    """ Create a single face """
    return (column* rows + row,
            (column + 1) * rows + row,
            (column + 1) * rows + 1 + row,
            column * rows + 1 + row)

def vert(column, row):
    """ Create a single vert """
    return (column * size - gridOffSetx, row * size - GridOffSety, 0)

def createGridObj(rows_,columns_):

# Create Mesh Datablock
mesh = bpy.data.meshes.new(name)

verts = [vert(x, y) for x in range(columns_) for y in range(rows_)]
faces = [face(x, y) for x in range(columns_ - 1) for y in range(rows_ - 1)]

mesh.from_pydata(verts, [], faces) #we can skip edges because of two parameters

# Create Object and link to scene
obj_ = bpy.data.objects.new(name, mesh)
bpy.context.scene.objects.link(obj_)

#Add to layer 2
obj_.layers[layer] = True

return obj_

def createLightPoints(numLightPoints_,allPositions_):
    list = []
    for t in range(0,numLightPoints_):
        # Create new lamp datablock
        lamp_data = bpy.data.lamps.new(name="lamp_"+str(t), type='POINT')

    # Create new object with our lamp datablock
    light_Obj = bpy.data.objects.new(name="lamp_"+str(t), object_data=lamp_data)

    # Link lamp object to the scene so it'll appear in this scene
    bpy.context.scene.objects.link(light_Obj)

    # Place lamp to a specified location
    light_Obj.location = allPositions_[random.randrange(len(allPositions_))]

    #add to a list
    list.append(light_Obj)
    print(str(light_Obj)+"Added to a list")
return list

def select(obj_):
    # Select the object
    bpy.context.scene.objects.active = obj_
    obj_.select = True

def getMeshPointPosition(obj_):
    coords = [(obj_.matrix_world * v.co) for v in obj_.data.vertices]
    return coords

def setKeyFrameLights(light_,grid_):
    print("Setting key frame of "+str(light_))
    #bpy.ops.object.select_name(name=bpy.context.active_object.name)
    bpy.context.scene.objects.active = light_
    light_.select = True
    currentAnimTime = 0
    for t in range(animFrameTimes):
        bpy.context.scene.frame_current = currentAnimTime * animFrameOffset
        #set position
        light_.location = findNextPosition(light_,grid_)
        bpy.ops.anim.keyframe_insert_menu(type='Location')
        currentAnimTime += 1

def findNextPosition(light_, baseGrid_):
    print("finding next position...")
    currentPosition = light_.location
    nextposition = [0,0,0]
    #find next
    coords = [(baseGrid_.matrix_world * v.co) for v in baseGrid_.data.vertices]
    #nextposition = [random.randrange(0,10), p[0] - (random.randrange(0,2)-1) * size - GridOffSety, 0]
    """"""
    for p in coords:
        if(p == currentPosition): #find current position
            print("Compared!")
            randNum_x =random.randrange(0,2)
            randNum_y = random.randrange(0,2)
            #add or subtract 1 to each axis position
            if(p[0] + (randNum_x - 1) < 0):#if is out of grid
                randNum_x = random.randrange(0,1)
            else:
                randNum_x -= 1
            if(p[1] + (randNum_y - 1) < 0):
                randNum_y = random.randrange(0,1)
            else:
                randNum_y -= 1
            nextposition = [p[0] + (randNum_x) * size - gridOffSetx, p[1] + (randNum_y) * size - GridOffSety, 0]#p[0] => x

            print("Current position"+str(p)+"next position"+str(nextposition))
            return nextposition
    print(str(p)+","+str(currentPosition)+"?")
    return (0,0,20)
    """
    Note: if this function found next position the next time is
    called of same object the current position will be the same
    """

def colinearVectors(A,B):
    if(int(A[0]) == int(B[0]) and int(A[1]) == int(B[1]) and int(A[2]) == int(B[2])):
        return True
    else:
        return False

def getRandomPosition(obj_):
    coords = [(obj_.matrix_world * v.co) for v in obj_.data.vertices]

    return coords[random.randrange(len(coords))]

grid = createGridObj(rows,columns)
lights = createLightPoints(numLightPoints,getMeshPointPosition(grid))

for light in lights:
    setKeyFrameLights(light,grid)
print("End")

Operators return a set.  lightObj = bpy.ops.object.lamp_add() is your issue.  Needs to be lightObj = context.object after the operator call, or by using API methods as you have  for grid mesh objects.


text:
shader: weird stripe
Why this is happening!?

osl script:
shader TestNoise(
    vector vec = (0,0,0),

    output vector outV = (0,0,0)
){
    outV = (vec[0],vec[1],vec[2]);

}

In this case, it should not modify anything. It just passing the same value. Why is this happening?
I mean, if the public input vec is receiving the texture coordinate object vec = (x,y,z) and the outV = (vec[0],vec[ 1 ],vec[ 2 ]) is should vec = outV = (x,y,z) = (vec[ 0 ],vec[ 1 ],vec[ 2 ]), right?
In this image, instead of a black and white stripe is should not be a default checker?
I don't know, can someone explain to me?

Why is what happening? You didn't tell us what's wrong.

You seem to have a mismatch in types in the assignment of the output variable - you need to include the 'vector' type in the assignment.
ie, instead of :
outV = (vec[0],vec[1],vec[2]);

Change it to :
outV = vector(vec[0],vec[1],vec[2]);

So the final script should be :
shader TestNoise(
    vector vec = (0,0,0),

    output vector outV = (0,0,0)
){
    outV = vector(vec[0],vec[1],vec[2]);

}

why does this happen?

Without the ‘vector’ keyword you’re not casting it to a vector - it’s just a list of values - and it seems that it’s effectively just passing the last one (Z) back from the shader as a scalar. This means that your Texture is only being plotted in one dimension - so stripes in the Z direction. Technically I suppose it should be flagged as a syntax error at compile time but since vectors can be set to a scalar (so setting to 0.5 sets it to vector(0.5,0.5,0.5)) it compiles as falid but is actually discarding vec[0] and vec[1].


text:
Shader: Random cubic color
I'm struggling with how can I create a random color between some range.
To explain better I have this:

But I want these each cube has one random color.

My code:
shader RandChecker4(

    point Pos = P,
    float Scale = 1,
    float Rand = 0,
    color Color1 = color(1,0,0),
    color Color2 = color(0,1,0),
    color Color3 = color(0,0,1),
    color Color4 = color(0,1,1),

    output color Col = 0

  ){

    point p = Pos * Scale;
    int x = (int)mod(p[0],2.0);
    int y = (int)mod(p[1],2.0);
    int z = (int)mod(p[2],2.0);

    color Colorlist[4] = {Color1,Color2,Color3,Color4};
    int r = (int)mod(Rand*10,4.0);

    if(x%2==1 && y%2==1 && z%2==1){
        Col = Colorlist[r];
    }

}

In order to have each 'square' to be a consistent color you need to change the coordinates fed into the Noise texture to change in discrete steps. This can be achieved using a Modulo function. The Modulo node effectively divides the input value by the specified amount and outputs the remainder. By subtracting the remainder we can produce a 'stepped' value. Since this value does not change over the specified range (in this case 1/7 - to match the scale of the 'squares' texture of 7) the result of the Noise will be constant over that range, resulting in a constant color.

Note that I also added a Mapping node to offset the coordinates slightly - so that the squares correspond to all faces.

woowh.. this is so cool. Thank very much!


text:
Blender and Gloss
I am trying to give my rig a little gloss on the suit and gloss on the eyes. Whenever I give it a glossy or glass modifier it picks up too much of the environment texture.
What it looks like right now

What I want it to look like

Some help would be much appreciated and if you need more information on what I want or more pictures I'm glad to send more

Can you show us what you are using so far for shaders? You may want to consider trying the principled bsdf with roughness map to control the glossyness, in general glossy surfaces are less rough than non-glossy.

@Sazerac I've added what nodes I'm using (I'm not really good at materials yet) top two are for the main suit and bottom for the eyes

By using the Alpha as the mix factor for the shader, you are going to get a lot of gloss shader in the mix. Unless the alpha of the image is necessary to eliminate the shader showing up on geometry when it isn't needed, you don't need to plug the alpha in like that. Try disconnecting that and then adjusting the mix factor manually or using a layer weight node to control the mix factor while also adjusting the roughness of the gloss node.

Should I use fresnel or facing in the layer weight node? and any recommended starting values? Here is also what I am at so far:https://imgur.com/a/x7dVoiz


text:
How to create vertex transition from one mesh to another using shapekeys
I have two objects imported from photogramometry scans. They have at most few milions of vertices and are triangulated. I would like to produce a mesh with added shapekey which could show morph from one object to the other one. The number of vertices is not the same and two meshes are in fact independent.
Question: how to create a new object, which will have a shapekey added which show the fluent shortest-path morph between two original objects?
My partial solution: I tried to create shapekey with vertices positions set to start and end as from two meshes. But the problem is that even this simplest approach does not work. And the problem remains bigger because there could be different number of vertices. I think I could create the shift of smaller mesh from it's position to the bigger one, but the questions arise how to select vertices for a shapekey and how?
This is a very simple test which do not work. Any ideas how to solve this in a whole or some partial hints?
import bpy
ob1 = bpy.data.meshes['Cube'].vertices
ob2 = bpy.data.meshes['Cube.001'].vertices
V = [[],[],[],[]]

print("V:")
for i in range(0,len(ob2)):
#    print(ob1[i].co)
#    print(ob2[i].co)
    dx = ob1[i].co[0] - ob2[i].co[0]
    dy = ob1[i].co[1] - ob2[i].co[1]
    dz = ob1[i].co[2] - ob2[i].co[2]
    V[i] = [dx,dy,dz]
    print(str(V[i]))

bpy.data.objects['Cube'].shape_key_add('Basis')
bpy.data.objects['Cube'].shape_key_add('Trans')

k = bpy.data.shape_keys['Key'].key_blocks['Trans'].data
for i in range(0,len(k)):
    k[i].co[0] = ob1[i].co[0] - ob2[i].co[0]
    k[i].co[1] = ob1[i].co[1] - ob2[i].co[1]
    k[i].co[2] = ob1[i].co[2] - ob2[i].co[2]

Do you need to use python? I would make the shapekey by hand using snap to face

For simple shapes I can do this by hand, but shapes I have often have hundreds of thousands of vertices at least and are complicated. Using snap to face do not work for them I afraid. For such a task python seems to be the most precise tool.

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


text:
How to create clipping mask using displacement map?
how I can hide certain part of mesh using only the node editor. For example, how I can make the cross-bonding black part of the map invisible in the mesh using only the node editor.

add a mix shader between the material output and the principled shader. add a transparent shader, and plug it into the other input of the mix shader. take your the map you want to act as a mask, and plug it into the factor input of the mix shader.
I hope this helps, and please comment if you need more info.

thank you very much, that was very helpful.

I'm glad my answer was useful.


text:
How can I remove shading on a plane but still allow shadows from other objects to be cast on to the pane?
I have objects on top of an 'Images as Plane' plane and I'd like it to not have any shading/gradients in lighting, so it looks like it would if I opened the image in an image viewer with maximum brightness.
However, I'd still like to allow objects above to cast shadows on to the object. How can I achieve this?
Below, the cube is shaded and casts a shadow on the plane (all good), but the plane should not have any shading on it, since it's brighter in the left compared to top-middle.

Below, the plane is bright and this is what I want, but now the cube does not cast any shadow on the plane.

You might have to render 2 separate layers and then join them in the compositor.

The simplest solution I can think of is to use the default Principled BSDF setup (using base color, not emission) and change the type of the light source to Sun. This way, neither cube position, nor Plane position, will change the colors on the plane (other than the colors of areas that go in or exit the shadow).

The reason your examples don't work is that in one case the image is the light, so it can't be shadowed, and in the other you're using a light type with a falloff - simulating the fact that the closer a pixel is to the light source, the more photons from the light source hit that pixel - for the same reason the Sun heats ground the most at noon on Summer. You can lit a surface equally, if it's a fragment of a sphere, with the light source in the center of the sphere - same logic as with curved PC monitors. As you increase the sphere, given the fragment's surface remains constant, it will be closer and closer to a flat surface as it gets further and further from the sphere's center:

If you want a perfectly flat surface, you need an infinitely far light source, and that's what the Sun light type represents.


text:
Making a bezier curve sway/swing with anchor points at both ends
Edit: I'm a beginner to Blender
I'm trying to make a bridge sway from side to side with both the ends of the bezier curve staying in place while the middle moves from side to side.
Currently, a single bezier curve is used to make the curved shape of the bridge.
I have tried:

Using a second, horizontal bezier curve, although I could not get the ends to be pinned in place and the two curves didn't synergise well and produce warped results
Using the 'Simple Deform' modifier and twisting, but, instead of the ends, the centre stayed static. Additionally, I had very little control over it.
Changing handles so that there were single points instead, but this meant that when I tried to bend it, I had to manually make a curved line by moving vertices, which resulted in a curve that did not look good (and took a long time to edit).

Does anyone have any suggestions on how I could make an animation that looks like it's swaying from side-to-side?
I'm trying to make it swing from side-to-side so that the displacement is greatest in the middle and has zero at the ends.
The eventual goal is to have it swing from side-to-side as if in strong winds and then split in the middle and fall down, hanging from each end. (Although I'll cross that bridge when I come to it).

what about hooking the curve vertices to bones and move them?

I would actually do this with rigid bodies and forces :-P

so you could create an edge with several vertices that will be your cloth, parent empties to each of its vertices, then hook the curve vertices to these empties, there must be something like that


text:
How do i make my model glow?
I'm quite new to Blender and have been trying for days to give my character a glow effect on his eyes and arm, and i have been using three textures for this, but it seems I can only keep two of these textures activated at a time.
So at the moment it seems like i have to choose between bump and textured,

or flat textured and glowing.

Here are the textures I'm trying to use:

I'm sure there is a obvious way to solve this but i can't see it and no tutorial i have watched has brought me any closer to an answer.
How do I solve this?
My node setup is a mess as I began this week to learn about it.

Hello and welcome to BSE! Could you provide some picture of you node setting? Or upload the blend file using this link https://blend-exchange.giantcowfilms.com/ ? That may help to understand your issue

I will update my post to show my node setup.

Hard to say, what you want to do with this setting. Only the selected output will be rendered. For the other aspect, the emissive texture should be to emission.

Ok, thanks. I am extremely new to this. But when i connect emission to emission, the whole model turns pink. But if I remove the emission and connect the texture image to the principal BSDF emmision, i get the textures to overlap perfectly, but with no glow effect or a way to control glow strength.

FrostBird, I've tried the textures linked in your question on a flat plane model. This could be insignificant (image format, etc.). The best is to upload your model including (packing) the textures with it as a blend file. Maybe someone here could help on this basis.

I managed to find the solution through trial and error. Should I upload my node setup somewhere for future refrence?

The better to have an answer is the blend file uploaded using https://blend-exchange.giantcowfilms.com/, but we can understand that you don't want to upload the model. So it's up to you.


text:
3D world to 2D image transformation with equidistant camera model
I'm currently implementing a simulation, where a 3D point needs to be transformed to a fisheye image with the equivalent of Blenders 'PANO' camera and the equidistant camera model. Does anyone know where I can find  the sources (scientific papers, even technical reports) of Blender's implementation of the 3D->2D transformation?
In detail, I'm looking for:

Transformation from world to camera coordinate system
Transformation from camera coordinate system (cartesian) to camera coordinate system (spherical). This is necessary for the projection of the point to the unit sphere, before projecting the point onto the image plane
Transformation from the spherical camera coordinate system to the sensor plane
"normalization" in terms of shifting the point from the principal point to the left top corner of the sensor

Why this question? While the implementation from a perspective camera is natively available in the bpy_extras module, the transformation for the equidistant camera model is not.
The code, which I've generated is below. Currently the result of the image is different from the result in blender, any suggestions why?
main.py:
#!/usr/bin/env python3

import numpy as np
np.set_printoptions(precision=4, suppress=True)
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d

import plotting

def compute_R(alpha_deg, beta_deg, gamma_deg):
    ## Rotation Matrix R (code from CV2 exercise)

    # convert into radians...
    alpha = alpha_deg * np.pi / 180
    beta  = beta_deg  * np.pi / 180
    gamma = gamma_deg * np.pi / 180

    # prepare sine and cosine values
    ca = np.cos(alpha)
    sa = np.sin(alpha)
    cb = np.cos(beta)
    sb = np.sin(beta)
    cg = np.cos(gamma)
    sg = np.sin(gamma)

    # rotation about x axis
    R_x = np.array([
        [1,  0,   0],
        [0, ca, -sa],
        [0, sa,  ca],
    ], dtype=float)

    # rotation about y axis
    R_y = np.array([
        [ cb, 0, sb],
        [  0, 1,  0],
        [-sb, 0, cb]
    ], dtype=float)

    # rotation about z axis
    R_z = np.array([
        [cg, -sg, 0],
        [sg,  cg, 0],
        [ 0,   0, 1]
    ], dtype=float)

    # compose R_xyz
    R = R_z.dot(R_y.dot(R_x))

    return R

def cart2spherical_wiki(X_cam):
    ## from https://en.wikipedia.org/wiki/Spherical_coordinate_system
    r = np.sqrt(X_cam[0]**2 + X_cam[1]**2 + X_cam[2]**2)
    print(f'manual_{r=}')
    #r = np.linalg.norm(X_cam, axis=0)
    #print(f'np.linalg_{r=}')
    theta = np.arccos(X_cam[2] / r)
    phi = -np.arctan2(X_cam[1], X_cam[0])

    return theta, phi

def cart2spherical_blender(X_cam, fov):
    # can be ignored for the moment
    r = np.arctan2(np.sqrt(X_cam[1] * X_cam[1] + X_cam[2] * X_cam[2]), X_cam[0]) / fov
    phi = np.arctan2(X_cam[2], X_cam[1])

    return r, phi

def spherical2normimg(f_x, f_y, theta, phi):
    # from phd-thesis michel
    x_img_norm = f_x * theta * np.cos(phi)
    y_img_norm = f_y * theta * np.sin(phi)
    #print(x_img_norm)
    #print(y_img_norm)

    return x_img_norm, y_img_norm

def spherical2normimg_blender(r, phi):
    # can be ignored for the moment
    x_img_norm = r * np.cos(phi) + 0.5
    y_img_norm = r * np.sin(phi) + 0.5

    return x_img_norm, y_img_norm

def points_to_image(x, y, resolution):

    # Sensorpunkt (0,0) liegt im Bild an Position (w/2, h/2)
    # deshalb Addition der halben Bildauflösung
    # (x,y) - Sensorpunkte
    # (x_new, y_new) - Bildpunkte
    x_new = x + resolution[0]//2
    y_new = y + resolution[1]//2

    return x_new, y_new

def main():

    # plot input/output?
    plot = 'True'

    ## World points
    X_wrld = np.array([
                    [1.5, 5, 1], # right foot
                    [2.5, 5, 1], # left foot
                    [2, 5, 3], # hip
                    [1, 5, 5], # right hand
                    [3, 5, 5]  # left hand
                    ])

    ## Camera
    C = np.array([2, 1, 4]).transpose() # camera projection center in world coordinates

    ## Plot World with 3D Points and Camera
    fig = plt.figure()
    if plot == 'True':
        title = 'World coordinate system: 3D Points and Camera'
        plt1 = plotting.plot_world(X_wrld, C, elev=0, azim=-90, roll=0, title=title, fig=fig)

    # transpose X_wrld
    X_wrld = X_wrld.T # take the transpose

    # add ones for homogenious representation
    row_ones = np.ones([1, X_wrld.shape[1]])
    X_wrld_hom = np.concatenate([X_wrld, row_ones], axis=0)
    #print(f'{X_wrld_hom=}')
    ## Use Rotation-Matrix and C for creating H-Matrix (Homography, 4x4)

    # orientation / rotation
    alpha_deg = 0 # first:  rotate about alpha degrees around the camera's x-axis
    beta_deg  = 270 # second: rotate about beta  degrees around the camera's y-axis
    gamma_deg = 0 # third:  rotate about gamma degrees around the camera's z-axis

    # Compute 3x3 Rotation Matrix
    R = compute_R(alpha_deg, beta_deg, gamma_deg)
    #print(f'{R=}')

    # Build H-Matrix (4x4)

    # RC ist 3x1
    RC = np.zeros([3,1])
    RC = R.dot(C)

    RC = RC.T
    H = np.column_stack( (R, -RC) )
    H = np.row_stack( (H, [0, 0, 0, 1]) )
    #print(f'{H=}')

    # Transformation from world to camera coordinates
    X_cam = H.dot(X_wrld_hom)
    print(f'{X_cam=}')

    if plot == 'True':
        title = f'camera coordinate system: camera rotation of {alpha_deg=}, {beta_deg=}, {gamma_deg=}'
        #plt2 = plotting.plot_camera(X_cam=X_cam.T, C=[0, 0, 0], elev=180, azim=90, roll=90, title=title, fig=fig)
        plt2 = plotting.plot_camera(X_cam=X_cam.T, C=[0, 0, 0], elev=alpha_deg, azim=beta_deg, roll=gamma_deg, title=title, fig=fig)

    ### Intrinsics ###
    # focal length from Canon FD 1:5,6 / 7,5mm (see, e.g. https://de.wikipedia.org/wiki/Fischaugenobjektiv)
    f_mm = 0.0075 #7.5mm
    # field of view
    fov = 180 * np.pi / 180
    #  Vollformat Sensor, e.g. https://de.wikipedia.org/wiki/Sony_Alpha_1
    chip_w = 35.7 * 1e-3 # 36mm
    chip_h = 23.8 * 1e-3 # 24mm
    # Resolution of camera
    res_w = 8640 # px
    res_h = 5760 # px
    # pixel densities
    m_x = res_w / chip_w # px/mm
    m_y = res_h / chip_h # px/mm
    # focal length normalized with pixel densities
    f_x = f_mm * m_x # unitless
    f_y = f_mm * m_y # unitless, f_x != f_y if pixel on the sensor is not square
    ### Intrinsics End ###

    ## From Camera coordinates (carthesian) to spherical camera coordinates (a) Wiki
    theta, phi = cart2spherical_wiki(X_cam)
    ## From spherical camera coordinates to normalized image coordinates (a) Wiki
    x_img_norm, y_img_norm = spherical2normimg(f_x, f_y, theta, phi)
    # camera to spherical from blender implementation
    #r, phi = cart2spherical_blender(X_cam, fov)
    # spherical to normalized image coordinates from blender code
    #x_img_norm, y_img_norm = spherical2normimg_blender(r, phi)

    if plot == 'True':
        title = 'Sensor coordinate system: Camera points on sensor plane'
        plt3 = plotting.plot_sensor(x_img_norm=x_img_norm, y_img_norm=y_img_norm, title=title, fig=fig)

    # From normalized image coordinates to image coordinates by shifting to left top of sensor
    x_img, y_img = points_to_image(x_img_norm, y_img_norm, (res_w, res_h))

    if plot == 'True':
        title = 'Image coordinate system: points on image plane shifted to left top corner'
        plotting.plot_image(x_img, y_img, (0, res_w), (0, res_h), title, fig)

    plt.show()

if __name__ == "__main__":
    main()

plotting.py:
#!/usr/bin/env python3

import numpy as np
np.set_printoptions(precision=4, suppress=True)
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import axes3d

def plot_world(X_wrld, C, elev, azim, roll, title, fig):
    plt1 = fig.add_subplot(2, 2, 1, projection='3d')
    colors = ['r', 'b', 'g', 'm', 'y']
    labels = ['right foot', 'left foot', 'hip', 'right hand', 'left hand']
    for X,Y,Z,c,l in zip(X_wrld[:,0], X_wrld[:,1], X_wrld[:,2], colors, labels):
        plt1.plot3D(X, Y, Z, c=c, marker=".", linestyle='None', label=l)

    plt1.plot3D(C[0], C[1], C[2], c="red", marker="v", linestyle='None', label="camera")
    plt1.set(xlabel='X', ylabel='Y', zlabel='Z')
    plt1.set_xlim(0, 4)
    plt1.set_ylim(0, 6)
    plt1.set_zlim(0, 6)
    plt1.legend()
    plt1.set_title(title)
    plt1.view_init(elev=elev, azim=azim, roll=roll, vertical_axis='z')

    return plt1

def plot_camera(X_cam, C, elev, azim, roll, title, fig):
    plt2 = fig.add_subplot(2, 2, 2, projection='3d')
    colors = ['r', 'b', 'g', 'm', 'y']
    labels = ['right foot', 'left foot', 'hip', 'right hand', 'left hand']
    for X,Y,Z,c,l in zip(X_cam[:,0], X_cam[:,1], X_cam[:,2], colors, labels):
        plt2.plot3D(X, Y, Z, c=c, marker=".", linestyle='None', label=l)

    plt2.plot3D(C[0], C[1], C[2], c="red", marker="v", linestyle='None', label="camera")
    plt2.set(xlabel='X', ylabel='Y', zlabel='Z')
    plt2.legend()
    plt2.set_title(title)
    plt2.view_init(elev=elev, azim=azim, roll=roll, vertical_axis='z')

    return plt2

def plot_sensor(x_img_norm, y_img_norm, title, fig):
    plt3 = fig.add_subplot(2, 2, 3)
    colors = ['r', 'b', 'g', 'm', 'y']
    labels = ['right foot', 'left foot', 'hip', 'right hand', 'left hand']
    for x, y, c, l in zip(x_img_norm, y_img_norm, colors, labels):
        plt3.plot(x, y, c=c, marker=".", linestyle='None', label=l)

    plt3.set_title(title)
    return plt3

def plot_image(x_img_norm, y_img_norm, limit_x, limit_y, title, fig):
    plt4 = fig.add_subplot(2, 2, 4)
    colors = ['r', 'b', 'g', 'm', 'y']
    labels = ['right foot', 'left foot', 'hip', 'right hand', 'left hand']
    for x, y, c, l in zip(x_img_norm, y_img_norm, colors, labels):
        plt4.plot(x, y, marker='.', label= l, linestyle='None', c=c)

    plt4.set(xlim=limit_x, ylim=limit_y)
    plt4.set_title(title)
    plt4.legend()

    return plt4

Here the blend-file where I tried to simulate the same five points and render an image with the equidistant camera:

I've tried different combinations of rotations (R_x, R_y, R_z), see script below. I've compared the result of a rendered output from blender with the output of my simulation, where differences lie in a reflection on the vertical axis in the image coordinate system.


text:
How to move two ends of a mesh (pneumatic arm) to a different bone
I am trying to make a pneumatic arm via two bones that grab each end of this arm. I want one bone corner to grab one end of the mesh and another bone group to grab the other end of a mesh.
Each end should not deform, only rotate so it is facing the other end whilst the middle deforms, perhaps to just one bone? Ive posted this problem before but it was a bad post that didn't clearly explain what I was trying to do.
Link to blend file of what I am trying to achieve via animal. This is an animation and not anything completed:https://drive.google.com/file/d/1xBVwUkrW3eePeT0W-W0QNA4DpkSZRqHe/view?usp=share_link

We start off like this:

We have three deforming bones.  The middle bone is parented to one of these bones and stretches to the other, with volume variation 0.0.  The axes of the two endcap bones are identical, which will eventually be important.
We can see why this isn't good enough yet.
The two end bones will depend on each other, so we need to add another layer.  We'll create two control bones and parent each end bone to them.  Then we'll give one of our deforming end bones a damped track constraint to target the control on the other side (tracking the appropriate axis, here, -X):

Halfway there, but obviously not yet right.  Now let's give the other endcap bone a copy rotation constraint targeting the first endcap bone, on default world->world orientation:

Now we can manipulate our end controls however we'd like.  The structure will adjust so that the two endcaps face each other.  The roll of the entire structure, however, will be determined by only a single control (here, ctrl.R.)

Thank you SO MUCH! this has been bothering me for SO long


text:
My Rigid Body Dynamics is crawling across the floor, yikes
When I interlink a few rigid shapes, they don't seem to be able to "settle."  I'd like them to act like wood or non-springy metal, and just kinda drop and "thud" into place.  But no matter what I do to the friction or the angular momentum decay, it keeps thrashing and scooting around the floor.
Unavoidable side effect of this kind of physics sim?
Rigid Body World:

Speed: 1.0
Substeps: 50
Solver Iterations: 50

Each Ring:

Type: Active
Mass: 1kg
Shape: Mesh
Source: Deform
Friction: 0.5
Bouncy: 0.0

I would suggest that you include more information -- like either a copy of your blend file or screen-caps of setting for the active and passive objects.  What are the surface responses for each?  Try upping the Friction.

@james_t I tried upping the friction for the floor, and it still looks very alive: Settles, looks ok, then SPROING, bounces back into motion.

Like james_t said, it would help if you could share the file, also I think the problem is not always fixable and what you could do is bake the keyframes and remove the last frames so that it stops shaking


text:
Using Realize Instances node in Blender distorts/deforms/messes up/ breaks original shape (Curve based mesh)

I'm trying to generate pipes from a shapefile I loaded in Blender via the Blender GIS plugin.
So far I have exactly the result I want from using geometry nodes, and now I want to convert it to a mesh.
Using Realize Instances node in Blender distorts/deforms/messes up/ breaks original shape (Curve based mesh).
Is there any way to "lock" the model before the realize instances is applied so this distortion doesn't occur?
Edit: redoing the geometry nodes in another file, allowed blender to render everything correctly, could be a problem related to memory. After applying the "make instances real" geometry node, in the properties of the lines I applied the geometry nodes and the resulting mesh was finally exportable to other 3D formats like FBX in the picture. (Loaded in Unity).

What are you wanting  the Realize Instances node to do, here? There are no obvious instances to be realized?

I'm trying to convert my resulting 3D from a line (First picture) into a mesh but if I try Object->Apply->Make instances real   everything disappears.  I read in another stackexchange that I could use the "Realize instances" node before applying the "Make instances real" command.  It does indeed generate a mesh but when I apply the realize instances node my original model distorts resulting on the second image.

After Curve to Mesh, you have a mesh. Is applying the modifier not working for you? Maybe share on https://blend-exchange.com/

I somehow managed to make it work!  I was cleaning a new file to upload it on blend-exchange and when I tried without the other layers and files loaded (LOTS of data) it managed to make instances real and I was able to finally export my mesh as a FBX file.
I think it may be something related to Blender and the available memory it has to work with? It is definitely a weird behavior.

Redoing the geometry nodes in another file, allowed blender to render everything correctly, could be a problem related to memory. After applying the "make instances real" geometry node, in the properties of the lines I applied the geometry nodes and the resulting mesh was finally exportable to other 3D formats like FBX in the picture. (Loaded in Unity).

Hi @Rocho ! Glad you found a way. You can accept your own answer ( by clicking on the tick, ) and that will mark your problem as solved.


text:
How to animate object target positions while respecting rigid body collisions?
I would like to have about 20 shapes and animate the target position for those objects. The objects would try to reach those positions, but colliding with each other (instead of going through each other as ghosts).
Is that somehow possible, even if it involves scripting?

So far I've only figured out I can have a dummy with an attractive force, and then all objects try to reach that one dummy. But how could I have one target dummy per object?
Reading old posts I get the impression that one could have forces that are only active in one render layer. Using View Layers in Blender 2.8 doesn't seem to have that effect: the force seems to apply to objects in other view layers too.

You should be able to achieve this with Rigid Body Constraints, setting up a Generic Spring between your object and the 'target'. Moving the 'target' and adjusting the spring strengths via keyframes should allow you to influence the object, relaxing the spring strengths will allow the influence to be switched off.

Thank you Rich! You set me in the right path :) I posted the solution I came up with.

Fantastic. Glad you’ve solved it - and well written answer :-)

The solution, indicated by Rich Sedman (thank you!), is to use Rigid Body Constraints with Generic Springs.

Create 3 cubes
Add Rigid Body to each cube
Create 3 spheres (will act as targets)
Add Rigid Body (passive) to each sphere. Mark it as animated and place it in Collections 2 to avoid colliding with the boxes.
Add Rigid Body Constraint to each sphere, type Generic Spring. Activate Linear limits in all 3 axes. For Objects set First to the sphere itself, Second to the corresponding cube. Set Stiffness and Damping for Springs > Angular and Linear according to taste.
Put each sphere centered in a cube. If you place the cube under the sphere, it will be hanging. When you animate the sphere position the cube will follow, hanging under it. I wanted to avoid that, so it doesn't feel like marionettes.
Animate the sphere positions so they pass near other spheres. The Cubes will collide and avoid each other.
Disable gravity (optional).

What's missing for me is to figure out the right values for the constraints so the motion feels right.


text:
Create Vertex at Intersecting Edges
For creating my simple mesh, I need to outline it first with vertices and edges, and then fill in the polygons.
I am struggling to do simple things that should be the basics and foundations of 3d modeling in blender.
I want to be able to

extrude a vertex to a given length or until it intersects with something
or, create a vertex at the intersection of two freestanding edges
or, snap/use the knife tool on freestanding vertices/edges

What in the world is blender's paradigm? I imagine professionals being very precise and efficient in their workflow, but these tools do not lend themselves to what I had in mind.
Why do I feel like I am being punished for trying to think logically? How is creating vertices an oversight in the design of this software?
EDIT: not a possible duplicate of the other question FYI, already explained above, not dealing with meshes or faces, dealing with vertices and edges, written in bold. Trying to gain a sense of the underlying principles of the software and not be dismissed.

That's where you're going to send new users, Duarte? Is that a joke?

That deflection and downvote gives no insight into how things are done properly in blender at all, and makes this software and community look pitiful.

You'd have to agree (maybe not) the duplicate mentioned  matches your questions title... but maybe not so much your question(s),   "Why doesn't blender work the way I think it should"   Not an easy question to answer.

There are quite a few questions here that, individually, are specific enough to be their own SA question, but in aggregate, are "how do I use Blender".  Unfortunately, SA's QA structure itself is not a great at handling these kind of questions.  I recommend splitting out your bulleted list to their own questions.  I'm going to attempt to answer the question I think you're asking in a moment.  I will also point you to CG cookie's beginner tutorial: https://cgcookie.com/course/blender-basics/ .

Thank you for addressing my question. I was more than frustrated ;)

Blender has an native plugin called TinyCAD.

Install TinyCAD via Blender User Preferences

Select the edges (in edge mode) that intersect and press W. Go to the TinyCAD menu and select vertex at intersaction

Now go to vertex mode and check the result.

About Creating Vertices
Its not really an oversight in Blender. If you follow standard mesh topology you almost never need to create a single vertex, you working with quads ( 4 vertices, 4 edges 1 face ) and tris ( 3 vertices, 3 edges, 1 face ). Everything besides that will generate 'weird' problems in your render.
I don't know what you want to create but maybe you should read a bit more about topology. I remember my first time and I was creating vertices all over the place and I thought that was logical. It was not after I learned the basic rules of topology.

Thank you for sharing your experience. I fundamentally disagree with limited vertex manipulation. I'm also not working from scratch here, I'm working on converted brush volumes I can't control.

Blender adheres to a very strict hierarchy of data.  This is not unique to Blender, all 3d software I've ever used that's not Sketchup or Autocad does this to some degree, but Blender takes it a step further and adds gating to make especially sure that modifications to certain levels of data are purposeful.
The hierarchy looks something like this:
File -> Scene -> World -> Groups -> Object -> Object Data -> Geometry Data
(not super accurate but right enough for our purposes)
By default, Blender drops you to "Object Mode", which allows you to modify things in a world on a per-object basis.  If you want to drop down to the Object-Data/Geometry data level of the hierarchy, you can press tab while having an object selected to drop down into "Edit Mode", which allows you to add/remove/change vertices/edges/faces to your heart's content.
Because Blender's interaction model is object based, you need a starter object to modify.  You can find these easy enough by pressing space and typing "add " in object mode.  Blender will suggest a number of primitives, such as cubes, cylinders, and cones as a starting point.  From there, you can modify this primitive into whatever you wish.
You'll remember that I mentioned that AutoCad and Sketchup do not work this way.  That is because those packages are CAD software, which are for precise drawings, measurements, and bindings.  Blender, ZBrush, 3DSMax, etc are 3D modeling packages, which is a different focus but with some overlap in functionality.  Blender can be hot-wired to do CAD, but it is kind of difficult to use in a way that is satisfying.

That's very good insight. That makes a lot more sense now.


text:
Increase number of Loop Cuts - Apple Magic Mouse
how can I increase the number of Loop Cuts with my Apple Magic Mouse. Normally it is with the scroll wheel, but that does not work with the Magic Mouse.
And I know that I can change the number of cuts afterwards, but sometimes the cuts then are unproportional. Even if I set the cut right in the middle by clicking the left mouse button.

You can use the keyboard (both the top row and the numpad work) to type the number of cuts.
The current number of cuts is displayed in the Header, where you can also see the result of modal numinput expressions (modal numinput will be added in 2.7, and is already in development versions):

This doesn't give you smooth scroll control, but if you still want to control the loop cuts from the Magic Mouse, you can use the MagicPrefs app (http://magicprefs.com) to map One Finger Tap Left to the + key and One Finger Tap Right to the - key. This allows you to inc/dec the loop cuts by tapping on the magic mouse. Not as slick but I think it's better than moving your hand to the keyboard.
Additionally if the mapping causes issues in other apps, you can apply the mapping just to Blender itself in MagicPrefs.

It works fine with my MM but you can always use the + - on the NUM pad

i have an apple wireless keyboard which has no numpad. What do you mean with MM? Middle Mouse Button?

Use asked about the Magic Mouse so MM

Okay if you only have the bluetooth kb use the FN Key and up down arrows.

Oh okay, thanks. Do you maybe know why it the MM does not work for me? Maybe because i have different user preferences?

Couldn't say, but it could be.

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


text:
Array Modifier - Fit Curve too short
I want to create a simple road. To do this I first want to apply an 'Array Modifier' which fits the curve. So in the Array modifier I changed the 'Fit Type' from 'Fixed Count' to 'Fit Curve'. But now the Path is much shorter than the road it self.
And If I extrude the curve the road goes even longer and longer.
Is there a way the road is as long as the path?

I think the problem is that the objects have a different scale. Select both the curve and the path and hit Ctrl+A and apply the scale. As the Apply Scale will change the curve vertices radius, bring them back to 1 in the 3D View N panel.

Cool, Ctrl+A did it!

You can achieve this using a plane with default values a bezier-curve with default values with these modifier settings on the plane object:


text:
Bevel modes in 2.8
Following a simple tutorial, I realized that the bevel was not working properly for me, on the tutorial all the faces are equally big
But when I try to make it similar using the offset mode, it just looks completely wrong
The percent mode is the only one that produces decent results but the outer faces are bigger than the inner ones.
How can I achieve similar results to te tutorial? I tried copying the settings on the bar below but they seem to be a litle different on 2.8.
Thanks in advance
[EDIT] This is what the mesh looks like before aplying any sort of bevel, no duplicated vertices or weird stuff as far as I know

Offset or width options should work in order to have a regular spacing/shape (with loop slide checked). Are you sure there is nothing to check in the model? The first image seems to indicate irregularities?

I added an image of how it looks before, I made sure there are no duplicated vertices and even disabled the snap feature. I don´t see an irregularities in the model but I'm very new to this so I don´t know what other things could cause this

It's not possible to see double vertices (if any) from one screenshot only since they can pretty much overlay other ones and be invisible. That said, select all and remove doubles in Edit mode. Then recalculate normals (since in 2.8 inverted ones aren't visible in default shading) Then make sure object scale is even (Object mode, Ctrl+A, scale)

It worked!! It was the scale that was wrong, I did as Mr Zak said and it worked like a charm. Thank you all very much :)


text:
Near bezier curve nodes affected when moving a node
I have a simple bezier curve. When I move one of the nodes the other nodes near it move too (like I had proportional editing but I don't!). How can I turn this behaviour off so only the node that is selected is moved when I move it? The nodes are not even tracking to each other.
No proportional editing, no modifiers, no constraints. Just a simple bezier curve. Here are the settings of it:
https://i.sstatic.net/FtY0j.png or https://i.sstatic.net/FtY0j.png
First image below proves that the nodes are not lined up to other node:
https://i.sstatic.net/6neXS.png or https://i.sstatic.net/6neXS.png
Second image shows what happens when I move a node, the other node in the pic sort of rotates towards it:
https://i.sstatic.net/zH8jL.png or https://i.sstatic.net/zH8jL.png

Can you post a screenshot of the 3d view with a before and after of you moving a node?

How to upload an image to a post

Do you mean the other nodes rotated when you move one of the nodes? if so, this is probably cause by your handle type set to automatic. To solve this, you could select the other nodes and press v to change the handle type to aligned.

I tried changing the handle type and it happens with all of the options in the v menu. I'll add more pics in the first post if I can now.

Added new pics. The image uploader on this site is super slow. When I upload directly to imgur I can upload multiple images in couple of seconds. Here the uploader allows uplolading only one image at a time and takes half a minute.

I figured it out. I needed to have all nodes selected before changing the bezier type in the v menu as it changes it for each node individually and not for the whole curve like I thought.

So maybe provide an answer - or delete the question?

Oh sorry, I added the answer below as I understand it. I can only accept it as answer tomorrow at earliest it seems. Thanks to everybody who tried even thought it was me being stupid.

The issue was that I needed to change my bezier curve type through the v menu. However to successfully change that I needed first to select all bezier handles in edit before pressing v and changing the type for all nodes. This is so because the nodes of a bezier curve object can be set to be different handle types and the v menu only changes the type for the selected nodes, not the curve itself.


text:
Modeling an M1A2 Smoke Grenade Launcher
I've been trying to find the right way to model this grenade launcher.  My first attempt involved a bunch of Boolean modifiers, which was messy and inflexible, and my second attempt involved trying to maintain quads while using the subdivision surface modifier, but produced issues trying to maintain circles and rectangles in the right places when sharpening angles with loop cuts.  Does anyone have any ideas on how to best tackle this shape?

EDIT:
I realized that I could apply my loop cuts horizontally rather than vertically, then delete the edges in the round holes to preserve their circular shape.  It resulted in some ngons, but didn't seem to visibly affect the subsurf modifier.  I wasn't able to get the sharp edge in the real deal, but settled with a simple deform modifier for now to curve the barrels.  There's a lot of tweaking to be done, but it's a start.  Thanks everyone who took a look at this.  If anyone can find a better method, please let me know.

Try to make the holes first, then connect them with "Bridge Edge Loops".

Thanks, I'll definitely give that a try.

I would first create a map with all your holes shapes (the primitives may need more vertices than what I've done though), then weave the edges between their vertices, then extrude outwards, extrude inwards, extrude along its length, add edge loops to sharp. Then to deform the whole thing you could use a Lattice or a Mesh Deform modifier.

That's really awesome, thanks for this guide!  I can see this method being applied to a lot of awkwardly-holed objects, so it'll definitely come in handy.

Or you can model the basic shape, subdivide it and then use knife project with cut through option enabled. After you use it remove faces and bridge edge loops.


text:
How to resize the bone to fit the object size?
The bone is too big compared to the arm size of my character. Does anyone know how to resize the bone?

Select Armature go to Properties Editor and under Object Data Properties > Viewport Display > Display as Stick (now it is Octahedral)

how to go to properties editor?

Google is your friend https://docs.blender.org/manual/en/3.3/editors/properties_editor.html

I found it! Thank you!!!


text:
How do I Iterate over vertices to perform operation on them and connected verts

In my object I have a number of those kind of objects that represent road intersections.

I want a way to iterate through the vertices and find all intersections (any vertex that has 3 or more other vertices connected to it. All these vertices will go into "Intersections" vertex group.

import bpy

obj = bpy.context.active_object
mesh = obj.data
bpy.ops.object.mode_set(mode='OBJECT')

vg = obj.vertex_groups.new(name="Intersection_Points")

# Loop through all vertices in the mesh
for vert in mesh.vertices:
    connected_verts = set()

    # Loop through all edges connected to the vertex
    for edge in mesh.edges:
        if vert.index in edge.vertices:
            connected_verts.update(edge.vertices)

    if len(connected_verts) >= 4:
        vg.add([vert.index], 1.0, 'ADD')

Out of each Intersection, I want to separate each possible set of 3 vertices, in this example - I want it to end up with those in the picture below and then be able to perform an operation on each of those, or put each one into its own vertex group.

Separate your question into two :P One is how to find intersections, another is... I'm not sure... Looks like you want to separate each possible path between two vertices within a single group of vertices.

Got part 1 done.

Have you tested that it works correctly? I don't think so, as for each vert you set connected_verts to an empty list, discarding data obtained in previous iterations…

The first question
As Markus von Broady said, it's more convenient to keep the data so you can use it later.
So I suggest to use a dictionary with an intersection vertex as key and a set of linked ones as value.
intersection_dic = {}

#do loop
    connected_verts.remove(vert.index)
    intersection_dic[vert.index] = connected_verts

import bpy

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

obj = bpy.context.active_object
mesh = obj.data

vg = obj.vertex_groups.new(name="Intersection_Points")

intersection_dic = {}

# Loop through all vertices in the mesh
for vert in mesh.vertices:
    connected_verts = set()

    # Loop through all edges connected to the vertex
    for edge in mesh.edges:
        if vert.index in edge.vertices:
            connected_verts.update(edge.vertices)

    if len(connected_verts) >= 4:
        vg.add([vert.index], 1.0, 'ADD')

        connected_verts.remove(vert.index)
        intersection_dic[vert.index] = connected_verts

The seconde question
You can use the itertools module to create sets of 3 vertex indices like your drawing. That module contains itertools.combinations.
import itertools

for vc, value in intersection_dic.items():
    print(f"[{vc}]")
    for va, vb in itertools.combinations(value, 2):
        print(f"{va} - {vc} - {vb}")

outcome
[4]
8 - 4 - 1
8 - 4 - 2
1 - 4 - 2
[5]
0 - 5 - 1
0 - 5 - 8
1 - 5 - 8
[6]
0 - 6 - 8
0 - 6 - 3
8 - 6 - 3
[7]
8 - 7 - 2
8 - 7 - 3
2 - 7 - 3
[8]
4 - 8 - 5
4 - 8 - 6
4 - 8 - 7
5 - 8 - 6
5 - 8 - 7
6 - 8 - 7

About BMesh
You can easily get connected_verts using using bmesh.
intersection_dic = {}

for vert in bm.verts:
    if len(vert.link_edges) < 3:
        continue

    connected_verts = [e.other_vert(vert).index for e in vert.link_edges]

    intersection_dic[vert.index] = connected_verts
    dvert = vert[dvert_lay]
    dvert[group_index] = 1.0

I already got to that same answer, but thanks!


text:
Softbody object 'melts' when it hits the ground
I was learning how to do softbody simulations but when I start a simulation, as soon as the sphere hits the ground, it 'melts'. I am using the default blender settings for softbody simulation, and I am using a UV Sphere for the softbody. How do I fix this?

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

welcome to Blender SE.
First of all it is super helpful, if you tell us precise what you are doing. And "normally" the default settings for softbody simulations have the "goal" checkbox checked, and then the softbody won't move much, but would just wiggle a bit. So you did change the default settings, right?
Second: You cannot expect that every simulation "works" for every mesh. I am not a Blender developer but i guess they just used the default cube as reference for simulations so that they "work" without changing a thing.
But...to your "problem": you can just change the bending value under "edges" to 6, then it looks more like a softbody simulation.
In general i would recommend watching some free yt tutorials before just "trying out" a simulation, because this could become pretty frustrating because Blender is everything else than intuitive to use. This is especially true for simulations.


text:
Alpha blend not working on model texture
I imported a model from the DS game Phantom Hourglass. The eye textures are not transparent, as you can see below. They show as transparent (i.e. with a checkered background) on the UV editor. I've set them to alpha blend as you can see in the image, and they haven't become transparent. Am I missing a setting or something? I recall doing this with this exact model sometime last year and it worked. (that old file has since been lost)
UPDATE: This was referred to another question that supposedly could fix this issue simply by unchecking "Show Backface." Unfortunately, that changes nothing in my case.
Update: attempting to add .blend file:

Hello and welcome. can you share your blend file https://blend-exchange.com

Oh, it didn't solve your problem. So I've voted to reopen your question again. As Harry McKenzie suggested It would help if you could share the blend file. If you don't want to share the model for some reason, you can just separate the eyes, add them to a new blend file and share this one.

hard to determine anything without a blend file so the only thing i could say is try changing the blend mode to alpha clip

For future reference, you need to pack images (File > External Data > Pack Resources) before you upload a .blend. Otherwise when we open the .blend we won't get any of the textures.

The model was imported from a .dae file. Unfortunately Blender's .dae importer doesn't handle transparent textures at all.
In this case you'll need to manually hook up the texture's Alpha socket to the Principled Alpha (shown below) for all the materials with transparent textures.

With this (and an appropriate blend mode) the alpha should work.

Wow. Thanks. That worked instantly, and it was really easy, but I never would have thought to do something like that.


text:
Animation not working in Unreal Engine 4
I'm very new to Blender and Unreal Engine. I'm trying to figure out why my Animations from Blender are not showing up in Unreal Engine 4. Here is a file that I made for testing it out.
When I'm importing the file to Unreal Engine 4 this shows up

The Mesh is showing up in UE4

But the Animation is not showing

This is what the Output Log of Blender says

The Error "Imported bone transform is different from original. Please check Output Log to see detail of error." is the one that I can't get rit off.
This is probably a simple question but I can't figure it out.
Thank you.

"Please check Output Log to see detail of error." This is probably referring to the FBX exporter in Blender. Have you checked the log like it says? You can see output from the exporter by going to Window > Toggle System Console (and close it the same way - actually closing the window will close all of Blender)

Thank you for your response. I added the Output Log of Blender to my post.

Hey I had a similar issue, this thread helped me fix it: https://answers.unrealengine.com/questions/736756/blender-animation-import-problem-empty-animations.html
If link dies the solution was,

Turns out all I had to do was rename my character in blender from 'armature' to anything else.

this solution works, it's crazy but you can have your character named Armature when importing animations.

Still running into this issue on UE 5.2, thanks for the tip!

Rename Armature in blender in something else, Skeleton for example. It's seems like FBX UE importer issue, not sure.
Hope this will help to someone.

I'm not sure about the animation problem, but the smoothing group error I can help with...
Export a Mesh from Blender
Geometry
Smoothing: Face or Edge (Not Normals Only)

As mentioned, UE4 removes top bone if it is called "Armature". This workaround allow root motions to from root bone and not armature object.
If you intentionally keep the name "Armature" to use this workaround, you have to set UE4 "EnableRootMotion" to be true in animation Asset Details.
Then the model will be displayed in Unreal animation tab, while using the Armature name workaround.

There will also be an issue in Animation Blueprint, where the model dissappear. Set Anim Preview Editor "Root Motion Mode" to either use "Root Motion from Everything" or "Ignore Root Motion".

(There might be other issues, showing up elsewhere)


text:
Don't know what "plax" texture is?
I have a texture called "Plax" in my textures that I ripped from "God of War (2018)", and I don't know how to use them. Does anyone have a clue? I don't think it's an AO map, because the AO maps in the "God of War (2018)" files commonly use RGB.

Hello, it's not clear what you mean, maybe it's a height map, in that case, create a Texture > Image Texture node, open the image, plug it into the Height input of a Vector > Bump Map, and plug this Bump into the Normal input of the Principled BSDF?

They do look like height-maps. Could you give us a bit more context, to help us along with the guesswork?

Even better would be to give us a section of the geometry to be textured. Try them as height-maps on a blank plane.


text:
Why can't I import .dae or .obj?
I am using Blender 2.79b on Windows 10.
I am trying to import a Collada File by going to File > Import > Collada. I selected the collada file, but nothing is imported. There are no error  messages, the objects are not in the outliner or in the 3D view.
Suspecting a fault in my files, I downloaded a sample .dae file online, which couldn't be imported as well.
I found out, that I had to activate the collada import/export plugin, but it is not an option in the User Preferences. And I didn't find the plugin or installation instructions separately.
I am new to Blender and have no knowledge of python.
UPDATE:  I found a video that somewhat solves the problem here: https://www.youtube.com/watch?v=fjrFbKQmjcE&feature=youtu.be  If there are any effects in the file Blender doesn't ignore then, it just cancels the import entirely.  This is a decent workaround, but is there a way to tell blender to just ignore textures and import anyway?

If you went to File > Import > Collada the the menu entry was actually there than the addon is already installed and active, otherwise you wouldn't see the option.

I just tried importing this file, could you try the linked file as well? It worked. Check the console for error messages. As of 2.79 the collada option is preinstalled and doesn't show up in the preferences.

Try to make the console visibile (hidden by default) to be able to see import messages, maybe you'll get some clue... It should be somewhere under the top w indow menu

To see the error messages, run blender from the console/terminal/textCommandLine. Open .dae in text editor to try to solve the reported problems.


text:
Im modeling a Aircraft(Mig9) but i don't know how to procced with the cockpit
As the title says

Im a newbie and im not sure how to model the cockpit of the aircraft. Im not looking for a super detailed cockpit but not a low poly as well.

Watch/follow any "make a car in blender tutorial" and you will know how to make the cockpit of your plane.
try (Modeling a Car: Honda HSV-010 GT):
http://darkscarab.com/view/43


text:
Get and Set Hide in viewport and Disable in viewport via Python API
In my plugin I have an operator that needs to iterate through potentially 100's of objects that might be 'hidden in viewport' or 'disabled in viewport' and perform some operations  that require the object to be visible in viewport. Afterwards I want to restore whatever visibility the object had, so I need to both get and set these options.
 IE, get/set the status of these.
When I hover over the icons, both show the parameter bpy.context.object.hide_viewport. Obviously they can't both be the same parameter as they both do different things. How do I get and set 'hidden in viewport' and how do I get and set 'disabled in viewport' using the Python API?
Edit: I can see that both ObjectBase(bpy_struct) and Object(ID) have the hide_viewport property, however ObjectBase is documented as 'Temporarily hide in viewport' and Object is documented as 'Globally disable in viewports'. How do I access an Object's ObjectBase?

See https://wiki.blender.org/wiki/Reference/Release_Notes/2.80/Python_API/Scene_and_Object_API (scroll to bottom)

Following that link to the release notes is not helpful.

Actually, it is.

To iterate on the other answer which left out the get parts:

bpy.context.active_object.hide_get() - returns the visibility state (eye icon)
bpy.context.active_object.hide_viewport - viewport visibility bool (monitor icon)

Note hide_get takes an optional bpy.types.ViewLayer argument if you want to get the visibility status of an object in a view layer that's not currently active.
Also note obj.hide_viewport invalidates any iteration upon a collection's all_objects. See https://docs.blender.org/api/current/info_gotcha.html#collection-objects

bpy.context.active_object.hide_viewport = True for MONITOR icon
bpy.context.active_object.hide_set(True) for EYE icon
for collections it's bit different
bpy.context.collection.hide_viewport = True will globally hide collection(MONITOR icon)
bpy.context.view_layer.layer_collection.children.get('Your_Collection_Name').hide_viewport = True wil hide collectiob locally (EYE icon)

Calling hide_set(True) will still leave the object grayed out in the Outliner. Why?

@AndreasHaferburg Does object shows in viewport but grayed out in outliner? If you move your cursor in outliner then object should not be grayed out. This happens because blender does not draw particular area unless there are activity in that. You can redraw in code using area.tag_redraw()

I hide the object by clicking the eye icon in the outliner. Then I unhide using hide_set(False). It becomes visible in the viewport, but it stays grayed out in the Outliner, even after clicking on another object in the Outliner.


text:
Wrapping a mesh around point cloud with cavities
I have a series of point clouds I want to convert to mesh (there are points inside the object, uniformly distributed, not only on the surface).
I want to generate a model of the surface of the point cloud.
When the model is convex (like a cube or a sphere) applying a convex hull around the object is good enough but when the model has holes (like a torus (a.k.a. doughnut)) or cavities (like the area around the eyes in a head model or the area around the steam in a glass of wine) those concave features are lost.
Is there a way to wrap a mesh around a point cloud in a "convex hull style" without loosing the cavities?
It doesn't need to be perfect, a reasonable approximation of the geometry of the object would be good enough.

You could compare the technique you currently use to a ShrinkWrap Modifier
Here is a 10 times subdivided cube shrinkwrapped to a point cloud created from a torus.

In this image an extra vertex was added in the center:

This seems to do exactly what I'm looking for. For some reason the wrapping object does not shrink around the point cloud. Should the PC be connected by vertices before applying the modifier?

@Xocoatzin did you chose the mode nearest vertext as shown in the modifier settings (1st screenshot)?

That was it, works perfectly :)

There is a cool addon called Point Cloud Skinner that can build mesh from point cloud data. (By Hans.P.G)

Download and install it;
Find the Point Cloud Skinner panel in Scene tab;
Tweak the parameters as instructed until you get a good-enough result;
For complicated data, additional manual fix may be required, such as filling holes or clearing elements.

Any technique to achieve this with Geometry Nodes?


text:
Merge touching faces on model
I have a model like in the following image:

There is a mesh for this object made of many individual cubic boxes. Every individual box has its own 6 faces, so where they touch with another box, there are 2 faces on the same place touching (and some of the cubes intersect each other, so their faces are inside each other).
I want to simplify this model and

Remove internal faces (those touching each other)
After removing faces, also remove unnecessary vertices

What's the way to do this in Blender? (using version 2.66)

I suggest to

Join the objects into one object / mesh (select all cubes in Object Mode, CtrlJ)
Enter editmode, select all A (if not already) and Remove Doubles (in W menu)
Deselect all A
Select > Interior Faces
Delete > Only Faces X

Hi, this helped to eliminate duplicates but I still have faces between the cubes, Say, if I had originally 2 cubes, 2*6 = 12 faces, 2 of them being the same; now I have 11 faces (just removed that repeating), but I want to have only 10 (5 each cube, nothing on between) if possible remove also extra vertices (4 on the connections of the 2 boxes) such that I end up with a much simpler object. Thanks four your help! :)

If I start with 2 cubes, I end up with 10 faces after removing interior faces. Do your cubes line up perfectly? If no, try a higher threshold for Remove Doubles.

W no longer opens a menu in 2.9?

@DouglasGaskell Should be Mesh > Merge > By Distance or M in 2.8+

CoDEmanX's answer helped me, but my situation was slightly different. I was trying to intersect a 'shaft' with a 'wall'.  The shaft's end is square.  The wall has the the same width as the shaft, but is taller.  My goal was to make the shaft join with the wall at the bottom, (so they would share the bottom, left, and right edges but not top).
I snapped the face of the shaft to the wall, and then re-snapped each vertex to make sure they were exactly on-top of eachother.  Then I used the cut tool on the wall to subdivide it horizontally.  I had to make the cut above where the shaft intersected.  Then I moved the two vertexes of the new cut down and snapped them to the top of the top two corners of the shaft.  At this point I was finally able to follow the directions of CoDEmanX (skipping the first)


text:
How to fill an object with smoke
I want to produce an object that looks similar to this:

It's basically a plain and simple sphere. I know how to adjust the reflections and transparency using the material properties, but, how can I make it look like its full of smoke? The smoke inside is static, so I don't think its necessary to use the smoke simulator. I just want to have something translucent inside with the same appearance.

Are you using cycles or BI?

It's a new project, I can use any engine I want.

Personally I would use cycles since you are going for photorealism, but that isn't really a fair opinion since cycles is the only engine I use.  I have posted an answer on how to do it in cycles.  I will add some screenshots and a render or two when I have access to my normal computer.

If you are using cycles render engine (and blender 2.7+)
You actually want to create two different spheres, one for the smoke and one for the glass.  The reason for this is because you don't want the sphere to be solid, but the smoke should be, i.e. you don't want smoke inside the thickness of the wall of the sphere but within the sphere.
So I simply created a sphere, duplicated it in place, and gave one of the spheres a solidify modifier with a thickness of -1/8in.  The "thickened" sphere simply has a glass shader.  The other sphere will contain the smoke and has the following node tree.

It is primarily a volume scatter shader with a little volume absorption added in.  The scatter is given a variable density with a procedural noise texture.  The color ramp node makes the noise more distinct and the multiply node controls the overall density.
Here is the final render:

A couple of notes:
This is for cycles, I do not do much (anything) with BI, but I would recommend using cycles for this since you are going for photorealism.
You must be using blender 2.7+, previous versions of cycles do not support volumetrics.
You need to knock up the volume bounces under properties editor > render > light paths.

Just make sure you are using a recent version of Blender. Blender 2.70 supports volumes in cycles, and Blender 2.72 supports GPU rendering for volumes.

You can actually join the two spheres, or go into edit mode before duplicating.  As for the iridescence, the question is about how to make the "smoke", he said he knows how to do the surface.  I could add something (using a technique similar to this or this) if you would like though.

Use Cycles, and Blender 2.7+
This is a quick node setup for Cycles, and is a good place to start. You should be able to get the result you are looking for by playing around with the various values.

Here is how it renders, feel free to change to fit your needs.

Pretty much, but yours wasn't very in-depth. I can edit yours and add this info to it if you want.

This is a very good approximation! How to make the "smoke" white? I change the color in "Volume Scatter" and still looking dark. Other than that it's pretty good!

@Xocoatzin the reason it looks dark is because you need to crank up the volume bounces, see my answer.


text:
How to write a YAML file with a Blender Python script
I need to write a script that runs on Blender (2.72) and writes a YAML file containing the results. In normal python I would use PyYAML and write something like:
import yaml
yaml.dump(['some', 'data'])
....

It seems that Blender uses a different python interpreter than the one installed on my system (Ubuntu), thus, a different set of extensions. I tried copying the PyYAML installation files to the Blender script directory blender/2.72/scripts/modules. That way, I can import the library, but I get errors because the library has its own dependencies (I want to avoid having to install every sub-dependency manually).
How can I get a Python extension installed and working in Blender?
Is there an alternative method to write YAML files in Blender (using python)?
Note: I will distribute the blender file containing the python script to other users, so it would be nice to have an easy-setup method!

PyYaml is not bundled with blender, you need to install it: http://blender.stackexchange.com/questions/5287/using-3rd-party-python-modules-scipy


text:
Blender 2.80 fix normals after boolean
Hello, I am looking for help in solving my problem, I used Boolean for my tire, the result is visible in the picture, I have been doing the tire 5 times and I have the same effect all the time, please help:(
I use after boolean:
-autosmooth
-cleanup losses
-triangles
-quads
-copy normal to selected from stock tube object
-shade smooth

hello, your question is very vague, could you point out the exact problem? Maybe share the file? https://blend-exchange.giantcowfilms.com/

hello I upload file:) I dont know where i fail with this modifer... Can You help me with this i need understand what im doing wrong for now and future:)

I see ngons everywhere, so maybe keep only one section of your tire, delete the rest, work your section until it's clean, meaning nice topology with only quads (there are a lot of tire tutorials by the way), then give it an array with an empty object so that your section is repeated all around

Moonboots Thank You very mutch You are great :) this solve my problem:) i see sometime i cant create other topology but after this i can fix this:))

Your topology is bad, you have a lot of ngons, you need quads. What you could do is correct your object this way:

Apply the rotation of your object. Only keep a section, delete the rest:

Create an empty at the origin of your object:

Give your object an Array modifier with the empty as Offset Object. Enable Merge and First Last options:

Rotate your object so that it makes a complete circle:

Correct your topology with the knife or with some joins so that it is made of nice quads, create some bevels, etc (here just the beginning before my computer crashed):