text:
Why using Star like tris?

What is the benefit and utility of this use of star-like Triss?What are the rules of this type of institution?
Why is it used?
And why is it done that way and not that way?
I would appreciate if there is a source, it will be in the course or video I can learn. Thank you.

Does this answer your question? When are tris used effectively?

I wonder if you have a source that tells you to use tris like this and says there are benefits and it has to be done this way... I only know sites where they infinitely repeat the mantra that you should always only use quads.

the topology of the second image is super dirty but as long as it looks good in render why worry? As for the first picture, using tris allow you to quickly reduce the topology, same thing, if the render looks ok, it's ok to use tris

Why is it used?

Chiefly, because it is easily automated. This kind of topology is most often the result of automation; Booleans. where the intersection between surfaces is programatically calculated, or automatic conversion from other data-formats.

What is the benefit and utility?

Apart from the above, none in particular.
There can be disadvantages.

If modelling by hand, the topology does not play well with polygonal modelling systems, including Blender, that are geared to the selection and manipulation of loops and rings of edges bounding 'tracks' of quadrilateral faces.
The reason quads are emphasized is that, if  quad face-loops flow across polygonal surfaces in a way that echoes an underlying approximated curvature, then when they are triangulated by a renderer, and the normals are interpolated by a smooth-shading algorithm, the normals approximate those of the smooth curved surface more accurately. Especially under Catmull-Clark subdivision, which is a common modelling target.
Correctly flowing quad face-loops deform well, where that is called for, by animation or subsequent modelling techniques. There are no unexpected creases or kinks in deformed surfaces.

Wherever surfaces do not have to be accurately smooth-shaded, either in their modelled form, or under subsequent deformation, (because they are geometrically flat, or shaded flat,) there is no great harm in non-quad topology, but for ease of modelling, you may choose to avoid it. If a curvature is more accurately approximated by sheer density of polygons, the computational cost may be high, but the question becomes less relevant.


text:
Collada Armature Export
I am having trouble with exporting a rigged model to Collada. It mostly exports correctly with exception for objects which use armature. I baked the animation for all the bones, so there are no constraints involved anymore. The armature object itself, is parented to a non-armature parent object, and has no keyframes (if I try to bake object keyframes for it, it wipes the bone animation)
Here's how it looks before the export

And here's what it looks like after reimporting it back in Blender. As you can see, the tool attachment which originally uses armature has gone frantic and is displaced all over the scene.

The bone animation has exported, but all the geometry is skewed and/or offset. I can't make any sense of it. FBX export comes out even worse.

Try selecting the objects causing problem then hitting ctrl+A then Apply location

Thanks for the reply, but this unfortunately doesn't do the trick. Ultimately it just gave me a different flavor of "messed up".

@BaconBad could you please provide your .blend file to be able to help you

Sometimes i fix that kind of issues with alt+s; alt+r and alt+g, you can try that, then apply (Ctrl+A) location, rotation and location.
I mean after you re-imported (excuse my english)

Good to know! I ended up fixing this issue by using .fbx instead, and making sure to use the correct export arguments.

source: Stack Exchange

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

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

sort: votes


text:
Sculpting brush - low poly with normal map?
I start again (it became a mess).
Simply put, I'd like to sculpt with a custom brush on this level.

Problem is, it will be too high poly.
So what I'd like, is the following shape DECIMATED, with the normal map baked on it, and use that as a sculpting brush, and sculpt that details on the level in picture 1.
Just like a texture, but low poly AND with normal map on it.

But I just can sculpt the texture, in high poly, or just paint with the normal map, in 2D.
I'd like both of the informations combined : lowpoly + its' normal map, in one sculpt brush.
Any other solution welcome.
Edit :
I followed your instructions, but it leaves me with a simple normal map that will sculpt high details.
In fact, I want to sculpt low details (decimated) but have a superposition of normal map that will give the high detail, without poly counts. All of this in a sculpt brush. It seems it's not possible then.
(htt ps://i.sstatic.net/ExyMo.png)
(htt ps://i.sstatic.net/RGni7.png)

You got a very interesting problem to solve. You could bake normal map from high poly,sculpted chunk of terrain to a texture,and then use this texture as a brush in texture painting mode to paint onto a terrain texture and save it as a normal map for the terrain.
To to that, You have to have new image texture active in material of a UV mapped plane. Place this plane above high poly terrain, turn on Selected to active in Bake options panel, select first high poly terrain, and then the plane and hit Bake - that's all you have to in general do. But here is more detailed tutorial on the topic

Edited the post.
Basically I can't find the way to bake the terrain to a texture. Neither I can't find any tutorial about that precisely.

I updated the answer with new info. Check the tutorial to get detailed description of what you should do.

I followed the tutorial but couldn't get it right, I hope my mesh isn't corrupted or what...

Plus when I've got that mesh lowpolyed, how to use it as a brush? Should use the UV as a texture in the sculpt brush?
I feel like I just opened Pandora's box haha.

If you couldn't get it right, try first with something easier to get confidence with this skill. I suggest you to add a plane to an empty scene, subdivide it, use sculpting or proportional editing to make bumps on it, then add another plane to the scene.Unwrap second plane, add material with new image texture to it and try to bake normals from the bumpy one.After you manage to bake the normalmap, you will have image with normal map on it to use as a brush.

Got the normal map part, but the problem is elsewhere.osted an edit with hidden links to images (not enough reputation points).

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

authors: Анатолий Зоц


text:
Make proxy with modifiers
I often use Link to import objects from external .blend files into my scenes. However, in order to position a linked object within a scene, it's obviously necessary to use Make Proxy in order to position the linked object(s). Unfortunately, creating a proxy object does not create copies of any modifiers that were on the source object, meaning that I then have to manually recreate them on the linked object to match the source object.
Is there some way to get Make Proxy to copy modifiers to the newly created proxy?
UPDATE: It appears that Duplicate Linked is what I want (unless anyone can tell me why this doesn't do what it appears to do). I want to ensure that the created object is as "shallow" a copy as possible; any changes to mesh data or materials made in the source .blend file should be reflected in the linking .blend.

Have you tried the Make Local operator?
Select your object(s) then  press L > Make Local > Selected Objects should keep object data linked to the original but allow changing modifiers locally.
From Blender 2.8+ forward these can be found under Object > Relations > Make local... from there pick either Selected Objects, Selected Objects and Data, Selected Objects, Data and Materials, or All.

Thanks. That's a little more direct than Duplicate Linked (because I don't end up with two copies of the object).

With characters that have modifiers and armatures for posing, you keep all of the parts in a group with the armature as the main parent and then once linked, you make the armature the proxy - and the modifiers should be there for the mesh objects.

From some testing I just did, I believe you can do what you want (and what I want too) by placing the original object in a group (a group of one) in the file that object was modeled in and making the link in the other file to that group and not to the object.  The version of the object in the destination file has all the modifiers applied, cannot be edited in the destination file, but can be re-positioned with no need to do a Make Proxy.  Changes to the object made in the original file reflect in the destination file.
In my testing I had some Boolean Modifiers on the original object and this solution does mean that the objects associated with those Booleans end up in the destination file too (also non-modifiable).  You can't delete them in the destination file without losing those Booleans but you can tuck them away out of sight (I am just moving them to a layer reserved for them).

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


text:
clay models stop animation movie with blender ( import clay models inside blender)
i have lots of clay models, and want to make a short stop motion animation movie. For animation i choose blender because in traditional stop motion it take lot of time to move the characters then take a shot. My question: is there is any way to import my clay models inside blender ( using video  or different profiles pics of models) ?
Actually i don't want my movies characters loses their "Physical feel or texture" i.e appear like clay models in a movie not animated ones. Here is example, for what i mean

It's not clear what you are asking, could you clarify? What do you mean clay models, did you actually physically sculpt clay figures by hand? What do you mean import, did you somehow digitize them or 3D scan the sculptures?

Possible duplicate of How do I make a 3 dimensional character out of flat picture?

As Duarte said, you need to clarify if you created these clay models in a 3D program, or in real life? To digitalize a real object can be pretty expensive, in most cases (including these) it would be easier and cheaper to just recreate the object digitally. Clay objects can be created using sculpt brushes and material modifications.


text:
Bend Cube by video dont work
based on this video https://www.youtube.com/watch?v=iq2_goboheo&t=206s
I tried to bend cube.
but this comes out. I tried many times.

The simple answer is that the walls of the cube that are going to be bent are not subdivided enough. Bending will not generate new geometry, but rather just moves what’s there. You need to subdivide the edges that are intended to turn into curved surfaces.


text:
Any way to convert STL to .max?
I can draw what I need on SketchUp (Maker free version of 2017). It can export on STL, which is fine  for 3D printer, but now I need to feed my object into a website that only accepts .max files.
I have not found any way to convert STL to .max. The closest I got is with openctm-tools on linux which can make a .3ds. Blender seems to not have export functionality to .max, so I thought you guys may have a solution on how to convert to .max stargin from a STL or other common format. Any suggestions?

.max is a binary file format which you only can create using 3ds Max.

That is super bad news, I am on mac so 3DS Max is not even an option. I tried on Vin10 virtual machine but it failed to install, which is a super bummer as I can get the software from school.

In any case thanks for the input. Now I know I have to get a 3DS working installation ...


text:
Strange shadow artifact in viewport and render after beveling the corners of a boolean cut in mesh
This is supposed to be a game asset and the top of a toaster. I have some boolean cuts in the top and the shadowing seems to be ok after check it out with matcap, as you can see here:

But after that, I would like to round the corners of the cuts, and then, some weird shadow artifacts appear on the corners. I have tried different topology, even boolean cutting the rectangles with rounded corners, but I still got weird shadows. I even recalculated normals, but the result always ends looking like this or this: (depending if I use triangles or knife cutting the rounded corner vertices on the mesh).

This is the topology I'have tried, among others:

Sorry, this is probably a newbie question, but I really don't know how to fix it. I hope I can learn from this.

Try checking the auto smooth option in the object data properties, maybe it should work and if it does but changes other stuff, change the angle till its all good... Hope it helps

Thank you for answering! I have auto smooth enabled at 30 degrees. After your answer, I tried new angles, but still no luck…

Are you applying the boolean with round modifier ?? If so, I think you have to fix the mesh in edit mode...


text:
Exporting model as .glb and model is super reflective

So I just added a bump, normal, and diffuse map to this model on the walls and floor and when I export it as a .glb it turns out super glossy. I've tried turning things up and down in the nodes in the principal BDSF but nothing seems to work? any help would be great! thank you

A normal map strength of 10 is too high. Usually, you shouldn’t have it stronger than one.

The exporter ignores the bump map. Import the .glb back into Blender and look at what the material looks like.


text:
All properties aren't showing up in properties tab
Only a few properties are showing up in the properties tab. I saw a similar post but didn't find a solution that worked.
I've tried switching between rendered and object view, switching to modeling tab works but I want to be able to see all properties in layout. can anyone help?

Hello :). Your properties tab is pinned - the white pin in top right corner.

Thank you so much I couldn't figure this out and I'm relatively new to blender so this helps a lot.

No problem, welcome to Blender :)


text:
Viewport render is correct while rendering scene shows materials as white
For some reason when I use the active render in my viewport everything is shown as it should. Then when I actually render the image some of my objects are shown as completely white.
I can't for the life of me figure out why. One of my objects has a texture as well that works perfectly in the viewport render but when I render the scene not only does it show up as only white but it shows no texture whatsoever.
Please help. I've searched through many forums and have not been able to run across anyone else having this problem.
Here is a sample:

in the render_layers tab there is a material it should be empty, it is used to replace all materials in this layer

Yes, I saw that some people were having a problem akin to mine but I did check that and it is indeed empty. My problem lies somewhere else...

I don't mind posting some pictures as maybe that would expedite things and help those gracious enough to try and help me find a solution to this problem. I don't however know how to post pics... Also I wouldn't mind posting my blend file either but it is a fairly complicated scene (in excess of 80mb) and I read on pasteall that the cap is 30mb

when you are editing your question you'll see small picture click it to upload one,  for the blend file remove almost everything except some objects to demonstrate the problem and upload it on blend-exchange

ok here is a simple blend file.

In hindsight I am uncertain if that blend file contains the pictures I used to create that texture. (I'm not sure how to make sure it does either...) I thoroughly appreciate your help thus far Chebhou. If you check out the file though you'll see that in the viewport set to active render it works, and when you actually render it will be all white or even completely transparent.

problem 1 : the infinite ground is hidden in the view but visible in the render;  problem 2 : in the render_layer tab select the same layers under layers as under scene, try to  render again

That fixed it! Ahh thank you so so much Chebhou!! I thoroughly appreciate it. Now that my question has been answered is there a way to close this question so everyone knows it is answered?

One of the objects was hidden in the view but visible in the render  , you have to uncheck the camera icon in the outliner :

the render layer didn't include all scene layers, excluding some objects from the final render, for this you have to check these layers in the render-layers tab :


text:
Rotate an object around an axis using python script
I try to rotate and translate objects and then insert a keyframe by calling the function below:
def set_keyframe(frame_no, x, y, rotation_z, object_id):

    # change frame
    bpy.context.scene.frame_current = frame_no

    # select the object
    currentObject = bpy.data.objects[object_id]
    currentObject.select = True

    # translate and insert keyframe
    currentObject.location.x = x
    currentObject.location.y = y
    currentObject.keyframe_insert('location')

I could manage to translate the object, however I couldn't find out how to perform the rotation operation. I am just trying to rotate around z axis. I tried to do it using the object's matrix_world in order to simultaneously translate and rotate the object, as suggested here and here. However, I couldn't manage it. Any help, which may not necessarily use the matrix_world, would be appreciated!
P.S. my objects are scaled.

If you don't want to manipulate matrix_world you have to check the rotation_mode of the object first and set the corresponding value accordingly.
import bpy
import math
import mathutils

obj = bpy.context.active_object
eul = mathutils.Euler((0.0, math.radians(45.0), 0.0), 'XYZ')

if obj.rotation_mode == "QUATERNION":
    obj.rotation_quaternion = eul.to_quaternion()
elif obj.rotation_mode == "AXIS_ANGLE":
    q = eul.to_quaternion()
    obj.rotation_axis_angle[0]  = q.angle
    obj.rotation_axis_angle[1:] = q.axis
else:
    obj.rotation_euler = eul if eul.order == obj.rotation_mode else(
        eul.to_quaternion().to_euler(obj.rotation_mode))

I have just noticed that the issue was due to a constraint I previously defined. It didn't allow any rotation around z-axis. But thanks a lot for your reply, now I see how to do it without manipulating 'matrix_world'

same with matrices
import bpy
import math
import mathutils

obj = bpy.context.active_object
eul = mathutils.Euler((0.0, math.radians(45.0), 0.0), 'XYZ')
#eul.to_matrix is 3x3 but we need 4x4 to multiply with matrix_world
R = eul.to_matrix().to_4x4()
mw = obj.matrix_world
mw @= R


text:
MTL file with wrong data?
I purchased this 3D model of the CN tower. I want to import it in Blender, but when importing it, the 3D model has no texture.
I searched the Web for a while and stumbled on a thread where someone recommended to take a look at the .MTL file and see if the materials' paths were correct. What weirded me out, is that the materials in the .mtl file and the file names in the "Textures" folder are completely different. To illustrate:

The reference for this "usemtl" is "wire_148177027", yet in the "Textures" folder, there is no file with such a name. All of the JPEGs in this folder have very normal names, such as "Metal6.jpg", "Wall4.jpg", etc. Where does the association happen? Isn't there supposed to be a correlation between the value of "usemtl" and the file names? If no, where can I find it?
I wouldn't mind rebuilding the materials in Blender, except that I have no idea what image to apply to material names such as "wire_148177027", so this is pretty darn frustrating...
The value of "mtllib" is correct.
All of the textures are in the same folder as the OBJ and .MTL folder and the paths in the .MTL file are relative, as such : "map_Ka Greenish_Brick.jpg", etc.
Any help/guidance would be greatly(!) appreciated. Thank you so much!

I just opened the .MTL file in a text editor (had only opened the OBJ file in the editor) and realized that the map_Kd links were completely wrong, so I fixed them (direct paths), but unfortunately it still doesn't seem to be working...

Yes, absolute paths is a classical import road blocker with obj. Then you have to fix the entries in the mtl file one by one. You might have still not the right the path to the textures. Are the textures in a folder besides the obj file? Then you might get away by using map_Kd .\mytexture.png . But best is to put the textures completely besides the obj file. And use map_kd mytexture.png

Does this question relate to blender?

Absolutely. Blender has an obj importer :)

@Tiles Blender also loads png files but that doesn't mean that questions about fixing corrupt pngs would be on-topic here.

@Ray Mairlot, i see your point, but png is not obj. obj is one of the most open 3D file formats around. You could write the whole obj file by hand when you want. And as told, the absolute texture path is one of the most common and most easy to fix issues with it. Because the obj and mtl file is simple and plain text. I would even go so far to say that the knowledge to make the texture path relative in the obj files by hand is necessary to work with obj.

I'm voting to close this question as off-topic because this doesn't appear to be a question about blender.

@Justin01 related: http://blender.stackexchange.com/a/24024/3710

And i vote to keep it because fixing the texture path is a common and reqired action to work with obj.

@Tiles Your intentions are good, but this is not the place to fix corrupt obj files. They were not originally created with Blender, exported or imported into Blender, nor is the final destination in Blender. Blender is not even used in the process of fixing them, so this may belong in a forum or another Stack Exchange site like Power Users or Stack Overflow, or something like that

That's imho the point. It's not corrupt nor does the issue live outside Blender. The paths are absolute, that's all. And it is a common operation to make them relative again. It's an import export issue. You can easily produce such "corrupt" obj files with Blender. Just use absolute paths and export as obj. Then move the result into another folder and try to load it back into Blender.

@RayMairlot I apologize if I didn't make it seem like it was related to Blender. I realize now that I did not mention Blender even once in the troubleshooting part of my post, even though I was trying to fix the whole problem through Blender and Sublime. Sorry for being vague.

@Tiles I'd like to thank you for your responses thus far. Like I said in the above message, I was vague about my use of Blender, but I can assure everyone here that I am trying to resolve this through Blender. Now, about the location of the textures, I've put them in the same folder as my OBJ and .MTL files and changed all the paths to just "map_Kd Greenish_Brick.jpg", etc. in my .MTL file. Still no luck unfortunately... I am now trying out the solution in poor's link, even if I remember trying it out last night. Thanks for your help.

@Justin01 If you have more information to add to the question or want to clarify something then you can use the [edit] link below the question. If the question gets edited it will be pushed into a review queue and may get re-opened if people feel the 'close reason' is no longer valid.

@RayMairlot Thank you for the fast response Ray. I've replaced "Element 3D" with "Blender" in my post, as I'm experiencing the exact same problem in both and I'd rather solve this issue in Blender. Thanks again.

@poor Thank you for the link, but I've already tried this solution and it does not appear to be working. I can't see any of the bitmap textures in the list of Materials in step 2 of your link. They're simply not there, even if my paths in the .MTL file are correct. Bummer... Thanks again.

@RayMairlot Given that my submission was put on hold for a while, which dimished its chances of getting answers/responses, combined with the fact that I have yet to solve my problem... would it be acceptable for me to delete it and start a new one? Thank you.

@Justin01 You shouldn't delete and re-ask just to try and get it noticed. SE has several methods for making sure even old questions become visible. Editing alone pushes it to the top of the 'active questions' page as does receiving 'up votes'.

@Justin01 I've updated my answer. Without having a look into the mtl file, it's only guessing... However, it's a strictly defined file type (there is some logic behind) so there must be a way importing the files properly. If my answer doesn't help, I'd suggest read the wikipedia article carefully.


text:
KDTree returns invalid indexes
I make efforts to study kdTree but get the wrong result. I return indexes that I did not expect.
Please tell me what my mistake is.
Video example - http://take.ms/UX1nm
import bpy
import bmesh
import bgl
import blf
from bpy.types import Operator
from bpy_extras import view3d_utils
from mathutils import Vector, Matrix, kdtree
def GetCoordMouse(self, context, event):
    '''Get Coordinate Mouse in 3d view'''
    #scene = context.scene
    region = context.region
    rv3d = context.region_data
    coord = event.mouse_region_x, event.mouse_region_y
    #rv3d.view_rotation * Vector((0.0, 0.0, 0.0))
    view_vector = view3d_utils.region_2d_to_vector_3d(region, rv3d, coord)
    loc = view3d_utils.region_2d_to_location_3d(region, rv3d, coord, view_vector)

    act_obj = context.active_object
    matrix_obj = act_obj.matrix_world

    loc = matrix_obj.inverted() * loc
    return loc
class TetsKD(Operator):
    bl_idname = "view3d.test_kd"
    bl_label = "Test KD"
    bl_options = {'REGISTER', 'UNDO'}

    @classmethod
    def poll(cls,context):
        #return context.mode == "EDIT_MESH" and context.object is not None and context.object.type == "MESH"
        return context.space_data.type == "VIEW_3D"
# ______________________________INVOKE________________________________#
>
    def invoke(self,context, event):
        if context.space_data.type == 'VIEW_3D':
            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "Active space must be a View3d")
            return {'CANCELLED'}
#______________________________MODAL________________________________#

    def modal(self, context, event):
        if event.type == 'MOUSEMOVE':
            #self.me = context.active_object.data
            self.me = context.object.data
            #self.bm = bmesh.new()
            self.bm = bmesh.from_edit_mesh(self.me)

            #self.bm.from_mesh(self.me)

            self.size = len(self.bm.verts)

            self.kd = kdtree.KDTree(self.size)

            for i, vtx in enumerate(self.bm.verts):
                self.kd.insert(vtx.co, i)
            self.kd.balance()

            self.loc = GetCoordMouse(self, context, event)

            dist = self.kd.find_range(self.loc, 2.0)

            print("index = ", dist[1])
            return {'RUNNING_MODAL'}

        elif event.type in {'RIGHTMOUSE', 'ESC'}:
            return {'FINISHED'}

        self.report({'WARNING'}, "Active space must be a View3d")

        return {'RUNNING_MODAL'}

def register():
    bpy.utils.register_module(__name__)

def unregister():
    bpy.utils.unregister_module(__name__)

if __name__ == "__main__":
    register()

It works fine for me, except I do test "if dist:" and get "dist[0]" (not dist[1])

The video shows that when I put my mouse on an index of 0 or 3 then I do not get their indexes

The fact that I used the mouse coordinates which have not been correctly calculated depth. I solved this problem with the help of rey cast . I take instead of the mouse, position the cursor of the blender

import bpy
import bmesh
import bgl
import blf
from bpy.types import Operator
from bpy_extras import view3d_utils
from mathutils import Vector, Matrix, kdtree

def main(context, event):
    """Run this function on left mouse, execute the ray cast"""
    # get the context arguments
    scene = context.scene
    region = context.region
    rv3d = context.region_data
    coord = event.mouse_region_x, event.mouse_region_y

    # get the ray from the viewport and mouse
    view_vector = view3d_utils.region_2d_to_vector_3d(region, rv3d, coord)
    ray_origin = view3d_utils.region_2d_to_origin_3d(region, rv3d, coord)

    ray_target = ray_origin + view_vector

    def visible_objects_and_duplis():
        """Loop over (object, matrix) pairs (mesh only)"""

        for obj in context.visible_objects:
            if obj.type == 'MESH':
                yield (obj, obj.matrix_world.copy())

            if obj.dupli_type != 'NONE':
                obj.dupli_list_create(scene)
                for dob in obj.dupli_list:
                    obj_dupli = dob.object
                    if obj_dupli.type == 'MESH':
                        yield (obj_dupli, dob.matrix.copy())

            obj.dupli_list_clear()

    def obj_ray_cast(obj, matrix):
        """Wrapper for ray casting that moves the ray into object space"""

        # get the ray relative to the object
        matrix_inv = matrix.inverted()
        ray_origin_obj = matrix_inv * ray_origin
        ray_target_obj = matrix_inv * ray_target
        ray_direction_obj = ray_target_obj - ray_origin_obj

        # cast the ray
        success, location, normal, face_index = obj.ray_cast(ray_origin_obj, ray_direction_obj)

        if success:
            return location, normal, face_index
        else:
            return None, None, None

    def KD(face_index):
        # self.me = context.active_object.data
        me = context.active_object.data
        #bm = bmesh.new()
        # bm = bmesh.from_mesh(me)

        bm.from_mesh(me)
        bm.faces.ensure_lookup_table()
        print(face_index)
        print(len(bm.faces[face_index].verts))
        size = len(bm.faces[face_index].verts)
        bm.faces.ensure_lookup_table()
        kd = kdtree.KDTree(size)

        for i, vtx in enumerate(bm.faces[face_index].verts):
            kd.insert(vtx.co, i)
        kd.balance()

        loc = context.scene.cursor_location

        print(loc)

        dist = kd.find_range(loc, 1)
        print("Mouse Local = ", loc)
        # print("index = ", dist[0])
        for i in dist:
            for j in i:
                context.scene.cursor_location = j
                break
            break
        bm.free()

        return dist

    # cast rays and find the closest object
    best_length_squared = -1.0
    best_obj = None

    for obj, matrix in visible_objects_and_duplis():
        if obj.type == 'MESH':
            hit, normal, face_index = obj_ray_cast(obj, matrix)
            if hit is not None:
                hit_world = matrix * hit
                scene.cursor_location = hit_world
                length_squared = (hit_world - ray_origin).length_squared
                if best_obj is None or length_squared < best_length_squared:
                    best_length_squared = length_squared
                    best_obj = obj

                # now we have the object under the mouse cursor,
                # we could do lots of stuff but for the example just select.
    a = KD(face_index)
    if best_obj is not None:
        best_obj.select = True
        context.scene.objects.active = best_obj

class ViewOperatorRayCast(bpy.types.Operator):
    """Modal object selection with a ray cast"""
    bl_idname = "view3d.modal_operator_raycast"
    bl_label = "RayCast View Operator"

    def modal(self, context, event):
        if event.type in {'MIDDLEMOUSE', 'WHEELUPMOUSE', 'WHEELDOWNMOUSE'}:
            # allow navigation
            return {'PASS_THROUGH'}
        elif event.type == 'LEFTMOUSE':
            main(context, event)
            return {'RUNNING_MODAL'}
        elif event.type in {'RIGHTMOUSE', 'ESC'}:
            return {'CANCELLED'}

        return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        if context.space_data.type == 'VIEW_3D':
            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "Active space must be a View3d")
            return {'CANCELLED'}

def register():
    bpy.utils.register_class(ViewOperatorRayCast)

def unregister():
    bpy.utils.unregister_class(ViewOperatorRayCast)

if __name__ == "__main__":
    register()

authors: Влад Киндюшов


text:
OpenSUSE - Blender cannot encode or export video
I have recently installed OpenSUSE after the Windows 10 trial ran out, and I am having trouble editing video with Blender. Everything seems to be working correctly until I try to export the video. as seen in the picture, the only viable video export option is "AVI Raw". This is not optimal, as I would normally encode in H.264/AAC and export an MPEG. As you can see, neither of those options are available. In fact, there's not even an Encode tab in the Render menu.
NOTE: I HAVE tried exporting video as AVI Raw, but neither the video or audio will play in VLC. It plays like a silent audio file.

Obviously I've missed something, but finding support for the Linux version of Blender AND the video editing portion is proving difficult. Any idea why these options are unavailable?
Missing Features:
H.264 encoding /
AAC audio /
MPEG container /
The Encode tab

Where did you install blender from? It's possible that it was built without ffmpeg or something. Try downloading it from blender.org

I downloaded my version from the openSUSE-13.2-Oss repository (http://download.opensuse.org/distribution/13.2/repo/oss/). Just took a look at the files used to build the program and, sure enough, FFMPEG is not included. I will try building it myself and see what happens

Okay, I have downloaded the latest master from http://git.blender.org/blender.git I have built it with no major errors and I have ffmpeg installed. According to the Build doc (http://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Linux/OpenSUSE/CMake), install_deps.sh should have linked ffmpeg to blender automatically. Farther down, it mentions that I may need to "Set the FFMPEG_LIBRARIES var to full paths of all needed libs (xvid, x264, etc.)". I'm not quite sure how to go about this, though.

Oh, additionally, it appears that this build no longer accepts .OGG, .MP3, or .FLAC files in the Video Sequence Editor. It gives a pop-up saying "File 'X' could not be loaded." This problem was not present previously.

Use the Frame Server feature and pipe it to a proper encoding program...


text:
how to make a weapon shatter when hit
I am animating a fight between two characters and I ran into a scene where I wanted one of the character's weapons to shatter like glass when the other character slices it.
 I have used a few things that supposedly do this including the cell fracture add-on but it did never finishes they top part of the sword , but the methods I've found do not work with a sword such as a katana.
I'm hoping for a way to either make the cell fracture work or find another way to break the object like glass.
here is what happens when i try to use the cell fracture on the katana:

Here is the original katana in edit mode:

have you tried the cell fracture addon?

Could you please specify what 'it does not work' means? It's unclear at the moment what you're trying to achieve.

there is a youtube tutorial series here on how to shatter a coffee cup, it might be a similar effect to what you're trying: https://www.youtube.com/results?search_query=shattering+a+coffee+cup+-+part+01+ The special thing is, they use the Grease Pencil to define the shard distribution, so there's a lot of control for the shatter effect.

How realistic should it be? Katanas seem to break like this: http://www.thesamuraiworkshop.com/university/images/ive-damaged-the-edge-of-my-sword/two-pieces.jpg

add more detail as to how the cell fracture is not working

What does the object look like (in edit mode to see the geometry) before cell fracture? Or are you able to upload the .blend?

i actually hought about that too and checked the object for any geometry problems and i did find one however it did not fix the problem

It's possible that the object is lacking enough geometry for cell fracture to work properly, and that's why the blade looks the way it does in the image above. But without seeing the object before the fracture or looking at the file, it's just a guess.

Cell fracture may create result like that when the original mesh is non-manifold. Enter Edit mode, choose either Vertex or Edge selection mode and run Ctrl+Alt+Shift+M. If something is selected most liklely it's the problem.

@MrZak ...You need to post your comments as answers. If you did that, more than half of the unanswered questions would be solved lol. If you don't, I will put the answer as community wiki.

@10Replies  Oh well I've already forgot about this one. I wanted to elaborate as soon as I get OP's answer if that helped. Didn't think the answer is really helpful but will add. You can post answers as well, but please elaborate a bit in them about the issue to make them clearer as when I post comments they aren't intended to be answers

The Cell Fracture addon can create sometimes results with parts not cut out. One possible reason for that is non-manifold geometry; as long as mesh will be non-manifold it won't be broken well enough by the addon. You can test that with default monkey (as it's non-manifold because of the eyes):

The areas which have unfinished fractures are ones near the eyes and this is one way to determine where non-manifold geometry is present. Use Ctrl+Alt+Shift+M to make non-manifold parts selected, Mesh Lint addon and others. There are some certain techniques used for repairing such areas listed in the linked answers.

i actually fixed it a while ago but thanks

authors: Наталья Мельникова


text:
My mantaflow fluid simulation is going the wrong way
so i am working on this project, and my fluid seems to think that the y axis is the x axis?? the fluid flows to the wall instead of the floor, like as if gravity has flipped

X and Y are sideways, Z is up and down. If this is what you expected but it’s not happening, check the scene properties tab to see if gravity has been changed.


text:
Volumetric shader not showing up in render
So, I have a problem using the Volumetric shaders in cycles. When I am viewing them in the viewport, they seem to be coming out perfectly fine, whereas when I render them, only the glass surface is visible and no light scattering/absorption occurs.
The Preview in the Viewport

The Rendered Image

(Sorry I have used a very low resolution, but the difference hopefully is clear)
[Edit] You can find my blend file here.

Oh yeah, I'm using Blender 2.74 if that's of any help.

Could you upload the .blend file to a service like Blend-Exchange

Cycles allows for a lot of ways to adjust raytracing, and I'd imagine it'd be possible to have some aspects of raytracing enabled in preview but disabled in final render.
Check the render settings for any obvious differences between preview and render settings, then if that doesn't work try playing with other relevant-looking settings in case there's some bug that allows a setting to affect one render mode but not the other.

Sorry, was in a hurry in the morning and didn't know how and where to upload the blend file. Thanks. I've updated the question.

You have a Solidify Modifier on your pawn(s) of -0.011 thickness that is set to take effect in the render, but not in the viewport. This is causing your pawns to be hollow inside during the final render, but not when seen in the viewport. This is also why your Material Preview looks much denser and darker than your final render. Since when rendered the material is paper-thin, there is not enough geometry for the volumetric properties to show. I think you either didn't mean to be using that modifier, or didn't mean to make it that thin.
General good advice:

always look at the Material Preview to see what Blender "thinks" your material is supposed to look like in its raw state.
Always consider what's happening in your Modifier stack.

Happy blending.


text:
Blender Boolean modifier: Difference behaves like union
Attached is an example in which difference modifier behaves like union.
Is this is a bug (I think so)?
See this .blender example in which I tried to use boolean modifier difference (Child is subtracted from Parent so modifier is on Parent)
Behavior
In both, the expected behavior is difference, but actual behavior is union
Failed attempts
Before posting here I:

Checked that my objects were manifolds
Checked that normals are pointing outwards (Edit Mode -> Select All -> Ctrl N)
No shared faces between any two objects
Removing doubles (double vertices)
Converting to triangles

I have read extensively on StackExchange and other forums, and watched guides, including this very relevant guide.
Any advice would be much appreciated.

Blender Developer forum (See this bug),

I usually try to avoid the boolean modifier because it has bugs, I'll try and take a look a your .blend file later, if I don't see anything wrong with how you're setting up the boolean, I'll show you some (better imo) alternatives to the boolean modifier.

Tips on removing doubles in BlenderArtist

Related: http://blender.stackexchange.com/q/5140/599, http://blender.stackexchange.com/q/14085/599, and http://blender.stackexchange.com/q/7910/599. Also see this bug report.

I appended the child to a new .blend (so I just have the child by itself) and when I try to move it, it won't move.  Is the object complex and it's not responding right away (lag), or is there another problem.  I looked at the child to see if it's manifold, and CTRL-ALT-SHIFT-M shows it as manifold; however, I have another tool (3D Printing), which tries to fix non-manifold, and does nothing when an object is manifold (or so I've discovered so far on other projects), and that tool butchers it up, which means the 3D printing Non-manifold tool is treating the child like it's non-manifold.

I done some simple boolean modifications on some things, and I've discovered if the faces are perfectly aligned, meaning a face of A and a face of B are aligned such that there is no gap the boolean won't work.  But, moving one face such that it overlaps by even a small amount, the boolean works. Usually the error caused by this is small enough in the overall design it makes no difference, even in printing, which is mostly what I design for, right now.  Is this what you meant @gandalf3

OK, disregard why the child won't resize or move, it's locked.  My apologies, I never used the locks before; but I finally noticed that it's locked and that's why I can't transform the child. lol  Sorry.

I think I found it; when I appended only the parent object, I discoverd that there is a child embedded in it; When I removed the second child, I was able to boolean difference a child object, and it worked.  Because everything was locked, it was impossible to see the second child object as it matched perfectly with the parent.  I'm not sure why I didn't see it in the Outliner.   Yes, in the original file, open an outliner window and expand the parent, one can see the cylinder011 attached to the parent.

I've got to check what I'm saying better... For some reason, when I append the child, then append the parent separately, the parent carries the child with it.  I'm a bit confused.  To duplicate: Create new blend, library append child, unlock it and move it away.  Library append the parent, and the child comes along.  This seems normal if truely parent and child; but, I can't see how they're linked. (sigh... still a noob.)

You are trying to use a simple plane as boolean operand here - which is by definition not manifold (a manifold surface must be closed, since all its edges have to have two and only two faces). Behavior of booleans in this case is never really ensured…
Also, your 3DView only shows objects enabled for rendering, and your 'ObjA' object is disabled for rendering, so it's completely hidden from 3DView.
Other than that, I see no issue with this .blend, if there are please be more specific.

Thank you.
I have revised the file such that all objects are selectable, renderable and visible in 3d View.
I have also made solidified the plane such that now it is a manifold.
The Problem remains: Boolean operator Difference is behaving like union

I could confirm the odd behaviour and found a way to work around it.
The coil shaped object has two edge loops that exists in the same space, the one on top and the one in the bottom.
So I selected the bottom one (Alt + right click) and moved it up a tiny tiny amount. G z 0.001
Now the boolean modifier works.

You beat me to it ;)

Thank you for confirming the behavior (so that I can post a bug). How did you find which is the problematic loop?
Did you have to change just one vertex or the whole coil?
Thanks again.

I changed the bottom loop of the whole coil. See new screenshot.

@Ben, manifold also means no self-intersection. It can also help to reduce the amount of geometry and use e.g. array after boolean.

Same problem with simper geometries: In this example I am unable to substract ObjA from ObjB. See how Difference, Union, and Intersect - all perform unexpectedly.
I still don't have a method of solving these.

I run into this issue all the time.  It can be seen in simple objects like two cubes.  If I make a cube 2x2x2 and duplicate it, and move it 2 along the X axis, I will have two cubes with two faces that are in the same space.  Ideally, when one wants to join two objects, this would be the perfect solution as they'd make one 4x2x2 object.  However the boolean operator won't allow this; and I also think it's a bug because theoretically the two faces should be non-existent after the boolean union, but mathematically 1&1=1 which would leave an inner face, and therefore non-manifold.

Either move it a bit, as suggested in this answer, or make the Parent a tiny bit smaller at both ends, or make the child a tiny bit bigger.  I always make the part I'm subtracting bigger than the thing I want to subtract from.  If your shrink the Parent cylinder so it exists between the top and bottom (Z) it will make your thread cuts perfectly. So, duplicate the child, move it up and join them (or boolean union) making sure threads align, then it should work perfectly for removal.


text:
Moire Like Blinking when preview rendering problem
I found, that some faces are blinking (like Moire effect) while rotating in preview.
Is this normal?
Reboot didn't help. Blender version is 2.76
OS is Windows 10 prof.
Video is GeForce GTX 770.
Sample: https://www.youtube.com/watch?v=oQ6rB7XbShk
UPDATE
The following message appears upon start:

(AL lib: (EE) UpdateDeviceParams: Failed to set 44100hz, got 48000hz instead)
UPDATE
I found it is the problem of my model, since it affects only half of it:

I was extruding circle and the split is located exactly where I started. I.e., right half was extruded from the circle to the right, and the left half was extruded from the left vertices to the left.
Also I noticed extruding behavior changed when I was doing this: Unconstrained extrusion?

You have lots of overlapping faces in your model that cause Z-fighting (http://blender.stackexchange.com/questions/5441/cause-of-black-artifacts-in-render). See also related questions: http://blender.stackexchange.com/questions/21216/overlapping-faces-in-mirror-modifier-causing-z-fighting or http://blender.stackexchange.com/questions/21/how-do-i-avoid-rendering-glitches-from-overlapping-faces

You also have a lot of inverted normals, try removing doubles with [W] > remove doubles, then recalculate the normals with [Ctrl]+[N].

@carlo Just for the record, I would leave this question open.  All of those questions are talking about the black squarish Z-fighting seen when rendered, this is referring to to the way it looks in the viewport. If I had this problem in the viewport (and didn't think to render it) I may not know that that is the same thing since they do look slightly different.

The display glitch you are seeing on your model is a common 3D graphics artifact called Z-fighting.
From Wikipedia:

Z-fighting is a phenomenon in 3D rendering that occurs when two or more primitives have similar values in the z-buffer. It is particularly prevalent with coplanar polygons, where two faces occupy essentially the same space, with neither in front. Affected pixels are rendered with fragments from one polygon or the other arbitrarily, in a manner determined by the precision of the z-buffer.

Basically what is happening is when two coplanar faces occupy the exact same space Blender doesn't know which of the two faces to render.  The faces are "fighting" which one is closer to the camera.  So due to floating-point calculations in the distance to the camera (z-buffer), various points of the shared surface are rendered as one of the faces, and other parts are rendered as the other face.  This results in the strange looking Moire-like glitch you are witnessing.
To fix this problem you can first try to remove double vertices with W > Remove Doubles.  This will merge vertices which occupy essentially the same location, you can adjust the tolerance in the F6 parameters menu immediately after removing doubles.  In some cases removing doubles won't be enough to fix the z-fighting, in these cases you will just have to go through manually and remove the overlapping faces.
I suggest you read up on manifold and non-manifold geometry.

Next time link the dupe, it'll save you the trouble of writing an answer

@NᴏᴠɪᴄᴇIɴDɪsɢᴜɪsᴇ I wouldn't call it a duplicate, the other question is talking about the black squarish Z-fighting seen when rendered, this is referring to to the way it looks in the viewport.  If I had this problem in the viewport (and didn't think to render it) I may not know that that is the same thing since they do look slightly different.

They both are visible in both cases

@NᴏᴠɪᴄᴇIɴDɪsɢᴜɪsᴇ What I am saying is that they are the same problem, but (slightly) different manifestations of it.


text:
How can I keep items of two CollectionProperties synchronised?
I try to explain the issu as clear as possible, but it will take a little while.
Background: Basically, what I try to do is to create two CollectionProperties in my scene and store custom PropertyGroup items in there. The two collections are not identical, there is members in one that the other one does not have, and the order and hierachy is different. With that said, I really would like to solve the problem behind in this way.
Problem: Some of the members should be part of both lists. That means, not only have the same values in there but really contain the same items, to be more clear, have the same result in the hash() function. Why? Only one of the collections will be used to display in a UI list, but both Collections shall respond to property updates.
Now, I already can create the Collections, fill them with items and assign the members to both, having the same hash() result. I can access the values and they are fine. So what's the point? The issue is, this only works as long as I am INSIDE the operators execute() function. When the operator finishes, one Collection still contains the data it should but the other one contains empty elements. The second collection is not empty, it has the right number of members, but the reference to the item in the other collection has been lost.
When I re-hookup the elements from the interactive Python console manually, everything works. simple code example here:
assume the collection prop has a name and zIndex prop. Then I do the following:
x = bpy.context.scene.col1.add()

x.name='col1'
x.zIndex=44

y = bpy.context.scene.col2.add()
y = x

print(y.zIndex)

this code above run from the interactive console will print 44, when run from inside the operator it will print 44 as well. However, when I just run the operator and then in the console get the value of bpy.context.scene.col2.zIndex it will print 0, while bpy.context.scene.col1.zIndex will still print 44.
Is there a way to get around this?

You can use an update function to keep both props in sync. skip to the "update example" here: http://www.blender.org/api/blender_python_api_2_66_4/bpy.props.html

might be a workaround, but it does not explain why the reference to the other item is lost after operator exit. I suspect it is because my variable (y in the example) is removed by the Garbage Collection, but I am only guessing...


text:
Why can I not access the custom EnumProperty which I added to my Panel class?
I'm working on a Panel where a user shall be able to choose between different options using a dropdown box. What I'd like to do for convenience reasons is to define an EnumProperty directly in the Panel class. Here is an example, I modified the UI Panel Simple template that ships with Blender slightly and added Addon definition:
import bpy

bl_info = {
    "name": "Hello World Panel with Enum Prop",
    "author": "Rainer Trummer",
    "version": (0, 1, 0),
    "blender": (2, 76, 0),
    "description": "Enum Property is registered, but cannot be accessed",
    "category": "Interface"
}

class HelloWorldPanel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "Hello World Panel"
    bl_idname = "VIEW3D_PT_hello"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_context = "object"

    # EnumProperty definition
    test = bpy.props.EnumProperty(items =
        [
            ('ONE', 'one', 'first one'),
            ('TWO', 'two', 'second one')
        ]
    )

    def draw(self, context):
        layout = self.layout
        row = layout.row()
        row.label(text = "Hello world!", icon = 'WORLD_DATA')

        # the following line fails when hovering over the panel
        # with the mouse cursor
        row.prop(self, 'test')

def register():
    bpy.utils.register_class(HelloWorldPanel)

def unregister():
    bpy.utils.unregister_class(HelloWorldPanel)

if __name__ == "__main__":
    register()

You can run this code from the text editor. There are no errors thrown at first, but the Property never appears in the UI. When you hover over the Panel in the 3D View, the console prints the following error:

However, I can happily access the property from the console:

but only if the panel code is within an addon. Running JUST the panel code without the bl_info block does not register the property.
I know I can put the Enum somewhere else, like into bpy.types.scene, but I don't understand why this approach here would not work. It DOES work with operators, doesn't it? Why not with Panels?

See the comment of GaiaClary here http://blender.stackexchange.com/questions/56741/how-can-i-dynamically-generate-operator-classes. I have very few experience of that, but if properties cannot be changed in a draw function, maybe it cannot be created too (from the rna point of view)

@lemon thanks for the link. But I'm not creating the property in the draw function, I do it within the class definition. I'm just accessing it during draw, and that is valid for any custom property, just not for those that are created on the panel class itself.

Finally I found the hint in the Blender Reference manual on this page: https://www.blender.org/api/blender_python_api_2_77_3/bpy.types.bpy_struct.html#bpy.types.bpy_struct :

Note Only bpy.types.ID, bpy.types.Bone and bpy.types.PoseBone classes support custom properties

and on top of the https://www.blender.org/api/blender_python_api_2_77_3/bpy.types.ID.html#bpy.types.ID page, the different ID classes are mentioned:

subclasses — Action, Armature, Brush, CacheFile, Camera, Curve, FreestyleLineStyle, GreasePencil, Group, Image, Key, Lamp, Lattice, Library, Mask, Material, Mesh, MetaBall, MovieClip, NodeTree, Object, PaintCurve, Palette, ParticleSettings, Scene, Screen, Sound, Speaker, Text, Texture, VectorFont, WindowManager, World

So, since the Panel class is not an ID class, but another derivate of bpy_struct, it cannot support custom properties by definition.

items = (('OANS', 'oans', 'description', 0))
This is a tuple of four. (x) just evaluates to x. If you want a tuple that contains x, you have to write (x, ). Or just use a list. Either of those two should work:
items = (('OANS', 'oans', 'description', 0), )
items = [('OANS', 'oans', 'description', 0)]

hehe, i removed the comma before posting the example thinking it might confuse people. in my current addon the enum looks like your first example, so that's not the issue. but thanks, I got the explanation and wasn't aware about that evaluation habit.

Please provide complete examples. Just use copy & paste. Right now your example doesn't even compile (class ceFF(Panel, ceFF base) is invalid).

I didn't copy/paste the code because it is unfortunately closed source, so I had to strip and modify it. I forgot to test it, that's why it turned out not to compile. I've edited my question now and based it on a Template that ships with Blender. The 'issue' is the same. What I found out today is that the property only registers when I make the whole thing an addon. Registering just the panel does not register the property at all, I guess that's the key to it. A link to some documentation that enlightens this would already be a good answer for me.

The current 2.77 API docs for the Panel class do not elaborate on it, but the info might be on a different page than this one: https://www.blender.org/api/blender_python_api_2_77_3/bpy.types.Panel.html?highlight=panel


text:
How can I make a linked duplicate path with other bevel object?
I want to make a cable with an outer sheathing and inside four wires. (Like a simplified version of a KNX-cable, see eg.
(source: domofox.it)  ).
I want to be able to dynamically modify the curvature of the cable afterwards.
So I started with a curve, then made a bezier circle and used that as bevel object for the curve, and finally added a solidify modifier for sheathing thickness, works marvelously.
I thought I could just make a linked duplicate of the curve and use a second, new bevel object (smaller) for my linked duplicate path and thus make a smaller conductor which would follow the same path. But when I change the bevel object of the duplicate, it also changes on the original?
How do I get this to work, so I can afterwards change 1 curve and all the others follow the change, each with its own bevel object?

I don't want it to be fully independent. I want the curves to follow each other (if I change the nodes of one curve, this change is reflected on the duplicate), but each with another bevel object.

I think it's impossible to do in this way as Blender can't differentiate which object data you'd like to be shared and which - don't. The workaround could be to make these curves independent and add Curve modifier to both curves-cables.  Then add one more curve which will be added into modifier. Note that you won't be able to apply that modifier as usual; only by converting to mesh.

To answer my own question again with a totally different approach, this time using Bevel Objects.
Solution 1, using Hooks
The basic strategy is the following:

in object mode: add a curve (bezier), add a bezier circle

select the curve, and set the bezier circle as the bevel object of the curve. This will be the first of our four wires.

duplicate this curve three times, spacing the objects (wires) a little apart. Now we have four wires in total.

duplicate the curve a fifth time, but now use a new, bigger bezier circle as the bevel object. This can be the sheathing.

finally, add hooks. To add a hook, in object mode create an empty (this will be our "handle" or hook). Select it, shift-select one of the curves (wires), and tab into edit mode. There you select one node of the bezier curve, press Ctrl+H and select "hook to selected object".(In the image below, I have hidden the sheathing, and am creating a hook relation between the empty and the furthest node of a wire).

Tab back into object mode. To see what you just did, select only the hook (the empty), and move it around: you'll see that the curve (wire) changes shape as its node is moved around. Press Esc to cancel the hook movement.
to make all curves follow the same hook, repeat the step above for the other curves, all hooking them to the same empty.
The final result is that when you move the hook (the empty), the hooked node of the four curves are following, bending the sheathing and the wires together.

Thanks also to SciFiAnimator who published this short tutorial on hooks.
Solution 2, using a curve modifier
A variation on this is the following (with a curve modifier).
Steps 1-4 same as above, to make four wires and a sheathing using Bevel objects. Then:

In object mode, add a new curve (which will define the path or form of the wires), which we will call "Path"
select a wire, add a Curve modifier, and choose as Object of the modifier: "Path" (the curve you just made)
Now do the same for the other wires and sheathing

The end result is that you can "slide" the cable along the path (in my case, by moving them along the X axis). Changing the form of the path will also change that of the wires and sheathing, of course.

Thanks to Mr.Zak's kind comment, I more or less solved it. I even threw in the twisting of the wires :)
The final solution does not use Bevel objects, but screw and curve modifiers.
In short:

for the wires, I made an object "KNX-wires" that consists of 4 circles
for the sheathing, I made another object "KNX-sheathing", that consists of a single circle
I added a curve "KNX-Path", to define the path of the cable

I then added the following modifiers to "KNX-wires" and "KNX-sheathing": screw, curve (with "KNX-Path" as curve object), solidify (to give some thickness), and a subsurf to finish.

Result looks like this. By changing "KNX-Path" in edit mode, the cable's path changes. By sliding the "KNX-Sheathing" and "KNX-Wires" along the Z-axis, they slide along "KNX-Path" following its curve. By changing the "screw" parameter of the screw modifier, I can change the length of the sheathing and wires (making the wires stick out a bit for instance).


text:
Is it possible to divide text object horizontally, while retaining edit ability?
Is it possible to achieve similar text transition while retaining text object edit ability?

Sure but you would have to convert it into another form.
If you Convert > Mesh then you cannot edit the text.
If you use the scene output then it becomes an image that you can modify in the compositor (or in the VSE but the tools are not as complete)

Set up a camera to look at the text, I have used a shadeless material. Remember to set scene property to render alpha not sky.

Add scene node to compositor (use another scene if you like). Then split the same input into 2 with a crop node. Move them separately with a Translate node.


text:
How can I prevent overlapping when using Solidify Modifier?
I have used the Solidify Modifier tool on my object (choker) which appears to have caused overlapping at the centre. Lowering the thickness has helped but it does not prevent the problem. The image below shows how the choker should look. I have probably missed a simple step but cannot figure it out.

Solidify modifier has an option called "clamp" that can sometimes be useful in solving overlapping issues. But before all you have to make sure your model's normals are pointing the right direction. For example I see you choose to not merge the mirrored mesh. Why do you need disjoined meshed? Could you better describe what is your final goal and why you would like to use the solidify modifier?

I have attached an updated file. For 3D printing reasons, I assumed the walls of my object would need thickness. Perhaps I have gone the wrong way about doing this. The model's normals appear to be pointing the right direction. My aim is to create a choker as a whole mesh and eventually 3D print this for casting in metal. I made the object hollow to save on material costs. I have merged the mirrored mesh, adjusted the merge limit and increased the clamp option. This has helped except now the object has a grainy appearance on the surface when shown in Solid display on Object mode. @Carlo

Thanks for the info, now it's more clear what the purpose was. The object has acute angles that surely don't help to solve the thickness problem in one shot. I think your approach is correct, now just use the solidified geometry (after minimizing the errors with clamp, or maybe not because it damp down the overall thickness) as a "base" and work upon it manually. Consider that the "inside" surface maybe should not be perfectly aligned with the outer surface, it's just for enclosing a volume, so you can use less faces, that are easier to work with.


text:
Blender 3.2 will not quit when running in background
I have a windows batch file that calls blender to render various scenes & cameras in background. For some reason, blender.exe does not terminate at the end of the render and pass control back to the batch file.  I have to manually end the task in Task Manager for the job to continue.  The command I am using is:
"C:\Program Files\Blender Foundation\Blender 3.2\blender.exe"  ^
  --debug --debug-gpu --debug-cycles  ^
  --background %blend_file%  ^
  --scene %scene_name%   ^
  -E CYCLES -s %frame_s%  -e %frame_e%   ^
  -o %output_path%   ^
  --python ".\python_temp\camera_setup.py"

The python script just sets the correct camera (there are several in the scene) and starts the animation:
import bpy
bpy.context.scene.camera = bpy.data.objects["Camera_005 (Fly Thru)"]
bpy.context.scene.render.use_multiview = False
bpy.ops.render.render(animation=True)
bpy.ops.wm.quit_blender()

The last few lines in the log file show blender unloading all the assets, so it's behaving as I would expect . . .  except it just sits there with 0% CPU and doesn't end?
I'd really appreciate any help . . .

I think the builtin python quit() will terminate the program

Thanks!  In the end, I used "import sys" followed by "sys.exit()" to force a close.  It seems really extreme, but it works for now.

yeah a lot of operators rely on some form of UI element to correctly work, I'm not surprised it didn't work. I suggest trying to always use lower-level API functions if you're going to run Blender headless. I guess you already saw this answer which suggests raising an Exception, which is ugly too but might suit your usecase more. https://blender.stackexchange.com/a/6784/86891


text:
export png file embedded in blender files
I'm trying to make a model for unity. There is no problem with the model, but the textures of the model are embedded in the blender file. how can i parse this png file from blender file?

Do you mean export the PNG?
If so, you can do Image > Save As:

If you mean something else, please add more details in your post or comment on this answer what you mean.

oh! Thanks for this answer. I don't understand why I didn't think of it. anyway. you saved my life. good day!

Glad it helped!


text:
blender bump map tearing
Merhaba! blender programında bir tekerlek modeli üzerinde çalışırken bump map haritalamasının yanlış olduğunu farkettim. daha doğrusu 2 boyutlu haritalamada sıkıntı yoktu ama 3 boyutlu modelde yırtılma oluyor. ve tekerleğe belli bir açıdan bakıldığında bu yırtılma çok kötü duruyor. işte görsel:

Hello there! While working on a wheel model in the blender program, I noticed that the bump map mapping was wrong. More precisely, there was no problem in 2-dimensional mapping, but tearing occurs in the 3-dimensional model. and this tearing looks very bad when the wheel is viewed from a certain angle. here is the visual:

Hello :). This can sometimes happen when having the normal map set to sRGB. Make sure it's set to non-color.

thanks but how can I make this image non-color?

Hey :). It's in the image texture node - ColorSpace: Non-Color.

thanks Jachym Michal. I will try.


text:
Obtaining a 3D model from a 2D set of images
Hello there. I recently received a set of mr images and I want to make a 3D model of them. For this reason, I created many floors and put different textures on them.
here is the result =

but this process is not practical. Also, it's really hard to render this model in eevee mode. because this process is very hard on my computer. and there are spaces between images in this process.
That's why I don't like this method. If there is a method you can recommend instead of this method, I would be very happy if you indicate.
Good day to everyone!

I don't know the specific data your MRI machine can generate, but it seems there is a 2015 DICOM plugin working for Blender 2.69+ to bring MRI scanned data into Blender:
https://blenderartists.org/t/addon-analyse-dicom-3d-models/641397
Also, just to clarify, so you can mark this answer as positive:

don't concentrate in the entire model as 1 piece. You need to "dissect" each part (and each modeled part): Skull, inner canals, nerves etc.. It's a process. Yes, you will NOT have "back faces for ocular regions, in general all occluded structures will be hollowed" and empty.
Edit (and model / cure / remesh) as you go. I don't know if your requirement needs to present accurate representation of a certain internal cranial structure, but if it's for artistic purposes, I think the above plugin does a great job.

thanks for your response. but this plugin is not working properly in my blender. Even though I can install the plugin, it doesn't show up on the left side. do you know any solution?
also 3D Slicer could not be downloaded. gave an error

you need to download a legacy blender (I think this version was 2.69)

Are ".dcm" files required for this plugin to work?


text:
How can I create this type of lighting effect in Blender Cycles?
I recently came across this image:

(source: makeuseof.com)
How can I recreate this style in Cycles? I can manage with the modeling part but I have no idea with such lighting. I have tried a glossy shader, a powerful point light and a white background, but it is no where near the realism of the above photo. Currently, I have managed this:

I usually create this type of lighting with several sun lamps aiming in slightly different directions with different shadow sizes.

Also, make sure you are mixing with a Diffuse shader as well.

@cegaton The displaced cubes should reflect themselves

There are two main differences I see between your render and the reference image: the shader and the lighting.

Shading
It looks like in your render you have only used a glossy shader with a red color for the cubes.  However in the real world, the glossy reflections are rarely colored (except on metallics), the color comes from the diffusion.  See how the glossy reflections on the reference image are actually white (the color of the light and background), not red?
Here is my node setup for a general plastic material.

The base is just a diffuse with a little bit of SSS and gloss, then a sharp Fresnel gloss mixed in.

Lighting
There are 3 main differences I noticed about the lighting in your reference image versus your render.

The white backdrop.  To make a white backdrop like what is shown, create a plane, extrude the back edge up, add a subsurf modifier, and add some proximity cuts near the corner to hold the curve to the corner.  Just use a pure white diffuse shader for its material.

The shadows are very soft.  To create soft shadows in Cycles you need to use larger values for the Size parameter on your lamps (found under the Lamp rollout of the Object Data properties panel).  This effectively blurs the edges of shadows produced by that lamp.

The shadows are directly underneath the object.  To create shadows like this I like to use several sun lamps aimed in slightly different directions with different shadow sizes and strengths.  I usually have one slightly brighter main light, and two dimmer backup lights with even larger shadow sizes aimed in opposite directions and angles from the main light.

Result
Here's my result:

The original image seems it has been rendered using a simple white Background lighting rig. There's no single point lamp in the original image, as far as I can see. Furthermore, the shader simulate a smooth and reflective plastic material. This is the result with a modeled plane for the background, a cube with bevel and arrays applied, then displacing some of the cubes, with a simple diffuse material for the background plane and a shiny red plastic material (with Fresnel and Energy conservation, PBRish) for the cubes.

I will also point that it seems that the main light source is coming from above.  Maybe also you can use the HSV value node for the background plate material and increase the value of the color up to 1.1 in order to achieve a more white background.

The suggestion of the background white object really makes it much much better. Also, I used the same point lamp and got a decent result. But can you please help me with setting up the material of the cubes?

And as for applying the bevel and array, I did the same thing. The bevel is not that apparent. I should increase it.


text:
Shader receive light cast shadow with its color
I'm trying to create shader like this image of dice.

As you noticed, there is some shadow from dice which cast color of dice, how can i create something like that.

Enable Refractive Caustic + Glass shader
It's not shadow, it's light!
The effect you see in the picture is a physical effect called "caustics".
White light get into the dice volume. There's in a certain quantity of light that is absorbed by the dice's material. Th red component is not absorbed, so is free to get out of the volumes and reach into the camera, letting we see the cube red (different shades of red because not all the cube surroundings are full white light sources). Not all the "filtered" rays (made of red light only) go directly to the camera, some of them also reflected on the plane surface coloring it a bit.
Blender Cycles can emulate that effect if you enable the Caustics by ticking the check boxes near the cursor in the picture below:

First of all you must use a Glass shader, or the light will not penetrate your object's surface.
Without Caustics, the object project a soft shadow on the opposite side of the light source. The plane is grey, so the shadow will result in a darker grey because less light can reach that points.
Refractive Caustics option takes in account the light that travels through a material.

In addition, the base plane from the photo is slightly glossy (you can almost see the dice mirrored) so I would suggest to use a mix of a diffuse and glossy shader in order to get some color bleeding also on the sides where the caustics aren't.
Final result:

Thanks for detail explantion! I got it now. You are the real hero

Welcome @NickyTen :) If Carlo has solved your issue, please accept it for future visitors, also this is the best way to say "Thank you". Please see the tour: http://blender.stackexchange.com/tour. Thanks.


text:
Parenting mesh with Bones > Error: failed to find solution for one or more bones
Hey this is my first rigging experience and I tried rigify and now the old method and I get stuck in the same area basically, a little further with rigify but in the end the same issue.
Here's a video of my issue ->
https://www.youtube.com/watch?v=FkeLQzcQyQU&feature=youtu.be
Updated Issue (for those that don't want to watch the video):
- Bone heat weighting failed to find one or more bone
- Now in riggify it finds the head neck and spine bones, but not the limbs
- In the old fashion method it finds no bones
- I have the limbs detached but still all acting as 1 mesh
- My friend said I need to actually have each limb have its on mesh.
- This character I'm using was imported into blender via .obj file from magicavoxel

here's the file ->  http://www.filedropper.com/toonedenfrommagicavoxel

*After removing duplicated vertices, I still get the same issue when using riggify:

only the mid bones work and not the limbs.

The voxel mesh is probably non-manifold. There will be duplicate vertices or geometry issues inside probably. Check the duplicate question and please don't post question as a video with no info here, it takes time to watch it and the link could get broken.

Updated my question (people get cranky on this site)

You don't have to have each limb separate, that's not good actually. The rigify differs because it generates bones at different positions, which might by luck work. There are certainly problems with the mesh. Could you share the file somewhere so people can inspect? That would help big time.

heres the file: http://www.filedropper.com/toonedenfrommagicavoxel

Ok, you have duplicate vertices. You can check this with Select>Non-manifold in editmode. To fix it go into editmode(Tab), select everything (A) and remove doubles (Mesh>Vertices>Remove_Doubles). That should fix it.

Ok so I did what you suggested, but before I start the rigging process again, would you advise using riggify?

That depends what animation you need, rigify generates rather complicated rig with lots of features. It gives you stretch and also inverse kinematic controls. If you only need to pose the character or do simple animation go with simple rig.

it failed to work again it only does the spine neck and head and no limbs, heres a pic:  http://tinypic.com/view.php?pic=2rxwieq&s=8#.Vc6FyflVgqM


text:
Can python access control points of Hue modifier?
I am making a chroma keyer in the VSE and wondered if it possible to access the control point data of the Hue Sat modifier? I would like to build a GUI for easier control of the curve slope but cannot find a reference to these values.

They seem to have coordinates but no data structure, perhaps this is because you cannot animate their value. But I only want to make interacting with them easier (like the points of a  ramp or blend texture).

You can try bpy.data.scenes['Scene'].sequence_editor.active_strip.modifiers['Hue Correct'].curve_mapping.curves which returns 3 CurveMaps. I assume these are the curves for H S V. CurveMaps contain CurveMapPoints and those have x y location values as far I can see for now, (I can't test it at the moment) see the datablocks: https://i.sstatic.net/PSPnl.png

Works so far https://gist.github.com/p2or/1f2b725a8c25ce82d69c, but it seems that the curve won't update automatically, might be a viewport issue, not sure.

Why don't you post this as an answer?

@Samoth Since the OP wants to generate a custom curve there is a lot more to cover - creating and removing points, set the interpolation type etc. :) I don't have so much time at the moment and I also think the answer would be incomplete until we've found a way to update the curve.Unfortunately calling scene.update() does not work on linux nor on windows. Anyway, thanks!

@poor: Well, he didn't ask for a perfect solution, but whether it's possible and you already posted how in this comments and linked some code - you can (for a first step) just pack it together in an answer explaining the open problems as well. And probably you might edit your answer later to show solutions to these problems or explain why it won't be possible in the end. You seem to long for a perfect answer, but this might already help him perfectly without the need to be more perfectionistic. ;-)

You can access the 'Control Points' via CurveMap attribute of the respective Hue Correct Modifier:
>>> h, s, v = bpy.context.scene.sequence_editor.active_strip.modifiers['Hue Correct'].curve_mapping.curves
>>> print (h.points, s.points, v.points)
>>> [p.location for p in s.points]  # print saturation vector control points
>>> s.points[3].location[1] = 0.001 # assignment (y location)

To update the representation of the Curve within the UI call CurveMapping.update() after any assignment. However this does not update the Viewer, so toggling the 'visibility'  of the modifier is probably the easiest and fastest way to update the Curve and refreshing the Viewer at once.
Desaturate blue(s)

import bpy

scn = bpy.context.scene
act_strip = scn.sequence_editor.active_strip
hue_modifier = act_strip.modifiers["Hue Correct"]

# get the mapping
# .../bpy.types.CurveMapping.html#bpy.types.CurveMapping
mapping = hue_modifier.curve_mapping

# get the curve maps
# .../bpy.types.CurveMap.html#bpy.types.CurveMap
hue, sat, val = mapping.curves

# iterate through saturation control points
for count, point in enumerate(sat.points):
    x, y = point.location

    # desaturate blue
    if 0.55 <= x <= 0.7: # check if x is within the blue range
        point.location.y = 0.01

    print (count, point.location)

# direct assignment via index operator
#sat.points[5].location[1] = 0 # desaturate blue

# update the curve
# ../bpy.types.CurveMapping.html#bpy.types.CurveMapping.update
mapping.update()

# force viewer update (optional)
hue_modifier.mute = True
hue_modifier.mute = False

Custom curves
To apply a custom Curve iterate through CurveMap.points and assign a Vector((x, y)) to each Point.location (0-1 float range). The following operator allows to reset the number of points as well as the point locations to the default values for demonstration purposes:

Click to enlarge
Reset Curves Operator (Blender 2.8+)
import bpy
from bpy.props import BoolProperty, EnumProperty
from bpy.types import Operator
from mathutils import Vector

def reset_curve(curvemap):

    default_points = [Vector((0.0, 0.5)), Vector((0.125, 0.5)), Vector((0.25, 0.5)),
                     Vector((0.375, 0.5)), Vector((0.5, 0.5)), Vector((0.625, 0.5)),
                     Vector((0.75, 0.5)), Vector((0.875, 0.5)), Vector((1.0, 0.5))]

    if len(curvemap.points) > len(default_points):  # remove waste
        n = 0
        while len(curvemap.points) > len(default_points):
            curvemap.points.remove(curvemap.points[n])
            n += 1

    if len(curvemap.points) < len(default_points): # generate missing points
        n = 0
        while len(curvemap.points) < len(default_points):
            curvemap.points.new(0.1, 0.5)
            n +=1

    # set values to default
    for c, point in enumerate(curvemap.points):
        point.location = default_points[c]

class SEQUENCER_OT_resetHueCorrect(Operator):
    bl_idname="sequencer.reset_hue_correct"
    bl_label="Reset Hue Correct"
    bl_options = {'REGISTER', 'UNDO'}

    # properties
    def modifier_callback(self, context):
        sel_strip = context.scene.sequence_editor.active_strip
        hue_modifiers = [(str(c), item.name.title(), '') for
            c, item in enumerate(sel_strip.modifiers) if
            item.type == "HUE_CORRECT"]
        return hue_modifiers

    mod: EnumProperty(name="Modifier", items=modifier_callback)
    hue: BoolProperty(default=True, name="Hue")
    sat: BoolProperty(default=True, name="Saturation")
    val: BoolProperty(default=True, name="Value")

    @classmethod
    def poll(cls, context):
        spc = context.space_data
        act_clip = context.scene.sequence_editor.active_strip
        return (spc.type == 'SEQUENCE_EDITOR' and act_clip.select)

    def execute(self, context):

        # get the active strip
        sel_strip = context.scene.sequence_editor.active_strip

        # tagging the area for redraw to update the curve edits
        context.region.tag_redraw() #context.area.tag_redraw()

        #for m in sel_strip.modifiers:
        m = sel_strip.modifiers[int(self.mod)]

        # get the mapping
        # .../bpy.types.CurveMapping.html#bpy.types.CurveMapping
        mapping = m.curve_mapping

        # get the curve maps
        # .../bpy.types.CurveMap.html#bpy.types.CurveMap
        h, s, v = mapping.curves

        # reset hue
        if self.hue: reset_curve(h)

        # reset saturation
        if self.sat: reset_curve(s)

        # reset value
        if self.val: reset_curve(v)

        # update the curve
        m.curve_mapping.update()

        # toggle modifier visibility to update the viewer
        # -> way faster than sequencer.refresh_all()
        m.mute = not m.mute # respect the state
        m.mute = not m.mute

        self.report({'INFO'}, "Successfully reset {}".format(m.name))
        return {'FINISHED'}

    def invoke(self, context, event):
        wm = context.window_manager
        sel_strip = context.scene.sequence_editor.active_strip
        if bool([m for m in sel_strip.modifiers if m.type == "HUE_CORRECT"]):
            return wm.invoke_props_dialog(self)
        else:
            self.report({"INFO"}, "strip has no hue correct modifier")
            return {'FINISHED'}

    def draw(self, context):
        row = self.layout
        sel_strip = context.scene.sequence_editor.active_strip
        if len([m for m in sel_strip.modifiers if m.type == "HUE_CORRECT"]) > 1:
            row.prop(self, "mod")
        row.prop(self, "hue")
        row.prop(self, "sat")
        row.prop(self, "val")

def register():
    bpy.utils.register_class(SEQUENCER_OT_resetHueCorrect)

def unregister():
    bpy.utils.unregister_class(SEQUENCER_OT_resetHueCorrect)

if __name__ == "__main__":
    register()

Oh wow @poor thanks for taking the time. TBH I had mostly forgot this was here. I'll have to try this code out!

Hmm can't register or run the script? On 2.76 with adjustment layer and hue modifier. But cannot search for sequencer>Hue reset either. Info bar says it runs without warning however?

Did you ever get a working addon for this? I have been wanting to be able to easily chroma key from the VSE as well.


text:
How to stop ambient occlusion texture baking in cycles from only having black and white color output?
My ambient occlusion bake in cycles for a sword has only black and white color and none of the recognizable grey gradient shading that goes with ambient occlusion. I am using the 'selected to active' option so I've got my low res and high res with detail models all set up. I followed this 'answer', How do I bake a texture using Cycles bake, in achieving my setup.
Here is an image of the bake.

Here is an image of the high res model.

Here is an image of what I'm thinking the AO should look like. It is from a tutorial I am doing on this sword.

Now the sword handle bands from the high res model extrude further out than then the low res model's sword handle geometry. To compensate for this, I enabled the 'cage' option and used an extrusion setting that matched the length of the farthest distance that the high res handle bands extruded out from the low res handle, which is cylindrical only. The rest of the sword geometry comparison between lower and higher res models is almost identical except for some high res scratches and detail sculpting.
I'm basically looking for something I may be missing in the entire setup of models and settings for ambient occlusion baking, in order to get that nice ambient occlusion grey gradient shading on my texture.

I'm not 100% sure, but have you tried checking normalized?

That setting is for blender internal. The question is concerned with cycles.

Are you sure there even is any place on your model where AO would produce a gradient? Have you tried comparing it to a test render with only a AO node, connected to the output, for the material?

I tested out your suggestion. The model does produce the AO gradient, especially on the handle bands but also in dents in the sword to a lesser degree.

@someonewithpc I can see some place does has AO, see the small islands on the middle right side, or some blades. That looks normal.

I was messing around trying to get to the same result and this ended up working: select your object, tab into edit mode, select everything and in the third tab on the "T" menu click Recalculate Normals. Now bake your AO map.

Cycles Baking behaves a bit different from BI Baking due to the design. However, you can simulate what you expected by creating an auxiliary object, and tweak the Distance value located in World tab to get rid of the "normalized" look.

Create a big enough object, center it to the target objects;
Tweak the Distance value based on the dimension of the new object. (As shown below, I created a 20 x 20 x 20 cube object, so that the distance between the sword and cube is around 10.)

The model itself produces ambient occlusion that does not look like the baked texture in the question, though. I was following a tutorial for this sword where the tutor used Topogun for AO baking, whereas I am going with Blender, and the tutor's AO bake had the AO-associated gray gradient shading for the AO that occurs in the ridges of the sword handle bands.

Then two suggestions: 1. upload your .blend file, you can upload it here; 2. upload a picture here to show what it should look like (in Topogun for example). I suppose you need to tweak the cage setting.

Ok, I've uploaded the blend here, http://www.pasteall.org/blend/33326. I edited the question to include that Topogun AO bake image.

OK. I hope the updated answer helps.

I see the AO working, as I wanted it to, but I'm not understanding how this way isn't the correct one. Can you explain this a bit more? Also, I don't get how making the container box did the trick for getting the AO the way I was seeking. Can you explain a bit more here too?

I wish I could but I can't. Let's see if other guys can help further. :)


text:
How can I derive from an existing Operator in Python?
When creating a new Blender Operator, you'll derive the class from bpy.types.Operator, like this:
import bpy

class MyShinyOp(bpy.types.Operator):
    bl_idname = 'object.my_shiny_operator'
    bl_label = "Operator"

   # ... and so on and so forth

My current understanding is that most operators should derive from bpy.types.Operator just like above. After registration, I should see this operator as
bpy.types.OBJECT_OT_my_shiny_operator

But what if I want to extend an already existing one, like
bpy.types.MESH_OT_primitive_monkey_add

I cannot derive from it, as it isn't a class any more, it is a registered Operator - a class instance. So this code will fail:
class MyShinyOp(bpy.types.MESH_OT_primitive_monkey_add)

Is there a way to get a reference to the class itself? Is it around somewhere just like user written classes? Or is this somehow wrapped C++ stuff? Is it possible to derive from existing Operators at all?

@zeffii I do have the mentioned operator available, it's coming from a plugin. Honestly it doesn't matter which one, I'm asking this as a generic question. I'd be interested if this can be done at all, as it would allow to customize Blender further in a very elegant way.

If you have the addon for that operator, then from that_addon import thatoperator is your best bet.

@batFINGER thanks, I was aware of that, but how would I go about, let's say, bpy.types.MESH_OT_primitive_monkey_add ? I don't know where to find the source file for that to check what classes are available. Still it would be nice to be able to extend said operator.


text:
How can I animate a mesh to be transparent without hiding the smoke that it emits also?
I recently asked this related question about animating a solid mesh into smoke, and a solution that I might use is to shroud the mesh in smoke heavily whilst the mesh animates to zero opacity, which sounded simple, except there's a problem:
The mesh owns the smoke, and mixing it's material with a transparent shader hides both the mesh and the smoke.
How can I hide the mesh without hiding the smoke also?

One solution that I thought of could be to create a duplicate of the mesh to contain the smoke that is set not to show the smoke emitter, and then as I hide the mesh that is shown, the emitter will remain but the smoke will continue. This would work, but it's a work-around (noob-ish) way to handle it.

Are you using BI or cycles?

@gandalf3 Cycles. Sorry

If I understand the question correctly... I think you are on the right track.
Simply disable the render-ability of the emitter object like so:

Then duplicate the emitter object and apply to it the shader which animates from opaque to transparent. (As described in this thread -> How can I animate an opaque material to being fully transparent in Cycles?)

The question cited = also mine ^_^


text:
Cycles render engine is not rendering anything
I've looked everywhere in SE for a solution, nothing seems to be working. For no obvious reason cycles rendering is not working, as you can see in the screenshot, here's what I've tried to do:

check/uncheck sequencer in post processing tab.
changing between global and local view.
switching between layers.

is there anything else I can try?

here's the blend file:

Please upload your blend file, the screenshot just can't schow everything

@schustudrai would you please suggest a file sharing method?

try Blend-exchange

I cannot check the .Blend right now, however make sure your render layers are set up. https://www.blender.org/manual/render/post_process/layers.html

your camera is pointing to nothing... if you press numpad 0, you see why you get that "empty" render...
select the camera and press CTRL + numpad 0, you now see the selected camera points to the scene objects, then hit F12, you get what you expected:

update
here's the result after appending all object and actions from your file into a blank new file

Thank you so much for your help, but when I press animation the problem persists, pressing Ctrl+ F12 works fine but the button shows the same problem

...this is really weird... F12 and CTRL+F12 work, but hitting "render" and "animation" not....?!? I guess this file could have become corrupted, I tried this: open a new file, delete all, append all objects from the old file... it seems to behave well...

you can append actions also... I edited the post showing the "animation" button works in this way...

Thank you so much, but now the rendering is all messed up right now, it looks jerky with a lot of noise...

yes, sorry, I set 10% resolution and 32 render samples to speed up the animation render... :) it was 128 samples before...

I'm afraid this isn't the problem, I'll edit the question, so you would see what I mean

Everything is working fine now, thank you so much for your time

Good! I'm happy that you solved it!

I was having the same problem, maybe for different reasons, but it might help other people. I had an animation strip from a previous project on the video editor, deleting the stuff that was on the video editor solved it


text:
Sheep it render farm outputs blank frames
I came across Sheep It, the render farm. I'm uploading my .blend file, the output is just blank photos, it's not showing anything. The thing is that  I had a problem with the file, I don't know if the problem mentioned here has something to do with the fact that clicking animation button would render only one blank frame, but Ctrl + F12 is working just fine, I hope I made my problem clear.
Here is my blend file:

Did you pack or include all external data, textures and relevant dependencies in the file uploaded to the render farm? Does it come out  blank when you render it locally on your pc? If not report it to ship. It not here

Your active camera is a plane. Select your camera and hit Ctrl+0.


text:
How can I turn a geometric shape into a hollow room with evenly thick walls?
so I as a Blender newbie is trying to model a hollow building. I was wondering if there's any easy way to turn this flat plain surface into an actual wall with thickness. The challenge is that it has window gaps, the wall is slanted outwards and that the walls are part of an octogon. How do I model an evenly thick wall from this here?

You can use the Solidify modifier; To add it to a object, select said object, go to the Properties, and in the tab Modifiers click Add Modifier and select Solidify.

You can adjust the Thickness value.

Please don't use backticks for highlighting, this is reserved for code. Use italics or bold text.