Broken Add-on (only for one person though?)

Here is the error message followed by the section of code around line 2935:

Traceback (most recent call last):
  File "C:\Users\ryanl\AppData\Roaming\Blender Foundation\Blender\2.80\scripts\addons\Darkfall VFX Nodes1_2.py", line 2935, in draw
    icon="TRIA_DOWN" if obj.expanded else "TRIA_RIGHT",
AttributeError: 'NoneType' object has no attribute 'expanded'

def draw(self, context):
        layout = self.layout
        obj = context.object

        box = layout.box()

        row = box.row()
        row.prop(obj, "expanded", # Line 2935
            icon="TRIA_DOWN" if obj.expanded else "TRIA_RIGHT",
            icon_only=True, emboss=False)

It is possible that the user has put Blender into a state where context.object could be None by having no selected objects. For example, if a user deletes the selected object, there will be no selected object. It could also be that this is a side effect from another addon (one that deselects all objects, for example).

I am able to reproduce this error by starting with a new .blend file and deleting the default cube. I am also able to reproduce the error by running the following script in the text editor:

import bpy
bpy.context.view_layer.objects.active = None

You may want to handle the case where context.object is None. One way to handle this is by adding the poll class method to the panel. The draw method will only run if the poll method returns True.

    @classmethod
    def poll(cls, context):
        return context.object is not None

EDIT: I took a closer look at your script. The only reason an object needs to be selected is because the expanded property is stored inside of an Object. The object is not used elsewhere in drawing. I would consider a small redesign so that the property is stored somewhere else so that it is not necessary for the user to have an object selected. An example could be to store the property in the Scene object. Here is an example for how this could be done:

class Sub1Panel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "clonepanel"
    bl_idname = "OBJECT_PT_clone"
    bl_space_type = 'NODE_EDITOR'
    bl_label = "Clone Node"
    bl_region_type = "UI"
    bl_category = "Darkfall VFX Nodes"
    bl_options = {'DEFAULT_CLOSED'}
    bl_parent_id = 'OBJECT_PT_toolseffect'

    def draw(self, context):
        scene = context.scene

        box = layout.box()
        row = box.row()
        row.prop(scene, "Sub11Panel_expanded ",
            icon="TRIA_DOWN" if scene.Sub11Panel_expanded else "TRIA_RIGHT",
            icon_only=True, emboss=False
        )

        if scene.Sub11Panel_expanded:
            row.label("label")

def register():
    bpy.utils.register_class(Sub11Panel)
    bpy.types.Scene.Sub11Panel_expanded = bpy.props.BoolProperty(default=False)

def unregister():
    bpy.utils.unregister_class(Sub11Panel)
    del bpy.types.Scene.Sub11Panel_expanded


How to get a perfect circular UV unwrap projection?

As @lemon suggested me, the proper solution is selecting the right faces in the 3D Top View and UV wrap them with the Project From View option. (UProject From View).


Is there a way to stop Blender from performing an action once started?

It depends, some actions you can stop, others you cannot. However you can always stop blender by closing it Alt + F4 or killing the process. Some things can be stopped in blender. If it is possible to stop an action you can do it with the ESC key.

Actions that cannot be stopped:

Changing shading style in the viewport, e.g changing to textured or materials can take some time if you have a lot of textures, there is no way to stop this
Applying/Modifying modifiers, e.g when you accidently increase the numbers of arrays to 400 blender will take a long time to compute this depending on the complexity of the object. Same goes for other modifiers.

Actions you can stop mid process:

Rendering, you can always abort a render at render time
Baking textures, similar to render: e.g baking a normal map.
Baking fluids: Smoke and Liquid simulations can be canceled just like renders.

You can also cancel these actions with the GUI by clicking on the X:


AA issue toon shading blender internal render

I actually found it, DOH!. Somehow 'Full Oversampling' was disabled in the material options. Needs to be enabled. It now renders smooth lines.
Thanks for your respons.


In Edit mode, make sure you enable vertex selection.

Click the vertex to which you want to set the origin.

While still in Edit Mode, Mesh > Snap > Cursor to Selected
If all you want to do is change the pivot point, set it to 3D cursor.

If you actually want to change the origin.

Tab to Object mode, then Object > Transform > Origin to 3D Cursor.

Since Blender 2.8 it's Object > Set Origin > Origin to 3D Cursor.


Instead of working under a Mirror modifier, on 24 nozzles, you could be working under an Array modifier, on 1.

Cut out 1/48 of your spaceship. (If necessary, P temporarily split off the part of your spaceship you don't want to be duplicated in rotation)
Set up a rotational array: Object offset only, targeted on an empty at the spaceship origin, rotated through 360/48 degrees, 'Merge' and 'First and Last' checked
Get to work on the nozzle(s)

It can help to keep a copy of the torus before cutting the piece out, to Shrinkwrap to. In the cut-out section, create a Vertex Group of the vertices you want to remain on the surface of the original torus. Assign a Shrinkwrap modifier to the section, target the intact torus,affecting only that Vertex Group.


Some sites of the models won't illuminate properly

Go into Properties > Data > Normals > and unclick Autosmooth, I guess it was creating a bug


You have a single ngon with 1646 vertices.

Not great topology in my opinion. On a polygon like that you're more likely to find UV mapping errors or inconsistencies.

For a simple object like your leaf, you don't need to have so many vertices. You can use a single plane and have the alpha channel define the outline.

Here's the same leaf using only four vertices:


Turn on smooth shading and then use autosmooth so the smooth shading doesn't effect the sharp edges.

To enable smooth shading: in the pannel of the left, which you bring up by pressing T, click on the smooth option under shading.

To enable autosmooth: In the section on the right with render settings and material click on the tab with a icon of 3 vertices connected.

Tick the autosmooth option.


how can i change a value which is common in all selected objects in one go?

As long as these bones have the same constraint, select them, select Local in the contraint Space dropdown menu, but don't click on it (!!), instead press AltEnter


Create constant length object for manipulation

If you are looking for a mathematically perfect solution that keeps the exact length and volume of the geometry then I don't know how to achieve that. AS far as I know Blender might not even be the right tool for that job.

For a relatively accurate from a visual point of view you may use the usial Array + Curve modifier duo.

Just model a small cylinder-shaped section of your string (or whatever detaild shape you want to have) and add an Array with a fixed count of items, this will ensure the length is kept approximately constant.

On top of it add a Curve modifier, that will deform it so you can controll bending and knots without affecting length too much.

Bending will however affect lenght and the distortions will inevitable change the volume, but visually it will roughly behave as a tring


sculpting vs. proportional editing differences?

Yes, in basic terms they perform the same task.

Proportional editing is a more technical method. You select specific vertices and move them with the surrounding vertices also being moved based on the choice of a preset curve.

While sculpting deforms the vertices in a similar way, the user gets a more artistic approach to what part of the mesh moves. Brush strokes are a much quicker, dynamic way of selecting which vertices get moved.

Additionally, sculpting offers the ability to define the falloff curve or use an image to define how the surrounding vertices are moved, which s not possible with proportial editing. This gives sculpting a way to model shapes on the surface of a mesh much faster than you can do manually. The trade off (particularly with dynamic topology) is you don't have control over the topology, so you can just as quickly get a messy looking mesh.


Best practice and method for transparency with leaves?

Translucent BSDF is physically more acurate in this situation.

Connect it using Mix Shader with Principled BSDF
Use the Fac slider to control the influence
Use Cycles render engine for realistic translucence (Eevee doesn't support it)

If you want to use only Principled BSDF shader, use Transmission + Transmission Roughness. Notice the light scattering isn't as strong.

Subsurface Scattering doesn't directly affect translucency, but it's needed for proper realism. Just bear in mind it's a bit slower.


You could draw a curve with grease pencil(d), making sure it would hold the part that needs to be cut away inside if it was closed, convert it to a curve select it and then the object so the object is active and enter edit mode and just use knife project. You don't need to use grease pencil and could create the curve some other way as well.

Grease pencil smoothing functionality might also be useful:


How can I edit how many vertices are in my object?

I know only one way to adjust face count of a model by sliding Ratio value of Decimate modifier in Collapse mode.


I made a small addon for you, that you can download here: https://github.com/Hilicot/Blender-Rotational-Grid

after installing it, you can tweak the settings in the Matrix Grid tab in the tool menu and press "create grid" while you have your object selected.

you can also modify that grid or delete it (but you always need to have the original object selected before pressing those buttons)


You can do this with an array modifier and a curve modifier.

Similar to this post:

How to avoid objects intersecting eachother

Make 2 pieces, a straight section and the end one, and a curve to control the way the array curves and twists.

Move the main piece so that the object and the curve have their origins on the same spot.

Use an array modifier, set it to use the curve.

Then add a curve modifier, so that the array follows the curve.

In the array modifier you can set Start and End caps. Set the end to use the endcap object.


I agree with @Matt, especially if you are on a laptop. Whether you are on a laptop or a desktop PC, I would check the following settings in Blender. Also, when using GPU rendering in Cycles, make sure to check the settings in the Properties tab -> Performance -> Tiles. By default the two numbers under the "Tiles" settings usually are 64 x 64 (pixels). If you are able to get your Nvidia GT 520 video card to work, try bumping up those numbers to 200 x 80 and see if that helps. The other thing i recommend checking is the "Sampling" menu in the Properties panel. If the final render has a high sample number (i.e. - 800 or above), that can also cause render time to be slow.


I've been trying to run the Quick Smoke simulation

It seems that my computer wasn't able to handle 20fps and I managed to get the Quick Smoke simulation to run at 10fps & even better at 8fps.

I made this adjustment under Frame Rate 'custom' on the bottom right here:


How do the H.264 encoding settings work in blender?

Further down the page you refer to you, under additional information you will find ABR (Average Bit Rate) where you will find the -bitrate, -minrate, -maxrate and -bufsize that correspond to blender's settings.

The bitrate is the target rate (average over the length of video) that you want to achieve. The minimum and maximum define how far from the average it is allowed to deviate.

Video compression works by only updating areas of video that change and compressing those areas. Like jpeg the amount of compression can vary depending on the quality you want in the final image. If high quality compression pushes the bitrate higher than the maximum limit then it needs to lower the quality to stay in the range.


Subsurface Modelling method And Advice (PS4 joystick)

Maybe you should begin with the top face as a blueprint (try to follow the shape as much as possible so that you'll easily add edge loops if needed), then extrude up to give its volume, move the edge loops, etc, like that:

But you can also begin directly in 3D, roughly model the whole shape, then use the knife to bring details and additional edge loops:


You can go to the 3D view menu, and choose viewport render image, which will render any combination of viewport overlays you activate.


Absolutely. As long as you have a good uv-map (minimal, if any overlap), you should be able to pull off a decent bake (in that regard at least).


How do I make 'X-Axis Mirror' available in Pose Mode?

If you want to mirror your animation form the left side to the other side during pose mode you just need to select the whole left side then copy the pose with Ctrl+C.

After that press Ctrl+i to go to your right side and finally press Shift+Ctrl+V to paste the the X flipped pose, that way you'll have a perfect mirror of both side


First off, the forum you linked to was talking about version 2.3x. (If you look at the post's dates it was from 2004!) We are using 2.77 now, a lot has changed.

Back then, and up till 2.4x you could use texture plugins. There is no way to use a .dll texture in blender now.
There is OSL scripting in cycles, so you could recode one if you really want to.

Now a days, textures are used a little differently. See my answer to
How are texture maps imported into Blender? for how to import image textures in cycles, and blender internal.


Eyes And Teeth Going Haywire With Rigify Rig And MakeHuman Model

Select the head bone in Pose Mode, then your mesh with RMB and press Ctrl+Tab. Hit Tab to enter Edit Mode (check the Show Weights in Display panel of the Properties Shelf [N] to see the weights), mark the head vertices (with B or C), then go to Object Data header and assign the 1.000 weight to the head's vertex group.

To solve the issue with eyebrows and eyes select the neck bone in Pose Mode and correct the weight values for each one.


Can I run a Python script step by step in Blender?

Launch blender from a terminal emulator.
Add import pdb; pdb.set_trace() to your code where you wish to start debugging from.
Run your code and you'll be put into the Python debugger, where you can use sEnter to step through the code.

See the pdb documentation for more info on usage. Also for the nicer ipython debugger (features syntax highlighting and tab completion), you can use ipdb.


How do you know poly count or how many triangles are there in your mesh or object?

Shoot, I just found out on another post.
The post was indirectly related to my question, but didn't answer it directly, however, I found out it actually answered my question in the details it provided.
The poly count is shown in the bottom right corner of the screen.


Some mesh-edges in object-mode aren't displayed

This is normal, as you are in wireframe mode. By default not all edges are displayed in wireframe mode.

To display all edges, enable Draw All Edges in Properties > Object > Display:

Or you could switch to solid view by pressing Z.


Select the prism and press P to separate it. Being in Edit Mode add an Array Modifier to the prism and set up the proper relative offset values. Check the Wire and Draw All checkboxes in Display panel of the Object Data header to help you match the prisms with a grid segments properly. Increase the modifier's count number and apply it. Join meshes with Ctrl+J. In Edit Mode select one of the edges as pictured below, go to Select-->Checker Deselect, increase the offset if needed and delete selected edges to cut the holes for prisms. In the end select the whole object with A, then press W-->Remove Doubles. You may also recalculate normals with Ctrl+N.


Whenever i insert a obj file, it's placed somewhere and idk how to get it normal

As far as I know, OBJs are imported relative to their own coordinate systems. So try to set it to (0,0,0) in its own environment before exporting.

Another aproach would be to hit Shift+S > Cursor To Center, and after that Shift+S > Selection To Cursor – after that, your object is centered.


You can use the size property to get the X and Y dimensions of an image:

width, height = bpy.data.images['myImage'].size
# the variables width and height will now contain the pixel size


index out of range for UIList causes panel crash

You simply need to handle the case of an invalid index or an empty list of modifiers.

You could for example test if len(ob.modifiers): ... if there are any, but I would rather catch all bad indices using try ... except IndexError:

import bpy

class OBJECT_PT_modifiers(bpy.types.Panel):
    bl_idname = "OBJECT_PT_modifiers"
    bl_label = "Modifiers"
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "object"

    def draw(self, context):
        layout = self.layout

        rows = 2
        ob = context.object
        idx = ob.modifier_active_index

        try:
            mod = ob.modifiers[idx]
            layout.label("%s (%s)" % (mod.name, mod.type), icon="MODIFIER")
        except IndexError:
            layout.label("no modifier selected")

        row = layout.row()
        row.template_list("UI_UL_list", "modifiers", ob, "modifiers", ob, "modifier_active_index", rows=rows)

def register():
    bpy.utils.register_module(__name__)
    bpy.types.Object.modifier_active_index = bpy.props.IntProperty()

def unregister():
    bpy.utils.unregister_module(__name__)
    del bpy.types.Object.modifier_active_index

if __name__ == "__main__":
    register()

Note that an index of -1 is not considered bad, because it refers to the last item in a list in Python.

You shouldn't use global anywhere, it is certainly not needed. modifier_active_index is globally available for all objects, and you don't need globals inside the draw function to refer to the modifier.

Also note that if you use UI_UL_list, the second argument should be some unique string to prevent collisions with other UI_UL_list that may exist in the panel.

Edit: How to handle (re-)move actions while always showing the panel (even with no modifier)

import bpy

mod_icon_map = {m.identifier: m.icon for m in bpy.types.OBJECT_OT_modifier_add.bl_rna.properties['type'].enum_items}

class OBJECT_OT_modifier_move(bpy.types.Operator): #move active modifier down in stack
    bl_idname = "object.modifier_action"
    bl_label = "Modifier Action"

    action = bpy.props.EnumProperty(
        items=(
            ('UP', "Up", ""),
            ('DOWN', "Down", ""),
            ('REMOVE', "Remove", ""),
        )
    )

    def invoke(self, context, event):

        ob = context.object
        idx = ob.modifier_active_index
        try:
            mod = ob.modifiers[idx]
        except IndexError:
            pass
        else:
            if self.action == 'DOWN' and idx < len(ob.modifiers) - 1:
                if bpy.ops.object.modifier_move_down(modifier=mod.name) == {'FINISHED'}:
                    ob.modifier_active_index += 1
            elif self.action == 'UP' and idx >= 1:
                if bpy.ops.object.modifier_move_up(modifier=mod.name) == {'FINISHED'}:
                    ob.modifier_active_index -= 1
            elif self.action == 'REMOVE':
                bpy.ops.object.modifier_remove(modifier=mod.name)
                if idx >= 1:
                    ob.modifier_active_index -= 1

        return {"FINISHED"}

class MODIFIER_UL_listtype(bpy.types.UIList): #custom UIList type for modifiers

    def draw_item(self, context, layout, data, item, active_data, active_propname, index):

        modifier = item

        if self.layout_type in {'DEFAULT', 'COMPACT'}:

            layout.prop(modifier, "name", text="", emboss=False, icon=mod_icon_map[modifier.type])

            icon = 'RESTRICT_RENDER_OFF' if item.show_render else 'RESTRICT_RENDER_ON'
            layout.prop(item, "show_render", text="", icon=icon, emboss=False)

            icon = 'RESTRICT_VIEW_OFF' if item.show_viewport else 'RESTRICT_VIEW_ON'
            layout.prop(item, "show_viewport", text="", icon=icon, emboss=False)

            icon = 'EDITMODE_HLT' if item.show_in_editmode else 'OBJECT_DATAMODE'
            layout.prop(item, "show_in_editmode", text="", icon=icon, emboss=False)

        elif self.layout_type in {'GRID'}:
            layout.alignment = 'CENTER'
            layout.label("", icon=mod_icon_map[modifier.type])

class OBJECT_PT_Modifiers(bpy.types.Panel): #panel draw class
    """Creates a Panel in the Object properties window"""
    bl_label = "Modifiers"
    bl_idname = "OBJECT_PT_Modifiers"
    bl_space_type = 'PROPERTIES'
    bl_region_type = 'WINDOW'
    bl_context = "object"

    def draw(self, context):
        layout = self.layout

        ob = bpy.context.object
        rows = 2

        row = layout.row()
        row.template_list("MODIFIER_UL_listtype", "", ob, "modifiers", ob, "modifier_active_index", rows=rows)
        col = row.column(align=True)
        col.operator("object.modifier_add", icon='ZOOMIN', text="")
        col.operator("object.modifier_action", icon='ZOOMOUT', text="").action = 'REMOVE'
        col.separator()
        col.operator("object.modifier_action", icon='TRIA_UP', text="").action = 'UP'
        col.operator("object.modifier_action", icon='TRIA_DOWN', text="").action = 'DOWN'

def register():
    bpy.utils.register_module(__name__)
    bpy.types.Object.modifier_active_index = bpy.props.IntProperty()

def unregister():
    bpy.utils.unregister_module(__name__)
    del bpy.types.Object.modifier_active_index

if __name__ == "__main__":
    register()

Remarks:

Creating a lookup dict is way better for icons
Move up, move down and remove actions can be handled in a single operator
Don't do ob.modifiers[ob.modifier_active_index] anywhere without range change or try/except construct
Check the result of modifier_move_up() and modifier_move_down(), as it may fail (MultiRes can't be below a non-deforming modifier)
All classes can be (un-)registered at once with (un-)register_module()
Use consistent indentation (4 spaces for every level)


RGB node

It's the usual RGB node you can find under the "Input" submenu, but the owner of the file is using a different Color Picker Type.

You can change the type from the User Preferences Panel.

The type in the provided images is

Square (SV+H)


Boolean Modifier acts like the object has no volume

I noticed the scale of the two objects are different so I'm assuming you scaled one of them.

If you resized the cube or cylinder try using 'apply object transform' and mark the scale and rotation. Probably even if you see the object as smaller or bigger, Blender doesn't take into account that the object has a new volume.

Most of the times it will fix things so that afterwards you can successfully apply the Boolean modifier.


How Can I Create A Specific Arc On Face?

select the point

If you want accurate:

scale it to square first

width = 0.5　this is a 1/4 circle with 0.5 radius

scale back to previous rato

If you want special mathematical curve, you can add a Curve obj and convert to mesh to do the Boolean or find some addon.


Dissolve slice
Use a Boolean modifier with and animated intersection object:

Chop slice

Add a Boolean modifier to your mesh and set the target boolean object.
Shift+select the boolean object and Object | Parent | Object (or Ctrl+P, o).

You can now use the boolean object to move the mesh without affecting the boolean operation.

With them both still selected Object | Duplicate Linked (or Alt+D), cancel the translation (Esc) and change the boolean operation type of the new mesh to Difference.

You should now have two half's that can be moved separately.

Finally create a shape key on one of the boolean objects that you'll animate to enable/place the boolean/chop.


Volumetric lighting in Eevee goes through mesh

In eevee go to your volumetrics tab and crank up samples and light clamp.

BEFORE:

AFTER:


How do I connect the Vincent rig to Vincent?

On the header menu. If you still can't find it, please show a screenshot of your 3D view.


How to Add "px" as Unit to a Number Input?

The output_size should be an IntProperty that is declared with a subtype set to "PIXEL".

bpy.props.IntProperty(subtype="PIXEL")

bl_info = {
    "name": "Subtype example",
    "author": "Robert Guetzkow",
    "version": (1, 0),
    "blender": (2, 80, 0),
    "location": "View3D > Sidebar > Example tab",
    "description": "Subtype example",
    "warning": "",
    "wiki_url": "",
    "category": "3D View"}

import bpy

class ExampleSettings(bpy.types.PropertyGroup):
    output_size: bpy.props.IntProperty(description="Some elaborate description", default=1024, subtype="PIXEL")

class EXAMPLE_PT_panel(bpy.types.Panel):
    bl_label = "Panel"
    bl_category = "Example tab"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

    def draw(self, context):
        layout = self.layout
        layout.prop(context.scene.example_settings, "output_size", text="Output size")

classes = (ExampleSettings, EXAMPLE_PT_panel)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)
    bpy.types.Scene.example_settings = bpy.props.PointerProperty(type=ExampleSettings)

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

if __name__ == "__main__":
    register()


How many layers can I make in Blender 2.8

There are no more layers in Blender 2.80. Layers have been replaced by Collections
I have no idea, how many of them you can create (the limit might even be your hardware here), but it is basically as many, as you wish.

If you create a new text block in the Text editor, type:

import bpy

for i in range(1,1000):
    C = bpy.data.collections.new("Collection"+str(i) )
    bpy.context.scene.collection.children.link(C)

and then hit Run Script, it will create 1000 empty collections. If you need that many, or if you start to worry about collection amount limitations chances are you are doing something very wrong. Don't worry about them.


How to enable undo for operators in sculpt mode?

As a variant of a solution. I could suggest adding history before all the code. But I'm pretty sure this is a bug in Blender's sculpt mode.
if context.mode != 'OBJECT':
    bpy.ops.ed.undo_push()


Animation node set growpoint of instances

It worked out by applying both SCALE and LOCATION (object) before setting the origin point and the number of instances.


After I have removed vertices, error says "loop in parent"

I did not look at .blend file, but I will explain Loop in parents. It means, so you are trying to make infinite loop of parents(which would cause .blend to crash imediately, so Blender has blocked it). So, if you have set your character as Parent of your Bones, you can't set bones as paernt to your character, otherwise, the parentation principal will be infinite loop. YOu can try selecting Bones and doing ALT + P and than Click with LMB on Clear Parent. Than do the same with char(optional). After that parent char to Bones. Hope this helps.


How to import .dmx files (SFM sessions) into Blender

I am a complete noob when it comes to this, but I have found a bunch of videos and written a short list on how to get models from steam source filmmaker to blender with textures. This may or may not be helpful to you. The Youtube video I linked does not explain everything, but he gets you set up with most of the programs. I was able to get Lifeline from Apex Legends character model imported with bones, but I had to retexture myself. These are the personal notes I made.

https://www.youtube.com/watch?v=MXd_1aKBTF8

Moving Character Models from Steam to Blender
Programs Needed - Blender, VTFEdit, Crowbar, Steam - Join Source Filmmaker

Go to source Filmmaker on Steam browser
Don't open it. Type in search bar for model
Open crowbar and click download tab
Copy link on steam and paste in Item ID or link bar
Change output to folder name
Click download
Click on Decompile tab
Browse for MDL file in the created folder from step 5
Choose an output to folder
Click decompile
Once in blender, click import smd
Use VTFEdit for textures
Click on tools
Convert folder button in order to convert vmt files to png files
Use blender shader editor to apply textures

Image Texture => Color Ramp and Principled Shader
Color Ramp => Bump
Bump => Displacement on Material Output Node
Principled Shader => Surface on Material Output Node


objects that can be modeled using only object mode

Since this question is very unlike Blender.SE I am going to use a tool from other sites. Note, that this answer assumes, that the students have a basic interest and intrinsic motivation.
Frame Challenge
I think there are two dangerous assumptions in your question.

Students should only move on from object mode, when are comfortable using it.
You (the teacher) have to provide the content.

1. Show them a limited, but varying range of tools.
Moving solids around is too tedious to practice, untill you are a master of moving solids around.
Even for the very first lesson, I would include.

Materials: Just a single color, no nodes, no specular.
Edit Mode: Just the basic options in edit mode: GRS. They are the same as in object mode, but allow me to modify my starting blocks. Shearing a cube in object mode is complicated but very simple in edit mode.

Only teach the most basic interaction with an aspect. Students who wish to continue without fancy materials won't waste their time. Students are into complex materials will figure it out on their own or can request a 1 on 1. Students who want more faces in edit mode will be motivated to do their own research.
2. Let the students provide the content.
You, as the teacher, can set the task. It can simply be "modeling". It can also have a theme, like summer, space, vegetables ...
Anyone, who is willing to invest himself, can provide content. The students themselves will have to figure out, what they are able to model and what they want to include in their scene. Dictating their every move will only create an army of robots. Provide help with the tools but let them create their own content.
There are numerous games/activities to get going on ideas of what you want to create, but that is not in the scope of this answer.
Back to the question.

Anything
Using only solids, you can create anything. Hollow objects seems hard, but who knows what crazy solutions a student could come up with. Give them an example and set some constraints (time, content), but let individuals figure out their individual interests by themselves.
The following scene was create by only duplicating solids. I didn't even use snapping, I just aligned the view carefully. (Setting them up in a scene with an HDRI could be nice though.)


What is the expected format fo scripted drivers?

It expects to not use direct data path but to use a variable like this:

The reason is for update purposes. With variable the driver knows what his dependencies are thus it knows what value to watch. Watching the whole bpy.data for changes is not efficient.

Here are examples what is allowed in the Expr. field. You can use number expressions with driver variables plus some build-in functions like sin, cos, min, max, frame, etc.(to see all of them put bpy.app.driver_namespace[' into console and hit Ctrl+Space)

You can also use custom python functions, where you can access bpy.data, but you need to add such functions to driver namespace first:

import bpy

def mazda_loc_y_func():
    return bpy.data.objects['Mazda'].location.y

# add function to driver_namespace
bpy.app.driver_namespace['mazdaY'] = mazda_loc_y_func

In the Expr. field you just type mazdaY(). Without the driver variable the driver might not update nicely though.


"Is Reflection Ray" works for Eevee (one of the few that works from "Light Path").

If some other settings were to be checked:


The boolProperty needs to be registered to a particular type.  In the example below I've associated it with a camera (data) type.

bpy.types.Camera.xxx = BoolProperty()

To assign a property to an Object type would use

bpy.types.Object.xxxx = BoolProperty()

Then all objects in the blend file will have the xxxx property.  Use bpy.types.Scene for scenes.. etc.

I used code from https://blender.stackexchange.com/a/40793/15543 for the keymap, it's mapped to Alt-E

Restrict bl_idnames to lowercase, no spaces, only one period . for example "object_mode.xxxx_yyyy" not "Object Mode.xxxx_yyyy"

import bpy
from bpy.types import Menu

from bpy.props import BoolProperty

class VIEW3D_PIE_template(Menu):
    # label is displayed at the center of the pie menu.
    bl_label = "Macbook_Controller"
    bl_idname = "object_mode.mc_pie_menu"

    def draw(self, context):
        layout = self.layout
        # get the camera, use a poll method to check no cam
        scene = context.scene
        camera = scene.camera.data
        pie = layout.menu_pie()

        pie.prop(camera, "iSight_Camera_Indicator", text="iSight Camera Indicator Toggle")

def register():
    # register the property to a camera (data) type
    bpy.types.Camera.iSight_Camera_Indicator = BoolProperty(
                    name = "iSight Camera Indicator Toggle",
                    description = "Turns the iSight Camera Indicator ON and OFF",
                    default = False
                                            )
    bpy.utils.register_class(VIEW3D_PIE_template)

    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name = "Window",space_type='EMPTY', region_type='WINDOW')
    kmi = km.keymap_items.new("wm.call_menu_pie", type = "E", alt=True, value = "PRESS")
    kmi.properties.name = "object_mode.mc_pie_menu"

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

if __name__ == "__main__":
    register()
    bpy.ops.wm.call_menu_pie(name="object_mode.mc_pie_menu")


Animation nodes - animate object attribute/transform with Object ID Key and Sound Evaluation

Your example index list is $(10,14,3,\dots)$, which means you want the 10th object to scale based on the first frequency band, the 14th object to scale based on the second frequency band, the 3rd object to scale based on the third frequency band and so on. So, if we left the sound data untouched and reordered the object list such that the first element becomes the 10th object, the second element becomes the 14th object and so on, we will get the desired effect. The same reordering should be done to the object's locations. This reordering is easily achieved by getting the objects and their locations at the ID indices:


Since the question was on particles here's my take on it.

Start with a cylinder.

Subdivide it a number of times but make it somehow irregular with a fractal:

Then create some cuboid object (I put it on a different layer so that is out of the way...)

Then on the cylinder create a particle system.

Make the start and end frame 1 (so that all of particles are present on frame 1)

Use the cuboid object as the render object.

For rotation select the axis that makes sense depending on how your object is placed (in this case, the object X axis works for me), and set the random rotation to Zero.

Then give the render object some variation on size.

Optionally you can disable the emitter so that only the cuboids show on the render and not the original cylinder.

Giving the particles a bit of randomness might make them more interesting.


Video with masked objects that need shadows

They should, but there are so many factors to take into consideration, it's not a good idea to rely on only one shot. If you can pinpoint where the camera is changing, make a different scene or use a different camera for those clips and lace them together in compositing, or simply do your best with moving the shadow plane around to match where it should be going, and see if it's good enough for your purposes.


Just run your setup back through a Diffuse BSDF before connecting it to the Material output.


how can i remove the current UV image texture off a mesh?

go into the texture panel with the object selected, and find the texture with the image you want to remove, then click the X on the top right and the texture/image will be removed from the object


Do the following in any order, it doesn't matter.
Select Rotate tool from toolbar.

Enter pose mode.

Set your Transformation orientation to local. Set your selection pivots to be individual origins as rotating a group of bones doesn't usually make much sense with bones. Now you can rotate one or more bones and those will each rotate from their own pivot. You can curl fingers for example.

If you don't like gizmos for some reason, you could also select some bones, then press R then X after it, and then move your mouse to rotate your bones along x-axis. This of course works for Y an Z-axis too.


Compute device list not showing card name when using OpenCL

AMD GPUs appear in blender by the codename of the GPU

Iceland is the name of the processor inside your AMD card. Apparently they name
their cards with the names of volcanic islands for that series of cards...

Choose that one and good luck.

AMD cards have a long list of problems with cycles. Some of the limitations for OpenCL rendering are listed on the blender manual: https://docs.blender.org/manual/en/dev/render/cycles/features.html

As an alternative, you might want to try other render engines, as detailed on this link: Alternative Render engines can I use instead of Cycles for AMD Radeon GPUs?


I think the Shear tool should work:

Select all the vertices of your twisted face.
Press S Y 0 so that they all collapse on the same Y axis.
Switch to the right orthographic view, press Shift ctrl alt S and move your mouse to change the shear angle until the angle your need (press -1 for a 45° angle).
It should be good.


BGE mouse over doesn't work. How to fix it?

Yes the object can not be set to No Collision, Occluder and Sensor also do not work.

The mouse sensor will detect any static, dynamic, rigid body, soft body, and character objects.

To make testing easier enable the mouse pointer in the game.

Then set up just a Mouse sensor, set to Mouse Over, and some actuator like Visibility, or End Object just to test the mouse interaction. Put that on the default cube.


Can I learn blender and in future work in any animation studio, without needed to learn script language?

Learning to script is totally unnecessary. As an animator, you need to know how to animate. You will be hired as an animator for your skills in animation, and most of the functions are already automated in programs like Blender. If you have an idea with the animation but it's impossible to do without scripts, you have a high chance to find a tutorial for your requirements, or just asking help from people who know their stuff can definitely get it solved for you.


How do I create slices of a topographical mesh?

Create a plane that is larger than your terrain and create an array in the Z direction. Add a Boolean modifier to the terrain - the plane is used as a cutter. Visually you can create the layers by then adding a solidify modifier...

...but you asked about creating curves so - apply the Boolean and then in Edit mode press P and choose by loose parts. Back in Object mode while all the objects are still selected press ALTC and convert your meshes to curves.


How do set an angular velocity to zero with python bge?

It is not a bug. It is a feature ;).

Sometimes it is an annoying feature.

I tried various methods to get zero velocity.

A) parent/unparent ... restores the previous velocity.

B) disable/enable physics ... restores the previous velocity.

C) I found one (not so nice) way by experimenting:

def stop(owner):
    owner.setLinearVelocity([0,0,1])
    force = [0,0,-50.174276 * owner.mass]
    owner.applyForce(force)

It shows zero velocity with even 24 digits. I can't tell if that is really the case, but it looks like that.

Be aware, this velocity appears within the next frame as apply frame will not effect the object immediately (0,0,1) at frame t and (0,0,0) at frame t+1. Be aware this force counters gravity (9,8) for this one frame too.

[edit]
With taking gravity into account I get this:

def stop(owner):
    owner.setLinearVelocity([0,0,1])
    gravity = owner.scene.gravity
    force = -gravity.copy()
    force.z = (-59.974275 - (gravity.z)) * owner.mass
    owner.applyForce(force)

The frame rate has some influence too (I would expect -60 not -59.974275). But I can't find a formula on that.

Maybe it helps


This works in Blender 2.74

Select your mesh, enter edit mode, and select only the faces that you want to unwrap. Now press U and select the type of unwrap you want to use:

Notice that when I select other faces, the only visible selection is a vertice on the lower left, while an unwrapped face becomes fully visible when selected in the viewport. Basically, Blender automatically unwraps the selected part of the mesh, and then sends all other vertices to 0, 0 as there is no coordinate information to display for them. However they do still display a color:

What you can do is to assign a different material to the not unwrapped vertices so that you can control the color easily. Select all the unwrapped faces and press Ctrl+I to invert the selection. Now go to the materials panel and make a new material, and press the Assign button:


How to make a scattered dirt effect with an image texture?

The problem you have is that every spot is either a rock texture or a dirt texture. What you need is a way to blend between the two.

The way to do that is to use a mix shader with an image texture plugged into the mix

The image texture should be a grayscale image - in the areas where it is white you will get 100% rock texture, in the areas where it is black, you will get 100% dirt. Where it is in between, you will get a smooth blend of the two.


Problem with object made from joining objects that both had mirror modifiers

You merged objects mirrored but not moddeled on the same side. You can see that by deactivating the visibility of the modified topo.

to fix that, apply the mirror (in object mode, not edit)

In front ortho view (NumPad1 front view, NumPad5 to switch perspective/ortho view) Box select B one side.

Delete selected vertices with X

add the mirror modifier that should work correctly


If you set the image as a brush texture and use Stencil as the mapping option, you can drag the stencil image in the viewport to line it up with rmb, rotate with ctrl-rmb, scale with shift-rmb and paint through it to the iamge texture on the object.


UV coordinates inaccurate, showing nearby pixels when not supposed to

This is not a bug, it is in the way UV-Mapping to a surface works. If the surfaces are at an angle, a certain amount of edge blending is going to occur. This can lead to unwanted seep-through of other parts of the texture.

It appears that the bleed in your texture is too small. Bleed is the amount of overfill that each island gets added on its edges. This in turn is causing the neighboring textures to show through. To get around this, you need to increase the spacing between the UV-islands.


Blender Python Advanced Panel in 3d Space

You have to draw the interface yourself in a modal operator. See the modal operator template in the text editor, and use the bgl module to do the drawing.


From *3ds-file Imported objects have no extensiveness and are all locaed in the origin

Basically it is a problem with scale and geometry to origin offset and so its easy to fix:

Start with a new blender scene ctrl + N and move the camera, cube and pointlight to another layer. In your scene properties you could set units to metric if you want.
In your 3D View go to top ortho view with numpad 7+5 and toggle on the 3D view properties panel with N.

Import the first of your .3ds files and set "Size Constraint" to 1000 (maximum) in the import options (down left).
After import just hit home (View > View All) and you should see your objects. Problem is they are very far away from the center and you are not able to view both the center and your objects at the same time with the default viewport clipping values.

In fact your objects are several million blender units away from the center while their origins are at the center. This is a bit impractical to work with ...

To fix this I would do this:

After importing all .3ds files as described above just hit home to bring them all to view. Place the 3d cursor where you want to have your new coordinate center. Select all objects and set their origins to the 3d cursor. Next shift + C to center cursor and shift + S >Selection to Cursor. Finally home again and all should be fine.


How to get realistic coloring on quick smoke/fire in blender?

This is the node setup I used for this scene. You don't have to copy the exact colors I used mess with it to get the right color.

Also I recommend Blender Guru's camp fire tutorial.


How can I render a composition(s) from the command line?

there is already a previous question about creating render queues.

The Blender Manual also has a section about command line rendering if there are any specific commands you need to add.


how do delete individual (dust) emitter particle that passes in front of the camera?

Solution- @3DSinghVFX Genius! it worked. Here's what I did. I went four frames before the particle passed in front of the camera and placed a simple plane in the path of the particle. I turned off all ray visibility in the cycles settings under the object tab for the plane and added collision physics to it and enabled 'kill particles'. I then went to the particle system and freed the bake (from the 4 frames ahead to add a small buffer but not so far as to risk the other particles i want to keep from changing) and stepped one frame at a time up to the problem frame and.... PERFECT! particle gone.


Need a faster way to loop all frames and set keyframing data on properties?

No need to change frame.

keyframe_insert(data_path, index=-1, frame=bpy.context.scene.frame_current, group="")

  frame (float) – The frame on which the keyframe is inserted,
  defaulting to the current frame.
  .

Remove the frame set (which also AFAIK updates scene) and set the frame implicitly.

ob.keyframe_insert(data_path='["%s"]' % shapeName, frame=i)


If i understood is that you need the wave to be moved.

Add a Empty

In the Displacement Modifier tab -> Texture Coordinator -> Object

Below in object select empty. Select the axis which you want to move in my case its Y axis

Select the empty and move it.

You get this result


Found it - the problem is a keyframe sitting in your timeline. If you delete it, the objects transforms become "unlocked" and your changes will stay. See images below:


Getting the real locations of curve point of animated curves with Animation Nodes?

what curve do you mean?
There are at least two ways:
import gist to sverchok with copy this address and pressing import on sverchok import panel
https://gist.github.com/213c384b46a4a961f0d03300175ce6af


Did you import the dae file?  I just took a look and it has a lot of duplicate vertices.  Select the model in object mode.  Go into edit mode.  Select all.  Then type 'm' for the merge menu and select 'by distance'.  That cleared up the seams for me.


how to texturize correctly an interior using ONLY the reference image with which it has been created

That is not possible.
(in the context of a result of practical accuracy or quality)
The image you have is the result of complex light interactions with various surfaces. One image simply does not contain all the data required to reconstruct the scene at this level. Think of it this way - if you add 15 and 45, you get 60, however if I only tell you the result, there is no way for you to know it was 15 and 45 I added together, it could be 30 and 30 for example or any other numbers that make 60 when you add them together. Your image is exactly the same way only a result. It is possible to interpret the image and then reconstruct the scene using artistic interpretation, however that will require a lot of experience, guesses and additional images for texturing as well. If you have a look at the floor for example, since we are viewing it from an angle we are seeing a lot of specular reflection instead of the diffuse color of the floor - many kinds of dark brown floor could look like that from this angle. It would also be impossible to recreate the painting without even seeing it as well as many other objects.
It seems the path you are trying to take does not lead anywhere. The logical thing to do would be to reevaluate your broader situation, context and goals and see if what you are trying to do might be possible some other way.


Model gets squished because of Spline IK

This is just a workaround as this behaviour seems more like a bug and this solution can break the position of the controllers depending on your setup, but you can set the Spline IK constrain on a copy of the bone chain and use it as an intermediary mechanical rig. I'm not at home right now so I'll upload later. But the setup is simple:

Make a copy of the chain that receives the Spline IK.
Set it up so it receives the Spline IK instead.
Reparent or reconstrain the Control Rig to the new chain.
Remove the Spline IK constrain from the original one.
Add copy rotation constraints (and an optional copy location constrain to the root of the chain)  from the new bone chain to the original one.

Now your chain receives the rotations from your controllers but preserve their scales.


Is it possible to move a logic brick/re-order the logic stack?

Minimize the logic brick (the down pointing arrow in the top left corner), then click on the up or down arrows to move it through the stack.


How showing vertex paint in object mode blender 2.8

When in Solid Shading Mode, go to the config panel found in the top right corner of the viewport and for color select Vertex Colors where probably Material is currently selected


There are multiple options:

you can animate the nodes in the material itself to mix multiple textures (animate factor of Color > Mix node):

put all your textures into a single image (image atlas). Then you can use the UV Warp modifier to translate the UV coordinates across the image atlas.

To control the modifier:

create an armature rig and animate the bone positions (as shown in this UV Warp tutorial)
create an integer custom property and use it to drive the bone/empty location in single axis. The image atlas should be an image strip with equally spaced images in this case. Then you keyframe the integer property that switches all the textures.


Black patches in glass when using cycles render engine

This is caused by sharp, low poly geometry with smooth shading (you'll notice that the problem goes away with flat shading). It's true that bounces can also cause dark spots (as mentioned in the other answers), but I think this is the issue in your case.

There a couple things you can try:

Adding more geometry (works well for curved objects)

No subsurf:

Subsurf level 2:

Using an edge split modifier (works better on objects with sharp edges)

Without edge split:

With edge split:


How do I make a transparent material display in the 3D view?

In Cycles/Eevee and 2.8+ you need to set the Blend Mode to Alpha Blend in the Material Settings:

Then set the viewport render level to Material or Rendered.

In older versions of blender:
Enable Transparency in Properties > Object > Display:


Is there a way to restrict Brownian Motion to a specific axis?

This solution assumes that the motion is introduced by the Force Fields on planes. The emitter only has some Normal value to kick start the motion. Gravity is turned off.

You could use a Plane object set to a Harmonic Field (shape: Surface) with strength 4, rest length 0.2. I placed mine above the emitter plane.

To get a random pattern you could vary the emission of particles by using a texture. To get randomness in the oscillation you could use 2 opposing planes with Lennard Jones effect type. Using large values, they will juggle particles between themselves. Any that are spilled come to rest.

The plane at the bottom is the emitter.


"Align rotation with snapping target" not working properly

I believe the problem is that you are doing this in Edit Mode, all within a single object. Instead you should be doing this in Object Mode, and the cube should be a separate object from the surface you want to align it to.

With all the vertices of the cube selected, press P to separate it into its own mesh object. Then try again from Object Mode.


Can blender be used to re-target animations to other rigs?

An action can be assigned to another object in the action editor. This only works for armatures if the bones have matching names.

For more difficult re-targeting just enable the Motion Capture Tools addon that is included with blender. The addon's wiki page includes links to the manual and video tutorials for using it.

  At the heart of the system, is the retargeting tool, which allows artists to transfer animations from the imported mocap armature to their own rig.


Making panel gaps without adding edge-loops

Boolean Modifier is actually a good tool for this specific purpose.

But it can clash with topology, creating tris and n-gons.
Optimize your topology flow to better match with the Boolean shape, and it should work.

Example of Boolean on a 'friendly' topology (Just a subdivided plane).

Boolean on a 'clashing' topology causing tris and ngons.


How to use the paint tool on a Collada (.dae) file?

There are a couple of steps that can be taken to find the problem, as well as make the painting work easier.

Ensure you have the mesh you want to paint on selected. From the screenshots above it appears the plane is made of a number of different objects. You will need to have only the main fuselage/wind object selected to be able to paint on it. In the second screenshot, you have all of the objects selected. Texture paint will only apply to the active object (the last selected one) so you can't paint on a group of objects at the same time. It will also be helpful to isolate the object you are painting on in the view (although this may be personal preference) which you can do with the / key on the numberpad or with Shift+H. This will make it easier to see what you are painting, as well as lighten the load on the viewport in the case of slow painting.
Make sure the object has a UV map. It looks like you tried to add UVs to your object, but since they are all selected, you may want to ensure that the main mesh has a UV map suitable for painting. If you open the UV image editor with the main object selected and in edit mode, you will be able to tell if the plane has been unwrapped properly.
It appears that the plane already has a texture applied, so it would probably be best to add another paint slot or another texture so that you don't permanently damage the textures that are there already.

As mentioned above in the comments, once a file is imported it becomes the same as any other blender object/file. Therefore all standard blender procedures will work with your object.


How to avoid gap after merging two objects

Left White Mesh. A Cube with loop cuts and one face [extruded] in the z direction.  Thus having the edges you might need to control bevel operation.  Next 2nd White Mesh Selected. Edges selected and the bevel operator used.   These meshes are intended as crude facsimiles of yours.
At this time we think having a fresh start is easier than [join] operator.  Or at least equivalent.
Possible option. 3rd from left Blue image. Faces selected and [Face Dissolve] operator used for a ngon, on both sides. Yellow image on right. Inset faces.


What is branched path tracing and how is it useful?

The Branched path integrator is not new, it was renamed from the Non-Progressive integrator in 2.69.
From the manual:

  The branched path tracing integrator (formerly called non-progressive
  integrator) is similar, but at the first hit it will split the path
  for different surface components and will take all lights into account
  for shading instead of just one. This makes each sample slower, but
  will reduce noise, especially in scenes dominated by direct or
  one-bounce lighting. To get the same number of diffuse samples as in
  the path tracing integrator, note that e.g. 250 path tracing samples =
  10 AA samples x 25 diffuse samples. The Sampling panel shows this
  total number of samples.

To visualize how this works, the Progressive integrator simulates one path (or ray) per sample:

The Branched path integrator splits the ray, sampling multiple directions as well as multiple components of the material (e.g. glossy, diffuse, etc) in one sample:

This is helpful because it takes into account light from multiple directions as opposed to only one, as well as giving more control over how different shaders are sampled. (this also helps reduce fireflies, see What is the Reason Cycles Creates Incorrectly Colored/Firefly Artifact Pixels?)

There is also a nice guide to using the Branched Path integrator with some comparisons written by Tomas Dinges.


You need to set the Inflow Velocity. On its own (with no velocity) the Inflow only adds fluid to the domain within the Inflow volume if there is actually space to place it - ie, if the fluid has moved away to make space for some more fluid. Gravity does not act on the fluid in the Inflow and since you have no Inflow Velocity the liquid stays where it is and only those drops that break away from the surface tension will fall. Simply give it a velocity (eg, Z = -1) to allow it to flow away from the Inflow.


So, I am back with another Mtree answer, I guess.
I will tell you my way of doing it, may not be the best one.
What I do, is I first join the leaves with the trunk.
How?
Well, First, I take the leaves and in edit mode, I assign all their vertices to a single Vertex group. Why I do this? I will answer in a moment.
Then, I join the leaves object to the trunk (Ctrl + J). You will see that the leaves are gone. But why? Well, the leaves object is just vertices, emitting hair. So, by joining them in the trunk, they lose their modifiers. And particle systems are modifiers, so now the particle system is gone. That's why, I go to the particle system settings, add a new particle system, from the drop down menu I choose "leaf"(that's the one that was on the leaves object) and then, down there, at Vertex group section, I set the density to be that one group I created before.
Now, I can add the hair system on the terrain object. If a hair instance object has his own hair, it will  be displayed, but only is its from type "Path"(default streams of hair), it will not if its an object. So, that's why, now I convert the trees into meshes(before that I hide the Leaf particle system so my pc doesn't crash). So, now its working! But, there is one thing you will notice- if the hair system on the terrain had the trees smaller, than their original size, they will look like bushes- because the leaves didn't change in size. So, now we have to it. We go to the particle system of the plane and we see what is the scale of the instance object- if it was 1:1, it will be exactly 0.25. So, if yours is smaller/bigger, we need to find how much. If we divide the 1:1 scale(.25) by the current scale(lets say its .05), we get 5. So, this means that the trees are 5 times smaller. If you get a value of, say .5, that means that you actually scaled them up(in the case of .5 its twice bigger). So, now we have to change the scale of the leaves with that ratio. So, if we get that the trees are 5 times smaller, then we also scale the leaves down 5 times. We do this from the hair particle system settings, same as from where we got the tree scale.
And now, you should be set.


How do I get my screencast keys to stay by my world axes when I open & close my Tools panel?

I was slightely confused by your question, since you didnt mention that you are using non-default settings.

Easy solution:

Disable "Region Overlap" in "User Preferences - System"

Fix:

If you want to use "Region Overlap" here is a small hackish patch to space_view3d_screencast_keys.py that should roughly do what you want:

def getDisplayLocation(context):
    scene   = context.scene
    mouse_size = scene.screencast_keys_mouse_size

    tool = context.area.regions[1] #coughs.. we just assume its there
    w = 0
    if bpy.context.user_preferences.system.use_region_overlap:
        w = tool.width

    pos_x = int( (context.region.width  - mouse_size * MOUSE_RATIO) * \
        scene.screencast_keys_pos_x / 100 + w)
    pos_y = int( (context.region.height - mouse_size) *
        scene.screencast_keys_pos_y / 100)

    return(pos_x, pos_y)

Whole file is here: space_view3d_screencast_keys.py

Just find your scripts/addons folder, move the old file and place this one there.

Slightly safer might be to query for the tools panel but it comes with some overhead:

w = 0
for region in context.area.regions:
    if region.type == 'TOOLS' and bpy.context.user_preferences.system.use_region_overlap:
        w = region.width
        break


I think it is not necessary to combine these two models in the first place unless there is a specific reason why you would not model them separate.

Assuming there is a reason, I would do the following:

Start with a cube
Add and apply subdivision surface modifier level two
Shift-Alt-S + 1-Key in edit-mode to make the resulting shape a sphere
Shape the model according to you needs by insetting and extruding the corresponding faces.
Add subdivision surface modifier but don't apply this time unless you want to add even more detail the current topology does not cover.


In the IK constraint, disable Rotation, give it a Pole Angle of about 6,5° and it seems to work. Also, don’t forget to disable the Deform option of the IK controlers and targets.


how can I share variables between glsl and python in the bge?

to my surprise the bge keeps glsl functions as strings until they're in use, but for some reason you can't use replace on them. Therefore if you want to share memory between a glsl shader and the bge you can do something like this below. worked great for me anyway.

for i in range(257):
    f = """
        varying vec4 maps[256];
        void main()
       {
          gl_FragColor = maps[100];//this is not valid because i doesn't exist here.
       }
    """
    f=list(f)
    a=str(i)

    f[100:103]=a

    f="".join(f)
    print('verify:',f[100],f[101],f[102])

    FragmentShaders.append(f)


Albeit the somewhat vague description of your problem, let's give it a try...

Creating low poly models as shown in the above image require a little more polygons to start with. The more data Blender has to work with, the better the result.

Let's start with a nice terrain (in my case done with the ANT Landscape addon) that has a decent amount of geometry. My model has 16k faces.

Now go to Properties Window - Modifiers - Add Modifier - Decimate

In the Decimate modifier's settings chose "collapse", check "triangulate" and lower the ratio until you have the desired effect.

This is what your model should look like (reduced to 3k faces).


How would I add dots to the texture on a 3d object?

I like your way of thinking, but the procedural texture you picked is meant to be used on a 2-dimensional plane. The z-scale isn't being touched at all by the other nodes.

While i cannot give you a setup for a procedural texure, why not create a small .jpg or .png and then scale up the UV map? You may have to mark the seams manually to get it lined up perfectly though. If you're using Smart UV, make sure "Stretch to UV Bounds" is deselected to not mess up the aspect ratio.


How do I make a transparent brick texture?

"Fac" output it is alpha value. Connect it to Alpha input

Note, that if you are using EEVEE, you should also select transparency mode (Blend mode) in material settings:


How to show expected remaining render time

Blender does not have the function to show complete animation render time. Best option is average render time multiplied by remaining frames. It should be noted that render time changes according to what is visible on screen. Its actually quite hard to know ahead of time how much time is needed per frame and it can also be affected by other processes other than Blender running on the computer.


Select the emitter object and in the smoke physics tab turn up the Sample Sub-steps. That may help.
What I did when I was experiencing this issue is select the domain and in the domain physics tab under 'Field Weights' I turned off every field except for the one in my scene (which was only a turbulence field that was parented to the emitter object)
Hope this helps. :-)


Python API: Changing the order of shapekeys quickly

Campbell said me on IRC that there is currently no other solution :

  this needs to be done at a C/RNA level AFAICS.

  RNA collections need to have a sort callback which Python can use


Several shape keys blocking mesh face trasformation?

You probably enabled the option which allows you to see the applied shapekey in Edit Mode.

Please set the shapekey value up to 1, and then edit the mesh or just disable this option.


Some tweaks.
Took out the remove all objects, not a fan.
Use object references. After using an operator to add the cube
cube = context.object

after creating the curve obj it is known by reference as obj, no need to look it up as "Path".
When parenting via the operator, the selected objects are parented to the active. Have set the curve as active
context.view_layer.objects.active = obj

and selected the cube
cube.select_set(True)

before parenting via the operator.
Animate by setting an path duration (start to finish)  in frames on the curve object, and keyframing or driving the evaluation time.
See Creating path curve using python script  re using the end points of a nurbs curve
import bpy
context = bpy.context

# Clearing scene
# IMO never add this to a question script.
'''
for item in bpy.data.objects:
    bpy.data.objects.remove(item)
'''
# Simulation Parameters
coords = [[0,0,0],[ 0,5,0], [0,0,15],[15,0,15], [0,0,20]]

bpy.ops.mesh.primitive_cube_add(location=coords[0])
cube = context.object
# making curve
crv = bpy.data.curves.new('crv', 'CURVE')
crv.dimensions = '3D'

# Animate the eval time (keyframes)
crv.path_duration = 250
crv.eval_time = 0
crv.keyframe_insert("eval_time", frame=1)
crv.eval_time = 10
crv.keyframe_insert("eval_time", frame=100)
crv.eval_time = 250
crv.keyframe_insert("eval_time", frame=250)
# initialize spline
spline = crv.splines.new(type='NURBS')
spline.use_endpoint_u = True
spline.use_endpoint_v = True
# a spline for each point
spline.points.add(len(coords)-1) # 1 point by default

# assign the point coordinates to the spline points
for p, new_co in zip(spline.points, coords):
    p.co = (new_co + [1.0]) # (add nurbs weight)

# make a new object with the curve
obj = bpy.data.objects.new('Path', crv)
context.scene.collection.objects.link(obj)
obj.select_set(True)
context.view_layer.objects.active = obj
cube.select_set(True)
#cube.parent = bpy.context.scene.objects['Path']
bpy.ops.object.parent_set(type='FOLLOW')

'''
cube.constraints.new('FOLLOW_PATH')  #Constraining cubesat to follow the path
cube.constraints['Follow Path'].target = obj
cube.constraints["Follow Path"].forward_axis = 'FORWARD_X'
cube.constraints["Follow Path"].use_curve_follow = True
'''

Fixed Position.
Generally a user of fixed position and no follow path parenting. As shown in answer here https://blender.stackexchange.com/a/169719/15543  With fixed position can keyframe or drive the offset, such that 0 is start of curve, and 1 is other end.


I made an IK foot bone and it moves the entire body while bending the foot. Anyone have any idea's why this is happening?

You need to reduce the Chain Length to 2, so that only this bone and the thigh move, otherwise the IK also makes the Lower_Body bone move, and therefore the whole armature.


If I zoom to far out everything dissapears

Press N to bring up the Properties Panel of the 3D View and open up the View Category. There you can find two values: Clip Start and Clip End as part of the View Panel. Just increase the End value to expand the Clipping Distance of the 3D View.


File output node only saves separate image files per frame. To make a a movie file you would need to add the frame seq to a VSE timeline and recompress. There is no built in way for Blender to achieve multiple movie exports from one scene. You could set up many VSE scenes with a image seq strip in each then perform a command line render of them.


I don't think you can get that with standard tools. I would use a script to highlight (select in edit-mode) non coplanar faces:

import bpy
import bmesh

obj = bpy.context.active_object  # Get selected object

if obj:
    bpy.ops.object.mode_set(mode='EDIT')  # Go into edit mode
    bpy.ops.mesh.select_all(action='DESELECT')  # Deselect everything

    bm = bmesh.from_edit_mesh(obj.data)  # Create bmesh object for easy mesh evaluation

    for f in bm.faces:  # Check all the faces
        # 3 points will always define a unique plane. We define its coordinates.
        A = f.verts[0]
        B = f.verts[1]
        C = f.verts[2]
        a1 = B.co.x - A.co.x
        b1 = B.co.y - A.co.y
        c1 = B.co.z - A.co.z
        a2 = C.co.x - A.co.x
        b2 = C.co.y - A.co.y
        c2 = C.co.z - A.co.z
        a = b1 * c2 - b2 * c1
        b = a2 * c1 - a1 * c2
        c = a1 * b2 - b1 * a2
        d = (- a * A.co.x - b * A.co.y - c * A.co.z)
        # Check if any point after the third one is a part of this plane (ie the distance to the plane is == 0)
        if len(f.verts) > 3:
            for v in f.verts[3::]:
                if a * v.co.x + b * v.co.y + c * v.co.z + d != 0:
                    f.select_set(True)  # If this vertex is not part of the base plane, select the face and break
                    break

    bmesh.update_edit_mesh(obj.data)

Illustration :

Also, if you want faces to highlight only if the vertices deviate from a certain threshold to to the base plane, you could insert it in the code :

Replace

if a * v.co.x + b * v.co.y + c * v.co.z + d != 0:

With

if abs(a * v.co.x + b * v.co.y + c * v.co.z + d) > 2 :  # Threshold

Note that this is not deterministic and could change depending on which vertices get evaluated to define the plane coordinates.

Further and further reading.


You are in Solid display mode, switch to Rendered display mode.


My BGE Message actuator does not work although others are working

UPDATE: Problem occurs from mouse clicks. When i set for keyboard press it works but mouse click (mouse over + left button) does not work. Does anyone know why not?


Blender 2.80: Newly created object appears in unused/invisible collection - how to avoid?

By the active group in outliner:

The white gray circle in the collection icon indicate that is the active collection now, all new object will link to there.

You can manually click on other Collection (include scene collection) to change the active collection in order to insert any thing in to desired group.


Procedural Character Generation (Blender & Unity)

I ended up going with Blend Shapes -- it got me what I needed.


How do I get a camera to rotate instead of rotating the object in viewport

You can set the behavior of the viewport to 'Orbit around Selected' in Edit > Preferences > Navigation.

You can center on selected in the viewport by hitting Numpad..

You can make the active camera adopt the viewport view by hitting CtrlAltNumpad0

These could add up to the sort of interacion you're looking for?


Return list of associated vertex index, weight values for a given vertex_group

No, there are no built-in functions which do this in a more pythonic way, however, unless you only ever want to access a single bone, Id suggest collecting all vertex groups at once.

def mesh_to_weight_list(ob, me):
    """
    Takes a mesh and return its group names and a list of lists,
    one list per vertex.
    aligning the each vert list with the group names,
    each list contains float value for the weight.
    """

    # clear the vert group.
    group_names = [g.name for g in ob.vertex_groups]
    group_names_tot = len(group_names)

    if not group_names_tot:
        # no verts? return a vert aligned empty list
        return [[] for i in range(len(me.vertices))], []
    else:
        weight_ls = [[0.0] * group_names_tot for i in range(len(me.vertices))]

    for i, v in enumerate(me.vertices):
        for g in v.groups:
            # possible weights are out of range
            index = g.group
            if index < group_names_tot:
                weight_ls[i][index] = g.weight

    return group_names, weight_ls

Note, that this example could use pythons array module for greater effeciency but using lists since its an example.


Although F3 didn't work I found the Image menu entry located in the bottom left corner shown on screenshot.


Yes

By adding an extra rigid body constrained inside the die as a weight, you can do this:

Add a small object to act as the weight (e.g. an icosphere) and position it inside the die on the opposite side of the 6. Make it a dynamic rigid body and adjust the mass as needed:

Add a Fixed rigid body constraint connecting the weight to the die.

Select the weight and then the die (so that the die is active).
Press Connect in 3D view > Tool Shelf (T) > Rigid Body Tools.
Ensure that the Type is set to Fixed:

With the newly created constraint empty selected, make sure collisions between the weight and the die are disabled:

Make a simulation and be amazed as you roll 6 every time ;)

I know.. I misread your question and thought you wanted lucky dice, but obviously this technique works for simulating unlucky dice too.


After redoing it, I realized I forgot to set the lower bones as a child of the spine. In short, I'm pretty sure the problem stemmed from having two root objects.


Why are my model's eyes deforming so badly?

Yes, the weight paint is messed around the eyes and brows. The top eyelids have too little influence and the bottom brow bones have too much. That's normal, more or less. Furthermore, the mirroring is messed up. But it can be fixed with some manual weight painting.

Topology fix
Before you start weight painting you should have a look at the mesh first. Because there is still some asymmetry going on, a little weird shading, and the horizontal edge loop of the top eyelids goes zigzag. The reason could be the extra edge you have there. (I had only noticed it afterwards when I had finished the weight painting.)
Your mesh has an extra edge "loop" (marked pink). Actually, it's not a loop just a few edges. Because of this, the top eyelids have 6 and the bottom lids have 5 edge loops. And the top lids have an N-gon (yellow).
For a clean topology, the top and bottom eyelids should have the same number of vertical edge loops. You can make that extra "edge loop" a full loop. This should improve the deformation.
Last but not least, check the size of your model. She is tiny, 2 cm tall. I am not sure if this is intended and she is a pixie?

Preparation
I would start over, drop all vertex groups of the mesh. These groups contain the messed-up weight painting. Then re-parent the mesh to the armature with With Automatic Weights. It will be still messed up but it will symmetrically messed-up ;-)
To fix the mess make a little animation and pull down the main eyelid controller (in the middle) to close the eyes (in Pose mode). It might be necessary to pull down the tweak controllers (left and right) as well a little bit. This depends on the model. Pull up the bottom lids a little. Finally, all 6 controllers (on layer 3, 3 tops + 3 bottoms of one eye) should be approximately on top of each other. The mesh of the lids will be messed up.
Weight paint
Switch to Weight Paint mode. In the Object Data Properties tab, expand the Vetex Group section. If you hover the mouse over the list you can scroll through it with the arrow up and arrow down keys. Find the eyes and brows.
Note: There are 3 top brow bones for each eye and 4 bottom brow bones. 4 bones for the top eyelid and 4 for the bottom eyelid around the eye. The top brow bones are ok, but the rest need some corrections.
Settings
Before you fix the weight paint, make sure you have Mirror X turned off, Vertex Group X turned on, Topology Mirror turned off, and Auto Normalize turned on. Note: These settings are for Blender 2.92 and look & behave differently in older versions.
Settings for Blender 2.92.
If the brush doesn't work make sure that Vertex Selection is turned off:

Painting
Start with the top eyelid of one eye. Give the bones more influence and the brows bones less. Mirroring should work for most of the time but the opposite brows might still be messed up. The reason could be the n-gons (see below). Finish one eye then you can correct the weights by painting the opposite eyelids/brows.
With help of the timeline, you can open and close the lids as needed.

Blend file:
https://pasteall.org/blend/ca3bd262bc5c472da7f214bc069fdf66


Subsurf and mirror modifier creating a split in mesh

The mirror modifier is designed to work properly with the subsurf modifier. You shouldn't have to do anything extra.

The main problem is that your subsurf modifier is above your mirror modifier in the stack. The subsurf should be below the mirror modifier.

Essentially, you're suburfing one half all by itself, and then mirroring that. Rather, you want to mirror the part you have, and then subsurf the whole thing.

If that doesn't fix all of the problems, there are some other problems you might be running into.

Normally, the mirror modifier will merge vertices from one half that are close enough to the save vertices from the  other half. You just have to make sure of two things:

Your center line must be perfectly straight.
Your center line must be close enough to the mirror pivot.

To make your center line perfectly straight, select all the vertices that are on the center of your mesh and scale to 0 only on the proper axis. If your center line parallels the x axis and lies on the x-y plane, then scale to 0 on the y-axis.

To make sure your center line is "close enough" to your mirror pivot, first determine what your mirror pivot is. The default is the object's origin, but you can use the origin of another object. In your case, it's probably the object's origin. Here's a method you can use:

Select all vertices
Zoom in on the object's origin (orange dot) and move all the vertices until the center line lies exactly on the origin.

You may have to zoom in very far to get it perfect, but you really only have to get "close enough" as defined by the merge distance set in the mirror modifier.

It's best to move on a single axis, which you can do after starting the operation, in this case grab. After typing g, type the letter of the axis along which you want to move the vertices. You'll be constrained to this axis until you choose another one, or finish the operation.


I agree.  It doesn't exist yet.

I was pushing for it on the dev site,
and they told me to go to the wiki instead.
https://mobile.twitter.com/doyousketch2/status/835212481614266369
I wasn't about to sign up for another flippin' website
just re-type what I'd already typed in.

I ended up suggesting it on:
https://code.blender.org/2016/12/the-blender-101-project-and-you
but who knows where that comment went.

Makes me feel like Blender doesn't want to hear about it.


You can access the render border values via the outliner if you change its display mode to 'Datablocks':

You can then navigate through the tree structure of the outliner to the border values via Scenes> Scene (may be different depending on the name of your actual scene)> Render Data:

The border values can be set from 0-1, so unfortunately you can't set exact pixel coordinates without some maths. 0 is the left side of the camera and 1 is the right side of the camera for the 'x' values (or the bottom and top sides of the camera for the 'y' values).


How to move an edge loop along the normals of each edge?

The Shrink/Fatten tool is what you are looking for. Select your vertices then press Alt+S. You might find it useful to activate Even Thickness by pressing S.


I highly recommend using an improved version of Sapling that can be download from GitHub:
https://github.com/abpy/improved-sapling-tree-generator/archive/master.zip

Also, you can find this manual and presets useful too:
https://blenderartists.org/forum/showthread.php?395082-Blender-Sapling-Tree-Tutorial-%2528free-download%2529


To make my path elliptical I scaled it by X axis and object on it's path has been automatically scaled too.


Creating a Soft Body Surface that Responds to Different Masses of a Rigid Body Object

To do this: You would need one plane to serve as the cloth, and one UV Sphere to serve as rigid body. You would have to give the plain a cloth simulation (as soft body isn't what you want), and then the the UV Sphere a rigid body and collision. I am assuming that you know the cloth and rigid body settings, as I am not going to go over that.

Then, you would subdivide the plane as many times as the quality that you need/want.

For the next step, you would need to place the UV Sphere directly over the plane. Then, you can change the mass of the UV Sphere in the Rigid Body Simulation, and then when you play your animation using Alt-A or the Play Animation button, then the plane will deform accordingly.

Then, select the plane and the UV Sphere with Shift-Right-Click, press Alt-D, and then place them wherever you want the second DIFFERENT set to be. Next, in the Rigid Body Simulation tab, just change the mass accordingly.

Hope this helps!!!

Note: If this doesn't work, then remove the Rigid Body Simulation, keep the Colision though, and insert keyframes on the start and end of where you want the UV Sphere(s) to start/end.


Unable to use pen pressure in Blender using iPad

chiyopet,
If you are using Grease pencil, there could be a couple things that are causing the issue.
Lets get the basics out of the way:
If you new to Blender...Welcome! if you not and having trouble, a really simple things would download a fresh copy of Blender from https://www.blender.org
on the slashscreen click "2D Animation"

start drawing with you iPad.....(I have no idea what application your using to draw with ....so that could be getting in the way...but let see if we can help you. If this works.....wonderful! if not, keep reading.
Then follow these directions:

Start Blender
Click "File" in top left corner and select "New" > "2D Animation" from the dropdown list

This will open the 2D Animation workspace and with a grease pencil object selected and in the "Draw" mode with the Draw Tool Selected. It will also have a material for you selected to draw with.
All this means that Blender is ready for you to Draw in 3D.
Try to Draw....if you still do not see anything.
A) Check you are in Draw Mode:
Look in top right corner of 3D Viewport:

B) Check that you have the large enough brush size and strength of brush
and most importantly that you have "Use Pressure" icon checked:
Here is a nice graphic with a copy of setting for you to use:
C) Check 3D Viewport is in the correct Viewport Shader. If you look on the top right side you will most likely want to be in "Material Preview" or "Rendered"

Here is the blender Documentation on the what the different Viewport Shaders
https://docs.blender.org/manual/en/latest/editors/3dview/display/shading.html
This video does a good job of at least giving a quick overview of viewport shading and what is does in a very quick way.
https://www.youtube.com/watch?app=desktop&v=knO-oz6_ffI


how to make each pixel the same setting color in the rendered image?

If it is an identification of the rendered part you want (where every object has its own colour), use the ID render pass. In the object properties, set the "Pass Index" to a unique number. In the Render Layer properties, enable the Object Index pass.

Then use the IndexOB slot of the Render Layer node to render the colours. For each pixel, this slot will give you the value of the "Pass Index" property you set on the object. You can use a ColorRamp node to map from a number to a colour; however, that accepts only numbers between 0 and 1, so you have to divide the IndexOB by the highest number you used. In my example the background has index 0, the cube has index 1, and the sphere has index 2, so I divide by 2.


You entered a link on your desktop.

Change the image editor to the executable C:\Program Files\Krita (x64)\bin\krita.exe (or where you have installed Krita)


How to Append a world with HDRi and nodes from another blendfile?

To append an HDRi texture from another blend file along with the nodes :

append the world
select the world settings from the properties panel
Click on the browse world settings to be linked
In that you will see the appended world with the name World.001 if it's not named and will appear with the name if it's named in the appended .blend file

The world will be appended along with the node setup


saving image from Blender to a specific path

image.save_render() cannot use relative paths, which are returned by default by "FILE_PATH" StringProperties. To convert the path to absolute, you can simply do:

path = bpy.path.abspath(self.path)


for those who have this problem, i found the origin of this problem !

It was induced in fact by environment lighting setting (world panel) and sun lights (i think hemi light will do the same, they seem to behave like sun light in open gl render.

So i solved the problem by getting rid of them and replacing it by area, point...

Happy blending !


Here comes a very simple way to do it:

1) Base
Add a circle with 32 vertices and a triangle fan.
Rotate it by 360/64 degrees along Z axis. This will get you nice flat sides.

2) Rim
Inset faces a bit to make a rim. All pills have a rim.
Then delete the triangle fan.

3) Fill the circle
Select 16 opposite vertices (exactly half).
Go to Face->Grid Fill.

Cool, right? Job done.

4) The bulge
Raise the middle polygon and enable proportional editing with falloff set to Sphere.
Play with the settings to your liking.

5) Create the bottom part.
Select all vertices Select->All, duplicate Mesh->Duplicate to make the bottom part.
You can use the mirror modifier for this, if you want.

6) Connect both parts.
Select those two edge loops and bridge them.
Edge->Bridge edge loops.

7) Add Subdivision modifier to smooth it out.
2 levels is enough.
Also set a smooth shading.

8) Change the shape to your liking
You can still change the shape and height in edit mode.
Just grab and move the vertices.

Example of final mesh.

Result:

Additional notes:
 - You can do this faster by using mirror modifier
 - Apply rotation, so modifiers work properly
 - There are many ways to do this, don't get hung up on this approach
 - Yeah... some pills have a groove in the middle.
 - Try it with different number of vertices, some will work better than others.

Uff.

Okay, here is the same pill with a groove in the middle.
It just felt so wrong without it I couldn't sleep.


Blender won't select the object I want to select

Check to see if it is listed in the Outliner. If it is, click on it's entry. If it still won't highlight, check to see if the arrow icon is toggled. Click it to make sure it's not greyed out. This indicates whether an item is selectable.


Blender Eevee (and cycles) not rendering White as pure white

Okay, Looked around and found out the solution. It was a color management problem. Under render properties > color management > view transform, it was set to "Filmic" when it should have been standard!!


While moving head bone,mouth isnt moving along. I dont know what to do next

This is because the upper lip of the rat has more weight painting than the lower lip.  Thus, the bone has more influence on the upper lip than the lower.  If you want the whole mouth to move the same amount with the head, I would suggest you weight paint the entire mouth a value  of one.  You will have to do some smoothing from below the mouth down, however, so you still get a smooth deform.

The other problem you are having is that bones .004 and .015 have influence on the mouth.  If you remove their influence, that should make the entire mouth move with the head bone.


They are not united. They are overlapping.
Well, easy ... not really, no. First you need to select the finger you want to edit. I did from the inside, which I think, is much easier.
Then you can rotate, move, scale the selected nodes/faces. Proportional editing might come in handy. Also, using the 3D-Cursor at the nuckle might help with rotations.
You could also select the middle finger fist, then hide those faces [h] to work on the ring finger - or vice versa. Unhide all faces (in edit mode) [ALT]+[h].
Hint: when you hide faces, switching to sculpt mode will keep those faces hidden.
Also, while you're in edit mode: create a vertex group of each finger. This makes further selections and rigging easier.

Viewed from the inside. Left, selected ring finger. Right, not selected middle finger. They are overlapping at the "first visible" bone.


Subdivision Surface Modifier destroys certain faces

I think you will find the reason for this, is that the vertices are not actually attached. In edit mode, go to vertex selection mode, and press spacebar, type "remove doubles" and click the remove doubles operator.

If that does not work out, do what you can to investigate where vertices do not actually connect.

Also keep in mind that subdivision modifier works best with quads. You may want to do your best to convert those triangle faces to quad faces.


Cant unlink a curve created from an instanced collection

Found this unanswered question as I was facing the exact same problem -- I solved it with this:
In Object Mode, select all objects that you want to be separated. When I "made instances real" I was able to select them individually in Object Mode, but they would all edit together in Edit Mode.
Use the Object dropdown menu > Relations > Make Single User > Object & Data.
I did not unlink my textures, as I wanted them to remain uniform for the time being. This will make every selected object an individual editable object. This was enough for my own problem.
If you want to regroup objects -- perhaps all the objects on the right side -- Select them in Object Mode, Object dropdown > Relations > Make Local > Selected Objects and Data. This somehow relinks them, but not vertex to vertex as they were before. I haven't been able to find the solution to this second half of the problem.
For further clarification on what this is doing, look up "Make Single User" and "Data Blocks". I'd explain it here if I fully understood it myself.
Hope this helps some!


Is there a bpy.data.objects equivalent of bpy.ops.object.modifier_apply?

As far as I know, there's no single low-level command that does this like the bpy.ops.object.modifier_apply operator, but this is possible without operators.

You can do this by using the to_mesh method, which generates a new version of the object's mesh data, if you wish - with modifier's applied.

In this example I'm generating a version of the mesh data with modifier's applied, and assigning it directly back into the source object's data.

This updates the mesh geometry, but doesn't remove the modifier (since we simply generated a copy, and haven't actually applied the modifier yet).

So eventually all we need to do is to remove the modifier using the object.modifiers.remove(modifier) method.

import bpy

obj        = bpy.context.object
myModifier = obj.modifiers['Subsurf']

# Apply modifier to existing object data
obj.data = obj.to_mesh(
    apply_modifiers = True,
    scene           = bpy.context.scene,
    settings        = 'PREVIEW'
)

# Remove modifier from modifier's list
obj.modifiers.remove( myModifier )


Here's a simple solution:

Your shadow is working correctly. The problem is that lighting in blender internal/GLSL has several parts to it. Shadows (cast by other objects that block light sources) are one part, separate from shading (an object getting darker where it faces away from a light source). In other words, using just the "Shadow" output of the lamp data node will allow other objects to cast shadows on the material, but not allow the object to cast shadows on itself.

The bright spot in the middle of the shadow was there because shadows work by projecting the light-blocking mesh onto the shadowed mesh. The protruding nose on your shadowed mesh was shielding some of it from being touched by that projection; you could say it was like an anti-shadow. If this seems ridiculous to you, you may enjoy the cycles rendering engine.


For views you can alt middle-mouse and it changes in the direction your mouse is going.

For your wireframe problem, go to object tab, viewport display, tick wireframe.

To make it global:


Can I make clothes be weight-painted and have it have a cloth-simulation?

You have several solutions to animate a skirt: This one that uses Mesh Deform modifier. Or you can try with the Wiggle Bones addon. But if you want to use physics, use Cloth:

Create your skirt, it needs to be another object that the body, parent it to the first spine bone, subdivide it a bit, weight paint the top edge in order to create the pin group:

Give it a Physics > Cloth simulation, in Shape > Pin Group, choose the group you've created:

In the modifiers stack, put a Subdivision Surface modifier under the Cloth modifier. Select the body and give it a Physics > Collision. Move, the armature, it should work:


You also need to add a draw method to your operator like this
    def draw(self, context):
        layout = self.layout
        layout.use_property_split = True
        layout.use_property_decorate = False  # No animation.

        # column() is what makes it go vertically
        layout.column().prop(self, "type")


The eye icon hides objects temporarily. To hide objects globally, use the screen icon.
You can enable it from the outliner "funnel" menu.
Temporarily Hide objects (Eye icon)
Resets when a collection is enabled, duplicated or linked to another scene
Globally disable objects (Screen icon  )
Stays on when collection is enabled, duplicated or linked


Run an external application with the bge

This task is fairly simple to do with a Python script.

You could add a python script as a controller to launch a browser:

import subprocess
subprocess.call(['pathToChrome\\chrome.exe',
                 'http://blender.stackexchange.com',
                 'Message'])

To save a screenshot you could use one of the command line capturing tools like:

webkit2png
command-line-program-to-create-website-screenshots-on-linux
you might add an os to google "browser screenshot command line"

Once you have the saved screenshot you could manipulate a plane to use the screenshot as a texture see createTexture in Blender API on how to dynamically change a textures image.


How to render WITH the default checkerboard as background?

Here's a solution using a Checker Texture for the Background material using Window coordinates. It's not perfect but I think gives a pretty good impression.

You'll need to adjust the Mapping node to match the camera aspect ratio.

This essentially just textures the environment using a Checker texture mapped based on Window coordinates, and only for Camera rays.


How to create an oblique circle of points with Python?

The following code creates the "oblique circle" that you need in the plane x=z, which, actually, is not a circle but an ellipse (the intersection of two cylinders):

for count in range(0,points):

    x = math.sin(current) * radius
    y = math.cos(current) * radius
    z = math.sin(current) * radius

    vertices.append((x, y, z))


How to create custom property for an object without UI

You just do:

import bpy

bpy.context.object.data["some_property"] = "Some value"


Real objects both reflect and adsorb light. How much reflection you see at each point of the object depends on the angle at which you look at it.  Think of a lake of clear water.  Up close, none of the water is reflected, so you see to the bottom. Farther away, the water reflects more, so you see less into the water and more of what is reflected by the water.

The fresnel node applies this effect.  There are several good tutorials on Physics Based Rendering (PBR) that talk about Fresnel effect and using the Fresnel node.  I recommend a two part tutorial by Blender Guru. Part 1 contains a pointer to part 2.


How can movement speed be set for simple object movement?

if you want the speed to be linear, select the animated object, open the Dopesheet window, enable the little arrow button on the horizontal menu bar so only the selected object keyframes will be displayed, press T to set the keyframe interpolation and choose Linear. You can also do it in the Graph Editor. Is it what you want?


You could do it with the Proportional Editing option on, but you should have a better result with the Mesh Deform modifier:

Create a cube that encompass your object.
Subdivide it a bit.
In the Properties panel > Data > Display, choose Maximum Draw Type > Wire so that it's transparent in Object mode. To make it transparent in Render mode, go in the Properties panel > Data > Cycles Settings and disable all.
Give your mesh a Mesh Deform modifier with the cube as Object. Click on the Bind button.
Move or scale the edges of your cube to modify the shape of your object.
When you're happy, apply the modifier (maybe keep a unapplied copy somewhere though).


Boolean Not Working The Way I Think It's Supposed To

Change the type to carve and try to change between difference , intersect ... untill you get the wanted result


How can I assign a mesh group to an armature?

Select all your mesh group
Then select your armature
Press Ctrl+P
Select Parent with Automatic Weighting

Now your mesh should be linked and moves with your armature nicely.


How to make hair material different from the plane itself?

You can change the strand's material by adding another material slot in the materials pane, then go to particle settings panel > render rollout and select the new material in the material slot dropdown list.

Add a new material slot:

And select it in the particle settings: