Create pose from existing armature I have two armatures with all of the same bones. Armature A is a basic character T-stance, Armature B is of a run animation. I had first attempted to copy the pose from Armature B to Armature A, but realized that there was no pose, and that the positions of the bones of Armature B where baked into (I think that's the proper term) the armature, meaning there was no pose to copy.

Rest Poses: T-pose Armature A on left, Armature B's (the one with animation) on right
Is there a way to create a pose of Armature A using the positions of the bones of Armature B?
An example blend can be found here:
Bip001 is the primary armature that the model is bound to, Bip001.001 is the armature with the animation I am attempting to apply to Bip001. (Bip001 == Armature A, Bip001.001 == Armature B from the above explanation).

Here is a script I've been working on to do this for bvh files.  Basically it adds a copy transform constraint to each pose bone, then using Object.convert_space, retargets animation to another rig with same bones.
It's good practice to keep scale on armatures to unity, to avoid issues. Applying scale to both armatures. Ctrl-A scale will make the scale (1, 1, 1). I applied rotation as well and put the armature objects at location (0, 0, 0) before running script..

import bpy
from bpy import context

remove_constraints = False
scene = context.scene
rig1 = scene.objects["hands_reference_skeleton"]

rig2 = scene.objects["hands_reference_skeleton.001"]
if not rig2.animation_data:
    rig2.animation_data_create()
rig2.animation_data.action = None

# add copy transform constraint to each bone
for pb in rig2.pose.bones:
    ct = pb.constraints.get(pb.name)
    if ct is not None:
        ct.influence = 1
        continue
    ct = pb.constraints.new('COPY_TRANSFORMS')
    ct.name = pb.name
    ct.target = rig1
    ct.subtarget = pb.name

action = rig1.animation_data.action

f = action.frame_range.x
# add a keyframe to each frame of new rig
while f < action.frame_range.y:
    scene.frame_set(int(f))
    context.view_layer.update()
    r2 = rig2.evaluated_get(context.evaluated_depsgraph_get())
    for pb in r2.pose.bones:
        #pb2 = rig1.pose.bones.get(pb.name)
        m = rig2.convert_space(
            pose_bone=pb,
            matrix=pb.matrix,
            from_space='POSE',
            to_space='LOCAL',
            )
        if pb.rotation_mode == 'QUATERNION':
            pb.rotation_quaternion = m.to_quaternion()
            pb.keyframe_insert("rotation_quaternion", frame=f)
        else:

        # add rot mode checking
            pb.rotation_euler = m.to_euler(pb.rotation_mode)
            pb.keyframe_insert("rotation_euler", frame=f)
        pb.location = m.to_translation()

        pb.keyframe_insert("location", frame=f)
    f += 1

# set constraints to zero or remove entirely.
for pb in rig2.pose.bones:
    ct = pb.constraints.get(pb.name)
    if ct is not None:
        if remove_constraints:
            pb.constraints.remove(ct)
        else:
            ct.influence = 0


Is there any way to "apply" Vertex Group blend restriction on Shape keys? I've got a model with driven Shape keys, many of which are restricted by vertex group blend (mostly left and right). They're modelled mirrored, duplicated and bound to vertex group.

Inside Blender it works fine, but borks out during export.

I'd like to "apply" the vertex group blend effect, so the final shape key is just data that is actually transformed.

Yes, I could manually make a "new shape from mix" for every key one by one, but they're already driven and it'd be extreme pain, as I have many models like this.

Hope there is an easier solution for this.

Yes there is a way. Blender sort of has its own built in thing to handle this thing. The solution is similar to this: Shape keys and applying subdivision surface modifier

However because we are dealing with the mirror modifier it becomes trickier. I assume you want to export it because you are using it for your game or something (me too). But what you do is the following:

1.) Duplicate your mesh for each shape key (including basis), you can move the clones around to see them all at once

2.) For each shape key, set each shape key slider to 1 (just leave the basis one alone)

3.) For each shape key mesh, make sure your mirror modifier is not creating or destroying vertices. So make sure vertices are not colliding with the middle of the mirror when at full 1.0 because it would change the number of vertices and break this method. They can collide halfway but because we are going to be baking deformations at 1.0 that won't matter. The vertices in a shape key are allowed to go to the other side of the mirror modifier.

3.) For each shape key mesh do Convert To -> Mesh from Curve. This "bakes" out your model with the current deformations which of course takes into account your vertex blends, mirror, and subdivision if you are using it.

4.) Select all of your baked out shape key meshes with your basis as your last.

5.) Go to the basis mesh shape key panel and go "+" button -> Join As Shapes

6.) Voila. All of your shape keys should condense as their own respective sliders into your basis mesh. If one of them is missing it would be because they differ in vertex count meaning they collided or disconnected itself from the middle of the mirror modifier. Go back and fix it. You can just inspect each meshe and check at the top right details menu where it says how many vertices you have selected. Make sure they are all the same number.

The important thing is to preserve the exact number of vertices for each shape key deformed mesh. So I assume it would also work for other types of modifiers.


Obj exported from blender is split along the UV seams when opened in maya If I export a obj from blender that has UV maps, when the file is imported into maya it is in pieces, its split along the UV seams. For example if I was to import a box with seams along all edges, it would be broken into 6 faces. Does anyone know why this is happening and how i can fix it without merging it all back together in maya?

Thanks

Unclick Include Edges in export settings:


Is there a quick way to set the origin to the "bottom centre"? From my experience, it seems that a lot of times when I scaling an object, I would want the bottom of the object stays as it is. For example, think about scaling a lamp on a desk. If I scale the lamp, I would want the lamp to stay on the desk, not going below the desk.

I know the origin decides that, so the origin needs to be at the bottom centre (that is, centre in the X and Y axes, but the lowest in the Z axis). But in the Object -> Set Origin, there is only "Origin to Centre of Mass". I have searched Google and found ways like selecting the bottom face, move the cursor there and then setting origin there, but that seems cumbersome, especially if I have to do it over and over again. Isn't there an easier way? Like "Origin to Bottom Centre of Mass" menu?

Enable viewport pie menu addon from the preferences(Edit -> Preferences or  F4 -> p):

Ctrl + Alt + X will call a pie menu with an option:


Why Doesn't my Ambient Occlusion Texture Show Up Properly" Okay, I just learned how to bake an AO lightmap for an object and how to blend it with another texture (thanks to the people here), and it looks just great when rendered, but for some reason the object looks almost black when I view it in the BGE. My other objects that have just one texture mapped to them look normal in the BGE. Here's an image of the object in the BGE:

Also, the AO texture shows up in Texture mode in the 3D viewer, but not the other texture that I blended it with. Here's an image to show you what I mean:

Here's an image of the object when rendered. Note that the AO is barely noticeable (another issue?):

And for posterity, here's how I have my texture nodes set up for the object:

This is the node setup I would suggest:

And the 'Fac' slider will adjust the strength of the AO effect.

Things that may stop your AO/node shaders from working:

You're in multitexture mode (you must be in GLSL mode for node shaders to work)
You have node textures disabled (render settings, GLSL, the checkbox labled 'nodes')
You have unticked the 'use node shader' button for the material. I consider this most likely.


how to link a 2.4 blender file to the 2.7 blender version? I have tried linking older blender files to the newest version of blender and I get a warning saying that it is too old and it will not work with the recent version.

Have you tried to Save the old blender files into a new blender file?

Try and open a new file in your newest version of blender. Then, just append every file from the Old blender file( of which you have problems linking) to the new blender file. Save that new file, and that should do it! It should work...


Selecting curve after importing svg using bpy I'm importing an SVG file into my scene using bpy. But after importing, the curve is not selected nor active. Here is wat I am doing:

path = '/path/fo/file/'
file = 'contour.svg'

bpy.ops.import_curve.svg(filepath = path + file)

Can I just assume that the newly imported object is always the last one in the objects array? So that I can grab it like this:

active_object = bpy.context.scene.objects[-1]

Or is there a better way?

You can store the names of the objects before and after importing and find the difference to make sure you have the latest one:

import bpy
C = bpy.context

# Names of all objects before importing the SVG
names_pre_import = set([ o.name for o in C.scene.objects ])

# Import SVG as curve
fp = '/mylocalpath/svgcurve.svg'
bpy.ops.import_curve.svg(filepath = fp)

# Names of all objects after importing the SVG
names_post_import = set([ o.name for o in C.scene.objects ])

# Perform set difference to find the new name and store it
new_object_name = names_post_import.difference( names_pre_import ).pop()

# Reference new object
o = C.scene.objects[ new_object_name ]

# Set as selected and active in Blender 2.7x
o.select = True
C.scene.objects.active = o

# Set as selected and active in Blender 2.8
# o.select_set(True)
# C.view_layer.objects.active = o


How to loopcut a Square-based Pyramid? Is there a way to loop-cut a Square based Pyramid, so that there is multiple bands around the sloped sides?

Edit: Sorry, my bad, but when I said triangular prism, I was thinking about a pyramid, Changed that just now. Sorry again! Though the prism answer was a nice knowledge to know.

Regardless it is square-based or not, you can always select all sloped edges, then hit W > Subdivide, then tweak the number of cuts as you want.

Another trick is to first bevel the pole vertex, with a very small value, to make all sloped faces quads (they might still look like triangles , but they are actually quads now), then you can use loop cut tool to cut them. After that, just remove the extra vertices with Remove Doubles tool.


How to cut a cross shape into a sphere? I'm working a file where I need to cut a cross shape into a sphere so that it looks like a guide an artist would use to draw a head, like the following:

However, I'm not sure where to start, I can't seem to manipulate the topology of the sphere in order to do this.

I would use Boolean Modifier. 3 times to be exact.

First cut a sphere shape out of a panel.
Do this by moving the panel into the sphere, until the edge of the panel is in the center of the sphere. Then add a Boolean Modifier, select the sphere as the Object and Apply.

(the panel might have missing faces, or an open side. If this happens you'll have to close up the mesh first I'm afraid.)

Then move the panel with the piece cut out of it into a Sphere, only a tiny bit deeper than the previous panel and put a Boolean Modifier on the Sphere this time (and select the panel as the Object), and again apply.

Then rotate the panel 90 degrees and do it again.

(To finish it off you could Shade Smooth the object and putt an Edge Split Modifier on it, to make it look nicer.)


How to export physics data from Blender 2.80 now that BGE is gone? The add-on I used ("blender-bullet-export") worked enough to export rigid bodies from the scene into a .bullet file, but it relies on BGE.

Now that BGE is gone (for good) in Blender 2.80, what can we do to export physics data or .bullet files, and why there is no UI option or builtin available format after all those years.

Looks like I can answer my own question.

After some digging I found another simple add-on compatible with Blender 2.8 (this time called "bullet-blender-exporter", LOL) that exports a .json instead of a serialized .bullet file. A nice work-around for anyone that needs to export quickly the rigid bodies and constraints from Blender.

For anyone interested the add-on is this: https://github.com/xu-xionglong/bullet-blender-exporter


Weird Boolean Modifier glitch (double faced after intersecting with more than 1 mesh?) I have a boolean modifier with the following settings that is modifying the object outlined in green with the following settings:

where Cube.018 are the 'ribs' around the edges (they are all joined together in 1 mesh for simplicity

I'm trying to cut some holes in the main object (the ribs actually go into it a bit). As you can see, they all work fine up to when the ribs start intersecting with the extruding cylindrical object (that's actually PART of the green object; it was added in edit mode). Then it just starts going haywire with darker double surfaces (inverted normals? I tried flipping normals already though) and whatnot.

Any help is appreciated

EDIT: Not duplicate because nothing 'goes invisible' and as far as i can tell, nothing connects (although that may or may not be the cause of the double surfaced (?) faces. I also removed doubles for both meshes as well

EDIT 2: As requested by Mr Zak, here are some screenshots in edit mode and the blend file:

Interesting. It turned out that if I separated the extruding cylindrical 'sub-mesh' if you will, then everything works out fine. I suppose it has something to do with the fact that I inserted that object in Edit mode instead of Object mode.


How can I easily check if an object is linked to an other object? Sometimes I accidently make changes to an object without noticing that it is still linked to another object.
Is there a simple way to keep an eye on object links?

I couldn't find it anywhere in the properties section or in the outliner.
Right now I usually enter edit mode, zoom out and look around to see if any other object also switched to edit mode. But this method is quiet clumsy and sometimes I forget to do that and miss the link.

I just found the answer for my question myself:

In the properties panel I have to go to the object data section. If a number is displayed beside the mesh-icon it means that the mesh of the selected object is linked to at least one other object:


Is there a Blender Virtual Camera? Or How to create a Virtual Camera? Two pronged question: Is there currently an addon or process in which I can use a virtual camera in Blender? (a virtual camera is like this - https://www.youtube.com/watch?v=MAFVglxzkhI) I mainly want to be able to do that within blender but I have not found anything like that. Including in this post (Any tools to capture movements from a mobile phone to Blender?)

Second question is if there is no system out there like that, then how can I go about making a virtual camera addon myself? I do not have a VR system so I cannot test a system like the video above so I would like to make a bootleg version using my smart phone (both iOS and android something like this but connected to the camera instead - https://www.youtube.com/watch?v=YcylkhyauC0 or https://www.youtube.com/watch?v=xMEea6drOPA). I have made apps for both android and iOS and I would like to make an app that connects wired or wirelessly into blender (Similar to Unity Remote - https://www.youtube.com/watch?v=RdhliD0zupg) Once connected I would use the smart phone to connect to the blender camera and connect as a bootleg virtual camera  but I have no idea how to go about this and I would like some help please.

If anyone out there could direct me in the right direction where I can find further information on how to go about this I would highly appreciate it thank you!

I don't think it is a good idea to use a phone for running Blender. You will probably need to come up with some other hardware solutions to display the scene that would be portable as in the example video.

If you know how to get movement and orientation data from some device, moving camera in Blender via Python is not a big deal at all. You could use an accelerometer and gyroscope sensor connected to some microcontroller board - probably would be easiest to use an Arduino, maybe have a look at this one that comes with Bluetooth Maybe then receive data with pySerial...

Once in Blender, you can take any camera and move it with scene update Application Handler continuously. It's as easy as bpy.data.objects['Camera.001'].location = ... and bpy.data.objects['Camera.001'].rotation_quaternion = ... You might want to add functionality, like for example recording the movement to keyframes and so on. That is obviously also achievable with Blender's Python API.

I suspect that you might want to add quite a lot of additiona features like that and probably some sort of an interface so at the end of the day, this might not be the most suitable/enjoyable first project to try for someone without any knowledge of Blender's Python API. You might want to dedicate some time to learning to use it first.


Armature deform on same placed verticies of different objects creates weird gaps I am using different objects that got verticies with shared location. However, it seems like there are gaps in between the objects though I made sure they are all from the same location. Is there a way to make those behave the same and the rest of the objects keep their specific deformation? (-> so they behave as if they were in the same object and the doubles got removed)
Thanks for helping.
Picture:

If two meshes have no unapplied scale/rotation/location, any vertices in the exact same locations, with the exact same weights, will be deformed in the exact same way by two identical armature modifiers.  (Same armature, same deformation mode-- "preserve volume".)

To make sure that vertices are in the exact same location, you can always shrinkwrap to the nearest vertex and apply.  To make sure that vertices have the exact same weights, you can data transfer from nearest vertex and apply.

To see the specific weights of a vertex, select that vertex in edit or weight paint mode and look on the sidebar, item tab, vertex groups section.

To make sure that meshes are using the exact same armature modifier, you can copy modifiers from the link menu (ctrl-L for me.)

Note that modifiers evaluated before the armature can change the position and/or weights of verts.  What matters are the values at the time that the armature modifier is evaluated.

As an aside specific to this picture, I've found that a surface deform is a much easier way to deform mouth interiors.  Because of differences in topology, you can get clipping (not from the margin verts, not if you're careful about weights and positions) from just an armature modifier.


Partial shape subtracting only Im trying to make some dice but one of the shapes is not subtracting from the cube
 properly. The sun on the right side is only partially subtracting.

I started with some svg vector saved from inkscape, imported and then extruded them.
My plan was to subtract.

Any help?

Edit:

Edit:

Sorry I never Checked my Curves from Inkscape properly. I had some unlinked shapes. I would have thought that blender would say. "Yo, dude... your vector sux"

One of the vector files I saved out from Inkscape had some duplicate nodes that were not linked.

I went back into Inkscape and tidied up the vectors and made sure the shapes were full complete enclosed shapes with no duplicate nodes

I think I found the problem with that boolean: duplicate vertices!

I've hidden other shapes, to better see the two objects involved by the boolean, and here is you wrong result:

then I selected the "sun" shape, in edit mode and removed duplicates

It had 78 duplicate vertices:

And, after that, the shape works better with booleans...


Unpredictable copy bone rotation I'm trying to rig a 3 bone-setup that allows me to twist the mesh's forearm like you would in real life. I've got a copy bone rotation on the bone (haven't done the rest) but rotating it just freaks out the chain.

Here's how it looks like:

And that's only on 0.359 influence limited on the Y axis (Local space -> Local space (I've tried different ones; they ended up with either the same results or worse)). Also, why does it take more than one Alt-R's to reset the bone rotation?

Probably a stupid question and I'm just missing something really obvious. In any case, any help is appreciated. Thank you!

You are encountering a circular dependancy: A child bone influences the parent bone, which influences the child bone.

Here's a pseudo explanation of whats going on. Assume, you're moving the mouse in an 45° arc as illustrated on the left. boneB (the child bone) rotates. But since it influences the parent bone slightly, the parent bone will rotate as well. But now the relation of the starting and end position of the mouse towards the shifted origin of the child bone are different and produce another angle. Since the boneB is slightly lower on the right illustration, the angle is slightly bigger, now the parent bone has to be recalculated. And then the child bone, etc. All this happening, while the mouse is being moved obviously produces this weird behaviour.

Y Rotation
To solve this problem for the y rotation, simply parent boneB to the parent of boneA. If you wish you can lock the translation axes of boneB.

All rotations
To create a similiar behaviour for all rotation do the following. (Remember, child bones aren't allowed to influence their parents, if this changing the child bone's properties.)
Create an additional bone, which will be the animated one and parent it to the firstparent (root). Add a copy rotation from the handle to boneB, and a copy rotation constraint to boneA with your desired influence.

The result works, but the handle isn't location at boneB, the segment, which the animator wants to manipulate. This is not intuitive. (At the same time, this is why everything works, the relation of the handle bone to the mouse doesn't change during the rotation operation.)
To enhance the setup, position the handle at a better location. Hide the other bones, or move them to another layer, since the animator doesn't need to touch them. Then choose a custom shape for the handle bone, and choose the boneB in the At field. The custom object will now always be displayed at the position of boneB. The origin of rotation (where the dashed line to the mouse is drawn from), remains at the handle bone's position though.


How to store the selected points of a Mask I am trying to store the selected points of a Mask in the ClipEditor in a list, in order to retrieve it later, so to say as a temporary selection-set of mask controlpoints.

Here's what I have so far:

import bpy
layer = bpy.data.masks['Mask'].layers['MaskLayer']
bpy.context.scene["mask_storage"] = []
pointlist = []
for p in layer.splines.active.points:
   if p.select == True:
       pointlist.append(p)

That works so far. If I print that list it has all the selected points in it, such as:

<bpy_struct, MaskSplinePoint at 0x7f7f2fbb4d88>
<bpy_struct, MaskSplinePoint at 0x7f7f2fbb4e98>
<bpy_struct, MaskSplinePoint at 0x7f7f2fbb4fa8>

However, when I continue to do this:

bpy.context.scene["mask_storage"] = pointlist

I get an error:

  TypeError: object of type 'MaskSplinePoint' has no len()
  The above exception was the direct cause of the following exception:
  SystemError: PyEval_EvalFrameEx returned a result with an error set

At first I tried to append the points directly to the "mask_storage" list directly, but that didn't work, it gave the error

  AttributeError: 'IDPropertyArray' object has no attribute 'append'

That's why I tried to work around that by first appending to the "pointlist" and then assigning that to "mask_storage". But that obviously does not work.

I did do some googling already, and it seems I might need to do something with bpy.props.CollectionProperties, but I simply couldn't figure out how to do that exactly.

So, with @OmarAhmad's help I figured out a way to achieve what I want. Just for the sake of completeness I want to post the entire code here.
On Twitter I got told that storing the points the way I did was dangerous, because if the masks got deleted and I try to access them anyway it would lead to a segfault. So far I did not notice any problems like that. Anyway, here's the script. I think it can make Rotoscoping a bit easier:

import bpy

def store_mask_points(context):
    mask = context.space_data.mask
    layer = mask.layers.active
    pointlist = []
    # if the storage doesnt exist, create it, otherwise, reference it
    try:
        mydict = bpy.mask_storage
    except:
        mydict = {}

    # if there is an active spline, list all selected points
    if layer.splines.active:
        for p in layer.splines.active.points:
            if p.select == True:
                pointlist.append(p)
        # assign the pointlist to the layer
        mydict[layer] = pointlist
        # write the dictionary to the mask_storage
        # (I would rather write this list as an attribute of the masklayer,
        # but appartently I can only do that on bpy)
        setattr(bpy, "mask_storage", mydict)

def recover_mask_points(context):
        layer = context.space_data.mask.layers.active
        # if there is an active layer and
        # if that layer is stored in mask_storage, select the points in it
        try:
            if layer and bpy.mask_storage and bpy.mask_storage.get(layer):
                for p in layer.splines.active.points:
                    p.select = False
                for p in bpy.mask_storage.get(layer):
                    p.select = True
        except:
            print("no mask storage yet")

class CLIP_mask_store_points(bpy.types.Operator):
    ''' Store the points of a the active spline as Selection Set'''
    bl_idname = "clip.mask_store_points"
    bl_label = "Store MaskPoints"

    @classmethod
    def poll(cls, context):
        space = context.space_data
        mask = space.mask
        return (space.type == "CLIP_EDITOR") and space.clip and mask

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

class CLIP_mask_recover_points(bpy.types.Operator):
    ''' Select the Selection Set of the MaskPoints'''
    bl_idname = "clip.mask_recover_points"
    bl_label = "Recover MaskPoints"

    @classmethod
    def poll(cls, context):
        space = context.space_data
        mask = space.mask
        return (space.type == "CLIP_EDITOR") and space.clip and mask

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

def register():
    bpy.utils.register_class(CLIP_mask_store_points)
    bpy.utils.register_class(CLIP_mask_recover_points)

    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name='Clip Editor', space_type='CLIP_EDITOR')
    kmi = km.keymap_items.new('clip.mask_store_points', 'Y', 'PRESS', shift=True)
    kmi = km.keymap_items.new('clip.mask_recover_points', 'X', 'PRESS', shift=True)

def unregister():
    bpy.utils.unregister_class(CLIP_mask_store_points)
    bpy.utils.unregister_class(CLIP_mask_recover_points)

if __name__ == "__main__":
    register()


Using Python to select Inner loop in my mesh is producing unexpected results. Any suggestions? Blender 2.8 I have many 2d meshes that have many edge loops created with the Inset Straight Skeleton Tool and I'm hoping I can clean up some of the unwanted edge loops in an automated way.

So far I've found:

import bpy
import bmesh
context = bpy.context

obj = context.edit_object
me = obj.data
bm = bmesh.from_edit_mesh(me)
bm.select_mode |= {'EDGE'}
for e in bm.edges:
    e.select = e.is_boundary
bm.select_flush_mode()
me.update()

Or potentially more simply done with bpy.ops.mesh.region_to_loop()

This will let me select the outer edge loop, but I am struggling to find anything that will let me select the innermost edge loop properly. If I can select both of these then I can just perform an inverse selection and delete the unwanted edges inbetween them. Does anyone know why my inner loop selection would not be selecting the innermost loop?

Using Select Loop Inner-Region from the Select menu produces an unexpexted result. (or bpy.ops.mesh.loop_to_region() in Python)

Is this what you want to select?

for v in bm.verts:
    v.select = not v.is_boundary


Get operator command from context menu? Here is what I need to do: I need to add a button to this context menu (the one you get when you right click on any button):

like the one I added here at the bottom. I am using this code from the blender docs to make that work. Now I need to be able to reference the blender command from the button that has been clicked on and use that in my code. I have been looking for the source code for the Copy Python Command button that is shown above my custom button, but I haven't been able to find it. That button pretty much does the same thing that I need to do, so if anyone knows where that source code is, or just how to implement something similar, I would really appreciate it!
Thanks!

The answer is in the example code.
When executed over the splash screen button, it prints to console
Note have added
def dump(obj, text):
    print(text, obj)
    ...

to the dump method to inform which of the button context members are not None
button_operator <bpy_struct, WM_OT_splash at 0x7f474dff47e8>
<bpy_struct, WM_OT_splash at 0x7f474dff47e8>.__doc__ = None
<bpy_struct, WM_OT_splash at 0x7f474dff47e8>.__module__ = bpy.types
<bpy_struct, WM_OT_splash at 0x7f474dff47e8>.__slots__ = ()
<bpy_struct, WM_OT_splash at 0x7f474dff47e8>.bl_rna = <bpy_struct, Struct("WM_OT_splash") at 0x7f477da08e48>
<bpy_struct, WM_OT_splash at 0x7f474dff47e8>.rna_type = <bpy_struct, Struct("WM_OT_splash") at 0x7f477da08e48>

Going by blenders naming convention the class instance above of WM_OT_splash correlates to window manager operator type splash --> the registered operator bpy.ops.wm.splash() with bl_idname = "wm.splash".
Ok can change up the script to get the operator from the button context.
def execute(self, context):
    op = getattr(context, "button_operator")
    if op:
        print(op)

    return {'FINISHED'}

Lets run this new code over the run script button
<bpy_struct, TEXT_OT_run_script at 0x7f9606bf4a68>

Looks familiar off to the python console. Examples of the active operator (last registered operator run) and how to get the options used in the last run of the operator.  IMO the py console is a great place to peck around and work out how things work.  The example script that prints the dir of available properties is another
>>> op = C.active_operator
>>> op
<bpy_struct, Operator("TEXT_OT_run_script") at 0x7f4755ffa708>

>>> op.rna_type
<bpy_struct, Struct("TEXT_OT_run_script") at 0x7f477c30cde8>

>>> C.window_manager.operator_properties_last("text.run_script")
<bpy_struct, TEXT_OT_run_script at 0x7f9606bf4b08>

To get there quickly, Feel there is a nicer way to do this, anyway
Get the operator, get its bl_idname from the class name.
If there is a property attached to the button it is reflected in the button context. From the operator get its properties (minus rna_type) to find which belong to the operator.
Get the operator from bpy.ops invoke it and use the settings of the button.
Following writes info re the operator and also invokes it.
def execute(self, context):
    op = getattr(context, "button_operator")
    if op:

        foo, bar = op.bl_rna.identifier.split("_OT_")
        keys = set(op.bl_rna.properties.keys()) - {'rna_type'}
        kwargs = {k : getattr(op, k) for k in dir(op) if k in keys}
        print(foo.lower(), bar, kwargs)
        op_callable = getattr(getattr(bpy.ops, foo.lower()), bar)
        # run the op
        op_callable('INVOKE_DEFAULT', **kwargs)
    return {'FINISHED'}

Which if run over the add custom property to workspace in 3D view UI, prints the following to console
wm properties_add {'data_path': 'workspace'}

and runs the operator adding a new custom property to the workspace.


Why can't I render sharp images? I can't seem to output sharp images.

I've search everywhere on the internet but the only solution I've found was to bump the samples but that didn't solve anything.
These are 1k samples with Intel's Denoise and 5k samples examples.

1K samples:

5K samples:

Here is the blend file

Can anyone help me please?

This is a result of too low render resolution.

1000px is just too low, and upscaling makes it look blurry.
Render the image at 2000x2000px instead, and even with just 200 samples you'll get nice sharp edges (just tested it).

Bonus: How to properly connect the Denoise node for best results :).


How to import a DXF to blender 2.8 correctly? I want to build a indoor map in web, and what I have is only a Autocad dwg file .
My proposal is as follows :
1 in AutoCAD , I explode all objects ,Save dwg file as dxf file
2 Import dxf file in blender
3 convert all curve to mesh
4 export the mesh as glb file
5 import the glb file and render in threejs

here is my questions ,any suggestions is appreciate.
1. my dxf is
after import dxf in blender 2.8,it looks as follows

why so many unnecessary line/curves ?
how to remove those ?

it seems lots of lines is in one curve ,
when I select on line ,the blender  hilight  many lines/curves .
how to split it one to one ? (I explode all objects in AutoCAD)

here is my work around:

CAD to .dxf - > .dxf to inksacpe - > inksacpe to .svg > .svg to blender

make sure the scale is correct when import/export


I cant choose the Saving Options I started using blender couple of days ago but i think i have come a long way. I finished my first project. I did all the coloring, camera angels etc. When i finished my project i rendered it. But when it comes to saving, saving options not working. I can only save it as a .blender. I cant change it to jpeg or png. When i save it as a .blender and i open it up i cant see the image i rendered. I can only see the tiles like pictures u can see in microsoft excel. When rendering ends i pressed f3 to save it but i can only save it as a .blender and cant change it to any other form. I downloaded the Blender couple of days ago i think its the latest version. How can i solve this issue. TLDR: I cant save the finished project as i wanted to be.

When you save as .blend, you're saving the project, not the rendered image.
When you finish a render an image editor window pops up, showing the rendered image; in this window go to the image menu and choose save as, then you will choose if PNG, jpg, EXR, ...
Shortcut is Alt S.


How to combine low sample renders? I am rendering my scene with only one sample but all the renders of the same picture have a different seed value.
How can I combine them correctly?
I wrote a java-program that loads all the images and takes the average pixel color for each pixel of the images. Is that a correct way of combining the images? It doesn't reduce the noise very much so I am not happy with it. What can I do?

The process that I've seen is combining each image in Blender via a Mix node, and using a mix percentage based on [INCORRECT]---- how many images are being combined (in the example he uses 20% since there are 5 images) ----[/INCORRECT]. See the attached screen shot from Kent Trammell's tutorial on CG Cookie.

EDIT: Actually, Ben Simmonds corrected Kent's math on this tutorial. Here's a quote from Ben on the page:

  HI Kent. I think your math was incorrect for those mix nodes. If you
  think about how each image contributes to the final comp, the first
  image node in that chain is contributing 4x more than the 2nd to the
  final image (0.8 vs 0.2). The correct values for the mix nodes in such
  a chain would be as follows:

  1st and 2nd: 50% (1st plus 2nd) and 3rd: 33% (1st, 2nd and 3rd) and
  4th: 25% (1st through 4th) and 5th: 20%

  If you were mixing the images all at once then the 20% per image value
  would be correct, but the math is slightly different for mixing them
  pairwise.

  Alternatively, the simpler option would be to ADD all of the images
  together, and then divide the pixel values of the resulting image by
  5.


Create "Floor" plane in cycles? I've got a scene that I've motion tracked and it seems to be working well. Then I used "Setup tracking scene" to create a cube layer, then a floor layer that would only exist to act as a shadow catcher.

When I render this in Blender Render, such as Blender Guru does in his tutorial video, it looks fine.

However, because of what I would like to do with this scene in the future, I would rather use cycles instead of blender render. However, I don't think the nodes are set up right or something because when I render it in Cycles, the floor layer still appears.

I would like the floor layer to only act as a shadow catcher AND (this is hard to describe) a layer where anything behind it would not be rendered. So like if I had a cube that stuck through the floor layer, only the part that is in front of it would be shown.
I should also note that I have no experience with nodes, so that's probably the problem.

This feature is now included.

Select the shadowcatcher object, go to the object properties and check Shadow Catcher under Cycles Settings.

It will render a shadow but mask the object behind it.


Solve error high with good track? So I recorded some Footage in front of my school and tracked it. The tracking points themselves seem alright (I think) but I get an average solve error of around Five.

Here are my settings:

The camera used for recording is a Canon Vixia HF M40.

Project file: https://drive.google.com/file/d/0BzgDIjhDOu6EbVk5RlZoUTM4Nmc/view?usp=sharing

Successful reconstruction can only be achieved with accurate tracking

Your error average should be under 1.0 pixels, preferably 0.3.

Issues with your file: Your tracking is not good...

Your trackers are too large, and have few distinct features. Don't track the center of a featureless object, try to track the edges that have contrast.
(read this post on camera tracking markers)

Select any of them and scroll throug the timeline to watch what the tracker is doing:

The shape you are tracking shouldn't be dancing like that.

It should be more like this:

Go through your trackers ONE BY ONE to fix them.

Instead of using only loc, try loc scale and change from keyframe to Previous frame.

Use the graphs and the dopesheet for the movie clip editor to determine which tracker have a high tracking error and get rid of them and re-track.

READ THIS POST to troubleshoot issues with motion tracking


How to make the model non-transparent I want retopology a head by using mesh. During the mesh, I found that, the head ist transparent.

How to make the model non-transparent?

It looks like your retopology mesh is marked as X-ray. This makes the mesh visible through all other objects.

Uncheck it and all will be fine.

See the image below.


Cycles, material with color based on height and backside in different colors I am trying to set up a Cycles texture to render figures for a math textbook.  I am new to blender and am having trouble.  I am looking for an effect similar to

or

Ideally the front and back surfaces would be rendered in different colors and a surface would be transparent enough to see another surface behind it, but its back faces would not show up in the transparent parts.

A basic way to control the color based on height would be to use the coordinates on the Z axis and have those control a color ramp.

To have the backside be a different color use bacfacing, from the geometry node, to control the mix with a different shader.

From there on, is just a matter of making the material as complex as you want until you are happy with the results.

or

Endless fun playing with textures.


trying to export mask animation but data dont change when changing frames! trying to export mask data i managed to do so for a single frame successfully by doing for each point:

bpy.data.masks[mask].layers[0].splines[0].points[0].co

then i change the frame by using to export mask coordinates animation:

bpy.context.scene.frame_current = i

when i do it from the console it works, but the problem is when i do it using a loop it does not update the data?

any help would be appreciated.

i found the solution is to use frame_set function:

bpy.context.scene.frame_set(i)


Spotlight Not Illuminating Inside Building I need to render this scene where the sunlight is entering though the windows and making shadows, I added a spotlight but it seems that the light is only working outside, I have no idea why. My windows have no glass yet.
Of note, I am using 2.79 because of my current hardware.

The weird circle you see in the windows is that i accidentaly duplicated the glass, i deleted the duplicated faces and correct the normals and now everything is looking goood

change spot strength to 1000

change glass material to :

and most important change these: (blend mode and shadow mode)

and you will get :

to change blend mode in 2.79 checkout these answers:
Material Opacity in viewport?
How to see Cycle's material transparency in 3D View


Set the default Blend Type When I add any strip to Blender's Video Sequence Editor, the default Blend Type is Cross.

Is it possible to change the default to Alpha Over?

You could get a script writer to make a add strip effect option. The Transform Addon currently creates a transform strip upon key press. So it is possible.

Currently over at the BA forum, user "snu" is actively developing a VSE script that might add this function for you. http://blenderartists.org/forum/showthread.php?338598-Addon-WIP-VSE-Quick-functions-Snaps-Fades-Zoom-Parenting-Titling-Play-speed


Why cant i texture paint blender 2.82 I have UV unwrapped. I have saved a new texture map. I have linked it all together with a new material on the model. Cant texture paint in texture paint mode.

It will however let me fill a whole new colour.

https://drive.google.com/file/d/1vXeXwqVf8ogOvbcXhoiZnARl7yz26xMk/view?usp=sharing

You're using a texture which is black: remove it.


How to find out the cause of a wrong weight paint? I finished weight painting but when I begin animating, I found out that some vertex group is missing a weight or some vertex group might be accidentally applying weight to other unintended area. How to find out the vertex group that might be using a particular vertex without clicking each one and look at the color?

See this answer. With the vertex weight panel, you can at least select several vertices and see, which bone is affecting them. Also, you can copy weight setting from the active vertex to all selected vertices. This is helpful e.g. for the head, where you like to make sure that only one bone alone is affecting it.


animatable soft transition between sphere and cylinder I'm searching for a good way to animate a molecule-like structure with nice transitions between the spheres and the cylinders.
So far, I'm using a skin modifier for the structure and a particle system to generate the spheres, but I'm afraid in this setup it would be hard to built in the tapering effect. I also tried to model the transition, but that resulted in a lot of z-fighting between the different links.

Here is a simplified setup to start with. On another layer, you can also find a modeled link, with the desired transition softness for reference, or to use in a different setup.

We can make use of Metaballs and Animation Nodes to achieve the desired effect.

The vertices of the mesh can be represented by a Ball Metaball, using such node tree:

We instance a Metaball Ball object, position it in place of the vertices and change its radius as we wish using an Object Attribute Output node and possibly its stiffness if you like.

Next, we can represent edges using Capsule Metaball, using such node tree:

We instance a Capsule Metaball, position it in the center of each edge, scale it using the size_x property based on the length of the edges using the Object Attribute Output node (We multiply it by 0.5 because capsule goes both ways), orient it along the edges using the Direction To Rotation node and control its stiffness and radius using Object Attribute Output node.

Which results:

Blend file for study:

Animating it and using non meshes structures is pretty easy in Animation Nodes. You may ask a question specific to exactly what you want to create. An example animation:


How to make dried desert/cracked ground I am trying to create a cracked ground appearance for an animation that takes place in the desert. something like the image here:I would like to do this all in blender, and have blender generate the texture so I will not have to worry about unwanted ridges like those you would get in an image from the internet: I am wondering if there is a way to procedurally generate these cracks and use them with microdisplacements. Thank you!

Since BI was already mentioned, I'll try to tackle Cycles.  The Blender 2.79 Candidate Build now includes a working Microdisplacement.  You can enable it by changing the feature set to Experimental (must use CPU rendering) and under the Materials tab, set Displacement to "True" or "Both".

Now to address your application.  First, there is no simply no way to model real, cleaving, natural-looking, dried clay with microdisplacement using a 2D Texture (generated or otherwise).  If you look carefully at the photo you posted, the blocks fold under themselves.  The sides are textured in the same way that the tops are.  There's no way to do that without modeling geometry.

The reason is because the displacement affects the mesh in relation to the normal of the underlying geometry... a top-down approach.  This is why you need subdivisions.  This makes files, BVH cache, and rendering extremely bloated and time-consuming.

Now, let me explain why using "an image from the Internet" is not the biggest problem.  I procedurally generated this texture using Cycles nodes.  Currently, there's no way to use "Crackle" with nodes so this is a hacky way of creating a similar effect.  It takes the difference of two identical Voronoi Cell texture nodes that are slightly offset using the Mapping node.

(Click the node image to enlarge)

But even though this is procedurally generated, you can clearly see the stair-stepping.  That's because the microdisplacement algorithm attempts to produce the generated geometry as quads and the contrast between the edge pixels in this noise texture is very high (similar to your second picture).  The mesh grid is mapped onto the texture and a value (height) is assigned to each quad.  Observe:

So you either need eased-edges (blurry corners) or you need a lot of subdivision or both.  Fortunately, the 2.79 build also comes with Adaptive Subdivision so you can have lots of subdivision up close and less as distance increases.  In layman's terms, it does this by dividing the Camera Plane into sections and subdividing the meshes based on how many subdivisions are required for a particular section.  This is determined by the Subdivision Rate you set in the Properties>>Render>>Geometry panel as well as the Dicing Scale in the Modifier pane.  For instance, if you set the Subdivision Rate to one pixel, it will subdivide the mesh so that each quad is the size of each pixel of the final render.

So while you can technically do this procedurally by using the Voronoi noise, you gain almost nothing over an image texture.  In fact you'll have to do more processing and tweaking in order to generate the proper noise required to make the edges frayed and random.  Then you'll need to generate a texture for the top using several more noise nodes.

The image I used for this render was downloaded from Google after 20 seconds of searching.  It's resolution is 1300x1300 (I doubled that with Photoshop and then blurred it slightly).  I created two UV's (one for the detail cracks, one for the large cracks) and I used the same image for both.  I added a noise texture to give it a little more unevenness.  (Heat distortion effect done in Photoshop)

(Click to enlarge)

Here's the blend.  Make sure you have the 2.79 build and then download your favorite cracked earth image texture:


How do you copy things like rigidbody constraints and force fields to other objects? How do you copy things like rigidbody constraints and force fields to other objects?

I made a cell fracture and I would like to give each cell the same constraints and force fields.

Thanks in advance

to add force field to all selected objects :

import bpy

for ob in bpy.context.selected_objects :
    bpy.context.scene.objects.active = ob
    bpy.ops.object.forcefield_toggle()

to run the script copy it and paste in the text editor and cick Run Script

to copy constraints from one object to others :

to copy rigid body constraints select the objects while the active object is the one with constraints and run this script :

import bpy

Type = bpy.context.active_object.rigid_body_constraint.type
obj1 = bpy.context.active_object.rigid_body_constraint.object1
obj2 = bpy.context.active_object.rigid_body_constraint.object2
use_br = bpy.context.active_object.rigid_body_constraint.use_breaking
over_itr = bpy.context.active_object.rigid_body_constraint.use_override_solver_iterations
for ob in bpy.context.selected_objects :
    bpy.context.scene.objects.active = ob
    bpy.ops.rigidbody.constraint_add(type = Type)
    bpy.context.active_object.rigid_body_constraint.object1 = obj1
    bpy.context.active_object.rigid_body_constraint.object2 = obj2
    bpy.context.active_object.rigid_body_constraint.use_breaking = use_br
    bpy.context.active_object.rigid_body_constraint.use_override_solver_iterations = over_itr


Unable to inset N-gon face I am trying to inset N-gon face but failing.
Create cube. Delete top and bottom faces.

Add separation with Ctrl + R so that it is not in the middle of a face:

Fill top hole with F. It will be a 5-gon. Select it and start inset

Make it smaller than the distance between center and additional separation. Dithering begin.
Is n-gon prohibited situation? How to fix out of it?

Instead of filling the face and insetting, you can extrude the edge with E and scale it down by pressing S afterward.


Array + Subsurf causes undesired pattern In order to model a part of a wire puzzle, I used a cylinder unit, added an array modifier to make it as long as I want, and finally added a curve modifier to give it its shape. To make it look nice, I wanted to add a subsurf modifier, but this resulted in a strange pattern that I do not understand - I expected just a smooth tubular shape as a result.

Can anyone explain where this is coming from, and how to avoid it? (I hope there is a solution that does not involve applying the modifiers.)

Your source mesh has front and back capping faces, deleting those gets rid of the seams:

However, there's a better way to build this shape. Get rid of the cylinder, and add a bezier or nurbs circle. On the path (not the circle) go down to bevel object, and select the circle from the dropdown, and also check "fill caps"

Not only do you not need to worry about open ends of the path vs seams, but you have total control over the polygon count of the resulting shape. The "resolution" setting on the path controls divisions along the length of the path, and the "resolution" setting on the circle controls the divisions around the tube.


Add new expressions to existing scripted expressions in driver? I'm making a script that will allow me to set up an emotion using shapekeys on my character, then shift select the bone I want to control it with and run the script to hook it up to that bone. It works fine with only one emotion, but when I try to add the next emotion the expression is overwritten so only the last emotion/bone works.

It's pretty obvious because I'm setting (and overwriting) the expression with

driver.driver.expression = str(value) +"*" + var.name

where var.name is the name of the bone selected and value is the value of the shapekey. Basically the script loops through all of the shapekeys and gets the value and sets that as a multiplier for the expression.

I would like to add the next bone to the expression instead of replacing it, so for example "0.5*emotion_a" would be "0.5*emotion_a + 1*emotion_b). Is this possible?

I would also want to replace the expression of existing bones so I could update expressions, so if I had "0.5*emotion_a + 1*emotion_b" and ran the script again on the emotion_b bone but with changed values it would become "0.5*emotion_a + 0.75*emotion_b" instead of adding another emotion_b to the expression.

I'm grateful for any help.

I managed to solve this myself. The problem was that Blender overwrites the value of the expression each time the driver is created when calling driver_add(). Instead I get the old value from the driver in animation_data before creating the new driver and save that as a string. Then I split the string by "+", check each string if it ends with the pose bone name, and if it does, I replace the value rather than adding it again. Finally I set the expression to the new string (after adding the pieces of strings back together).


Python - Iterate over each object and unwrap - Problem posting a gif for reference. When I run this script on one object I get exactly what I want, the object is unwrapped and fits fully in its UV space. But when I run the script on both objects selected, Blender treats both objects as one and packs their UVs together creating empty space in each objects UV space. I would expect blender to select one object, unwrap it, select the next object, unwrap it etc but it's instead treating it like it selected both objects and unwrapped them at once. Any thoughts? https://gyazo.com/d15393eec2d782492d02f24a45d966af
import bpy

if bpy.context.selected_objects != []:
if len(bpy.context.object.data.uv_layers) < 1:

    bpy.ops.mesh.uv_texture_add()

sel_objs = [obj for obj in bpy.context.selected_objects if obj.type == 'MESH']

while len(sel_objs) >= 1:

    obj1 = sel_objs.pop()

    obj1.select_set(True)

    bpy.context.view_layer.objects.active = obj1

    bpy.ops.object.editmode_toggle()

    bpy.ops.mesh.select_all(action='SELECT')
    bpy.ops.uv.select_all(action='SELECT')
    bpy.ops.uv.cube_project(cube_size=0.333957)
    bpy.ops.uv.average_islands_scale()
    bpy.ops.uv.pack_islands(margin=0.01)

    bpy.ops.object.editmode_toggle()

Any help is greatly appreciated
EDIT: Found a solution but not sure what made it work. I assume setting the UV layer as active is important
import bpy

selection_names = [] #declaring array

for obj in bpy.context.selected_objects: #loop through all the selected
objects
    if obj.type == 'MESH':
        selection_names.append(obj) #add to array

if len(obj.data.uv_layers) < 1:

    obj.data.uv_layers.new(name="UVMap")

obj.select_set(False)

if selection_names != []:

    for obj in selection_names: #loop through array

            bpy.context.view_layer.objects.active = obj
            lm = obj.data.uv_layers[0]
            lm.active = True
            bpy.ops.object.editmode_toggle() #entering edit mode
            bpy.ops.mesh.select_all(action='SELECT') #select all objects elements
            bpy.ops.uv.select_all(action='SELECT')
            #py.ops.uv.cube_project(cube_size=0.333957)
            bpy.ops.uv.smart_project(angle_limit = 66 , island_margin = 0.1 ,
            stretch_to_bounds=False)
            bpy.ops.uv.average_islands_scale()
            bpy.ops.uv.pack_islands(margin=0.01)

            bpy.ops.object.editmode_toggle() #exiting edit mode

From the first script, just manage the selections in order to use the bpy.ops on each one separately:
Deselect all once you get the selected ones.
Select before using bpy.ops and deselect after that.
sel_objs = [obj for obj in bpy.context.selected_objects if obj.type == 'MESH']

for obj in sel_objs: # <<<<<<<<<<
    obj.select_set(False) # <<<<<<<<<<

while len(sel_objs) >= 1:

    obj1 = sel_objs.pop()

    obj1.select_set(True)

    bpy.context.view_layer.objects.active = obj1

    bpy.ops.object.editmode_toggle()

    bpy.ops.mesh.select_all(action='SELECT')
    bpy.ops.uv.select_all(action='SELECT')
    bpy.ops.uv.cube_project(cube_size=0.333957)
    bpy.ops.uv.average_islands_scale()
    bpy.ops.uv.pack_islands(margin=0.01)

    bpy.ops.object.editmode_toggle()

    obj1.select_set(False) # <<<<<<<<<<


How to apply an image texture on a cylinder I've tried googling it, but nothing I do works.

See my screen shot:

I've applied the image texture, and the pipe has the image on it but its just stretched for most of the pipe.  It's no different when I render it out.  I've tried adding a 'mapping' mode, but that doesn't work.  What confuses me is that the in the materials tab it says 'repeat', so it should be repeating.

How can I get it to cover the pipe?

A UV map is a 2D representation of a 3D object.

The name UV map is derived from its axis’. In 3D space, x y and z is used to represent the dimensions of width, depth and height respectively. When we go to a 2D plane, instead of using xy, we use uv as shown below.

If you unfolded a cardboard box and laid it out flat, that is a representation of your cubes surface area.

Blender uses this 2D mesh to allow texturing.  By colouring in the faces of the unwrapped mesh, blender will project that image onto the respective face on your mesh.

If you leave blender to unwrap the mesh itself, stretching can occur. This is when a rectangular face is unwrapped into a square face, or vice versa. This most often occurs when your objects geometry is unbalanced.

To fix this, select your object and go into edit mode. Select everything and press control-u and choose smart uv unwrap. Press ok on the pop up window.

In the image viewer, you should now see your mesh presented in 2D.

If the 2D mesh does not look proportionally correct to your object, you will need to apply the scale.

Blender has two ways of storing it’s dimensional size data. One is the each axis’ length which is the true size and the other is the objects dimensions which is used for accurate scaling and uv mapping. If you scale your mesh on one axis or extrude or extend it in any form, the dimensions change on one axis only.

For example; we have a cube 5x5x5 units and dimensions of 1x1x2. When blender tries to unwrap it, it will stretch any face that had an z direction. So your cube will have four sides twice as long as the others. Try it  in blender to gain a better understanding.

Note how the faces on the UV in the image editor look like they are all in the same proportion and on the object they aren't, stretching the texture

To fix this, go to object mode and select your item. Go to object->apply->scale. Fixed. You may need to go through the uv unwrapping process again.

Here is the quad with correct UV unwrapping:

Quick tip:

If you have multiple objects that require uv unwrapping, do it to one object then select the rest. Set the active object to the object you just UV unwrapped and hit control L. Chose object data.

Tada. Magic.

Good luck with your project and I hope I helped,

BFB


Subdivide doesn't work on face after subdividing and smoothing vertex on another face of mesh Trying to build simple monitor :D

As Mr Zak says above in comments, face with more than 4 verts often give troubles editing, like here. It is usually better to avoid ngons and stick to "quad" face (4 verts. 3 verts is also bad for animation).

But, if you wish, you could edit your mesh first to make the side face a quad face, using knife tool: in ortho side mode, use K, followed by C - to cut straight lines - and Z to cut through all mesh.

Then click to start the cut,

click to end the cut

and press enter to confirm. You get this.

This allows you to to create a loop (since normal face loop tools won't work either, for the same reason as subdivide):

the side face is now a "quad" and subdivide works:


Animate floating dust particles I wish to create some floating dust particles for animation using a thread here but that doesn't go into the animation part, only the look dev. Could someone tell me how to animate those particles to just slowly float around and fade in and out?
Here is a .blend file:

I personally prefer post processing dust,  for a still image you would normally just find some free dust particles online and add them in via the compositor. But as for animated particles, I would Google some free dust asset animation packs and add them in the compositor using an image sequence node.

If can't find any online, you can always make your own!

Build a cube and icosphere
Put icosphere on layer 2
Add a particle system to cube and

set emission from volume
change start and end values to 0
set it to emit the icosphere
disable emitter
mess with size and amount

add an emission shader to the icosphere
set the background to black
Set gravity to a really low value
Add a couple of weak turbulence forces to push the particles around
After you animate this, you will have generated your own image sequence that you can composite onto any animation

Side note: if you really want to get fancy, you can use a noise texture set to camera mapping to control the strength of the emission node shader, then animate the x and y values on the mapping node to animate light going thorough the dust.


What is the difference between a rigid body object and a dynamic object? What is the difference between a rigid body object and a dynamic object, aside from the fact that rigid body objects can rotate and move based on physical stimuli, and dynamic objects can move but always stay clamped to an upright position? Is there any other difference between the two?

It seems that your assumption is right Rigid Bodies add angular physics (angular velocity) to the behaviour of Dynamic objects.

Which makes a rigid body roll over when it collides with another object, while a dynamic object would just stop to move.

From Python Wiki: Physics Type

  NO_COLLISION No Collision, Disable collision for this object.
  STATIC Static, Stationary object.
  DYNAMIC Dynamic, Linear physics.
  RIGID_BODY Rigid Body, Linear and angular physics.
  SOFT_BODY Soft Body, Soft body.
  OCCLUDE Occlude, Occluder for optimizing scene rendering.
  SENSOR Sensor, Collision Sensor, detects static and dynamic objects but not the other collision sensor objects.
  NAVMESH Navigation Mesh, Navigation mesh.
  CHARACTER Character, Simple kinematic physics appropriate for game characters.


Generated image data disappears The issue I am having is that at some point, randomly, the pixel data I generate and assign to an image disappears. This usually happens after several large images and pixel data have been created. The images remain, but they are black. If I restart the blend file after saving, they will also turn black. It is almost as if the data I create is freed, same as if I was to use this function:

my_image.buffers_free()

I generate a new image this way:

my_image = bpy.data.images.new(name="new_image", width=1024, height=1024, alpha=True, float_buffer=True)
my_image.pixels = new_pixels

You want to pack the image into the blend "file" right after you set the pixels.
I'm not sure if otherwise it's expectable that the data is lost over time (it definitely is if you close and reopen Blender), but I guess it's just kept in volatile memory if you don't pack it.

You can do so by simply calling

my_image.pack(as_png=True)

Note this doesn't mean the blend "file" itself has to be saved, it can in turn be an unsaved instance in memory.

The optional as_png=True is required as Blender otherwise tries to pack a file from disk and store its raw data in the blend, but not having a backing file and thus not knowing the file format, you have to tell it to simply pack it as if it would be an uncompressed PNG file (at least that's how I understood it).

This also makes it possible to mass-dump the generated images via File > External Data > Unpack All Into Files.

To detect if an image has been packed or is in volatile memory, open the UV/Image Editor, select the image in question, and check the text of the "Image" menu to the left of the image selector. If it is postfixed with a star (like Image*), you didn't pack it yet.


Python - Trouble when changing context (the first time) In the following script I am trying to create a material on the active object, then change the context to the shader node editor and then delete the existing default node setup:

import bpy

mat = bpy.data.materials.get("Material")
geom = bpy.context.active_object

if mat is None:
    # create material
    mat = bpy.data.materials.new(name="Material")
# Assign it to object
if geom.data.materials:
    # assign to 1st material slot
    geom.data.materials[0] = mat
else:
    # no slots
    geom.data.materials.append(mat)

bpy.context.area.type = 'NODE_EDITOR'
bpy.ops.node.select_all(action='TOGGLE')
bpy.ops.node.delete()

When I first run this script (from the text editor) on my scene I get the following:

RuntimeError: Operator bpy.ops.node.select_all.poll() failed, context is incorrect

Although, curiously, when I run it a second time (again from the text editor), the context is successfully changed to the shader node editor but no nodes are deleted.

And finally, when I run it a third time, it successfully deletes the existing nodes in the shader node editor.

Why does this script apparently work better each time it is run?

(I am using Blender 2.8)

To delete the nodes you should override the context of operator bpy.ops.node.select_all.
And the reason of error you see is mentioned here.

Actually to delete the nodes, instead of using operator I would use next piece of code:

for node in mat.node_tree.nodes:
    mat.node_tree.nodes.remove(node)

updated with your part:

import bpy

mat = bpy.data.materials.get("Material")
geom = bpy.context.active_object

if mat is None:
    # create material
    mat = bpy.data.materials.new(name="Material")
# Assign it to object
if geom.data.materials:
    # assign to 1st material slot
    geom.data.materials[0] = mat
else:
    # no slots
    geom.data.materials.append(mat)

# delete nodes
for node in mat.node_tree.nodes:
    mat.node_tree.nodes.remove(node)


Particle system images i want to know how i can set the smoke images right on the balls, i use the particles system. I want the particle system to use smoke images. thank you

Create a plane for your image to be on. put the image on it with (with alpha transparency). In particle system settings under "render" chose Render as "Object". select your plane.
Made you this quick video
EDIT:Image as smoke
shoudl work now


Bad Topology got after applying modifier I have somewhat a bad topology on a model I made and it messes up with the shading and the material itself, it is a lot of edges that are intersecting with each other and I am not sure on how correctly I should fix this problem, I know how to fix it manually though. Do you have any recommendations that could make this go faster than just doing it manually?
Here are screen captures of my viewport  :

Before I got the model, I applied a subsurface modifier and an array modifier with object offset, with a simple deform modifier on this model I don't know if my original topology was bad or not

Your topology looks decent.
I'm pretty sure your array modifier didn't match start and end 100%. That created an overlap which you see in your 1. screenshot. Repairing this is tedious, it would be much simpler to go back to before you applied the array and fixing it in the base shape. If you use a segment of a circle or a sphere and then rebuild the circle/sphere from the modified segment with a circular array, make sure not to touch the outermost vertices, as they have to align perfectly in the end.


How can I fix a distorted character mesh? I changed the origin of my skeleton, and nothing happened at first so I positioned the character as I wanted. But when I advanced the keyframes, it completely messed up the character's mesh and I can't go back far enough to fix it. changing the origin back didn't help. I made some progress trying to manually position the character inside the armature, but it would be very tedious to get it just right. The last time I saved a backup was before I started animating, so I would prefer if this could be fixed.

Blend file:
https://drive.google.com/open?id=0B4I_BosOIxr1aDhucmh1aVRCaWs

This probably is caused by the fact that you moved the character and not the rig. When the character is rigged, move it using the rig.


Bear with me: is it possible to use an Xbox One to render a Blender scene? Xbox one runs on Windows 10 and can run apps developed for the same platform.
That being said, is it possible to develop an app for Xbox that emulates the PC version of windows 10 and can run executable files and programs? Can use this app to run a version of Blender that begins a render on startup?

XBox One does not run any old Windows app, it runs apps developed for the Universal Windows Platform (UWP).  To run on an XBox One, Blender would have to run everything that accesses the operating system through that API.

The biggest stumbling block for that would be OpenGL, as XBox's interface to the graphics hardware is done through DirectX. It doesn't support OpenGL at all.

Based on that, I'd say it's not possible.


How do I remove the numbers displayed for lines on a mesh when you "A" a mesh? Alright, so I've created mesh files before. For some reason I keep seeing numbers on all the lines when I select my mesh. How do I remove that display so I can't see it?

Nvm, tinkered and realized had to deselect checkboxes for Edge/Face info under "N."


Shower Head Fluid Simulation: Domain too big issue I am trying to simulate and eventually animate a shower in blender. The simulation works fine when the domain is small but does not work at all when its large. And I need it to be large as I don't want splashing water when I animating it.
I am new Blender user (started yesterday) and tried playing around with various settings. All the scales are 1.0.

I currently have just on inflow but eventually plan to have a lot (75: one for each nozzle)

Here is my blender file: https://drive.google.com/open?id=0BzhkRkqiPRPtRmh6N3F4TjVtaWc

If splashing is not important why not use particles in fluid mode with a metaball render object.

Use many thousands of particles with a short life (until they fall out of frame).

Add a metaball with very high resolution and set it to the render type.

Also I add Denoiser (B2.79) to clean up the surface of the water for animation. And I have added Children Particles in Simple mode. Just a multiple of 3.

Sadly I cannot get the motion blur to work on particles.


Light coming out of nowhere Hey so basically the problem is that i have a scene with a campfire and a panda, and there is a light coming from the bewlow the panda and i dont know whats causing it, i dont have any source of light other than the campfire. Any ideas to solvate the problem?

You've directly plugged the Image Texture into the Output, in that case it acts like an Emission shader, what you need to do is plug a Diffuse shader between the Image Texture and the Output:


ID masks for reflections Is there a way to get ID masks or otherwise isolate an objects reflection in the compositor? For example, if I have a sphere above a reflective plane, I can set an ID mask on the sphere and use that to manipulate it in the compositor. But then the reflection will no longer be accurate. If I want to do the same manipulation on the reflection, I have no way to get it.

You can use Glossy Pass both in Compositing and Shading

Compositing

Shading

You can apply a Light Path Node to the Sphere Material:


Getting bottom surface of a model I have a model that is made artificially, the model covers a square shaped area. It's something like that if you look in a cross-sectional view:
How can I remove any noise above the bottom surface of the model, leaving the vertices at the bottom that shapes the S-shaped curve? There is a bottom surface in the object, but as the surface is not modeled separately by the computer, I have no clue how to get it.
This is what I want to get:

welcome to BSE, take the same object (but has to fit the same object itself, or there will be issues with the intersections) and duplicate and move a bit in the z axis and add a boolean modifier to the target object, and set the source to the duplicated mesh, and apply boolean, good luck...


Cycles - Baking Diffuse result is always black I already try for hours to bake a diffuse map from multiple textures, but the result is always black.

This is my material:

I want to bake it, I already managed it earlier without any problems to bake the diffuse texture, but now suddenly the only result I get is black.

Here is my node setup for the material which I need to bake. I try to save the result in the node at the top left.

NOTE: I know the Principled BSDF shader settings make no sense, I was just playing around to see if this makes a difference in the bake...

How I tried it:

Selected the object
Created a new uv-image
Create Texture node in my material and set the uv-image as source
Select that node (yellow border)
Bake diffuse

Result:

There are many lamps in the scene:

I found the problem. After setting Subsurface to 0 in the Principled BSDF Shader, it works. I can't explain it though.


where should i mark a seam onto my mesh? Where i should mark a seam so my texture doesn't look discontinuous in a certain area.

You need to put the seams on a part that won't be visible on rendering. You can't avoid discontinuity with this kind of object, unless you give corrections afterwards and recreate continuity with a Clone brush for example, but it will depend on the nature of your pattern, if it's a big pattern (like big flowers) it seems hard to achieve.
As you can see here I put the seam along the back of the cube, so that it will be hidden in render. For this kind of pattern it would be very hard to create a continuous texture:


How to Flip a Video Clip I want to take a video of me standing on the right side of the screen, split it, then flip the second half so I'm standing on the left side of the screen. I'm using a green screen, so I'm planning on masking out the top clip. I don't know why I can't find any tutorials on flipping a video. I can only find how to rotate videos. Another side question: how can I add a video in the video editor (which I already did), but be able to access it in the motion tracking view? I would like to cut the clips (and some other basic editing), and then do the masking (duplicating myself)/removing the greenscreen. I really appreciate any help as this is for a school project that is due tomorrow :).

Compositor:
This can be done with the Flip Node within the compositor: Add> Distort> Flip.
The node should look like this:

Video-Sequence Editor:
This can be easliy don with the flip options in your Properties Panel N. The options should look like this:

For your other question I'm pretty sure you need to re-open your video, essentially your not editing the video but making a mask which can be accesed with the Mask Node so it doesn't really matter as long your using the same footage.


Cloth repels and glitches through object So, as I referenced in an earlier question, I made a character with hair made of cloth. I try and animate this hair, and I have managed to pin it in place, and make it look right, but when I start the animation, the cloth seems to almost push away from itself and the head it is attached to. I did not add any force field modifiers, and I am wondering why it won't just lay flat. First it bounces away from everything, and then it hovers a little bit away.
Is there a setting that makes cloth try and hover over other folds of cloth, and/or objects?
I want to figure out how to get the cloth to just sit on her head, without bouncing or constricting or pushing.
Maybe soft body? I don't know the difference between them...

try this file... maybe you get some hints

I tried to separate well the unpinned geometry (exagerating a bit but...) and subdivided also the hair so they get a better cloth structure


How can I make this Dodecahedron shaped product? I'm trying to recreate this product for a client in Blender.

I really thought it would be a simple project, but I cannot figure it out!
I'm including the blend file here if it helps:

Here's how I got to this point.

I didn't see an easy way to create the Dodecahedron shape so I started with a circle and changed the number of vertices to 5.  I fill that shape in, duplicated it and tried my best to recreate the shape, merging vertices as I went.  I then used the Cast modifier to straighten out my shape and then at each vertices, I created an ico sphere.
I did try a regular sphere and also a sub-d cube, but after those attempts failed I tried an ico sphere.  I then attempted to delete the faces where the bars would connect each sphere, and would try bridge loops to connect the two spheres together.  But the angles I could never get right.  I've also tried mirror modifiers, but it's actually kind of a difficult shape that's hard to mirror and get right.
I then thought I could use the wireframe modifier on the shape and use a boolean modifer to merge with the ico spheres, it just didn't work, or at least isn't professional enough for this project.
I need to make this look as close to the product as possible, including the seams.
Any help is greatly appreciated!
Thank you!

As @Robin Betts said, Use the addon Add Mesh: Extra Objects to create the Dodecahedron.

Then in edit mode select the rouge edges that you can't use and dissolve them.

The select everything and delete only faces.
Back in object mode and convert to curve.
Now it is a curve object you can easily add roundness to the segments by increasing the bevel size, this is nice because you can come back later to change the size if you need to.

Now it's a simple matter of adding your favorite sphere shape and snapping its centre to every vertex of the dodecahedron. I recommend using ALT-D to duplicate so that if you want to change their size you can do them all at the same time.

For the seams, you could add a plane along where it needs to be, then use the knife tool to cut it up with some randomness and give it some slight thickness with a Solidify modifier and maybe a subsurf if it needs it.


How do I join a many-faced mesh to a mesh with fewer faces? I was trying to follow the famous Coffee Cup Tutorial.  However, I wanted to make a more realistic, curvy handle, rather than a square one.  However, I end up with this situtation:

I simply don't know any good ways of connecting objects with such different geometries.

Thanks for any help!

You can use Bridge tool.

Select the two loops you want to connect;
Press W, choose Bridge Edge Loops in the popup menu. More options for Bridge tool can be found in F6 menu.

P.S. However, such topology may not benefit Surface Subdivision. So, it's recommended to have even subdivision level for both cup and handle. Suggested workflow would be:


reset a custom PropertyGroup of an object to initial state I have created a PropertyGroup as follows:

# Define property groups...
class ObjectPropGroup(bpy.types.PropertyGroup):
    edge_display = BoolProperty(default=False, name="Edge Display")

#initialize custom property groups...
bpy.types.Object.ObjectProp   = PointerProperty(type = ObjectPropGroup)

When i now create a new object obj and then look into the custom properties list, ObjectProp is not listed. But as soon as i add a property to the group:

obj.ObjectProp.edge_display=True

now the ObjectProp appears in the list of custom properties of the object.
This is all good so far. But now i run into a small problem when i want to cleanup the object and remove all elements from ObjectProp. So what i do for now is:

for key in obj.ObjectProp.keys(): del bpy.context.object.ObjectProp[key]

This works as expected and deletes all data. However the ObjectProp itself keeps in the list of custom properties with an empty data set {} Is there a way reset obj into its initial state so that ObjectProp is no longer shown in the custom properties list? I tried the easy way but that failed:

del obj.ObjectProp
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
AttributeError: bpy_struct: attribute "ObjectProp" from "Object" is read-only

Is there a solution?

The answer is so stupid simple:

del obj['ObjectProp']

However i hope this question is still helpful for some others.


Simplifying Blender's UI I want to clean Blender's UI to make it simpler to use for visualizating 3d models.

The idea is to remove all the UI's components and add 5 buttons with some basic functions, like open file, measure tool, etc. I found the source files written in C of the UI in /blender/source/blender/editors/interface and written in Python in /bin/Release/2.80/scripts/startup/bl_ui.

I started modifying /scripts/startup/bl_ui/init.py, but there are some areas that haven't been removed.

Thanks in advance.

Before coding your own custom version of blender, start with what blender already offers -

Maximise Area makes the current editor (usually the 3D view) take up the entire window area while leaving the Info Bar at the top and viewport headers visible. In 2.7x press ⎈ Ctrl↑ Up arrow, in 2.80 press ⎈ CtrlSpace
Fullscreen Area makes the current editor take up the entire window without the info bar or headers being visible. In 2.7x press ⎇ AltF10, in 2.80 press ⎈ Ctrl⎇ AltSpace
Screens are preset window layouts that we can easily switch between, in 2.80 these are replaced with workspaces. If any of the included screens do not suit your requirements you can create your own or adjust the included screens. By setting up screens and saving them in your startup blend file, you can have them each time you use blender. This means you can manually setup a layout the way you want and always have it available and active when you first start blender. Note that you may want to disable the Load UI option to prevent other peoples screens being loaded when you open a blend file.

By making the 3D view full screen you still have the tool shelf and properties regions. You can use python to define your own custom panel to make specific things/actions easily available to you and by putting it in an addon it can always be there. You may also want to get creative and misuse the ability to alter header contents with an addon, say you never use the VSE, then you can setup a screen that has a small VSE area available that shows buttons or menus that you define.


Need help with this kind of animation I am quite new to animation & blender. I need help of Masters on how to create this kind of animation in Blender?  I have tried follow path animation but it doesn't work as there is a pinching of bottles in the beginning. So I was thinking maybe they have used some kind of particle system? much appreciated.

You can get something similar this way:

Create your object, keyframe it at frame 0 and frame 30, parent it to an empty (1), parent this empty to a second empty (2):

Create a first keyframe for empty 2, keyframe it at frame 0, move to frame 30, rotate it 90° on the X axis, keyframe again:

Put your cursor at the center (ShiftC), choose Transform Orientation > 3D Cursor, select your object and empty 1, link-duplicate with AltD, rotate 45° on the Z axis:

Repeat the operation until you have your 8 objects:

At frame 30 select one of your object, move it, rotate it the way you want, and keyframe. As they are all linked, they will all inherit the same action, it can give something like that (of course it's not exactly your animation, make something more sophisticated with both empty 2 and object animations). Invert the keyframes in order to have your animation go the other way (select keyframes and S-1):

As all your objects are different, in the Properties panel > Object Data, replace each object by its correct mesh:


Light coming from nowhere? In Cycles I'm getting this mysterious light that doesn't have a apparent source. In Eevee it doesn't happen, but in Cycles it does. There is one, and only one, small lamp at the head of a bed. That's the ONLY light source. But even the exterior of this room is brightly lit.
Here's the ONLY light source in this scene.

But here's a shot from farther away lit only by dim starlight.

And here's what it looks like in Eevee

Now in Eevee you can't even see the light from the small lamp, and that makes sense. Eevee doesn't do light from things like a small lamp in a room without a lot of fiddling around with light probes.
But in Cycles there's no reason I can fathom for the outside of a room to be lit up like that. I even tried this with a plain black background, and that blasted mystery light is still there. That one small lamp really is the ONLY source of light. There are no other lights of any kind anywhere in the file. No hidden "sun" lights, nada. I checked to make sure that blue material isn't emitting light. It isn't. Emission is set to zero.  And the strength of the stars in the background can be set to zero with no effect at all on that bizarre exterior "light from nowhere".
Any ideas on where the mystery light is coming from and how to get rid of it? Anyone?

The default color for the world is a light gray. Think of it like a giant sphere that surrounds the scene that is emitting light.

To make the world black, change the color, or disconnect any nodes to the surface of the world, or bring the Strength to $0$


Is there a way to get ONE random value as seed for Cyles per render? I know, this question sounds old, but there is a twist.

If you want to use image stacking to reduce noise, you have to choose a different seed for every render.

To do that automatically I found the following methods so far:

using #frame as driver in the seed field.  This however only works if you have multiple frames (i.e. render an animation) - not for a single frame rendered repeatedly.
using the small Python snippet noise.random() * 10000.
This works fine for normal renders, but it screws up viewport rendering (at least in 2.71): the render never ends

Is there something, that can do both?

Instead of using a driver, use that Python snippet to set the value in the render_pre application handler. This should stop it continuously restarting the viewport render.


Output multiple images with variable materials I have been asked to provide product images for a selection of display cabinets - these are basically like deep picture frames with different coloured interiors. They also come in different sizes too.

in total I have 16 different sized cabinets in a 32 different interior colours. This means 512 different images. There is also talk of 3 different views, so we're looking at 1536 individual images.

I have my models, cameras and materials set up and ready to go. I'm wondering if there is a sensible way to render each image without manually changing the material assigned to the coloured part of my mesh?

I know i could do it quite easily in photoshop, but always seeking a way to be more efficient!

TIA

Have you looked into using Blender's compositor features? You could set up a matte (check out the new Cryptomatte feature in 2.8) for each material and then render the "beauty pass" once with several passes (for diffuse color, specular reflections, etc). In the compositor, you could do color balance and hue-shift and work on each channel one by one.

You can even render a UV pass and swap out the texture in composite, but be aware that this won't affect the color of light bounces.

However, your best option is probably to automate the material changes by using Python. It's a little tough to learn it with a deadline looming, but if you've got experience with coding then Python is your best bet.


Render animation zooms in rendered video? Haven't had this issue before, but for some reason now, after rendering my video, the bottom potion of my video goes missing.
For example, the view of the video when rendering seems to have zoomed in and so the chest up to the chin is cut off.
How do I fix this issue?
(I'm using Blender 2.83.5) Thank you.

Checking the rendering was the same resolution size as the original footage and adding 'Frame All Fit' (on the Render page under 'view') dealt with this issue. Hope this helps :D


Why can't I get into Sculpting Mode with metaballs? When i start Blender 2.8 i click on "sculpting" and then i get a ball and can start sculpting. I see the brushes etc...

But when i click on "object mode" to add, for example 2 balls for eyes, i can´t get back to sculpting mode.

In the small menu where one can find the different modes, i then only have "object mode" and "edit mode".

Am i missing something? ¯_(ツ)_/¯

EDIT:
Ok. I tried out a little bit and it seems that i can´t go back to sculpting mode if i add a "metaball".
When adding a Mesh - UV Ball i can go to sculpting mode again.

I don´t quite understand the difference yet, but i think that was the problem :]

Metaballs need to be converted to mesh before returning to sculpt mode.
Object > Convert to > Mesh from Meta/etc


Yafaray Export Button doesn't show in Blender Render Menu I hope some of you are familiar with the open source render engine yafaray. I just installed it because I am working on a project where I have to render some interior camera animations. I read a lot about cycles being pain in the ass when it comes to interior scences and since my computer isn't fast at all, I was looking for some alternatives to improve my render Time. That's when I found Yafaray.

Now I downloaded the engine from the following (I got this link from the official Yafaray Page):
http://www.jensverwiebe.de/Jens_Verwiebe/Software.html

I guess it's the most recent software and I run Blender 2.71 .

Now, my problem is, that the promised "Yafaray Export"-Button doesn't show up in my Render menu list.

Does any of you may know why?

Thanks for your help in advance!
Marten

You'll need to change render engines. I'm not sure that the Yafaray plugin exports the XML (I don't have Blender open now so I can't check). The same dropdown you use to change the render engine from Blender Internal to Cycles is the one you use to change to Yafaray. However, you'll need to enable the Yafaray plugin (Preferences, Addons).


How to use Bridge edge loop to create arch I tried to use bridge edge loops to connect two faces into the arch, but it behave quite weirdly. Could you suggest how can I fix it?

Thanks,
Robert

Just increase the Number of Cuts parameter in the operator settings panel (F6), and adjust the Smoothness value to a desired outcome.


Sine wave using only Math nodes? For the purpose of animating materials, is there a way to construct a sine wave function out of Math nodes?

A while back I asked about how to do something similar with scripted driver expressions. But drivers don't work for animating materials (yet). They also are not currently supported in Blend4Web, which is where this will ultimately be used (with the B4W_TIME node driving the incremented value by frame).

So let's start with a keyframed Value node that increments by 1 for each frame. And that is factoring a MixRGB node with two mixed colors.

Since 0 will be 100% the top color, and 1 will be 100% the bottom color, going from frame 0 to frame 1 instantly changes the mix completely. Inserting a Math (Multiply) node slows this process, so for example if multiplied by 0.05 it will take 20 frames to shift from red to blue, and at frame 10 it will be half/half (purple).

So what about animating it so that it oscillates between two colors? Can this sort of sine wave animation be constructed using Math nodes?

(Note: This must be achievable using the Blender Internal Render Engine.)

Thanks

Sine Wave
Producing a sine wave is easy as Sine is one of the math functions in the Blender Internal Converter --> Math node.
However, a normal sine is no good as a direct factor for a mix node, since a sine wave produces values between -1 and 1, and the node expects a value between 0-1. To produce sine-like oscillating values between 0 and 1 I used the equation ( sin(x) + 1 ) / 2.
The node tree looks like this:

The factor values produced by this node setup look like this (green line):

Square Wave
A square wave is also pretty easy, since we only need to discern between positive and negative values, which we can do using the "Greater Than" or "Less Than" nodes:

And the factor values:

Triangle Wave
Based on this algorithm as implemented in wolfram, I used the following equation to generate a triangle wave:
pi/2 * asin( sin(pi * x) )
Since there is no inverse sine (asin) in the math node, I used the identity function (that employs the inverse cosine which can be found in the math node's repertoire):
asin(x) = pi/2 - acos(x)
Also, the original triangle wave creates values between pi/2 and -pi/2 more or less, so I adapted it thus to produce values between 0-1 (more or less):
( asin( sin(pi * x) ) + pi/2 ) / pi
The node setup looks like this:

This is by far the ugliest and biggest node setup, but that's the best I could manage. Here's how the factor values look:

Sawthooth Wave
Based on this answer, again adjusted to fit values between 0 and 1, I used this equation as basis:
( ( x + 1 ) % 2 ) / 2
Node setup:

Factor values:


Can't sculpt Meta Ball I am just trying getting myself into sculpting and I have just created a metaball having kind of shape like a bust, because I have seen it once online some time ago but when I pick it I can't get into sculpt mode (Blender 2.77)

You can only sculpt mesh objects. Right now you have a meta object. You need to convert it to a mesh first.

Do note that after converting to a mesh you will not be able to edit it with the meta objects any longer (so you might want to duplicate the whole thing and move it to another layer first).

You can easily convert it to a mesh by selecting one of your meta balls, pressing AltC then choosing Mesh from Curve/Meta/Surf/Text.

Or from the 3D view header Object > Convert to > Mesh from Curve/Meta/Surf/Text


Image Texture Size V's Mesh Size I hope your all having fun been creative.

This is my first post so go easy on me if this has already been asked

I have 3 separate meshes at 3 different size which have had the scale applied and have been unwrapped.  I create a material with a seamless image texture and give each mesh this material. The material appears on each of the 3 meshes at different scales.

Is there a way to have the texture appear at the exact same scale for each mesh size without compromising on the quality of the texture?

I don't want to use the mapping node or scale the UV's down as both methods require a guess and will only give me a similar scale not an exact scale

Thanks

James

One option that may work for you depending on what your objects are, their size, shape, etc. is to join the three objects together, unwrap the combined object so that the scale is exactly the same, and then split the object back into the original 3 parts.

If you ever need to make any tweaks to your texture scale after splitting the objects simply use numeric input so that you can scale each UV map by the exact same amount.


edge blur in cycles render Having trouble with unwanted edge blur in cycles render. No motion blur is enabled.

Thanks for your help,
Rick

You are probably displaying a zoomed-in render result. In the UV/Image Editor window, where your render is displayed, go to View > Zoom 1:1 (equivalent: Numpad 1). That should fix it.


Create a mesh/object which fills another mesh/object I've modelled a can like mesh with an uneven base. Inside the can is another can flush at the bottom but smaller in all dimensions.

Now I need a third mesh that fills this space in a way that water would if you poured it in but it needs to be a solid mesh.

I've been messing around with fluids but think this might be a red herring as I don't need any animation.

I've looked high and low but I'm probably (hopefully?) searching the wrong way for it!

Indeed as you mentioned, you could use fluids sim for this, it is it's main purpose after all.

However fluid simulations come with a bunch of problems of third own attached. They are complex, computationally expensive, consume lots of hard drive space (cache), especially if you aim for high quality, and they certainly can cause a lot of artifacts and glitches that you will have to deal with.

If you need no animation it is certainly overkill. In your case, if you nave everything modeled already I would say all you need is to duplicate your meshes, deal with the intersection areas, invert their normals and you will have a perfect fluid filling your can with a minimal amount of work.

Have in mind however that it is not advised to have coincident faces and overlapping geometry.

In most cases, the way computer graphics work, you need not model the fluids surfaces that are in contact with other opaque surfaces or objects, only the "transparent" ones that are either in contact with air or other transparent surfaces (like glass, ice, etc).

So depending on what you want to do with oyur model you may not need to model the fluids surface that is in contact with your cans.

Check this good tutorial about rendering a glass of water, it contains valuable information about the issue and may help you reach what you need

http://adaptivesamples.com/2013/10/19/fluid-in-a-glass/