Is there a reference for how to add custom keymaps to operators in an addon?

In the end, I poached some examples from other people's addons and made an addon myself, writing this up as a keymap reference documentation to help myself during the process. Hopefully it can help some others...
Notes and Reference for implementing keymaps in Blender Addons
Valuable Resources:

Space Type Reference bpy.types.KeyMap.name
Keymap Constructor incl. Space Type and Region Type Reference bpy.types.KeyMaps.new
Key Type, Map Type and Value Reference bpy.types.KeyMapItem.name
How to extract keymap names

Example

See the Keymap Code section of the __init__.py script for a working example
Note, not all use cases are covered. This is a primer to begin to make sense of things

Keymap Names
For Keymaps to show in their corresponding location in the [Edit >> Preferences >> Keymap] ui in Blender, keymap name must be identical to one of the following 224 strings (without the number), surrounded by quotes. E.g. "Window":
0    Window
1    Screen
2    Screen Editing
3    User Interface
4    View2D
5    Region Context Menu
6    View2D Buttons List
7    Frames
8    Property Editor
9    Outliner
10    Markers
11    Time Scrub
12    Animation
13    Dopesheet
14    Dopesheet Generic
15    3D View Generic
16    Grease Pencil
17    Grease Pencil Stroke Edit Mode
18    Grease Pencil Stroke Paint Mode
19    Grease Pencil Stroke Paint (Draw brush)
20    Grease Pencil Stroke Paint (Erase)
21    Grease Pencil Stroke Paint (Fill)
22    Grease Pencil Stroke Paint (Tint)
23    Grease Pencil Stroke Sculpt Mode
24    Grease Pencil Stroke Vertex Mode
25    Grease Pencil Stroke Vertex (Draw)
26    Grease Pencil Stroke Vertex (Blur)
27    Grease Pencil Stroke Vertex (Average)
28    Grease Pencil Stroke Vertex (Smear)
29    Grease Pencil Stroke Vertex (Replace)
30    Grease Pencil Stroke Sculpt (Smooth)
31    Grease Pencil Stroke Sculpt (Thickness)
32    Grease Pencil Stroke Sculpt (Strength)
33    Grease Pencil Stroke Sculpt (Grab)
34    Grease Pencil Stroke Sculpt (Push)
35    Grease Pencil Stroke Sculpt (Twist)
36    Grease Pencil Stroke Sculpt (Pinch)
37    Grease Pencil Stroke Sculpt (Randomize)
38    Grease Pencil Stroke Sculpt (Clone)
39    Grease Pencil Stroke Weight Mode
40    Grease Pencil Stroke Weight (Draw)
41    Paint Face Mask (Weight, Vertex, Texture)
42    Paint Vertex Selection (Weight, Vertex)
43    Weight Paint
44    Vertex Paint
45    Pose
46    Object Mode
47    Paint Curve
48    Curve
49    Image Paint
50    Sculpt
51    Mesh
52    Armature
53    Metaball
54    Lattice
55    Particle
56    Font
57    Object Non-modal
58    3D View
59    Image Editor Tool: Uv, Tweak
60    Image Editor Tool: Uv, Select Box
61    Image Editor Tool: Uv, Select Circle
62    Image Editor Tool: Uv, Select Lasso
63    Image Editor Tool: Uv, Cursor
64    Image Editor Tool: Uv, Rip Region
65    3D View Tool: Pose, Breakdowner
66    3D View Tool: Pose, Push
67    3D View Tool: Pose, Relax
68    3D View Tool: Edit Armature, Roll
69    3D View Tool: Edit Armature, Bone Size
70    3D View Tool: Edit Armature, Bone Envelope
71    3D View Tool: Edit Armature, Extrude
72    3D View Tool: Edit Armature, Extrude to Cursor
73    3D View Tool: Edit Mesh, Extrude Region
74    3D View Tool: Edit Mesh, Extrude Manifold
75    3D View Tool: Edit Mesh, Extrude Along Normals
76    3D View Tool: Edit Mesh, Extrude Individual
77    3D View Tool: Edit Mesh, Extrude to Cursor
78    3D View Tool: Edit Mesh, Inset Faces
79    3D View Tool: Edit Mesh, Bevel
80    3D View Tool: Edit Mesh, Loop Cut
81    3D View Tool: Edit Mesh, Offset Edge Loop Cut
82    3D View Tool: Edit Mesh, Knife
83    3D View Tool: Edit Mesh, Bisect
84    3D View Tool: Edit Mesh, Poly Build
85    3D View Tool: Edit Mesh, Spin
86    3D View Tool: Edit Mesh, Spin Duplicates
87    3D View Tool: Edit Mesh, Smooth
88    3D View Tool: Edit Mesh, Randomize
89    3D View Tool: Edit Mesh, Edge Slide
90    3D View Tool: Edit Mesh, Vertex Slide
91    3D View Tool: Edit Mesh, Shrink/Fatten
92    3D View Tool: Edit Mesh, Push/Pull
93    3D View Tool: Edit Mesh, To Sphere
94    3D View Tool: Edit Mesh, Rip Region
95    3D View Tool: Edit Mesh, Rip Edge
96    3D View Tool: Edit Curve, Draw
97    3D View Tool: Edit Curve, Extrude
98    3D View Tool: Edit Curve, Extrude to Cursor
99    3D View Tool: Edit Curve, Radius
100    3D View Tool: Edit Curve, Tilt
101    3D View Tool: Edit Curve, Randomize
102    3D View Tool: Sculpt, Box Mask
103    3D View Tool: Sculpt, Lasso Mask
104    3D View Tool: Sculpt, Box Hide
105    3D View Tool: Sculpt, Mesh Filter
106    3D View Tool: Sculpt, Cloth Filter
107    3D View Tool: Sculpt, Color Filter
108    3D View Tool: Sculpt, Mask By Color
109    3D View Tool: Paint Weight, Gradient
110    3D View Tool: Paint Weight, Sample Weight
111    3D View Tool: Paint Weight, Sample Vertex Group
112    3D View Tool: Paint Gpencil, Cutter
113    3D View Tool: Paint Gpencil, Eyedropper
114    3D View Tool: Paint Gpencil, Line
115    3D View Tool: Paint Gpencil, Polyline
116    3D View Tool: Paint Gpencil, Arc
117    3D View Tool: Paint Gpencil, Curve
118    3D View Tool: Paint Gpencil, Box
119    3D View Tool: Paint Gpencil, Circle
120    3D View Tool: Edit Gpencil, Tweak
121    3D View Tool: Edit Gpencil, Select Box
122    3D View Tool: Edit Gpencil, Select Circle
123    3D View Tool: Edit Gpencil, Select Lasso
124    3D View Tool: Edit Gpencil, Extrude
125    3D View Tool: Edit Gpencil, Radius
126    3D View Tool: Edit Gpencil, Bend
127    3D View Tool: Edit Gpencil, Shear
128    3D View Tool: Edit Gpencil, To Sphere
129    3D View Tool: Edit Gpencil, Transform Fill
130    3D View Tool: Edit Mesh, Make Line
131    3D View Tool: Hops
132    3D View Tool: Hardflow
133    3D View Tool: BoxCutter
134    3D View Tool: Cad Transform
135    Gizmos
136    Generic Gizmo
137    Generic Gizmo Maybe Drag
138    Generic Gizmo Tweak Modal Map
139    View3D Gesture Circle
140    Gesture Box
141    Gesture Zoom Border
142    Gesture Straight Line
143    Header
144    Standard Modal Map
145    Animation Channels
146    Knife Tool Modal Map
147    Custom Normals Modal Map
148    Bevel Modal Map
149    UV Editor
150    Paint Stroke Modal
151    Mask Editing
152    Eyedropper Modal Map
153    Eyedropper ColorRamp PointSampling Map
154    Transform Modal Map
155    View3D Fly Modal
156    View3D Walk Modal
157    View3D Rotate Modal
158    View3D Move Modal
159    View3D Zoom Modal
160    View3D Dolly Modal
161    View3D Placement Modal Map
162    Graph Editor Generic
163    Graph Editor
164    Image Generic
165    Image
166    Node Generic
167    Node Editor
168    Info
169    File Browser
170    File Browser Main
171    File Browser Buttons
172    NLA Generic
173    NLA Channels
174    NLA Editor
175    Text Generic
176    Text
177    SequencerCommon
178    Sequencer
179    SequencerPreview
180    Console
181    Clip
182    Clip Editor
183    Clip Graph Editor
184    Clip Dopesheet Editor
185    Clip Time Scrub
186    Generic Gizmo Drag
187    Generic Gizmo Click Drag
188    Generic Gizmo Select
189    Toolbar Popup
190    Generic Tool: Annotate
191    Generic Tool: Annotate Line
192    Generic Tool: Annotate Polygon
193    Generic Tool: Annotate Eraser
194    Image Editor Tool: Sample
195    Image Editor Tool: Uv, Sculpt Stroke
196    Image Editor Tool: Uv, Move
197    Image Editor Tool: Uv, Rotate
198    Image Editor Tool: Uv, Scale
199    Node Tool: Tweak
200    Node Tool: Select Box
201    Node Tool: Select Lasso
202    Node Tool: Select Circle
203    Node Tool: Links Cut
204    3D View Tool: Cursor
205    3D View Tool: Tweak
206    3D View Tool: Select Box
207    3D View Tool: Select Circle
208    3D View Tool: Select Lasso
209    3D View Tool: Transform
210    3D View Tool: Move
211    3D View Tool: Rotate
212    3D View Tool: Scale
213    3D View Tool: Shear
214    3D View Tool: Measure
215    3D View Tool: Object, Add Primitive
216    3D View Tool: Sculpt Gpencil, Tweak
217    3D View Tool: Sculpt Gpencil, Select Box
218    3D View Tool: Sculpt Gpencil, Select Circle
219    3D View Tool: Sculpt Gpencil, Select Lasso
220    Sequencer Tool: Select
221    Sequencer Tool: Select Box
222    Sequencer Tool: Blade
223    Sequencer Tool: Sample

The above References are spat out by blender scripting console when running:

    import bpy
    for i, km in enumerate(bpy.context.window_manager.keyconfigs.default.keymaps):
        print(f"{i}\t{km.name}")

Note, these refer to what context one's cursor must be in during a Blender session, for key presses to actually activate. If, for example "User Interface" is used, the hotkey will only activate anything when the cursor is hovering over a user interface panel (not e.g. the 3D viewport). If, for example "Window", the hotkey will activate anywhere within the Blender application window

Region Types
region_type must be one of the following references:
[‘WINDOW’, ‘HEADER’, ‘CHANNELS’, ‘TEMPORARY’, ‘UI’, ‘TOOLS’, ‘TOOL_PROPS’, ‘PREVIEW’, ‘HUD’, ‘NAVIGATION_BAR’, ‘EXECUTE’, ‘FOOTER’, ‘TOOL_HEADER’], default ‘WINDOW’, (readonly)
Map Types
map_type must be one of the following references:
{'KEYBOARD_MODIFIER', 'KEYBOARD', 'MOUSE_WHEEL', 'MOUSE_GESTURE', 'MOUSE_BUTTON', 'MOUSE', 'NDOF', 'TWEAK', 'ACTIONZONE'}, (optional)
Space Types
space_type must be one of the following, where the left-side CAPS is the reference. Use the reference in your code:
EMPTY Empty.

VIEW_3D 3D Viewport, Manipulate objects in a 3D environment.

IMAGE_EDITOR UV/Image Editor, View and edit images and UV Maps.

NODE_EDITOR Node Editor, Editor for node-based shading and compositing tools.

SEQUENCE_EDITOR Video Sequencer, Video editing tools.

CLIP_EDITOR Movie Clip Editor, Motion tracking tools.

DOPESHEET_EDITOR Dope Sheet, Adjust timing of keyframes.

GRAPH_EDITOR Graph Editor, Edit drivers and keyframe interpolation.

NLA_EDITOR Nonlinear Animation, Combine and layer Actions.

TEXT_EDITOR Text Editor, Edit scripts and in-file documentation.

CONSOLE Python Console, Interactive programmatic console for advanced editing and script development.

INFO Info, Log of operations, warnings and error messages.

TOPBAR Top Bar, Global bar at the top of the screen for global per-window settings.

STATUSBAR Status Bar, Global bar at the bottom of the screen for general status information.

OUTLINER Outliner, Overview of scene graph and all available data-blocks.

PROPERTIES Properties, Edit properties of active object and related data-blocks.

FILE_BROWSER File Browser, Browse for files and assets.

PREFERENCES Preferences, Edit persistent configuration settings.

Key Types
Available keys and their references can be seen here, where the left-side CAPS is the reference, for the colloquial key name on the right-side. Use the reference in your code:
NONE Undocumented

LEFTMOUSE Left Mouse, LMB

MIDDLEMOUSE Middle Mouse, MMB

RIGHTMOUSE Right Mouse, RMB

BUTTON4MOUSE Button4 Mouse, MB4

BUTTON5MOUSE Button5 Mouse, MB5

BUTTON6MOUSE Button6 Mouse, MB6

BUTTON7MOUSE Button7 Mouse, MB7

PEN Pen

ERASER Eraser

MOUSEMOVE Mouse Move, MsMov

INBETWEEN_MOUSEMOVE In-between Move, MsSubMov

TRACKPADPAN Mouse/Trackpad Pan, MsPan

TRACKPADZOOM Mouse/Trackpad Zoom, MsZoom

MOUSEROTATE Mouse/Trackpad Rotate, MsRot

MOUSESMARTZOOM Mouse/Trackpad Smart Zoom, MsSmartZoom

WHEELUPMOUSE Wheel Up, WhUp

WHEELDOWNMOUSE Wheel Down, WhDown

WHEELINMOUSE Wheel In, WhIn

WHEELOUTMOUSE Wheel Out, WhOut

EVT_TWEAK_L Tweak Left, TwkL

EVT_TWEAK_M Tweak Middle, TwkM

EVT_TWEAK_R Tweak Right, TwkR

A A

B B

C C

D D

E E

F F

G G

H H

I I

J J

K K

L L

M M

N N

O O

P P

Q Q

R R

S S

T T

U U

V V

W W

X X

Y Y

Z Z

ZERO 0

ONE 1

TWO 2

THREE 3

FOUR 4

FIVE 5

SIX 6

SEVEN 7

EIGHT 8

NINE 9

LEFT_CTRL Left Ctrl, CtrlL

LEFT_ALT Left Alt, AltL

LEFT_SHIFT Left Shift, ShiftL

RIGHT_ALT Right Alt, AltR

RIGHT_CTRL Right Ctrl, CtrlR

RIGHT_SHIFT Right Shift, ShiftR

OSKEY OS Key, Cmd

APP Application, App

GRLESS Grless

ESC Esc

TAB Tab

RET Return, Enter

SPACE Spacebar, Space

LINE_FEED Line Feed

BACK_SPACE Backspace, BkSpace

DEL Delete, Del

SEMI_COLON ;

PERIOD .

COMMA ,

QUOTE “

ACCENT_GRAVE `

MINUS -

PLUS +

SLASH /

BACK_SLASH \

EQUAL =

LEFT_BRACKET [

RIGHT_BRACKET ]

LEFT_ARROW Left Arrow, ←

DOWN_ARROW Down Arrow, ↓

RIGHT_ARROW Right Arrow, →

UP_ARROW Up Arrow, ↑

NUMPAD_2 Numpad 2, Pad2

NUMPAD_4 Numpad 4, Pad4

NUMPAD_6 Numpad 6, Pad6

NUMPAD_8 Numpad 8, Pad8

NUMPAD_1 Numpad 1, Pad1

NUMPAD_3 Numpad 3, Pad3

NUMPAD_5 Numpad 5, Pad5

NUMPAD_7 Numpad 7, Pad7

NUMPAD_9 Numpad 9, Pad9

NUMPAD_PERIOD Numpad ., Pad.

NUMPAD_SLASH Numpad /, Pad/

NUMPAD_ASTERIX Numpad *, Pad*

NUMPAD_0 Numpad 0, Pad0

NUMPAD_MINUS Numpad -, Pad-

NUMPAD_ENTER Numpad Enter, PadEnter

NUMPAD_PLUS Numpad +, Pad+

F1 F1

F2 F2

F3 F3

F4 F4

F5 F5

F6 F6

F7 F7

F8 F8

F9 F9

F10 F10

F11 F11

F12 F12

F13 F13

F14 F14

F15 F15

F16 F16

F17 F17

F18 F18

F19 F19

F20 F20

F21 F21

F22 F22

F23 F23

F24 F24

PAUSE Pause

INSERT Insert, Ins

HOME Home

PAGE_UP Page Up, PgUp

PAGE_DOWN Page Down, PgDown

END End

MEDIA_PLAY Media Play/Pause, >/||

MEDIA_STOP Media Stop, Stop

MEDIA_FIRST Media First, |<<

MEDIA_LAST Media Last, >>|

TEXTINPUT Text Input, TxtIn

WINDOW_DEACTIVATE Window Deactivate

TIMER Timer, Tmr

TIMER0 Timer 0, Tmr0

TIMER1 Timer 1, Tmr1

TIMER2 Timer 2, Tmr2

TIMER_JOBS Timer Jobs, TmrJob

TIMER_AUTOSAVE Timer Autosave, TmrSave

TIMER_REPORT Timer Report, TmrReport

TIMERREGION Timer Region, TmrReg

NDOF_MOTION NDOF Motion, NdofMov

NDOF_BUTTON_MENU NDOF Menu, NdofMenu

NDOF_BUTTON_FIT NDOF Fit, NdofFit

NDOF_BUTTON_TOP NDOF Top, Ndof↑

NDOF_BUTTON_BOTTOM NDOF Bottom, Ndof↓

NDOF_BUTTON_LEFT NDOF Left, Ndof←

NDOF_BUTTON_RIGHT NDOF Right, Ndof→

NDOF_BUTTON_FRONT NDOF Front, NdofFront

NDOF_BUTTON_BACK NDOF Back, NdofBack

NDOF_BUTTON_ISO1 NDOF Isometric 1, NdofIso1

NDOF_BUTTON_ISO2 NDOF Isometric 2, NdofIso2

NDOF_BUTTON_ROLL_CW NDOF Roll CW, NdofRCW

NDOF_BUTTON_ROLL_CCW NDOF Roll CCW, NdofRCCW

NDOF_BUTTON_SPIN_CW NDOF Spin CW, NdofSCW

NDOF_BUTTON_SPIN_CCW NDOF Spin CCW, NdofSCCW

NDOF_BUTTON_TILT_CW NDOF Tilt CW, NdofTCW

NDOF_BUTTON_TILT_CCW NDOF Tilt CCW, NdofTCCW

NDOF_BUTTON_ROTATE NDOF Rotate, NdofRot

NDOF_BUTTON_PANZOOM NDOF Pan/Zoom, NdofPanZoom

NDOF_BUTTON_DOMINANT NDOF Dominant, NdofDom

NDOF_BUTTON_PLUS NDOF Plus, Ndof+

NDOF_BUTTON_MINUS NDOF Minus, Ndof-

NDOF_BUTTON_ESC NDOF Esc, NdofEsc

NDOF_BUTTON_ALT NDOF Alt, NdofAlt

NDOF_BUTTON_SHIFT NDOF Shift, NdofShift

NDOF_BUTTON_CTRL NDOF Ctrl, NdofCtrl

NDOF_BUTTON_1 NDOF Button 1, NdofB1

NDOF_BUTTON_2 NDOF Button 2, NdofB2

NDOF_BUTTON_3 NDOF Button 3, NdofB3

NDOF_BUTTON_4 NDOF Button 4, NdofB4

NDOF_BUTTON_5 NDOF Button 5, NdofB5

NDOF_BUTTON_6 NDOF Button 6, NdofB6

NDOF_BUTTON_7 NDOF Button 7, NdofB7

NDOF_BUTTON_8 NDOF Button 8, NdofB8

NDOF_BUTTON_9 NDOF Button 9, NdofB9

NDOF_BUTTON_10 NDOF Button 10, NdofB10

NDOF_BUTTON_A NDOF Button A, NdofBA

NDOF_BUTTON_B NDOF Button B, NdofBB

NDOF_BUTTON_C NDOF Button C, NdofBC

ACTIONZONE_AREA ActionZone Area, AZone Area

ACTIONZONE_REGION ActionZone Region, AZone Region

ACTIONZONE_FULLSCREEN ActionZone Fullscreen, AZone FullScr

Note the suggestions here and here on generally available keys
Also, see this visual reference for a map of all default hotkeys

Value
"value" must be one of the following references, corresponding to the nature of the button press or tweak:
enum in [‘ANY’, ‘PRESS’, ‘RELEASE’, ‘CLICK’, ‘DOUBLE_CLICK’, ‘CLICK_DRAG’, ‘NORTH’, ‘NORTH_EAST’, ‘EAST’, ‘SOUTH_EAST’, ‘SOUTH’, ‘SOUTH_WEST’, ‘WEST’, ‘NORTH_WEST’, ‘NOTHING’], default ‘NOTHING’

Hopefully this makes a little more sense of things, and helps you with creating your own basic addons


The actuator does work actually. If you turn on physics visualization you can see the collision box. But since the empty adding the object is parented to the armature, which is scaled down to 0.01, the object will also be added at an scale of 0.01. Thus it's just super tiny but still there.

To solve this issue you have to apply the armature's scale (⎈ CtrlA). You will note that the armature's position will be off. To fix that you have to reset every bone's location (A to select all and ⎇ AltG to reset the location) and insert a keyframe for that (I and location). Do this for every keyframe of the armature.


Donut Icing doesn't seem to clip correctly

Scale the icing to be larger. If you used the solidify modifier, it's now intersecting with the donut. Or move the icing up. Or the solidify modifier wasn't 'thick' enough and it's intersecting with itself.


How to change the Quick Favorites key in Blender 2.80 Beta?

You simply click on the option in the menu with the right button and then on Add to Quick Favourites.


Rotationally stretch or compress 3D texture around Z axis

Found it.
The idea is to use a gradient node in radial mode and plug it to the angle of a rotation node (just like a Mapping node but with an input socket for the rotation). Since such a node doesn't exist in Blender we make it with math nodes.

First the rotation node itself (it's a node group) :

then the general setup (the green node is the rotation we made above and the yellow node is the one to animate (the second value in the Multiply node) :

Result :

Here is the file :


Interpolated particle hair are spread all over the object

After looking at the code for quite a bit, I can answer my own question. Interpolated doesn't work like this. What it interpolates is not the position where the children are placed. It is used to interpolate the form (length, curving...) of the hairs from the closest neighbors, but the placement is random. Confining that seems only be possible by specifying a vertex group for the density and using Weight Paint on it.


How to create iridescent glossy tile material?

I was able to achieve something heading toward what you were describing anyway. I'm sure that there can be a lot of polish applied to this answer, especially on the cycle material nodes, but I believe that this will suffice to show the initial intent.

Here's the cycles material:

Here's the demo of the setup:

The geometry is two parts:

The first part is the tile itself, set to a basic glass material.
Inside the tile is a highly subdivided plane with two copies of a displacement modifier, to break up the normal directions within the tile.

The cycles material does the rest of the heavy lifting.

Here's the blend for your reference:


What you can do is temporary extruding the path vertices (as it is a mesh if I see well), then apply the shrinkwrap modifier and delete the previously created vertices.

Make so just add surfaces so that the modifier can do a projection (mode 'project/on surface' and 'back'):

Projection wll be done along the normals, so I think here you need to extrude along Z. If not the path won't stay horizontal.

Edit (if that matters...): I previously misunderstood the question, thinking you wanted to tangent the path around the cylinders. This is not the case, but, eventually, this approach can interest someone:

Transform the cylinders into a convex hull:


Get the list of objects on a layer in python

There is no special property or method to retrieve all objects on a certain layer in Blender. There is a context member visible_objects, but multiple properties affect it (visibility of object, visibility of layer).

Thus, you should use a plain Python list comprehension:

objects_on_2nd_layer = [ob for ob in bpy.context.scene.objects if ob.layers[1]]


When I export a game the executable file hasn't got any textures

When you want your application file include the textures then you need to perform Mainmenu/File/External Data/Pack All Into .blend before creating the application file.

Each asset that is not included will not be found and therefore not be displayed.


How to turn a mesh inside out, like a sock?

This could be achieved by baking a displacement map in Blender Render engine from your mesh to a simplified unwrapped version of your mesh, then using a subdivision and displacement modifier on the simple mesh with the baked image as the texture and a negative strength.


The render is different from the camera view

Actually you've created a keyframe on the particle's Vertex Group Density, so even if you toggle it, it doesn't take it into account, you need to select the object, open the Timeline and delete the keyframe.


Clean Factory Settings Operator

Using the method outlined in
How to completely remove all loaded data from Blender?  particularly the accepted answer

replacing iterative object and mesh removal with operator, has a marked improvement in keeping times consistent between benchmark loops.

def remove_geometry():
    bpy.ops.wm.read_factory_settings(use_empty=True)
    return

Other minor change suggestions

Have a feeling can remove mesh update
Zero pad base name base_name = 'object_%04d' % obj_number
Somewhat pedantic Calling remove_geometry
first in loop will require one less call.

Related

Object creation slows over time


Click each edge to which you want to add vertices and simply click "Subdivide" in the right-click menu.
To move the vertices to where you want them, hit [G,G], which will let you slide the vertexes along the edge.


How to quickly create duplicate recessed portion?

I guess there are at least 2 ways of doing it: either you do it "for real" with topology, or you simulate it in the material with Bump or Normal maps
Topology:

Create a cylinder with as many vertices as you want
Select the face loop
Select > Checker Deselect so that only one of two faces is selected
Keep the faces selected and Alt+E > Extrude > Individual Faces
Scale down these extrusions except on the Z axis with S and Shift+Z

Material:

Create a surface with a series of crenels
Bake this surface so that you have a Normal image
Use this Normal for you whole ring
(on my screenshot it's very quick made, sorry)


is there a way to create kanji or other symbol based text fonts using blenders text object?

You just need to find an OpenType or Truetype Kanji font, then you can load it into Blender's text object, and paste in your Kanji messaging in Edit Mode. You'll have to do the translation part somewhere else though.

If you having issues getting it to work, it might be easier to set the text in another program like Adobe Illustrator or Inkscape and then importing the text as SVG file into blender.


How can I store and retrieve a custom list in a blend file?

Part of the confusion with my question came from the fact I presumed that defining an EnumProperty was the correct, and only, way to store a list.

What I didn't quite understand was that the CollectionProperty itself would act like a list. I can have much the same code as I had before, minus the enum:

class customPropertiesGroup(bpy.types.PropertyGroup):
    customString = bpy.props.StringProperty()
bpy.utils.register_class(customPropertiesGroup)

bpy.types.Scene.customLists = bpy.props.CollectionProperty(type=customPropertiesGroup)

And every time I want to add a new item I do:

newCustomItem = bpy.context.scene.customLists.add()
newCustomItem.customString = "test1"
newCustomItem = bpy.context.scene.customLists.add()
newCustomItem.customString = "test2"
etc..

I can then access each custom item with:

bpy.context.scene.customLists[0].customString
bpy.context.scene.customLists[1].customString

If I want nested lists I can simply have the PropertyGroup Class' property as another CollectionProperty:

class subcustomPropertiesGroup(bpy.types.PropertyGroup):
    customString = bpy.props.StringProperty()
bpy.utils.register_class(subcustomPropertiesGroup)

class customPropertiesGroup(bpy.types.PropertyGroup):
    subLists = bpy.props.CollectionProperty(type=subcustomPropertiesGroup)
bpy.utils.register_class(customPropertiesGroup)

bpy.types.Scene.customLists = bpy.props.CollectionProperty(type=customPropertiesGroup)

newcustomList = bpy.context.scene.customLists.add()
newcustomList.name= "List 1"
newSubList = bpy.context.scene.customLists["List 1"].subLists.add()
newSubList.name = "Sub List 1"
newSubList.customString = "String 1"

This allows me to have an arrangement where I can access lists and sublists like so:

bpy.context.scene.customLists['List 1'].subList['Sub List 1'].customString

I can add or remove items (with customLists.remove(index)) and print them out like I would a normal python list:

for customList in bpy.context.scene.customLists:

    print("List: "+customList.name)

    for subList in customList.subLists:

        print("Sub List: "+subList.name)
        print("Custom property: "+subList.customString)

And because I am not clearing the list each time I define it (as I was in the question) the properties become available again after reloading the file and re-running the code.


Solved by right click on the linked group and then "unlink group".

It was possible only on this tab.


"'blender' is not recognized as an internal or external command" error when using blender from the command line

blender is probably not added as a command to the path in windows (see this link: https://superuser.com/questions/689333/how-to-add-installed-program-to-command-prompt-in-windows)

Or you can just open a command prompt in windows, navigate to the place where the blender executable file is installed (usually C:\Program Files\Blender Foundation\Blender), and invoke the program directly by typing blender.exe

Alternatively you can create a batch that starts the blender.exe command directly.

Copy this text, (replace the file name with the corresponding path and name).

@echo off
"C:\Program Files\Blender Foundation\Blender\blender.exe" -b "path-to-the-file-you-want-to-render" -a
Echo Rendered all!
pause

Paste it on a new text file and save it as a file with a .bat extension.

Double click on the batch file to render.

If blender is not installed, just replace the path for blender so that it points to the folder where the executable file is stored.


With a little encouragement from @Rich Sedman, copied from comment:
The white square looks bigger, because of the conversion after compositing to sRGB for your display device. Arithmetically, inside the compositor, the squares are the same size. If you go to Color Management and switch the View Transform to 'Raw', you can see that.
You could use gamma correction after blurring in the compositor, to change that, but you would have to be be aware, that were you to use the squares for masking or suchlike, that part of the pipeline would become non-linear.


You have a couple options:
One material:
You can set a unique index per object in Properties > Object > Relations:

Using the Object info node, you can get this value in the node tree and use it to mix colors (or shaders) accordingly (also see Get "Object Color" property in Cycles).
Using three linked cubes (duplicated with AltD) with the same material as an example:

Note that this node setup is a lot cleaner and easier to manage when node groups are used.
Multiple materials:
By setting the material to link to that specific Object instead of it's data, which is shared by the other linked objects, you can have separate materials on separate objects which share the same mesh/data.
Just select Object in the menu to the right of the material selector:


Why my Eevee render result is transparent?

I’m having the same problem in the shader view ports. But in cycles it renders fine. By any chance are you running a Radeon gpu


Is there a way to remove hair particles in particle edit mode?

Yes, you can select the hair particles and press X or Delete.

To give credit where credit is due, thanks to Dan Eicher for pointing this out on the developer mailing list.

There does not seem to be a brush for doing this, but you can use circle select (C) to select hair particles with a brush.


Foun the problem myself with the help of a teacher


I tried it myself.  The problem is that not all of the vertices line up perfectly, so you end up with some rogue unwelded verts, like so:

See those little evil guys?

To fix it, select all verts and choose Mesh->Vertices->Remove Doubles.  Then adjust the threshold until they all nicely merge.

Once all the verts are properly welded your spiral select will work.


I am not sure if I understood the question correctly, but the collision mesh can be simpler then the actual floor and still have the information needed to make the object interact properly.

Of course this comes at the price of not having the best precision and giving some areas where the interaction may result in it going through or colliding prematurely but the amount of detail is for you to decide.


Encoding Vertex Position into Vertex Colors

After quickly scraping together some knowledge about Python and Blender I managed to create a very basic script to do what I want (looks horrible but does its job).

import bpy
from mathutils import Color, Vector

my_object = bpy.context.active_object.data
vert_list = my_object.vertices
color_map = my_object.vertex_colors.new()

i = 0
for poly in my_object.polygons:
    for idx in poly.loop_indices:
        loop = my_object.loops[idx]
        v = loop.vertex_index
        x = (vert_list[v].co.x + 1) / 2
        y = (vert_list[v].co.y + 1) / 2
        z = (vert_list[v].co.z + 1) / 2

        color_map.data[i].color = Color((x, y, z))
        i += 1


Every nth face loop:

Switch to edge select mode (CtrlTab> Edge)

Select an edge loop (AltRMB) going in the direction you want the edge ring selection to go.

Checker deselect (3D view > Header > checker deselect) the edge ring (you can use the F6 menu to set the number of edges to skip before deselecting one)

Select another edge loop (AltShiftRMB) in the direction you want the edge loops the go.

Press Edge ring in 3D view > Header > Edge Ring.

Note that when using checker deselect numbers > 2, you might get extra edge loops. Switch to face select mode afterwards to get rid of them.

Every nth edge loop:
The original text of the question asked about edge loops, yet the image was of face loops. Here's a technique to select every other edge loop.
Note if you are using a version of blender newer than this commit (2.71), then you can skip to step 4.

In vertex select mode (CtrlTab), select two edge loops one edge loop apart (AltShiftRMB), that are perpendicular to the direction you want. Then select a single vertex in between them (ShiftRMB). (This is required because Checker deselect only affects selected geometry connected to the active element. i.e you need one connected selection).

Use checker deselect (3D view > Header > checker deselect), then press F6 to edit the N in nth if you want. If you see that the wrong set of edges (the ones you want to remain deselected) are being kept by the selection, change the Offset value.

Still in Vertex Mode, select the edge loop (AltShiftRMB) in between the original two edge loops.

Switch to edge select mode (CtrlTab). You should see parts of the loops you want selected, plus one crossing loop you don't want.  If the wrong parts are selected, back up to step 2.

(Versions prior to 2.71: skip this step.)
(2.71+): Select an edge ring with CtrlAltRMB, then run checker deselect. (Thanks to ideasman42 for making checker deselect work with edges).
(2.79): Select the edge ring (perpendicular to the loops you want), but leave it selected.

Press Edge Loop in 3D view > Header > Select.
(2.79): Also deselect the unwanted perpendicular edge ring.


What is the difference between Bone Layers and Bone Groups?

Bone Layers (technically Armature Layers) is a way to hide visibility of rig controls.  When accessed from the Property window, it's a bit confusing.  It's much more intuitive when seen in the "N" panel (see below)
https://docs.blender.org/manual/en/latest/animation/armatures/properties/skeleton.html#armature-layers

Bone Groups are a way to organize your rig controls by color (also allows selecting entire categories of bones).  Below, I've got IK controllers hilighted and you can see the color set associated with IK- RED for bone color, BLUE for selected bones (the left hand), LIGHT BLUE for active bones.
https://docs.blender.org/manual/en/latest/animation/armatures/properties/bone_groups.html


How do I use live motion, and paste a model onto it, like Gollum?

There are two approaches you could take -

Use motion capture. This involves using an actor that normally has markers attached to various parts of their body which can then be tracked from several camera angles and then used to control an armature that moves your 3D character.
Use motion tracking or match moving. This is often broken into two parts, camera tracking and object tracking. Camera tracking allows you to recreate the camera motion in 3D so that objects you add will follow the environment in front of the camera as if they was in front of the real camera during filming. Object tracking then follows an object that moves within the video, this could be a prop that an actor is holding that gets replaced with a high tech laser rifle. You can even track markers placed onto a persons face and use them to deform a 3D characters face. The points you track will be turned into empties within blender that you can use as reference to place objects or used to move objects within the scene so they match the video.

While the first option is getting cheaper it is still mostly left to movie studios with the budget, we can do the second approach within blender. This can be quite involved so you may want to watch some tutorials explaining it like track, match, blend or blenderguru's intro to camera tracking.

Some tips are to use some highly visible markers, in places that will get covered by your 3D objects. Place markers as far apart as possible. Account for rotations and the possibility of markers getting hidden and overlapping each other.


How to properly export Cryptomattes for Photoshop?

It's working fine using OpenEXR multilayer. You just have to install exr.io for the photoshop side of things and setup your passes in the compositor using the cryptomatte node and a file output node before rendering.


batch rendering multiple audio strip files

well after a lot of testing I was able to do it and wrote something that does the trick for me
here is the code, it not perfect but it works :)
import bpy
import os

#set the directory to where the blend file is
basedir = os.path.dirname(bpy.data.filepath)
# if the blend file is not saved, operator wont be called
if not basedir:
    raise Exception("Blend file is not saved")

# the panel in the UI of sequence editor
class AUDIOSTRIPEXPORTER_PT_sequencer_panel(bpy.types.Panel):
    bl_label = "strip exporter"
    bl_idname = "EXPORT_PT_exporter_panel"
    bl_space_type = 'SEQUENCE_EDITOR'
    bl_region_type = 'UI'
    bl_category = "Export"

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

        row = layout.row()
        rd = context.scene.render
        layout.label(text="Strip Exporter")
        row = layout.row()
        row.scale_y = 1.0
        row.operator("export.audio_strip_exporter_operator")

# the export operator
class AUDIOSTRIPEXPORTER_OT_sequencer_operator(bpy.types.Operator):
    """Exports all the strips separetly"""
    bl_idname = "export.audio_strip_exporter_operator"
    bl_label = "Simple Object Operator"

    def execute(self, context):
        layout = self.layout
        strip = bpy.ops.sequencer
        selection = bpy.context.selected_editable_sequences
        select_num = len(selection)
        bpy.ops.sequencer.select_all(action='DESELECT')
        number = 1

        for each_strip in selection:
            # name the file here, the code will add a number to each file like: FileName_001, FileName_002 ...
            name = "FileName_" + str(number)
            # joining the file name with the directory name for saving
            fn = os.path.join(basedir, name)

            bpy.ops.anim.start_frame_set()
            strip.strip_jump(next=True, center=False)
            bpy.ops.anim.end_frame_set()
            bpy.ops.sound.mixdown('INVOKE_DEFAULT', filepath=fn + ".mp3", container='MP3', codec='MP3')

            number = number + 1
            strip.strip_jump(next=True, center=False)
        return {'FINISHED'}

classes = [AUDIOSTRIPEXPORTER_PT_sequencer_panel, AUDIOSTRIPEXPORTER_OT_sequencer_operator]

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

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)

if __name__ == "__main__":
    register()

now as I said its not perfect so you have to change stuff to fit your needs
and remember:

it renders the files to the folder where the blend file is
you need to put cursor at the beginning of the first strip
add at least a few empty frames between each strip
you have to change the export name in the code

thats all I think


Split mesh into two pieces using bezier curve

Method 1

There is a Cut Through option for Knife Project tool, as shown in Figure 1 below (btw, since Knife Project tool doesn't require the curve being snapped to the surface, the Shrinkwrap modifier isn't quite useful here, just make the projected cut through the ortho view, Top view in your case);
P to separate the default selection after that, see Figure 2;
Select one object, enter Edit mode, A to select none, ShiftCtrlAltM to select the cutting edge loops (in Vertex or Edge select mode), then W > Bridge Edge Loops. Repeat it on another object. See Figure 3.

Method 2

There is another nice script called Sculpt Tools shared in Blenderartists.org, which can do this in one stop. But the final mesh needs a bit refinement compared to Method 1 here.

(Image by the addon author Piotr Adamowicz)

There is also a similar addon called Sculpt Trim Curves Utility, which also did it. But I'm not sure if it still works well with the latest blender version.

(Image from blendernation.com)


It could be that the geometry content of your DAE file is a type that the Blender importer does not understand.  I was trying to read in Collada files that were made from triangle strips and I got the same result.  No error message, no visible geometry, no objects in the scene tree.  The files passed the consistency checker with no errors.  These were files I was generating myself, so I was able to change the geometry from triangle strips to triangles and it worked fine.  I am using an older version of Blender, 2.69.

When I searched for information on Blender importing Collada triangle strips I found old reports of the importer not working, but no recent reports on working/not working.


Is there any way set the render border to be a different shape?

The output image will always be rectangular.
But you can mask some parts out using the holdout shader.

Add a mask in front of your camera - it can be a simple plane with a hole
Give it the Holdout shader
In Render Tab check Film > Transparent

Your masked area (and background) will become fully transparent, and will render waaay faster.


Render Clean Diffuse Colour Only Blender 2.81

Hello and welcome bro!

I suppose the thing is post processing noise dither from Properties > Output

Dither intensity = 1:

Dither intensity = 0:

Dither intensity = 2:


Cell fracture causing cube instead of original object

The mesh is not watertight (manifold)

Cell fracture is having some problem with your mesh because it cannot easily recognize an enclosed volume to work with. As you can see in the image sequence below there are some vertices that, despite looking apparently connected, they are not.

The meshes created by converting an extruded curve are currently made this way.

The solution in this specific case would be to run thr Remove doubles command form the Vertices sub-menu (Crtl+V while in edit mode with all the vertices selected).

Here's a comparison between reults after and before merging the overlapping vertices:


Can you use maps from Crazy bump in the BGE

Blender does not care what tools you use to create images. You can even draw it with pencils on a canvas.

Blender cares the image format such as jpg, png, dds, tga.

However you created your images, turn them into one of the supported formats and you can use them within Blender and the BGE.


How to export list of prop values as txt to a certain folder? And how to import them back?

Here's a very simple example, of how you could write out something to a text file:

import os

# Ensure all folders of the path exist
path = "C:/Blender game/YourFolder/"
os.makedirs(path, exist_ok=True)

# Write data out (2 integers)
with open(path + "file.txt", "w") as file:
    file.write("%i %i" % (myprop, myprop2))

# Read back in
with open("C:/Blender game/YourFolder/file.txt") as file:
    data = file.read()
    a, b = map(lambda x: int(x), data.split(" "))
    print("Imported integers:", a, b)

Note that C: is usually the system partition and in order to write to it, you must have elevated rights (run Blender as administrator).

Other possible ways to dump and re-import data is to use the struct module (binary), pickle (python object serialization) or maybe json if you want something human readable. You can come up with your very own text-based format too of course, like shown in my example above, but it can be come tricky to parse very soon. I discourage the use of XML, as it's rather complicated to use in Python without additional libraries.


Render issue, part of character is missing

Apparently, you have a hidden object obscuring the body of your character. Press Alt+H to unhide all hidden objects or check the outliner for objects with the "closed eye"-symbol:


How does "Max Angle" work when using Tris to Quads?

An overly simple answer is that a higher value means it will be more likely to form quads. A lesser value will be less likely to make triangles into quads. If you sculpt something with dynamic topology and then try the tool it will explain itself pretty quickly.


Solve camera motion in Blender: exact camera data or refinement?

Both.

Start with the known variables.
If you know focal length and sensor size put those in before tracking or before solving.

To determine lens distortion shoot a distortion chart or something that has straight lines (read: How to determine lens undistortion values for motion tracking?) and determine the lens k1, k2, k3 and optical center as accurately as possible.

Having done that you should give you good results. Note however that the focal length of a lens in is hardly ever the one stated on the lens. A 25mm lens might be a 23.845 lens or a 26.421 lens in reality, for example, and the effective Field of View might change depending on the focus distance or "breathing" of the lens, or it might be different depending on what portion of the sensor or the projected lens image the camera is actually using (if the sensor is "windowing", or if you are using a full frame lens on a cropped sensor, for example). So "refining" might alter your focal length values and make them be closer to the mathematical/optical characteristics of your particular lens in the real world.

Just for completeness. Blender uses algorithms based on OpenCV, usually even without any user input, it will determine the values for the field of view, quite well. Why would you want to input your own values then? Because the combination of lens and sensor size that blender guesses might not be the same as what your camera uses. Given that blender only knows about Field of View, and assigns the lens length based on the given (or default) sensor size. Knowing the correct lens and sensor might make a difference to match the correct depth of field when you are integrating CG and Video.

For a comprehensive post on tips for motion tracking read:

How can I get better results when doing camera motion tracking?


How would I make perfect diagonal edges in a rectangle

One way to get diagonal based lines like that is to use Offset Edge Slide which will add loopcuts on both sides of the present edge. However one edge is needed, so select opposite vertices and press J to join them with the edge and split the face.

Then select the edge, open Toolshelf (or press Ctrl+Shift+R) and drag the mouse for the effect.

Regarding the edge you create for this tool to work.
You can dissolve it afterwards but note that it creates quite horrible Ngon in the middle which is better to avoid. It all depends on the purpose of the model but it's best to stay away from this geometry to avoid any problems later on.


The DAE_FBX exporter works, just select the cameras and use File > Export Selection > (channel box) DAE_FBX Export. The usual y-up versus z-up happen, but otherwise it's fine:


Place emitter type particles on the surface evenly

Final:

You can make it with Ocean Modifier (it will keep mesh evenly distributed) and Particles System.

Ocean Modifier:

Add Ocean Modifier to any mesh (could be Plane). And literally just play with settings until you will be satisfied. I've marked my settings for this example.

Remember to check how much Verts your mesh contain as this will be important in Particles setup.

Do this in Wireframe view to see density of the mesh.

Particles:

Add Particle System to your mesh.

Set Start/End to 0 and Particle Number to match mesh Verts count. Sometimes Blender will leave a gap (I don't know why) you can fix this by adding one more Particle. In this example it's ok, but with earlier try I've needed to increase it by 1.

Check Use Modifier Stack, this will allow to use mesh generated by Ocean Modifier.

Add to the scene mesh you want to use as a render object. In this example it is simple IcoSphere. Select it under Render tab > Dupli Object.

Final thoughts:

You can manipulate Ocean Modifier after adding Particle System. Just remember that changing Resolution or Repeat X/Y will change Verts count and then you will need to change Particles Number accordingly.


UVs on Blender and Substance Painter are different

If you want to export your model to other softwares (like substance painter), you have to apply your modifier first.

When applied, you can see that your UV are broken, you have to re-unwrap.

Little tips after seeing your .blend : when you used mirror modifier, be sure to have all your half-mesh on the same side. This will prevent arrival of weird artefacts or bugs.


Newline using \n

\n in Python is the newline character.

Execute the lines in python.

import bpy
bpy.context.scene.render.stamp_note_text = "Line 1.\nLine2."

You will see a nondisplayable character show up in the note field of the stamp. (It is a newline character, which can't display in a single line textbox.) Rendering it, properly display the newline.

Automatic wrapping

  As of 2.77 the note will be wrapped onto new lines [...]

This refers to too long text snippes being automatically wrapped. A test seems to show a limit in characters though.


Where can game assets for Blender be downloaded?

You can find lots of downloadable assets at

Blendswap
TF3DM
Yobi3D


How to make curved windows using Archimesh?

I suppose one to go about this is to simply use modifiers.
Position the window group about where it should be, and add a subdivision surface modifier set to simple (this will avoid unwanted deformation of the shape and allow the next modifier to work)), followed by simple deform. set to bend to the window object inside of the window group empty.

Adjust the angle of the simple deform, and adjust position as needed, and you should end up with something like this result:


Hair particles loose shape in object mode

It is because you use Kink option in particle's children settings:

particle's children follows main hair particles, but deforms by different settings in children tab:

So you need to disable Kink, or if you want to use it, try to tune settings for more suitable result


Retopoflow is an add-on that is still in heavy development, and the authors would need to do the work to update it since there are many changes in the way Blender handles graphics now, as well as API changes for python.


How to bake with Blender 2.82 and keep shading information?


As far as I understand the manual, when a face is created, its vertices are indexed on a per-face basis (not the same as the vertex indices for the whole mesh).
Contrarily to the mesh-wide vertex indices, These are not accessible or modifiable.
In other words, your only solution is to rotate each face by whatever multiple of 90° and then use the modeling tools to get back the original shape and ratio of the face.
Or, as suggested in the manual, restart your modeling and use face duplication instead of edge extrusion or some other operator in order to get more predictable results, and display the instances while modeling so you don't get surprised later.


Image texture intensity on deformed mesh

It is possible to create an Image Texture from the Vertex Color layer. The process is a little convoluted (for the time being)
Method 1

Establish the vertex color map
Make a material from the vertex colors
Bake Mode: Texture
Make a material node tree to brighten the original texture with the baked one

Method 2  (cycles specific.. but can be done in BI too)

Establish the Vertex color map

Add Node Material to rgb Mix this:

Texture node
Attribute node referencing 'Col'

Establish the vertex color map. Here i'm remapping from average distance to the median of each polygon, I suspect you can modify it to behave the way you want. For this to work you need to be in vertex paint mode
import bpy
from mathutils import Vector

obj = bpy.data.objects["Plane.001"]
mesh = obj.data

mesh.vertex_colors.new()
color_layer = mesh.vertex_colors.active
verts = mesh.vertices
polys = []

# first scan through to figure out min and max stretch
for poly in mesh.polygons:

    face_median = Vector()
    for idx in poly.vertices:
        face_median += verts[idx].co
    face_median /= poly.loop_total

    qdist = lambda idx: (verts[idx].co - face_median).length
    stretch = sum([qdist(idx) for idx in poly.vertices])
    polys.append( stretch / poly.loop_total )

# now colour them as a function of their relative stretch
min_val = min(polys)
max_dif = max(polys) - min(polys)
i = 0
for g, poly in enumerate(mesh.polygons):
    c = (polys[g] - min_val) / max_dif
    for idx in poly.loop_indices:
        color_layer.data[i].color = (c,c,c)
        i += 1

## set to vertex paint mode to see the result
bpy.ops.object.mode_set(mode='VERTEX_PAINT')

1 - c would give the inverse

Node Tree
The two methods differ mostly in how the Node Tree is constructed:

mix(baked, original texture)
mix(vertex_color_layer, original_texture).

It may end up something like this, the setup is pretty similar for Cycles and Blender Internal

But really there are many ways to set up this node tree, probably deserving their own Question/Answer.


The zoom function with the mouse wheel sometimes zooms uncontrollably

I recently had this same problem in Blender 2.72 with no apparent answer. However, I found that by pressing Shift - C re-centered the Viewport and then I switched from User Perspective to User Ortho with NumPad 5, and everything returned to normal. I too experienced uncontrollable zooming that led to unquantifiable Location coordinates, but this method worked for me, I hope it solves your problem.


Problem with exporting FBX file with multiple materials and UV Maps

I was trying to export FBX and said error was poping up. It was 3 objects with 3 different UV maps on one MAP ( i think its called UV Atlas). 3 materials all assigned even had vertex group for each one. After multiple trys i separated all of the objects and started exporting them one by one. It appears UV map on one of them wouldnt let the whole model to export. I tried with materials as i heard that un assigned materials can prevent you from exporting... i tried saving to obj and than back to fbx still nothing. I made new seams (cause i found in error info multiple UVIndex mentions) and unwrapped it once more and it exported. Simply as that.


Animating sketches which were created using Grease Pencil generally is being done with Dope Sheet Editor by creating / editing sketches for each frame of animation.

Animating with Dope Sheet

After first GP pencil layer is drawn, open Dope Sheet Editor and switch it to Grease Pencil mode.

Once opened you'll see several (depending on amount of GP layers in your scene) channels with keyframe/-s.  From wiki:

  The DopeSheet should now display a few “channels” with some “keyframes” on them. These “channels” are the layers, and the “keyframes” are the frames at which the layer has a sketch defined.

And because you have one frame created, go to the next frame and edit sketch as desired. Keep in mind that this is 1 frame of animation, so changes should be tiny. Continue creating frames as needed; very useful tools for making this easier are:

Enable Editing Strokes button in the 3D View > Toolshelf (lets edit already drawn strokes);
proportional editing (simple mode and Connected one for editing only current strokes);
grabbing, scaling, rotating.
duplicating sketches from one frame to another - select frame in Dope Sheet and in the window header choose Frame > Duplicate Keyframes; copy of the sketch will be created and placed atop of the existing one. Grab it where desired.

It's possible to preview animation at any time by pressing Alt+A. Once there is desired amount of keyframes the animation is ready:

The downside of this method is that you should create each frame by hand. All the color information, thickness of the stroke etc. will be preserved though.

See How to sketch animation in Blender

Converting Grease Pencil and animating with Shape Keys

This way is completely based on using Join as Shapes. It allows you to morph between two objects simply joining them with using this option. However, the objects must have the same vertex count (which can be quite difficult for Grease Pencil conversion). Also it doesn't provide any flexible way to preserve stroke thickness and color as first way does.

Sketch 1-st frame. There can be either 1 GP layer contaning both frames or 2 different layers.
Sketch last frame.
Place selection on the first keyframe in Dope Sheet (if sketches are stored as keyframes in Dope Sheet) or choose desired Grease Pencil layer (if sketches are stored on different GP layers).
In the Toolshelf choose Grease Pencil > Convert. Choose Path or Bezier Curve. In the options of the last operator uncheck Link Strokes.

This will make end of the strokes not to be connected and will preserve their overall shape.
After converting second sketch select both of them, create Basis shape key for it and choose Join as Shapes from dropdown menu in Shape Keys panel.

The disadvantages are that drawing thickness and color aren't saved. Hence this way, inspite of providing possibility to not draw middle frames of animation, is less flexible.
Although, you can preserve data about how fast the strokes were drawn which could be used for creating Evaluate Time F-Curve and reconstructing the thickness of strokes. The Timing mode options let the curves have different thickness (more complex way).


UV project from view: Can foreground items block projected image from proceeding?

If I understand correctly, what you are looking for is to use an object as a mask. There are many ways to do it. Here are some:

In cycles, you can use holdout as a material on the monkey to get you what you want.

Rendered image

Also if you use a material index on the monkey's material you can substract the object from the background using the compositor.

The plane and the monkey have different materials.

On the monkey's material change the pass index to 1.

Enable material index on your render layers.

In the compositor use the IndexMA as alpha for your image.

To get this:

In Blender internal you can set the material of the monkey to be used as mask.


Replace background while using HDRI for lighting?

Enable Transparent in Render settings > Film:

Now the sky will render as alpha transparency when seen directly, but still illuminate and reflect off other objects.

Once you have a transparent background, it can easily be filled in with another image via an Alpha Over node:

The Translate node is used for some tweaks to the positioning of the background image.


When I link a blend file, why is the object showing up at 1/10th the scale?

Two reasons this can happen are:

The file you are appending into has different units from the file you are appending from. You can go to the Units panel in the Scene tab to verify this.
You are using either Metric or Imperial units and the Scale value is different in both files.


Make multiple smaller weapon animation clips out of big default action for use in Unity game engine

The easiest in my opinion way to do that is to bake the animation fragments to new actions, separate for each desired state. To do that, use Action>Bake Action which you find in left tab (appears and disappears after pressing "T"). You'll achieve desired bake length by restricting animation time on the timeline to each state duration. After baking just move keyframes of created this way new action to the timeline beginning and voila.
You can get rid of unnecessary action by removing it from the mesh (or whatever else it's assigned to) in Action Editor (click on X icon on the right from the action name) and then choose Orphan Data in Outliner Search menu and click on Purge All. (this way you will get rid of all actions, textures, materials etc. that have no user permanently, so be careful to check everything first).


How to merge two faces by creating a third

Here is a two-step solution:

1) Duplicate your face
Mesh->Duplicate
Shortcut: Shift+D

...and move it up
- use snapping options
- use orthographic view and side view to be more precise

2) Select your edges and connect them with a new face.
Vertex->New Face
Shortcut: F


Forgot to unparent armature while editing mesh, how to fix deformation?

I downloaded your file, the issue is indeed from Shapekeys.
The reason why you can't see them is that you did a word research of your shape keys, and none of them correspond to, so they are hidden. Sympy remove the research and you will get your shape keys displayed :

Then, if you want your modifications to be definitive instead of shape keys, you simply have to select and delete every shape key, keeping the shape you want to keep as the last to delete. Here I did the manipulations to make the Key 2 as definitive shape:


You can use a "screw modifier" instead of a taper object.

The first shape above is the selected edges with a screw on it.
Then it is curved (second and third objects below it).
Depending on what you want:

The second also has a bevel and subdivision to keep sharp edges but follow the curve smoothly.

The third only has a curve.


Is there a way to make bevels automatically dissolve vertices?

What I understand from your question is that you will have to do this before bevelling: Selct your whole mesh by pressing A on your keyboard, and then press M>Merge by Distance. This will dissolve any overlapping verticies, and then you will have good bevels.


Animation that produces object change eg curtain drawstring torus

Unfortunately there isn’t enough information to be able to say why your two animations are behaving differently - most likely there is a significant difference such as additional keyframes or differences in geometry (such as negative scale - try ‘Apply Scale’ or check the direction of your normals).
However, to ‘fix’ the state of the cloth simulation into your mesh (so it becomes a static mesh again) you simply play the simulation to the point you want and then in the Modifiers panel click ‘Apply’ on the Cloth modifier. This will apply the current state of the simulation to the mesh and it will no longer be simulated.


Make a point cloud where you want your voluminous shadow to be (I suggest keeping it cubish in shape so everything matches up alright), and use the volume shader on this extra object instead of the surface shader. Making it a shadeless object would also keep it from casting any additional shadows (I don't think it does with the point cloud method, but this is a workaround if it does.). You can mix this whole thing with a transparent shader to control how visible it is.

EDIT: Point cloud is unnecessary with this method, just warp a cube to the right shape.


Scaling UV map to bounds but preserve mesh proportions

Example with an oval shape :)    :

1: UV Mapping  >  Project from View.

2: In the UV Editor open the UV's menu and choose Pack Islands, turn off the Rotate option.


Interactive mirror (Ctrl + M) doesn't mirror object

When using Interactive mirror as with the mirror modifier, you need to mirror about a point else pertaining to the former, the object will just mirror/flip in place and if the object is symmetrical you won't see any changes. This point can be the object origin, another object or the 3d cursor depending on which mode you are using.
You can either change the object's origin or simply switch the pivot point to use the 3d cursor and then mirror.
It is also worth noting that mirroring basically just scales the object on the desired axis by -1 (so without applied rotation you might not get expected results). So as a cheap and quick alternative to CtrlM, you could just select the object and use SX -1.
Mirroring in place or right on the object origin or 3d cursor.

Mirroring about a point

What I did in the last example was to first translate the object over a bit on the X axis and then change the pivot mode to the 3d cursor as the mirror tool needs a point to work around. I then invoked interactive mirror and selected the axis I wanted to mirror on which in the example is the X axis. In the first one, I simply mirrored a single object and it flipped it to the opposite side, in the second, I duplicated the object and then mirrored so I had identical copies.


You should only use Dynamic Topology if you make major changes to your mesh, especially if you want to expand an area out effectively changing the necessary Topology. Also you should avoid using Dyntopo if you use UVs and never use it with Subsurface on a mesh, because it works with triangles instead of quads.

For Example if you have a Cube and you want to add details on it you could do it with dyntopo if you don't bother with UVs Vertex Colors and Modifiers like the Subsurface Modifier  but if you want to use any of it its not recommended. UVs can of course be added later on in the process but that more difficult for a triangle mesh than for a quad mesh (at least in my opinion). But there aren't only negatives to Dyntopo. For Example you want to make that same Cube but for a Game. Then it needs to have the least amount of triangles possible. Dyntopo adds only vertices where you need them, where the other way of doing it with a Multiresolution Modifier would add a lot of vertices everywhere to get the same level of detail, while keeping the topology. Also you could only use dyntopo if you want to sculpt something like a human from just a cube, because you don't have the correct topology for a human in a Cube


How to get rid of the mirroring effect in edit mode after applying the mirror modifier in Blender 2.8

Check left toolbar, options tab: Mesh options, X mirror.


Maximizing Render Field of View in Interior Scene

You can change the sensor size in the camera settings. Or you can change the focal length. But what about distortion for a wide lens - it's physics, you cannot cheat it. If you want, you can use orthographic, or panoramic camera (the latter seems to work in cycles only). If you want an impossible camera shot, you also can make some of your walls to be transparent for camera rays from outside, and make the shot through the wall with the lens focal length you want.


Why are some of the faces on my mesh lit up?

First off, you should check where your light is coming from.

If the light is close to the door, the dents of the doorframe might block light, only parts that are raised a bit will catch the light. You could easily check that by placing another light source in the scene.

Another thing you should check is if your normals are ok. You can tell blender to recalculate these when you go into Edit Mode, select the affected faces of the model (should be ok if you just select the entire model) and then press "Recalculate" in the left tab under "Shading/UVs". Flipped Normals can often cause lighting issues in the viewport as well.


Use the import operator in another.

As commented, rather than importing, then waiting for object selection to rescale, recommend rescaling on import.

Here is script that uses the template  Text Editor > Templates > Python > Operator Import as a starting point.

Note I am using 2.8. If you are using 2.7x or before, adjust to reflect that version accordingly.  Most notably annotations. where the annotation foo : BarProperty() needs to be replaced with assignment foo = BarProperty()

Assumes you are doing little else than choosing a filename of obj, and when selected passes it to the import operator.

After import the new objects are selected, and in the context.selected_objects list.

Following test script prints out name and a volume based on object dimensions.

import bpy

def read_some_data(context, filepath):

    bpy.ops.import_scene.obj(filepath=filepath)
    for o in context.selected_objects:

        dim = o.dimensions
        vol = dim.x * dim.y * dim.z
        print(o.name, vol)
        # scale based on volume
        if vol < 1:
            o.scale *= 2

    return {'FINISHED'}

from bpy_extras.io_utils import ImportHelper
from bpy.props import StringProperty, BoolProperty, EnumProperty
from bpy.types import Operator

class ImportSomeData(Operator, ImportHelper):
    """This appears in the tooltip of the operator and in the generated docs"""
    bl_idname = "import_test.some_data"
    bl_label = "Import Some Data"

    filename_ext = ".obj"

    filter_glob: StringProperty(
        default="*.obj",
        options={'HIDDEN'},
        maxlen=255,  # Max internal buffer length, longer would be clamped.
    )

    def execute(self, context):
        return read_some_data(context, self.filepath)

# Only needed if you want to add into a dynamic menu
def menu_func_import(self, context):
    self.layout.operator(ImportSomeData.bl_idname, text="Text Import Operator")

def register():
    bpy.utils.register_class(ImportSomeData)
    bpy.types.TOPBAR_MT_file_import.append(menu_func_import)

def unregister():
    bpy.utils.unregister_class(ImportSomeData)
    bpy.types.TOPBAR_MT_file_import.remove(menu_func_import)

if __name__ == "__main__":
    register()

    # test call
    bpy.ops.import_test.some_data('INVOKE_DEFAULT')


You can delete that property, the error you get is probably (here recreated):

>>> bpy.types.Scene.ragamuffin = bpy.props.IntProperty(default=1)

>>> bpy.types.Scene.ragamuffin
(<built-in function IntProperty>, {'default': 1, 'attr': 'ragamuffin'})

>>> bpy.data.scenes['Scene'].ragamuffin
1

>>> del bpy.data.scenes['Scene'].ragamuffin
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
AttributeError: bpy_struct: del not supported

But there's no guarantee that will make the scene work again..
removal anyway:

>>> del bpy.types.Scene.ragamuffin    # success!
>>> bpy.types.Scene.ragamuffin
Traceback (most recent call last):
  File "<blender_console>", line 1, in <module>
AttributeError: type object 'Scene' has no attribute 'ragamuffin'

I can't for certain say what produced those properties, but it's worth having a look at the source of the plugin. For instance here RIBMosaic implements some unusual (not bad...just not standard bpy style) property registration techniques using exec. meaning you can't easily tell in advance exactly what the properties will be called.


Blender 2.83.0 suddenly begins crashing on startup with call to libc.8.so

This problem has been resolved by verion 2.83.1


I found them, they were just on a separate tab (withing the right-hand bar menu) instead. Which holds these properties.


How can I make an object's tip position exactly where the IK controller bone is?

Add one more bone from top controller to bottom:

Add new IK to it with target to bottom controller and chain length 1

Finally, reparent this part of leg to this bone


using samples in blender cycles render layer tab

As indicated by the tooltip when hovering the mouse pointer over it, the Render Layer Samples setting allows you to override the Number of samples used. Setting it to 0 (the default) tells Blender to use whatever is the default for the scene (ie, the number of samples set in the Samples panel of the Render properties). Setting it to a non-zero value will use that number of samples for that render layer.

Eg, setting it to ‘1’ will render that layer as if the Render Samples is set to 1.


Creating a shortcut for changing the solidify thickness

This can be easily done with python.

1. Get the script

Copy the script into blender's text editor and save it as "solidify_set.py" (NOT "solidify_set.py.txt").

OR

Download from github (see the comments for more info).

2. Install it as an add-on

(make sure to click the all category and the community supported level)

3. Add the hotkeys that you would like

It should be added in the "3D View > Object Mode" section where the subdivision set operator is.

Click Add New, then enter "solidify_raise", then enter your hotkey (and select any key modifiers you want...shift, ctrl, etc.). Click Add New, then enter "solidify_lower", then enter your hotkey (and select any key modifiers you want...shift, ctrl, etc.). You can click on the amount setting to set the amount it shifts. Clicking on the restore button, restores your hotkeys to the way they were before. Finally, don't forget to save user prefs with Save User Settings :-)

# Copyright 2016 Jake Dube
#
# ##### BEGIN GPL LICENSE BLOCK #####
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#
# ##### END GPL LICENSE BLOCK #####

import bpy
from bpy.types import Operator
from bpy.props import FloatProperty

bl_info = {
    "name": "Solidify Set",
    "author": "Jake Dube",
    "version": (1, 0),
    "blender": (2, 77, 0),
    "location": "Spacebar > Solidify Raise/Lower",
    "category": "Object",
}

class RaiseSolidify(Operator):
    """Raises solidify modifier."""
    bl_idname = "object.solidify_raise"
    bl_label = "Solidify Raise"
    bl_options = {"REGISTER", "UNDO"}

    amount = FloatProperty(name="Amount", default=0.01)

    def draw(self, context):
        layout = self.layout
        layout.prop(self, 'amount')

    def execute(self, context):
        scene = bpy.context.scene
        for obj in bpy.context.selected_objects:
            scene.objects.active = obj
            modifiers = obj.modifiers
            found = False
            for mod in modifiers:
                if mod.type == 'SOLIDIFY':
                    mod.thickness += self.amount
                    found = True
                    break
            if not found:
                bpy.ops.object.modifier_add(type='SOLIDIFY')
                for mod in modifiers:
                    if mod.type == 'SOLIDIFY':
                        mod.thickness += self.amount
        return {'FINISHED'}

class LowerSolidify(Operator):
    """Lowers solidify modifier."""
    bl_idname = "object.solidify_lower"
    bl_label = "Solidify Lower"
    bl_options = {"REGISTER", "UNDO"}

    amount = FloatProperty(name="Amount", default=0.01)

    def draw(self, context):
        layout = self.layout
        layout.prop(self, 'amount')

    def execute(self, context):
        scene = bpy.context.scene
        for obj in bpy.context.selected_objects:
            scene.objects.active = obj
            modifiers = obj.modifiers
            found = False
            for mod in modifiers:
                if mod.type == 'SOLIDIFY':
                    mod.thickness -= self.amount
                    found = True
                    break
            if not found:
                bpy.ops.object.modifier_add(type='SOLIDIFY')
                for mod in modifiers:
                    if mod.type == 'SOLIDIFY':
                        mod.thickness -= self.amount
        return {'FINISHED'}

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

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

if __name__ == '__main__':
    register()

Troubleshooting add-on installation tips:

https://blender.stackexchange.com/a/13917/28015
https://blender.stackexchange.com/a/1689/28015
https://blender.stackexchange.com/a/35600/28015
https://cgcookiemarkets.com/2015/12/16/installing-add-ons-in-blender/


I found a script by dustractor, which adds a toggle button to the header of the 3d View which splits and joins the area: https://github.com/dustractor/areatype_split/blob/master/init.py

The values of the working(vertical) area_join function seems to be:

min_x = Left x of left window
min_y = Mouse position, starting from window bottom y (when clicking button)
max_x = X position between left and right window
max_y = Mouse position, starting from window bottom y (when clicking button)

Here's my version, with a working button in the sequencer header area:

bl_info = {
        "name": "Areatype Trim",
        "description":"This example adds a button which toggles a split of an area with another.",
        "author":"dustractor@gmail.com, tintwotin",
        "version":(0,1),
        "blender":(2,65,0),
        "location":"Button prepended to the header of the sequencer.",
        "warning":"",
        "wiki_url":"",
        "category": "Sequencer"
        }

import bpy

class AREATYPE_OT_trim(bpy.types.Operator):
    bl_idname = "areatype.trimview"
    bl_label = "Trim"

    def execute(self,context):
        thisarea = context.area
        otherarea = None
        tgxvalue = thisarea.x + thisarea.width + 1
        thistype = context.area.type
        arealist = list(context.screen.areas)
        for area in context.screen.areas:
            if area == thisarea:
                continue
            elif area.x == tgxvalue and area.y == thisarea.y:
                otherarea = area
                break
        if otherarea: #leave trim-mode
            bpy.ops.screen.area_join(min_x=thisarea.x,min_y=thisarea.y,max_x=otherarea.x,max_y=otherarea.y)
            print("this x: "+str(thisarea.x))   #min_x = left x of left window
            print("this y: "+str(thisarea.y))   #min_y = mouse position, starting from window bottom y
            print("other x: "+str(otherarea.x)) #max_x = x between left and right window
            print("other y: "+str(otherarea.y)) #max_y = mouse position, starting from window bottom y

            bpy.context.space_data.overlay_type = 'CURRENT'
            bpy.ops.screen.screen_full_area()
            bpy.ops.screen.screen_full_area()
            return {"FINISHED"}
        else: # enter trim-mode
            bpy.context.space_data.overlay_type = 'REFERENCE'
            areax = None
            bpy.ops.screen.area_split(direction="VERTICAL")
            for area in context.screen.areas:
                if area not in arealist:
                    areax = area
                    break
            if areax:
                areax.type = thistype
                return {"FINISHED"}
        return {"CANCELLED"}

def draw_func(self,context):
    layout = self.layout
    layout.operator("areatype.trimview",text="Trim",icon="ARROW_LEFTRIGHT")

def register():
    bpy.utils.register_class(AREATYPE_OT_trim)
    bpy.types.SEQUENCER_HT_header.prepend(draw_func)

def unregister():
    bpy.utils.unregister_class(AREATYPE_OT_trim)
    bpy.types.SEQUENCER_HT_header.remove(draw_func)

if __name__ == "__main__":
    register()

This is where I am with the trim-script right now: https://gist.github.com/tin2tin/b7fd08762d1d8290626ee299488e2798


What does Open Shading Language ( OSL ) mean?

Open Shading Language is a programming language designed for writing shaders.

From the OSL page:

  Open Shading Language (OSL) is a small but rich language for
  programmable shading in advanced renderers and other applications,
  ideal for describing materials, lights, displacement, and pattern
  generation.

A Script node was added in blender 2.65 that allows users to use OSL shaders in Cycles.


How would I make a door open when a key is pressed and a character is near?

I tested your .blend and as you said everything is set up correctly.
But the 'Near' sensor only gets activated by "Actors" (this is a physic 'property') so you need to go to the physic tap of your character (Cube) and actiate Actor.


In cases of hard surface meshes like blocks, buildings etc. it's possible to select faces similar by normals or co-planar faces and convert that into the boundary loop.

Select one face in the area around which you'd like to select 4 edge loops.
Select similar faces of that area (use Shift+G > Normal or Shift+G > Co-planar).
From the Select menu in the 3D Viewport header find Select Boundary Loop (or press Ctrl+E and find it in the list).

Note that this most likely will select more than expected once your geometry is complex enough (e.g. there are more blocks like this where faces' normals are pointed into the same direction etc.)

One more possible thing is to select edges by their sharpness. It's accessible through Select > Sharp Edges. Similar effect will have Shift+G > Face Angles.

Note that this will select sharp edges across all the mesh (above some threshold).


Problem with an UV map (doubled mesh) and texture painting

You have double geometry overlapping. Deselect everything in edit mode and then select one copy of it by hitting L while hovering the mouse over it. Hit X to delete it. Redo UV unwrapping after that.
The mesh also looks way too dense for that amount of detail...


Shape keys and applying subdivision surface modifier

This answer comes from a previous one here Cannot Apply Array Modifier. I simply add some more details in the explanation and a way to do it for all shape keys at once.

Here is a simple shape, which has a subsurface modifier and shape keys :

Make one copy of your initial object for each shape key and set for each the shape key to "1" :

Select this copies and Alt + C and "mesh from curve/..." :

The modifiers are applied and the shape keys too (these objects now have no shape keys or subsurf modifiers).

Make another copy of your original object, remove the shape keys from it, and apply the subsurf modifier :

Now select the "shape keyed" objects, and the last copy we just made (in this order), and in the shape key panel use "join as shapes" :

We now have the final object, with the subsurface modifier applied and the shape keys available :


I guess you are using the Wireframe modifier. Instead use the Wireframe input Node to affect a Mix Shader Node

Here we have a Diffuse BSDF Node (Red) and a Transparent Shader mixed together. Without a Factor they will blend together to a pale Red.
With the Wireframe input as the factor only where the wireframe exists is Red, everywhere else is 100% transparent

As the geometry is not affected another material on the smae or duplicate object can be just solid.


How can you rotate/turn a crank in barrel organ?

Turning the barrel organ handle -

The handle is animated to rotate.

The right arm hand-bone's 'Pole Target' (in Inverse kinematics) is set to the handle so it is forced to stick onto and follow the handle.


Are vertex groups that had Mask Modifiers applied to them gone forever?

Once you apply a modifier the transformation is permanent.

Modifiers are designed to work in a non-destructive way, once you apply them it is going to be very hard to go back to a previous state, as the undo function is quite limited (and completely unavailable once you save and re-open a project).

Unless you have a good reason to apply a modifier, you don't need to

Form the blender Manual:

  Modifiers are automatic operations that affect an object in a non-destructive way. With modifiers, you can perform many effects automatically that would otherwise be too tedious to do manually (such as subdivision surfaces) and without affecting the base geometry of your object.

  They work by changing how an object is displayed and rendered, but not the geometry which you can edit directly. You can add several modifiers to a single object to form The Modifier Stack and Apply a modifier if you wish to make its changes permanent.

If you need to disable the modifier temporarily you can use the camera and eye icons.

Again, from the manual:

  Render (camera icon)

  Toggles visibility of the modifier’s effect in the render.

  Show in viewport (eye icon)

  Toggles visibility of the modifier’s effect in the 3D View.

  Show in Edit Mode (box icon)

  Displays the modified geometry in Edit Mode, as well as the original geometry which you can edit.

  Show on cage (triangle icon)

  When enabled, the final modified geometry will be shown in Edit Mode and can be edited directly.


Extending an F-Curve in a certain channel

If you select a point of the F curve you can read its values on the view tab on the right of the curves window (just under modifiers).
I'm assuming that your first keyframe you want to copy is frame 3, value 0.7, and the last is frame 65, value - 2.3.
So you want to copy the curve with an offset of 63 frames on X and a value of 3 on Y.
So select the curve points, shift D to duplicate, X to move on X axis, 63, Enter.
Then Press G, Y, - 3 Enter.
Then you'll have to globally adjust the Y values of the copied keyframes to compensate the needed little movement between frame 65 and 66.


How to repeat a cyclic animation of an object/armature from command line with Blender API

Maybe it'll help you
**>>In the Timeline panel, display the layer property containing the keyframes you want to copy.

Select one or more keyframes.

Choose Edit > Copy.

In the Timeline panel containing the destination layer, move the current-time indicator to the point in time where you want the keyframes to appear.**


Carve Hole in A metal water bottle model

For the bottom of your bottle you can model it, use a Mirror modifier as it is symmetrical, give it enough topology as it will need to be bent, duplicate with an Array, then at last use a Simple Deform / Bend mode to make it turn around 360°. Apply the Array and Simple Deform and remove the doubles.

For the bottle cap it seems a bit more complicated as the cut shape doesn't deform to the center. So what you could do is create a cylinder, only keep a segment, bevel it:

Cut a hole, for example with a Boolean modifier or just some vertices displacements. Extrude downwards, fill the faces.

Create an empty at the center of the cylinder object. Give the cylinder an Array modifier > Object Offset, with the empty as Object. Rotate the empty so that it recreates a cylinder.

Give your object a Subdivision Surface modifier, bring some corrections to the topology in order to sharp the edges etc.


Is it possible to branch a Bezier curve randomly?

You could try a L-system. To use curves the way you describe it would require scripting.
There is a plugin for 2.6 available here
Related:

Algorithmic Botany


Adjust the falloff distance in the point light properties. A radius of 1 create a fallout distance of 25 and it is directly proportional to that. So a radius of 2 has a fallout distance of 50.


Wood texture shows in material but not in rendered mode

The image texture need to be connected to a diffuse shader node before going into the material surface output.


Subdivide hexagon surface into equilateral triangles

Well after some fumbling around I found a way to do it non-destructively.

You first have to subdivide your hexagon once by hand, you can do subsequent steps procedurally using modifiers

Poke the faces of your NGON hexagon with Alt + P
Eliminate every other radial edge so you end up with three quads
Add a Subdivide modifier set to Simple
Then add a Triangulate modifier
Adjust the subdivision level through the Subdivide modifier


Cycles gives weird, blank output image while rendering

The problem is apparently that the camera that was selected under the "Scene" panel was different from the camera that was selected as active in the scene I was working on. The scene that was set to render under "Render Layers" was different from the scene that the "Scene" camera was in, and so this caused it to give a weird, black output. It's been solved. Cycles now gives a normal image output.


Use a gradient node and modify its color with a ramp node.

Then drive its location with an empty.


Export obj with tga textures to obj with png textures using blender?

There is a way to do this in blender... baking.  But it is the most complicated way to do what you want.

The more efficient method, would be to open the images in Photoshop, Gimp, inkscape, or whatever, and just save them as png files.

Then, in blender you can just swap the textures of the material. Or instead of placing the .tgas place the newly created .png files.

You should just be able to save the edits.


Is it possible to convert Matcap colours to vertex or material colours?

This is not possible, using blenders built-in matcaps.

However you could setup a material that uses a matcap image that uses normal mapping relative to a camera object, then bake this to vertex colors.


How can particles be emitted from particles?

The trick is, you use the particle instance modifier on one particle system, and the particle system is recognized as one object, so it can then be emitted from itself.

Create a baseObject (that will be emitting the particles that emit the particles).
Create a ps1Object (it will be the object that is emitted in the first particle system)
Give the baseObject a particle system.
Select the ps1Object, and give it a particle instance modifier. In the object tab, select baseObject. Make sure to reset the location of the ps1Object, so it looks like it's emitting from the baseObject.
Give the ps1Object a particle system and check Use Modifier Stack in the Emission tab.


Moving all keyframes in a scene at once?

Test Now and Often

To test archive your file.
Dare to move keyframes now.  If your sequence is currently in the frame range [1, 1200] try to move it to [2000, 2199] with the methods described below.
Blender is flexible and very often we need to change our intentions. No one can get non trivial interesting sequences correct the first time. Yet try to plan your storyboard and action and timing as much as possible.
There are a few items which affect observable motion.
The Dopesheet Window allows FCurve Keyframes to be moved all at once, with less detail and targets a  higher level of abstraction.   To a large degree this is true.  Select and Grab and Move in the X direction.  This can include Modifiers and Constraints. See free existing and finished intro videos on the famous website that rhymes with loolube.  Some introductory concepts are best illustrated by a video and many exist.

Know that there is an NLA Window editor which can affect motion and timing.  If you have not used it yet then at present that is not a concern.
Python Drivers.  Motion can be affected by Python Drivers with zero Blender Keyframes.   Thus there can be complications. There are other software drivers such as BAN Blender Animation Nodes which can be researched by you and are not discussed here.
Consider whether or not you have any interesting add ons
Curve Modifiers which take a Frame Range
Other issues that come to mind with further thought belong here
Know that Blender Rendering and Playback can be any range [M .. N].  0 > M > N as a simplified statement.  This includes 3D View and Rendering frames from the hard disk such and files of the form PNG.  So you can focus on frames [44,888] as an example.  You need not start at frame 01.
Clearly Scene changes allow more flexibility.  If two scenes share no visuals they can be rendered in any temporal sequence and resequenced in the VSE.
Timeline markers may need to be moved manually.


UVs applied in viewport, but not in render

How the issue was resolved:
I was able to fix the issue by giving each hair object a new name. The previous objects were named "RemeshedHair.00X" with "X" being incremented every time I created a new object. After changing the names to "Hair front/Hair side/Hair back" the UVs were able to be applied properly.
My hypothesis on the cause of the issue:
I no longer have a copy of the .blend that contains the issue, so I can't say for certain what happened, but I can guess. It might be possible that this issue was just some bug in the way that blender handles it's internal data structures. It might be the case that the UV map was somehow unlinked from it's object in the portion of the structure where rendering data is stored, and renaming the object caused an update to that portion of the structure, resolving the issue.


Issue with faces after merged loops and move operation

Fixed by deleting transparent faces and extruding them one by one from the faces which are going by the selected loop.


changing black uv texture areas to transparent in cycles

You have to make the following Node set up: Connect 'Mix Shader' node in the 'Material Output', then use as your first shader 'Diffuse' and plug in it your 'Image Texture' node, now connect 'Transparency' Shader as the second shader, and finally to the factor connect your 'Image Texture' once more.


how to make same extrude to other side in object

There are many ways, tTsure that your object is symmetrical and it's origin is at the center. In the modifier options, choose which axis (x,y, or z) you would like the other extrusion to be.

Hope this helps


How can you transfer details from high poly to low poly?

It's easy to fix. You just took the wrong baked image ;-)
Switch the Rendering workspace. There you can see all images in your scene easily. Check the dropdown list (Rendering result) and you'll see that "hand_lp.001_normal.001" is the correct baked normal map. In the Image Texture node you have selected "hand_lp.001_normal.002", a black one. Just select the correct one.


How do I apply modifiers and other changes in 2.90?

While Emir's answer is technically correct, it can be tedious to apply multiple modifiers using the Modifier's panel. Note  that, for any selected object, you can also float your cursor anywhere within a given modifier's listing within the Modifier panel and press the Ctrl + a shortcut, and that specific modifier will be applied instantly. Which is nice.
But if you have a lot of modifiers this may still not be very convenient. Thankfully, you can apply all modifiers at once by selecting the object which contains them in Object Mode, and at the top of the 3D View, go to the Object menu, then Convert To, and finally Mesh. Even though the mesh was already a mesh before you began, converting it to mesh applies all its modifiers at once.


You can use faces normals to obtain the colors of the faces (more or less randomly) and use UV input to give them a little gradient effect (or some lamps also).

For the color :

Use "texture coordinate" and "normal" as input
Add a vector mapping (this is usefull after to tune the faces orientation by rotating x, y or z and change the colors)
Separate the coordinates
Add a color ramp to each so that you can modulate each intensity
Combine them and use it as a color input for the shader

For the little gradient effect :

Use "UV" input of the texture coordinate input
Separate and use X or Y (U or V)
Add a color ramp to tune the value

Use both by mixing them and link to the shader.

This is not the exact same colors as your picture, but the same kind of effect. You'll probably have to tune : color ramps, orientations, eventually inverting X, Y, Z...


It's hard to say for sure without seeing the file.
But I believe you're probably seeing places where the reflections shoot off into infinity.
Let's think about glass, which is one place where you mentioned problems.  A ray either goes through the glass or reflects from the glass.  You can get vastly differing depths depending on which it does.  The depth needs to take into account the reflection for purposes of misting, DoF, etc (think a mirror).  But there's no sense in mixing depths-- you're not going to get something more right by averaging the depth through and the depth reflected, you're just going to get something completely wrong.  Blender has to pick between reflected depth and refracted depth, and where it changes its pick, you have a discontinuity.
What's the solution?  I've asked around and not heard any suggestions.  If you want your depth to a surface, you can render an Eevee depth map, which won't have this behavior.  You could also consider using multiple render layers, perhaps with material AOV outputs that would let you specify flat depth, reflected depth, or refracted/transparent depth.   But yes, these are frustrating solutions in that they can potentially add a lot of render time and complexity.


VSE: How to set a custom Proxy percentage size; for example 10%

No, you can only choose between 25, 50, 75 and 100%.

It's hard coded as you can see when you try to autocomplete the following in a python console:

>>> bpy.ops.sequencer.enable_proxies(
enable_proxies()
bpy.ops.sequencer.enable_proxies(proxy_25=False, proxy_50=False, proxy_75=False, proxy_100=False, override=False)


Adding "Select Hierarchy" from the outliner to the Quick menu will add it to the Quick Menu of the outliner.
Instead you may use the following solution:
Press F3 in the 3d window to search for a function and type "Select Hierarchy" (without quotation marks). It will even show up, if you type "hie" instead. Then press Return.


Changing Specific Cylinder Radius or Diameter in Blender 2.9

Use the tools parameters that appear at the bottom left of the viewport (or press F9 to have them appear on a floating window).


Weight paint doesn't work in weight paint mode

I was having this same issue. I realized I was trying to paint onto a mirrored section without having actually "applied" the mirror modifier. I am very new at Blender, but thought I'd share in case anyone else falls in the same hole.


To make the header appear again, click the downward facing arrow on top the window :

Then, you can change the window type as usual.


This is the setup I use for glasses, producing results such as the one above. It works by rendering the material as regular glass, except for lightrays that bounce too much (that is, more than three times), in which case it gets rendered as a simple green, transparent material. The Volume Absorption node is there to make sure the effect still happens when the sheet of glass is viewed from the side.

You can adjust it to your own needs by substituting the Glass BSDF node for the one(s) you've so far been using and tweaking the colours to your liking.

You can check this and many other tricks for rendering glass-like materials in Vilem Duha's Blender conference, Everything you wanted to know about rendering Glass not only with Cycles.


Saving a rendered picture with selected Buffer?

Nope, saving the image from the Image Editor will save the "Color and Alpha" channel no matter what channel is selected.

If you want to save one of the other passes you will have to use the compositor.

The Render Layers node is the output of what blender rendered (there are lots of passes you have access to).
The Composite node will be what is displayed in the Image Editor as the Render Result.

With the two nodes connected like in the image above (Render Layers Image output to the Image input of the Composite node) you will get the exact same thing as what you could save before.

However taking the Alpha out of the Render Layers node will give you a grayscale image of just the alpha. (In most cases there is no reason to do this because if you are saving to an image that supports transparency then the alpha channel is the same as the output here.)

Now the last option in the image editor is Z depth. If you simply take the Z and plug it in to the Image output, you will get an image that looks all white. However all the values are there, they are just over 1. (If you save to an image format the supports full floats, exr is the most common, then you will have access to all the values.) But if you are saving to a png, or just want to visualize the Z data, add a Normalize node (like in the picture). That node will compress all the values to fit between 0 and 1, which is the range that your monitor can display, and a png can hold.

Now if you want to save multiple passes all at once, you can use the File Output node.

To add outputs to the file output node open up the properties region with N then click on the large "Add Input" button.


BVH Export/Import, Armature different when re-imported

The BVH format stores bones differently to Blender.

Specifically, it doesn't support bone-length and bone-roll, each bone is just a joint(as if you have many parented empties in Blender), so this information is lost on export, when the BVH is imported back in, the animation will match the original, but not the armature.

The bone lengths & roll have to be calculated on import (because its not in the file).

This is simply a limitation of the BVH format, or a difference at least, with Blender's armature representation.


How do I install the add ons into blender?

The Reason that I couldn't use the zip file was because Safari automatically opened them. If anyone else is having this problem, open Safari, click preferences, and uncheck the box that says "Open 'safe' files after downloading".


Only .blend files can be opened by Blender. Other file formats can be only imported.

Obj Import

Go to File ‣ Import ‣ Wavefront (.obj) and choose the file.

Remember to save the Blender file as a .blend file. If you wish to export the obj file go to the menu item File ‣ Export ‣ Wavefront (.obj).


Mirrored mesh splits when manipulating bones

Finally it was the order of the modifiers.

Positioning the mirror modifier before the armature modifier in the modifier stack fixed the issue.

The problem seemed to be that the bone transforms made in pose mode were applied first and then after the mirror was applied, which caused the splitting.


Adding keyframes while modifiers are active

If you want to set keyframes, enable "additive" on the modifier settings of any channels you wish to keyframe, then keyframe them.  (This will require expanding the f-curve modifiers so you can see their options.)  If you'd like to disable "additive" afterwards, you can, and the keyframes will remain, but keep in mind that keyframes don't actually affect the output of modified f-curves unless "additive" is set-- otherwise, the modifier straight up replaces the keyframed values.