Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoerg Mueller <nexyon@gmail.com>2010-08-10 13:47:57 +0400
committerJoerg Mueller <nexyon@gmail.com>2010-08-10 13:47:57 +0400
commit46cac18815cff69f4eec30ae36a485df141e4b87 (patch)
treead4d95cb4d0aee3510314671681ded6631344c59
parentd9272cdc20e7c85a07464e91147474d06d0e6922 (diff)
parentc0e39df6ac42d137fd51eeea463aace856bf97d4 (diff)
svn merge -r 31145:31210 https://svn.blender.org/svnroot/bf-blender/trunk/blender
-rw-r--r--release/scripts/io/export_3ds.py4
-rw-r--r--release/scripts/io/export_fbx.py4
-rw-r--r--release/scripts/io/export_mdd.py4
-rw-r--r--release/scripts/io/export_obj.py303
-rw-r--r--release/scripts/io/export_ply.py4
-rw-r--r--release/scripts/io/import_shape_mdd.py4
-rw-r--r--release/scripts/io/netrender/operators.py56
-rw-r--r--release/scripts/io/netrender/ui.py48
-rw-r--r--release/scripts/modules/bpy/path.py2
-rw-r--r--release/scripts/modules/bpy/utils.py35
-rw-r--r--release/scripts/modules/bpy_xml_ui.py151
-rw-r--r--release/scripts/modules/rna_info.py15
-rw-r--r--release/scripts/modules/rna_prop_ui.py4
-rw-r--r--release/scripts/op/fcurve_euler_filter.py4
-rw-r--r--release/scripts/op/mesh.py8
-rw-r--r--release/scripts/op/object.py24
-rw-r--r--release/scripts/op/object_align.py4
-rw-r--r--release/scripts/op/sequencer.py12
-rw-r--r--release/scripts/op/uv.py4
-rw-r--r--release/scripts/op/uvcalc_follow_active.py4
-rw-r--r--release/scripts/op/uvcalc_smart_project.py4
-rw-r--r--release/scripts/templates/operator.py4
-rw-r--r--release/scripts/templates/operator_simple.py4
-rw-r--r--release/scripts/templates/operator_uv.py4
-rw-r--r--release/scripts/ui/properties_data_armature.py37
-rw-r--r--release/scripts/ui/properties_data_armature_rigify.py12
-rw-r--r--release/scripts/ui/properties_data_bone.py17
-rw-r--r--release/scripts/ui/properties_data_camera.py37
-rw-r--r--release/scripts/ui/properties_data_curve.py53
-rw-r--r--release/scripts/ui/properties_data_empty.py4
-rw-r--r--release/scripts/ui/properties_data_lamp.py57
-rw-r--r--release/scripts/ui/properties_data_lattice.py5
-rw-r--r--release/scripts/ui/properties_data_mesh.py73
-rw-r--r--release/scripts/ui/properties_data_metaball.py9
-rw-r--r--release/scripts/ui/properties_data_modifier.py4
-rw-r--r--release/scripts/ui/properties_game.py69
-rw-r--r--release/scripts/ui/properties_material.py100
-rw-r--r--release/scripts/ui/properties_object.py11
-rw-r--r--release/scripts/ui/properties_object_constraint.py8
-rw-r--r--release/scripts/ui/properties_particle.py78
-rw-r--r--release/scripts/ui/properties_physics_cloth.py20
-rw-r--r--release/scripts/ui/properties_physics_field.py8
-rw-r--r--release/scripts/ui/properties_physics_fluid.py16
-rw-r--r--release/scripts/ui/properties_physics_smoke.py24
-rw-r--r--release/scripts/ui/properties_physics_softbody.py28
-rw-r--r--release/scripts/ui/properties_render.py64
-rw-r--r--release/scripts/ui/properties_render_test.xml79
-rw-r--r--release/scripts/ui/properties_scene.py9
-rw-r--r--release/scripts/ui/properties_texture.py161
-rw-r--r--release/scripts/ui/properties_world.py23
-rw-r--r--release/scripts/ui/space_console.py4
-rw-r--r--release/scripts/ui/space_image.py77
-rw-r--r--release/scripts/ui/space_logic.py4
-rw-r--r--release/scripts/ui/space_sequencer.py48
-rw-r--r--release/scripts/ui/space_text.py4
-rw-r--r--release/scripts/ui/space_userpref.py203
-rw-r--r--release/scripts/ui/space_userpref_keymap.py4
-rw-r--r--release/scripts/ui/space_view3d.py42
-rw-r--r--release/scripts/ui/space_view3d_toolbar.py53
-rw-r--r--source/blender/blenfont/intern/blf_font.c2
-rw-r--r--source/blender/blenkernel/BKE_cloth.h54
-rw-r--r--source/blender/blenkernel/BKE_collision.h18
-rw-r--r--source/blender/blenkernel/BKE_effect.h1
-rw-r--r--source/blender/blenkernel/BKE_sca.h6
-rw-r--r--source/blender/blenkernel/intern/cloth.c8
-rw-r--r--source/blender/blenkernel/intern/collision.c5
-rw-r--r--source/blender/blenkernel/intern/implicit.c13
-rw-r--r--source/blender/blenkernel/intern/lattice.c18
-rw-r--r--source/blender/blenkernel/intern/modifier.c12
-rw-r--r--source/blender/blenkernel/intern/object.c2
-rw-r--r--source/blender/blenkernel/intern/particle.c4
-rw-r--r--source/blender/blenkernel/intern/pointcache.c1
-rw-r--r--source/blender/blenkernel/intern/seqeffects.c21
-rw-r--r--source/blender/blenkernel/intern/sequencer.c15
-rw-r--r--source/blender/blenkernel/intern/softbody.c5
-rw-r--r--source/blender/blenlib/intern/path_util.c2
-rw-r--r--source/blender/blenloader/intern/readfile.c22
-rw-r--r--source/blender/blenloader/intern/undofile.c3
-rw-r--r--source/blender/blenloader/intern/writefile.c21
-rw-r--r--source/blender/collada/DocumentExporter.cpp1
-rw-r--r--source/blender/editors/animation/anim_filter.c2
-rw-r--r--source/blender/editors/animation/keyframes_draw.c5
-rw-r--r--source/blender/editors/animation/keyframes_edit.c1
-rw-r--r--source/blender/editors/animation/keyframes_general.c2
-rw-r--r--source/blender/editors/animation/keyframing.c1
-rw-r--r--source/blender/editors/animation/keyingsets.c8
-rw-r--r--source/blender/editors/armature/armature_ops.c3
-rw-r--r--source/blender/editors/armature/editarmature.c1
-rw-r--r--source/blender/editors/armature/editarmature_generate.c2
-rw-r--r--source/blender/editors/armature/editarmature_retarget.c2
-rw-r--r--source/blender/editors/armature/editarmature_sketch.c4
-rw-r--r--source/blender/editors/armature/meshlaplacian.c1
-rw-r--r--source/blender/editors/armature/poseSlide.c7
-rw-r--r--source/blender/editors/armature/poseUtils.c6
-rw-r--r--source/blender/editors/armature/poselib.c4
-rw-r--r--source/blender/editors/armature/poseobject.c7
-rw-r--r--source/blender/editors/armature/reeb.c3
-rw-r--r--source/blender/editors/curve/curve_ops.c3
-rw-r--r--source/blender/editors/curve/editcurve.c9
-rw-r--r--source/blender/editors/curve/editfont.c3
-rw-r--r--source/blender/editors/gpencil/drawgpencil.c2
-rw-r--r--source/blender/editors/gpencil/editaction_gpencil.c5
-rw-r--r--source/blender/editors/gpencil/gpencil_buttons.c1
-rw-r--r--source/blender/editors/gpencil/gpencil_edit.c5
-rw-r--r--source/blender/editors/gpencil/gpencil_paint.c1
-rw-r--r--source/blender/editors/include/ED_lattice.h33
-rw-r--r--source/blender/editors/include/ED_view3d.h2
-rw-r--r--source/blender/editors/interface/interface.c4
-rw-r--r--source/blender/editors/interface/interface_anim.c1
-rw-r--r--source/blender/editors/interface/interface_draw.c1
-rw-r--r--source/blender/editors/interface/interface_handlers.c1
-rw-r--r--source/blender/editors/interface/interface_icons.c3
-rw-r--r--source/blender/editors/interface/interface_layout.c2
-rw-r--r--source/blender/editors/interface/interface_ops.c1
-rw-r--r--source/blender/editors/interface/interface_panel.c1
-rw-r--r--source/blender/editors/interface/interface_regions.c4
-rw-r--r--source/blender/editors/interface/interface_style.c2
-rw-r--r--source/blender/editors/interface/interface_templates.c16
-rw-r--r--source/blender/editors/interface/interface_widgets.c1
-rw-r--r--source/blender/editors/interface/view2d_ops.c1
-rw-r--r--source/blender/editors/mesh/editface.c8
-rw-r--r--source/blender/editors/mesh/editmesh.c16
-rw-r--r--source/blender/editors/mesh/editmesh_add.c3
-rw-r--r--source/blender/editors/mesh/editmesh_loop.c6
-rw-r--r--source/blender/editors/mesh/editmesh_mods.c5
-rw-r--r--source/blender/editors/mesh/editmesh_tools.c4
-rw-r--r--source/blender/editors/mesh/loopcut.c1
-rw-r--r--source/blender/editors/mesh/mesh_data.c2
-rw-r--r--source/blender/editors/mesh/mesh_ops.c3
-rw-r--r--source/blender/editors/mesh/meshtools.c7
-rw-r--r--source/blender/editors/metaball/mball_edit.c3
-rw-r--r--source/blender/editors/object/object_add.c4
-rw-r--r--source/blender/editors/object/object_bake.c2
-rw-r--r--source/blender/editors/object/object_constraint.c1
-rw-r--r--source/blender/editors/object/object_edit.c30
-rw-r--r--source/blender/editors/object/object_group.c2
-rw-r--r--source/blender/editors/object/object_hook.c13
-rw-r--r--source/blender/editors/object/object_intern.h5
-rw-r--r--source/blender/editors/object/object_lattice.c117
-rw-r--r--source/blender/editors/object/object_modifier.c2
-rw-r--r--source/blender/editors/object/object_ops.c2
-rw-r--r--source/blender/editors/object/object_relations.c5
-rw-r--r--source/blender/editors/object/object_select.c2
-rw-r--r--source/blender/editors/object/object_shapekey.c6
-rw-r--r--source/blender/editors/object/object_transform.c2
-rw-r--r--source/blender/editors/object/object_vgroup.c11
-rw-r--r--source/blender/editors/render/render_internal.c18
-rw-r--r--source/blender/editors/render/render_opengl.c8
-rw-r--r--source/blender/editors/render/render_preview.c5
-rw-r--r--source/blender/editors/render/render_shading.c1
-rw-r--r--source/blender/editors/screen/area.c1
-rw-r--r--source/blender/editors/screen/screen_context.c1
-rw-r--r--source/blender/editors/screen/screen_edit.c1
-rw-r--r--source/blender/editors/screen/screen_ops.c7
-rw-r--r--source/blender/editors/screen/screendump.c1
-rw-r--r--source/blender/editors/sculpt_paint/paint_image.c3
-rw-r--r--source/blender/editors/sculpt_paint/paint_stroke.c1
-rw-r--r--source/blender/editors/sculpt_paint/paint_utils.c3
-rw-r--r--source/blender/editors/sculpt_paint/paint_vertex.c11
-rw-r--r--source/blender/editors/sculpt_paint/sculpt.c10
-rw-r--r--source/blender/editors/sculpt_paint/sculpt_undo.c2
-rw-r--r--source/blender/editors/sound/sound_ops.c2
-rw-r--r--source/blender/editors/space_action/action_draw.c6
-rw-r--r--source/blender/editors/space_action/action_edit.c5
-rw-r--r--source/blender/editors/space_action/action_ops.c2
-rw-r--r--source/blender/editors/space_action/action_select.c6
-rw-r--r--source/blender/editors/space_action/space_action.c2
-rw-r--r--source/blender/editors/space_api/space.c2
-rw-r--r--source/blender/editors/space_buttons/buttons_context.c2
-rw-r--r--source/blender/editors/space_buttons/buttons_header.c2
-rw-r--r--source/blender/editors/space_buttons/buttons_ops.c1
-rw-r--r--source/blender/editors/space_buttons/space_buttons.c1
-rw-r--r--source/blender/editors/space_console/console_draw.c3
-rw-r--r--source/blender/editors/space_console/console_ops.c6
-rw-r--r--source/blender/editors/space_console/console_report.c6
-rw-r--r--source/blender/editors/space_console/space_console.c1
-rw-r--r--source/blender/editors/space_file/file_draw.c3
-rw-r--r--source/blender/editors/space_file/filelist.c12
-rw-r--r--source/blender/editors/space_file/filesel.c8
-rw-r--r--source/blender/editors/space_file/fsmenu.c1
-rw-r--r--source/blender/editors/space_file/space_file.c1
-rw-r--r--source/blender/editors/space_file/writeimage.c1
-rw-r--r--source/blender/editors/space_graph/graph_buttons.c8
-rw-r--r--source/blender/editors/space_graph/graph_draw.c6
-rw-r--r--source/blender/editors/space_graph/graph_edit.c6
-rw-r--r--source/blender/editors/space_graph/graph_ops.c1
-rw-r--r--source/blender/editors/space_graph/graph_select.c6
-rw-r--r--source/blender/editors/space_graph/graph_utils.c10
-rw-r--r--source/blender/editors/space_graph/space_graph.c1
-rw-r--r--source/blender/editors/space_image/image_buttons.c6
-rw-r--r--source/blender/editors/space_image/image_draw.c2
-rw-r--r--source/blender/editors/space_image/image_header.c5
-rw-r--r--source/blender/editors/space_image/image_ops.c1
-rw-r--r--source/blender/editors/space_image/image_render.c2
-rw-r--r--source/blender/editors/space_image/space_image.c1
-rw-r--r--source/blender/editors/space_info/info_ops.c1
-rw-r--r--source/blender/editors/space_info/info_stats.c3
-rw-r--r--source/blender/editors/space_info/space_info.c2
-rw-r--r--source/blender/editors/space_logic/logic_buttons.c7
-rw-r--r--source/blender/editors/space_logic/logic_ops.c1
-rw-r--r--source/blender/editors/space_logic/logic_window.c3
-rw-r--r--source/blender/editors/space_logic/space_logic.c1
-rw-r--r--source/blender/editors/space_nla/nla_buttons.c10
-rw-r--r--source/blender/editors/space_nla/nla_channels.c1
-rw-r--r--source/blender/editors/space_nla/nla_draw.c2
-rw-r--r--source/blender/editors/space_nla/nla_edit.c3
-rw-r--r--source/blender/editors/space_nla/nla_ops.c3
-rw-r--r--source/blender/editors/space_nla/nla_select.c2
-rw-r--r--source/blender/editors/space_nla/space_nla.c5
-rw-r--r--source/blender/editors/space_node/drawnode.c7
-rw-r--r--source/blender/editors/space_node/node_buttons.c6
-rw-r--r--source/blender/editors/space_node/node_draw.c9
-rw-r--r--source/blender/editors/space_node/node_edit.c3
-rw-r--r--source/blender/editors/space_node/node_header.c1
-rw-r--r--source/blender/editors/space_node/node_ops.c1
-rw-r--r--source/blender/editors/space_node/node_select.c3
-rw-r--r--source/blender/editors/space_node/node_state.c1
-rw-r--r--source/blender/editors/space_node/space_node.c2
-rw-r--r--source/blender/editors/space_outliner/outliner.c7
-rw-r--r--source/blender/editors/space_outliner/space_outliner.c3
-rw-r--r--source/blender/editors/space_script/script_edit.c4
-rw-r--r--source/blender/editors/space_script/script_header.c1
-rw-r--r--source/blender/editors/space_script/script_ops.c2
-rw-r--r--source/blender/editors/space_script/space_script.c1
-rw-r--r--source/blender/editors/space_sequencer/sequencer_add.c5
-rw-r--r--source/blender/editors/space_sequencer/sequencer_buttons.c3
-rw-r--r--source/blender/editors/space_sequencer/sequencer_draw.c2
-rw-r--r--source/blender/editors/space_sequencer/sequencer_edit.c7
-rw-r--r--source/blender/editors/space_sequencer/sequencer_ops.c3
-rw-r--r--source/blender/editors/space_sequencer/sequencer_select.c5
-rw-r--r--source/blender/editors/space_sound/sound_header.c1
-rw-r--r--source/blender/editors/space_sound/space_sound.c2
-rw-r--r--source/blender/editors/space_text/space_text.c1
-rw-r--r--source/blender/editors/space_text/text_draw.c2
-rw-r--r--source/blender/editors/space_text/text_header.c6
-rw-r--r--source/blender/editors/space_text/text_ops.c3
-rw-r--r--source/blender/editors/space_time/space_time.c2
-rw-r--r--source/blender/editors/space_time/time_ops.c1
-rw-r--r--source/blender/editors/space_view3d/drawanimviz.c11
-rw-r--r--source/blender/editors/space_view3d/drawarmature.c6
-rw-r--r--source/blender/editors/space_view3d/drawmesh.c7
-rw-r--r--source/blender/editors/space_view3d/drawobject.c11
-rw-r--r--source/blender/editors/space_view3d/drawvolume.c1
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c4
-rw-r--r--source/blender/editors/space_view3d/view3d_buttons.c14
-rw-r--r--source/blender/editors/space_view3d/view3d_draw.c3
-rw-r--r--source/blender/editors/space_view3d/view3d_edit.c5
-rw-r--r--source/blender/editors/space_view3d/view3d_header.c10
-rw-r--r--source/blender/editors/space_view3d/view3d_intern.h12
-rw-r--r--source/blender/editors/space_view3d/view3d_ops.c3
-rw-r--r--source/blender/editors/space_view3d/view3d_select.c7
-rw-r--r--source/blender/editors/space_view3d/view3d_snap.c15
-rw-r--r--source/blender/editors/space_view3d/view3d_toolbar.c9
-rw-r--r--source/blender/editors/space_view3d/view3d_view.c2
-rw-r--r--source/blender/editors/transform/transform.c3
-rw-r--r--source/blender/editors/transform/transform_constraints.c1
-rw-r--r--source/blender/editors/transform/transform_conversions.c17
-rw-r--r--source/blender/editors/transform/transform_generics.c15
-rw-r--r--source/blender/editors/transform/transform_manipulator.c8
-rw-r--r--source/blender/editors/transform/transform_ops.c1
-rw-r--r--source/blender/editors/transform/transform_orientations.c1
-rw-r--r--source/blender/editors/transform/transform_snap.c2
-rw-r--r--source/blender/editors/util/ed_util.c1
-rw-r--r--source/blender/editors/util/editmode_undo.c2
-rw-r--r--source/blender/editors/util/numinput.c2
-rw-r--r--source/blender/editors/util/undo.c5
-rw-r--r--source/blender/editors/uvedit/uvedit_draw.c2
-rw-r--r--source/blender/editors/uvedit/uvedit_ops.c1
-rw-r--r--source/blender/editors/uvedit/uvedit_unwrap_ops.c2
-rw-r--r--source/blender/gpu/intern/gpu_buffers.c1
-rw-r--r--source/blender/gpu/intern/gpu_codegen.c3
-rw-r--r--source/blender/gpu/intern/gpu_draw.c2
-rw-r--r--source/blender/gpu/intern/gpu_extensions.c3
-rw-r--r--source/blender/gpu/intern/gpu_material.c4
-rw-r--r--source/blender/imbuf/intern/thumbs.c1
-rw-r--r--source/blender/makesdna/DNA_curve_types.h5
-rw-r--r--source/blender/makesdna/DNA_lattice_types.h10
-rw-r--r--source/blender/makesdna/DNA_sequence_types.h14
-rw-r--r--source/blender/makesrna/intern/rna_lattice.c44
-rw-r--r--source/blender/makesrna/intern/rna_object.c22
-rw-r--r--source/blender/makesrna/intern/rna_particle.c1
-rw-r--r--source/blender/makesrna/intern/rna_scene_api.c5
-rw-r--r--source/blender/makesrna/intern/rna_ui.c12
-rw-r--r--source/blender/makesrna/intern/rna_ui_api.c22
-rw-r--r--source/blender/makesrna/rna_cleanup/rna_booleans.txt1330
-rwxr-xr-xsource/blender/makesrna/rna_cleanup/rna_cleaner.py45
-rwxr-xr-xsource/blender/makesrna/rna_cleanup/rna_cleaner_merge.py62
-rw-r--r--source/blender/makesrna/rna_cleanup/rna_properties.txt7795
-rw-r--r--source/blender/modifiers/intern/MOD_cloth.c4
-rw-r--r--source/blender/modifiers/intern/MOD_collision.c2
-rw-r--r--source/blender/python/generic/mathutils.c2
-rw-r--r--source/blender/python/generic/mathutils_color.c14
-rw-r--r--source/blender/python/generic/mathutils_euler.c8
-rw-r--r--source/blender/python/generic/mathutils_matrix.c8
-rw-r--r--source/blender/python/generic/mathutils_quat.c14
-rw-r--r--source/blender/python/generic/mathutils_vector.c12
-rw-r--r--source/blender/python/intern/bpy.c2
-rw-r--r--source/blender/python/intern/bpy_rna.c34
-rw-r--r--source/blender/python/intern/bpy_rna_callback.c29
299 files changed, 6222 insertions, 6622 deletions
diff --git a/release/scripts/io/export_3ds.py b/release/scripts/io/export_3ds.py
index 702edc6ae70..2a8b43c4e84 100644
--- a/release/scripts/io/export_3ds.py
+++ b/release/scripts/io/export_3ds.py
@@ -1133,8 +1133,8 @@ class Export3DS(bpy.types.Operator):
wm.add_fileselect(self)
return {'RUNNING_MODAL'}
- @staticmethod
- def poll(context): # Poll isnt working yet
+ @classmethod
+ def poll(cls, context): # Poll isnt working yet
return context.active_object != None
# Add to a menu
diff --git a/release/scripts/io/export_fbx.py b/release/scripts/io/export_fbx.py
index 14116058f44..5c2e0cb5f95 100644
--- a/release/scripts/io/export_fbx.py
+++ b/release/scripts/io/export_fbx.py
@@ -3361,8 +3361,8 @@ class ExportFBX(bpy.types.Operator):
BATCH_FILE_PREFIX = StringProperty(name="Prefix", description="Prefix each file with this name", maxlen=1024, default="")
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_object
def execute(self, context):
diff --git a/release/scripts/io/export_mdd.py b/release/scripts/io/export_mdd.py
index 46b38c3c9e6..2d45e18ef77 100644
--- a/release/scripts/io/export_mdd.py
+++ b/release/scripts/io/export_mdd.py
@@ -165,8 +165,8 @@ class ExportMDD(bpy.types.Operator):
frame_start = IntProperty(name="Start Frame", description="Start frame for baking", min=minframe, max=maxframe, default=1)
frame_end = IntProperty(name="End Frame", description="End frame for baking", min=minframe, max=maxframe, default=250)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
return (ob and ob.type == 'MESH')
diff --git a/release/scripts/io/export_obj.py b/release/scripts/io/export_obj.py
index fa378d26878..5603f52d1a4 100644
--- a/release/scripts/io/export_obj.py
+++ b/release/scripts/io/export_obj.py
@@ -44,7 +44,7 @@ import mathutils
# Returns a tuple - path,extension.
-# 'hello.obj' > ('hello', '.obj')
+# 'hello.obj' > ('hello', '.obj')
def splitExt(path):
dotidx = path.rfind('.')
if dotidx == -1:
@@ -81,7 +81,7 @@ def write_mtl(scene, filepath, copy_images, mtl_dict):
file = open(filepath, "w")
# XXX
-# file.write('# Blender MTL File: %s\n' % Blender.Get('filepath').split('\\')[-1].split('/')[-1])
+# file.write('# Blender MTL File: %s\n' % Blender.Get('filepath').split('\\')[-1].split('/')[-1])
file.write('# Material Count: %i\n' % len(mtl_dict))
# Write material/image combinations we have used.
for key, (mtl_mat_name, mat, img) in mtl_dict.items():
@@ -93,7 +93,7 @@ def write_mtl(scene, filepath, copy_images, mtl_dict):
if mat:
file.write('Ns %.6f\n' % ((mat.specular_hardness-1) * 1.9607843137254901) ) # Hardness, convert blenders 1-511 to MTL's
- file.write('Ka %.6f %.6f %.6f\n' % tuple([c*mat.ambient for c in worldAmb]) ) # Ambient, uses mirror colour,
+ file.write('Ka %.6f %.6f %.6f\n' % tuple([c*mat.ambient for c in worldAmb]) ) # Ambient, uses mirror colour,
file.write('Kd %.6f %.6f %.6f\n' % tuple([c*mat.diffuse_intensity for c in mat.diffuse_color]) ) # Diffuse
file.write('Ks %.6f %.6f %.6f\n' % tuple([c*mat.specular_intensity for c in mat.specular_color]) ) # Specular
if hasattr(mat, "ior"):
@@ -113,25 +113,25 @@ def write_mtl(scene, filepath, copy_images, mtl_dict):
else:
#write a dummy material here?
file.write('Ns 0\n')
- file.write('Ka %.6f %.6f %.6f\n' % tuple([c for c in worldAmb]) ) # Ambient, uses mirror colour,
+ file.write('Ka %.6f %.6f %.6f\n' % tuple([c for c in worldAmb]) ) # Ambient, uses mirror colour,
file.write('Kd 0.8 0.8 0.8\n')
file.write('Ks 0.8 0.8 0.8\n')
file.write('d 1\n') # No alpha
file.write('illum 2\n') # light normaly
# Write images!
- if img: # We have an image on the face!
+ if img: # We have an image on the face!
# write relative image path
rel = copy_image(img)
file.write('map_Kd %s\n' % rel) # Diffuse mapping image
-# file.write('map_Kd %s\n' % img.filepath.split('\\')[-1].split('/')[-1]) # Diffuse mapping image
+# file.write('map_Kd %s\n' % img.filepath.split('\\')[-1].split('/')[-1]) # Diffuse mapping image
elif mat: # No face image. if we havea material search for MTex image.
for mtex in mat.texture_slots:
if mtex and mtex.texture.type == 'IMAGE':
try:
filepath = copy_image(mtex.texture.image)
-# filepath = mtex.texture.image.filepath.split('\\')[-1].split('/')[-1]
+# filepath = mtex.texture.image.filepath.split('\\')[-1].split('/')[-1]
file.write('map_Kd %s\n' % filepath) # Diffuse mapping image
break
except:
@@ -157,8 +157,8 @@ def copy_file(source, dest):
def copy_images(dest_dir):
if dest_dir[-1] != os.sep:
dest_dir += os.sep
-# if dest_dir[-1] != sys.sep:
-# dest_dir += sys.sep
+# if dest_dir[-1] != sys.sep:
+# dest_dir += sys.sep
# Get unique image names
uniqueImages = {}
@@ -181,20 +181,20 @@ def copy_images(dest_dir):
# Now copy images
copyCount = 0
-# for bImage in uniqueImages.values():
-# image_path = bpy.path.abspath(bImage.filepath)
-# if bpy.sys.exists(image_path):
-# # Make a name for the target path.
-# dest_image_path = dest_dir + image_path.split('\\')[-1].split('/')[-1]
-# if not bpy.utils.exists(dest_image_path): # Image isnt already there
-# print('\tCopying "%s" > "%s"' % (image_path, dest_image_path))
-# copy_file(image_path, dest_image_path)
-# copyCount+=1
+# for bImage in uniqueImages.values():
+# image_path = bpy.path.abspath(bImage.filepath)
+# if bpy.sys.exists(image_path):
+# # Make a name for the target path.
+# dest_image_path = dest_dir + image_path.split('\\')[-1].split('/')[-1]
+# if not bpy.utils.exists(dest_image_path): # Image isnt already there
+# print('\tCopying "%s" > "%s"' % (image_path, dest_image_path))
+# copy_file(image_path, dest_image_path)
+# copyCount+=1
-# paths= bpy.util.copy_images(uniqueImages.values(), dest_dir)
+# paths= bpy.util.copy_images(uniqueImages.values(), dest_dir)
print('\tCopied %d images' % copyCount)
-# print('\tCopied %d images' % copyCount)
+# print('\tCopied %d images' % copyCount)
# XXX not converted
def test_nurbs_compat(ob):
@@ -217,8 +217,8 @@ def write_nurb(file, ob, ob_mat):
Vector = Blender.mathutils.Vector
for nu in cu:
- if nu.type==0: DEG_ORDER_U = 1
- else: DEG_ORDER_U = nu.orderU-1 # Tested to be correct
+ if nu.type==0: DEG_ORDER_U = 1
+ else: DEG_ORDER_U = nu.orderU-1 # Tested to be correct
if nu.type==1:
print("\tWarning, bezier curve:", ob.name, "only poly and nurbs curves supported")
@@ -275,7 +275,7 @@ def write_nurb(file, ob, ob_mat):
return tot_verts
-def write(filepath, objects, scene,
+def write_file(filepath, objects, scene,
EXPORT_TRI=False,
EXPORT_EDGES=False,
EXPORT_NORMALS=False,
@@ -319,9 +319,9 @@ def write(filepath, objects, scene,
"""
weightDict = {}
for vert_index in face.verts:
-# for vert in face:
+# for vert in face:
vWeights = vWeightMap[vert_index]
-# vWeights = vWeightMap[vert]
+# vWeights = vWeightMap[vert]
for vGroupName, weight in vWeights:
weightDict[vGroupName] = weightDict.get(vGroupName, 0) + weight
@@ -348,8 +348,8 @@ def write(filepath, objects, scene,
temp_mesh_name = '~tmp-mesh'
time1 = time.clock()
-# time1 = sys.time()
-# scn = Scene.GetCurrent()
+# time1 = sys.time()
+# scn = Scene.GetCurrent()
file = open(filepath, "w")
@@ -401,15 +401,15 @@ def write(filepath, objects, scene,
for ob, ob_mat in obs:
# XXX postponed
-# # Nurbs curve support
-# if EXPORT_CURVE_AS_NURBS and test_nurbs_compat(ob):
-# if EXPORT_ROTX90:
-# ob_mat = ob_mat * mat_xrot90
+# # Nurbs curve support
+# if EXPORT_CURVE_AS_NURBS and test_nurbs_compat(ob):
+# if EXPORT_ROTX90:
+# ob_mat = ob_mat * mat_xrot90
-# totverts += write_nurb(file, ob, ob_mat)
+# totverts += write_nurb(file, ob, ob_mat)
-# continue
-# end nurbs
+# continue
+# end nurbs
if ob.type != 'MESH':
continue
@@ -421,10 +421,10 @@ def write(filepath, objects, scene,
else:
me.transform(ob_mat)
-# # Will work for non meshes now! :)
-# me= BPyMesh.getMeshFromObject(ob, containerMesh, EXPORT_APPLY_MODIFIERS, EXPORT_POLYGROUPS, scn)
-# if not me:
-# continue
+# # Will work for non meshes now! :)
+# me= BPyMesh.getMeshFromObject(ob, containerMesh, EXPORT_APPLY_MODIFIERS, EXPORT_POLYGROUPS, scn)
+# if not me:
+# continue
if EXPORT_UV:
faceuv = len(me.uv_textures) > 0
@@ -472,13 +472,13 @@ def write(filepath, objects, scene,
# High Quality Normals
if EXPORT_NORMALS and face_index_pairs:
me.calc_normals()
-# if EXPORT_NORMALS_HQ:
-# BPyMesh.meshCalcNormals(me)
-# else:
-# # transforming normals is incorrect
-# # when the matrix is scaled,
-# # better to recalculate them
-# me.calcNormals()
+# if EXPORT_NORMALS_HQ:
+# BPyMesh.meshCalcNormals(me)
+# else:
+# # transforming normals is incorrect
+# # when the matrix is scaled,
+# # better to recalculate them
+# me.calcNormals()
materials = me.materials
@@ -512,18 +512,18 @@ def write(filepath, objects, scene,
else:
# no materials
face_index_pairs.sort(key = lambda a: a[0].smooth)
-# if EXPORT_KEEP_VERT_ORDER:
-# pass
-# elif faceuv:
-# try: faces.sort(key = lambda a: (a.mat, a.image, a.smooth))
-# except: faces.sort(lambda a,b: cmp((a.mat, a.image, a.smooth), (b.mat, b.image, b.smooth)))
-# elif len(materials) > 1:
-# try: faces.sort(key = lambda a: (a.mat, a.smooth))
-# except: faces.sort(lambda a,b: cmp((a.mat, a.smooth), (b.mat, b.smooth)))
-# else:
-# # no materials
-# try: faces.sort(key = lambda a: a.smooth)
-# except: faces.sort(lambda a,b: cmp(a.smooth, b.smooth))
+# if EXPORT_KEEP_VERT_ORDER:
+# pass
+# elif faceuv:
+# try: faces.sort(key = lambda a: (a.mat, a.image, a.smooth))
+# except: faces.sort(lambda a,b: cmp((a.mat, a.image, a.smooth), (b.mat, b.image, b.smooth)))
+# elif len(materials) > 1:
+# try: faces.sort(key = lambda a: (a.mat, a.smooth))
+# except: faces.sort(lambda a,b: cmp((a.mat, a.smooth), (b.mat, b.smooth)))
+# else:
+# # no materials
+# try: faces.sort(key = lambda a: a.smooth)
+# except: faces.sort(lambda a,b: cmp(a.smooth, b.smooth))
faces = [pair[0] for pair in face_index_pairs]
@@ -565,7 +565,7 @@ def write(filepath, objects, scene,
# # add another UV if it's a quad
# if len(f.verts) == 4:
- # uvs.append(tface.uv4)
+ # uvs.append(tface.uv4)
for uv_index, uv in enumerate(uvs):
uvkey = veckey2d(uv)
@@ -575,19 +575,19 @@ def write(filepath, objects, scene,
uv_face_mapping[f_index][uv_index] = uv_dict[uvkey] = len(uv_dict)
file.write('vt %.6f %.6f\n' % tuple(uv))
-# uv_dict = {} # could use a set() here
-# for f_index, f in enumerate(faces):
+# uv_dict = {} # could use a set() here
+# for f_index, f in enumerate(faces):
-# for uv_index, uv in enumerate(f.uv):
-# uvkey = veckey2d(uv)
-# try:
-# uv_face_mapping[f_index][uv_index] = uv_dict[uvkey]
-# except:
-# uv_face_mapping[f_index][uv_index] = uv_dict[uvkey] = len(uv_dict)
-# file.write('vt %.6f %.6f\n' % tuple(uv))
+# for uv_index, uv in enumerate(f.uv):
+# uvkey = veckey2d(uv)
+# try:
+# uv_face_mapping[f_index][uv_index] = uv_dict[uvkey]
+# except:
+# uv_face_mapping[f_index][uv_index] = uv_dict[uvkey] = len(uv_dict)
+# file.write('vt %.6f %.6f\n' % tuple(uv))
uv_unique_count = len(uv_dict)
-# del uv, uvkey, uv_dict, f_index, uv_index
+# del uv, uvkey, uv_dict, f_index, uv_index
# Only need uv_unique_count and uv_face_mapping
# NORMAL, Smooth/Non smoothed.
@@ -615,28 +615,28 @@ def write(filepath, objects, scene,
# XXX
if EXPORT_POLYGROUPS:
# Retrieve the list of vertex groups
-# vertGroupNames = me.getVertGroupNames()
+# vertGroupNames = me.getVertGroupNames()
currentVGroup = ''
# Create a dictionary keyed by face id and listing, for each vertex, the vertex groups it belongs to
vgroupsMap = [[] for _i in range(len(me.verts))]
-# vgroupsMap = [[] for _i in xrange(len(me.verts))]
+# vgroupsMap = [[] for _i in xrange(len(me.verts))]
for g in ob.vertex_groups:
-# for vertexGroupName in vertGroupNames:
+# for vertexGroupName in vertGroupNames:
for vIdx, vWeight in getVertsFromGroup(me, g.index):
-# for vIdx, vWeight in me.getVertsFromGroup(vertexGroupName, 1):
+# for vIdx, vWeight in me.getVertsFromGroup(vertexGroupName, 1):
vgroupsMap[vIdx].append((g.name, vWeight))
for f, f_index in face_index_pairs:
f_v = [{"index": index, "vertex": me.verts[index]} for index in f.verts]
# if f.verts[3] == 0:
- # f_v.pop()
+ # f_v.pop()
-# f_v= f.v
+# f_v= f.v
f_smooth= f.smooth
f_mat = min(f.material_index, len(materialNames)-1)
-# f_mat = min(f.mat, len(materialNames)-1)
+# f_mat = min(f.mat, len(materialNames)-1)
if faceuv:
tface = me.active_uv_texture.data[f_index]
@@ -645,32 +645,32 @@ def write(filepath, objects, scene,
f_uv = tface.uv
# f_uv= [tface.uv1, tface.uv2, tface.uv3]
# if len(f.verts) == 4:
- # f_uv.append(tface.uv4)
-# f_image = f.image
-# f_uv= f.uv
+ # f_uv.append(tface.uv4)
+# f_image = f.image
+# f_uv= f.uv
# MAKE KEY
if faceuv and f_image: # Object is always true.
- key = materialNames[f_mat], f_image.name
+ key = materialNames[f_mat], f_image.name
else:
- key = materialNames[f_mat], None # No image, use None instead.
+ key = materialNames[f_mat], None # No image, use None instead.
# Write the vertex group
if EXPORT_POLYGROUPS:
if len(ob.vertex_groups):
# find what vertext group the face belongs to
theVGroup = findVertexGroupName(f,vgroupsMap)
- if theVGroup != currentVGroup:
+ if theVGroup != currentVGroup:
currentVGroup = theVGroup
file.write('g %s\n' % theVGroup)
-# # Write the vertex group
-# if EXPORT_POLYGROUPS:
-# if vertGroupNames:
-# # find what vertext group the face belongs to
-# theVGroup = findVertexGroupName(f,vgroupsMap)
-# if theVGroup != currentVGroup:
-# currentVGroup = theVGroup
-# file.write('g %s\n' % theVGroup)
+# # Write the vertex group
+# if EXPORT_POLYGROUPS:
+# if vertGroupNames:
+# # find what vertext group the face belongs to
+# theVGroup = findVertexGroupName(f,vgroupsMap)
+# if theVGroup != currentVGroup:
+# currentVGroup = theVGroup
+# file.write('g %s\n' % theVGroup)
# CHECK FOR CONTEXT SWITCH
if key == contextMat:
@@ -776,39 +776,38 @@ def write(filepath, objects, scene,
# Now we have all our materials, save them
if EXPORT_MTL:
write_mtl(scene, mtlfilepath, EXPORT_COPY_IMAGES, mtl_dict)
-# if EXPORT_COPY_IMAGES:
-# dest_dir = os.path.basename(filepath)
-# # dest_dir = filepath
-# # # Remove chars until we are just the path.
-# # while dest_dir and dest_dir[-1] not in '\\/':
-# # dest_dir = dest_dir[:-1]
-# if dest_dir:
-# copy_images(dest_dir, mtl_dict)
-# else:
-# print('\tError: "%s" could not be used as a base for an image path.' % filepath)
+# if EXPORT_COPY_IMAGES:
+# dest_dir = os.path.basename(filepath)
+# # dest_dir = filepath
+# # # Remove chars until we are just the path.
+# # while dest_dir and dest_dir[-1] not in '\\/':
+# # dest_dir = dest_dir[:-1]
+# if dest_dir:
+# copy_images(dest_dir, mtl_dict)
+# else:
+# print('\tError: "%s" could not be used as a base for an image path.' % filepath)
print("OBJ Export time: %.2f" % (time.clock() - time1))
-# print "OBJ Export time: %.2f" % (sys.time() - time1)
def write(filepath, context,
- EXPORT_APPLY_MODIFIERS = True, # not used
- EXPORT_ROTX90 = True, # wrong
- EXPORT_TRI = False, # ok
- EXPORT_EDGES = False,
- EXPORT_NORMALS = False, # not yet
- EXPORT_NORMALS_HQ = False, # not yet
- EXPORT_UV = True, # ok
- EXPORT_MTL = True,
- EXPORT_SEL_ONLY = True, # ok
- EXPORT_ALL_SCENES = False, # XXX not working atm
- EXPORT_ANIMATION = False,
- EXPORT_COPY_IMAGES = False,
- EXPORT_BLEN_OBS = True,
- EXPORT_GROUP_BY_OB = False,
- EXPORT_GROUP_BY_MAT = False,
- EXPORT_KEEP_VERT_ORDER = False,
- EXPORT_POLYGROUPS = False,
- EXPORT_CURVE_AS_NURBS = True):
+ EXPORT_TRI, # ok
+ EXPORT_EDGES,
+ EXPORT_NORMALS, # not yet
+ EXPORT_NORMALS_HQ, # not yet
+ EXPORT_UV, # ok
+ EXPORT_MTL,
+ EXPORT_COPY_IMAGES,
+ EXPORT_APPLY_MODIFIERS, # ok
+ EXPORT_ROTX90, # wrong
+ EXPORT_BLEN_OBS,
+ EXPORT_GROUP_BY_OB,
+ EXPORT_GROUP_BY_MAT,
+ EXPORT_KEEP_VERT_ORDER,
+ EXPORT_POLYGROUPS,
+ EXPORT_CURVE_AS_NURBS,
+ EXPORT_SEL_ONLY, # ok
+ EXPORT_ALL_SCENES, # XXX not working atm
+ EXPORT_ANIMATION): # Not used
base_name, ext = splitExt(filepath)
context_name = [base_name, '', '', ext] # Base name, scene name, frame number, extension
@@ -819,10 +818,10 @@ def write(filepath, context,
if context.object:
bpy.ops.object.mode_set(mode='OBJECT')
-# if EXPORT_ALL_SCENES:
-# export_scenes = bpy.data.scenes
-# else:
-# export_scenes = [orig_scene]
+# if EXPORT_ALL_SCENES:
+# export_scenes = bpy.data.scenes
+# else:
+# export_scenes = [orig_scene]
# XXX only exporting one scene atm since changing
# current scene is not possible.
@@ -831,17 +830,17 @@ def write(filepath, context,
export_scenes = [orig_scene]
# Export all scenes.
- for scn in export_scenes:
- # scn.makeCurrent() # If already current, this is not slow.
- # context = scn.getRenderingContext()
- orig_frame = scn.frame_current
+ for scene in export_scenes:
+ # scene.makeCurrent() # If already current, this is not slow.
+ # context = scene.getRenderingContext()
+ orig_frame = scene.frame_current
if EXPORT_ALL_SCENES: # Add scene name into the context_name
- context_name[1] = '_%s' % bpy.path.clean_name(scn.name) # WARNING, its possible that this could cause a collision. we could fix if were feeling parranoied.
+ context_name[1] = '_%s' % bpy.path.clean_name(scene.name) # WARNING, its possible that this could cause a collision. we could fix if were feeling parranoied.
# Export an animation?
if EXPORT_ANIMATION:
- scene_frames = range(scn.frame_start, context.frame_end + 1) # Up to and including the end frame.
+ scene_frames = range(scene.frame_start, context.frame_end + 1) # Up to and including the end frame.
else:
scene_frames = [orig_frame] # Dont export an animation.
@@ -850,30 +849,39 @@ def write(filepath, context,
if EXPORT_ANIMATION: # Add frame to the filepath.
context_name[2] = '_%.6d' % frame
- scn.frame_current = frame
+ scene.frame_current = frame
if EXPORT_SEL_ONLY:
- export_objects = context.selected_objects
+ objects = context.selected_objects
else:
- export_objects = scn.objects
+ objects = scene.objects
full_path= ''.join(context_name)
# erm... bit of a problem here, this can overwrite files when exporting frames. not too bad.
# EXPORT THE FILE.
- write(full_path, export_objects, scn,
- EXPORT_TRI, EXPORT_EDGES, EXPORT_NORMALS,
- EXPORT_NORMALS_HQ, EXPORT_UV, EXPORT_MTL,
- EXPORT_COPY_IMAGES, EXPORT_APPLY_MODIFIERS,
- EXPORT_ROTX90, EXPORT_BLEN_OBS,
- EXPORT_GROUP_BY_OB, EXPORT_GROUP_BY_MAT, EXPORT_KEEP_VERT_ORDER,
- EXPORT_POLYGROUPS, EXPORT_CURVE_AS_NURBS)
-
-
- scn.frame_current = orig_frame
+ write_file(full_path, objects, scene,
+ EXPORT_TRI,
+ EXPORT_EDGES,
+ EXPORT_NORMALS,
+ EXPORT_NORMALS_HQ,
+ EXPORT_UV,
+ EXPORT_MTL,
+ EXPORT_COPY_IMAGES,
+ EXPORT_APPLY_MODIFIERS,
+ EXPORT_ROTX90,
+ EXPORT_BLEN_OBS,
+ EXPORT_GROUP_BY_OB,
+ EXPORT_GROUP_BY_MAT,
+ EXPORT_KEEP_VERT_ORDER,
+ EXPORT_POLYGROUPS,
+ EXPORT_CURVE_AS_NURBS)
+
+
+ scene.frame_current = orig_frame
# Restore old active scene.
-# orig_scene.makeCurrent()
-# Window.WaitCursor(0)
+# orig_scene.makeCurrent()
+# Window.WaitCursor(0)
'''
@@ -898,12 +906,12 @@ class ExportOBJ(bpy.types.Operator):
check_existing = BoolProperty(name="Check Existing", description="Check and warn on overwriting existing files", default=True, options={'HIDDEN'})
# context group
- use_selection = BoolProperty(name="Selection Only", description="", default= False)
+ use_selection = BoolProperty(name="Selection Only", description="Export selected objects only", default= False)
use_all_scenes = BoolProperty(name="All Scenes", description="", default= False)
- use_animation = BoolProperty(name="All Animation", description="", default= False)
+ use_animation = BoolProperty(name="Animation", description="", default= False)
# object group
- use_modifiers = BoolProperty(name="Apply Modifiers", description="", default= True)
+ use_modifiers = BoolProperty(name="Apply Modifiers", description="Apply modifiers (preview resolution)", default= True)
use_rotate90 = BoolProperty(name="Rotate X90", description="", default= True)
# extra data group
@@ -947,7 +955,7 @@ class ExportOBJ(bpy.types.Operator):
EXPORT_CURVE_AS_NURBS=self.properties.use_nurbs,
EXPORT_SEL_ONLY=self.properties.use_selection,
EXPORT_ALL_SCENES=self.properties.use_all_scenes,
- )
+ EXPORT_ANIMATION=self.properties.use_animation)
return {'FINISHED'}
@@ -978,4 +986,3 @@ def unregister():
if __name__ == "__main__":
register()
-
diff --git a/release/scripts/io/export_ply.py b/release/scripts/io/export_ply.py
index aacfa6d07b2..f4d7cae75a3 100644
--- a/release/scripts/io/export_ply.py
+++ b/release/scripts/io/export_ply.py
@@ -275,8 +275,8 @@ class ExportPLY(bpy.types.Operator):
use_uvs = BoolProperty(name="UVs", description="Exort the active UV layer", default=True)
use_colors = BoolProperty(name="Vertex Colors", description="Exort the active vertex color layer", default=True)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_object != None
def execute(self, context):
diff --git a/release/scripts/io/import_shape_mdd.py b/release/scripts/io/import_shape_mdd.py
index 3245decc806..d74726dce2e 100644
--- a/release/scripts/io/import_shape_mdd.py
+++ b/release/scripts/io/import_shape_mdd.py
@@ -120,8 +120,8 @@ class importMDD(bpy.types.Operator):
#fps = IntProperty(name="Frames Per Second", description="Number of frames/second", min=minfps, max=maxfps, default=25)
frame_start = IntProperty(name="Start Frame", description="Start frame for inserting animation", min=minframe, max=maxframe, default=0)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
return (ob and ob.type == 'MESH')
diff --git a/release/scripts/io/netrender/operators.py b/release/scripts/io/netrender/operators.py
index 35f356e0a65..55c2d11e28e 100644
--- a/release/scripts/io/netrender/operators.py
+++ b/release/scripts/io/netrender/operators.py
@@ -31,8 +31,8 @@ class RENDER_OT_netslave_bake(bpy.types.Operator):
bl_idname = "render.netslavebake"
bl_label = "Bake all in file"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -89,8 +89,8 @@ class RENDER_OT_netclientanim(bpy.types.Operator):
bl_idname = "render.netclientanim"
bl_label = "Animation on network"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -116,8 +116,8 @@ class RENDER_OT_netclientrun(bpy.types.Operator):
bl_idname = "render.netclientstart"
bl_label = "Start Service"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -133,8 +133,8 @@ class RENDER_OT_netclientsend(bpy.types.Operator):
bl_idname = "render.netclientsend"
bl_label = "Send job"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -163,8 +163,8 @@ class RENDER_OT_netclientsendframe(bpy.types.Operator):
bl_idname = "render.netclientsendframe"
bl_label = "Send current frame job"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -193,8 +193,8 @@ class RENDER_OT_netclientstatus(bpy.types.Operator):
bl_idname = "render.netclientstatus"
bl_label = "Client Status"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -233,8 +233,8 @@ class RENDER_OT_netclientblacklistslave(bpy.types.Operator):
bl_idname = "render.netclientblacklistslave"
bl_label = "Client Blacklist Slave"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -263,8 +263,8 @@ class RENDER_OT_netclientwhitelistslave(bpy.types.Operator):
bl_idname = "render.netclientwhitelistslave"
bl_label = "Client Whitelist Slave"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -294,8 +294,8 @@ class RENDER_OT_netclientslaves(bpy.types.Operator):
bl_idname = "render.netclientslaves"
bl_label = "Client Slaves"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -339,8 +339,8 @@ class RENDER_OT_netclientcancel(bpy.types.Operator):
bl_idname = "render.netclientcancel"
bl_label = "Client Cancel"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
netsettings = context.scene.network_render
return netsettings.active_job_index >= 0 and len(netsettings.jobs) > 0
@@ -368,8 +368,8 @@ class RENDER_OT_netclientcancelall(bpy.types.Operator):
bl_idname = "render.netclientcancelall"
bl_label = "Client Cancel All"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -395,8 +395,8 @@ class netclientdownload(bpy.types.Operator):
bl_idname = "render.netclientdownload"
bl_label = "Client Download"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
netsettings = context.scene.network_render
return netsettings.active_job_index >= 0 and len(netsettings.jobs) > 0
@@ -440,8 +440,8 @@ class netclientscan(bpy.types.Operator):
bl_idname = "render.netclientscan"
bl_label = "Client Scan"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return True
def execute(self, context):
@@ -463,8 +463,8 @@ class netclientweb(bpy.types.Operator):
bl_idname = "render.netclientweb"
bl_label = "Open Master Monitor"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
netsettings = context.scene.network_render
return netsettings.server_address != "[default]"
diff --git a/release/scripts/io/netrender/ui.py b/release/scripts/io/netrender/ui.py
index d5269803ffd..cacc35ad48d 100644
--- a/release/scripts/io/netrender/ui.py
+++ b/release/scripts/io/netrender/ui.py
@@ -86,16 +86,20 @@ class RenderButtonsPanel():
bl_region_type = "WINDOW"
bl_context = "render"
# COMPAT_ENGINES must be defined in each subclass, external engines can add themselves here
-
+
+ @classmethod
+ def poll(cls, context):
+ rd = context.scene.render
+ return (rd.use_game_engine==False) and (rd.engine in cls.COMPAT_ENGINES)
# Setting panel, use in the scene for now.
class RENDER_PT_network_settings(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Network Settings"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
- return base_poll(__class__, context)
+ @classmethod
+ def poll(cls, context):
+ return super(RENDER_PT_network_settings, cls).poll(context)
def draw(self, context):
layout = self.layout
@@ -131,10 +135,10 @@ class RENDER_PT_network_slave_settings(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Slave Settings"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
- return base_poll(__class__, context) and scene.network_render.mode == "RENDER_SLAVE"
+ return super(RENDER_PT_network_slave_settings, cls).poll(context) and scene.network_render.mode == "RENDER_SLAVE"
def draw(self, context):
layout = self.layout
@@ -156,10 +160,10 @@ class RENDER_PT_network_master_settings(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Master Settings"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
- return base_poll(__class__, context) and scene.network_render.mode == "RENDER_MASTER"
+ return super(RENDER_PT_network_master_settings, cls).poll(context) and scene.network_render.mode == "RENDER_MASTER"
def draw(self, context):
layout = self.layout
@@ -174,10 +178,10 @@ class RENDER_PT_network_job(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Job Settings"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
- return base_poll(__class__, context) and scene.network_render.mode == "RENDER_CLIENT"
+ return super(RENDER_PT_network_job, cls).poll(context) and scene.network_render.mode == "RENDER_CLIENT"
def draw(self, context):
layout = self.layout
@@ -214,14 +218,14 @@ class RENDER_PT_network_slaves(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Slaves Status"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
netsettings = scene.network_render
if netsettings.mode != "RENDER_CLIENT":
return False
verify_address(netsettings)
- return base_poll(__class__, context) and netsettings.server_address != "[default]"
+ return super(RENDER_PT_network_slaves, cls).poll(context) and netsettings.server_address != "[default]"
def draw(self, context):
layout = self.layout
@@ -252,14 +256,14 @@ class RENDER_PT_network_slaves_blacklist(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Slaves Blacklist"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
netsettings = scene.network_render
if netsettings.mode != "RENDER_CLIENT":
return False
verify_address(netsettings)
- return base_poll(__class__, context) and netsettings.server_address != "[default]"
+ return super(RENDER_PT_network_slaves_blacklist, cls).poll(context) and netsettings.server_address != "[default]"
def draw(self, context):
layout = self.layout
@@ -289,14 +293,14 @@ class RENDER_PT_network_jobs(bpy.types.Panel, RenderButtonsPanel):
bl_label = "Jobs"
COMPAT_ENGINES = {'NET_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
netsettings = scene.network_render
if netsettings.mode != "RENDER_CLIENT":
return False
verify_address(netsettings)
- return base_poll(__class__, context) and netsettings.server_address != "[default]"
+ return super(RENDER_PT_network_jobs, cls).poll(context) and netsettings.server_address != "[default]"
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/modules/bpy/path.py b/release/scripts/modules/bpy/path.py
index 2974615299b..63149f2fce8 100644
--- a/release/scripts/modules/bpy/path.py
+++ b/release/scripts/modules/bpy/path.py
@@ -26,7 +26,7 @@ functions for dealing with paths in Blender.
import bpy as _bpy
import os as _os
-def expand(path):
+def abspath(path):
"""
Returns the absolute path relative to the current blend file using the "//" prefix.
"""
diff --git a/release/scripts/modules/bpy/utils.py b/release/scripts/modules/bpy/utils.py
index 6c1c669d1f2..c7ee23264e8 100644
--- a/release/scripts/modules/bpy/utils.py
+++ b/release/scripts/modules/bpy/utils.py
@@ -30,6 +30,8 @@ import sys as _sys
from _bpy import blend_paths
from _bpy import script_paths as _bpy_script_paths
+_TEST_XML = _bpy.app.debug
+
def _test_import(module_name, loaded_modules):
import traceback
import time
@@ -52,6 +54,35 @@ def _test_import(module_name, loaded_modules):
loaded_modules.add(mod.__name__) # should match mod.__name__ too
return mod
+if _TEST_XML:
+ # TEST CODE
+ def _test_import_xml(path, f, loaded_modules):
+ import bpy_xml_ui
+ import traceback
+
+ f_full = _os.path.join(path, f)
+ _bpy_types._register_immediate = True
+ try:
+ classes = bpy_xml_ui.load_xml(f_full)
+ except:
+ traceback.print_exc()
+ classes = []
+ _bpy_types._register_immediate = False
+
+ if classes:
+ mod_name = f.split(".")[0]
+
+ # fake module
+ mod = type(traceback)(mod_name)
+ mod.__file__ = f_full
+ for cls in classes:
+ setattr(mod, cls.__name__, cls)
+
+ loaded_modules.add(mod_name)
+ _sys.modules[mod_name] = mod
+ mod.register = lambda: None # quiet errors
+ return mod
+
def modules_from_path(path, loaded_modules):
"""
@@ -79,6 +110,10 @@ def modules_from_path(path, loaded_modules):
else:
mod = None
+ if _TEST_XML:
+ if mod is None and f.endswith(".xml"):
+ mod = _test_import_xml(path, f, loaded_modules)
+
if mod:
modules.append(mod)
diff --git a/release/scripts/modules/bpy_xml_ui.py b/release/scripts/modules/bpy_xml_ui.py
new file mode 100644
index 00000000000..18eec9c4ef4
--- /dev/null
+++ b/release/scripts/modules/bpy_xml_ui.py
@@ -0,0 +1,151 @@
+# ##### 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 2
+# 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, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+# ##### END GPL LICENSE BLOCK #####
+
+# <pep8 compliant>
+
+"""
+This module translates XML into blender/ui function calls.
+"""
+
+import xml.dom.minidom
+import bpy as _bpy
+
+def parse_rna(prop, value):
+ if prop.type == 'FLOAT':
+ value = float(value)
+ elif prop.type == 'INT':
+ value = int(value)
+ elif prop.type == 'BOOLEAN':
+ if value not in ("true", "false"):
+ raise Exception("invalid bool value: %s", value)
+ value = bool(value == "true")
+ elif prop.type in ('STRING', 'ENUM'):
+ pass
+ elif prop.type == 'POINTER':
+ value = eval("_bpy." + value)
+ else:
+ raise Exception("type not supported %s.%s" % (prop.identifier, prop.type))
+ return value
+
+def parse_args(base, xml_node):
+ args = {}
+ rna_params = base.bl_rna.functions[xml_node.tagName].parameters
+ for key, value in xml_node.attributes.items():
+ args[key] = parse_rna(rna_params[key], value)
+ return args
+
+def ui_xml(base, xml_node):
+ name = xml_node.tagName
+ prop = base.bl_rna.properties.get(name)
+ if name in base.bl_rna.properties:
+ attr = xml_node.attributes.get("expr")
+ if attr:
+ value = attr.value
+ value = eval(value, {"context": _bpy.context})
+ setattr(base, name, value)
+ else:
+ attr = xml_node.attributes['value']
+ value = attr.value
+ value = parse_rna(prop, value)
+ setattr(base, name, value)
+ else:
+ func_new = getattr(base, name)
+ kw_args = parse_args(base, xml_node)
+ base_new = func_new(**kw_args) # call blender func
+ if xml_node.hasChildNodes():
+ ui_xml_list(base_new, xml_node.childNodes)
+
+def ui_xml_list(base, xml_nodes):
+ import bpy
+ for node in xml_nodes:
+ if node.nodeType not in (node.TEXT_NODE, node.COMMENT_NODE):
+ ui_xml(base, node)
+ bpy.N = node
+
+def test(layout):
+ uixml = xml.dom.minidom.parseString(open("/mnt/test/blender-svn/blender/release/scripts/ui/test.xml", 'r').read())
+ panel = uixml.getElementsByTagName('panel')[0]
+ ui_xml_list(layout, panel.childNodes)
+
+def load_xml(filepath):
+ classes = []
+ fn = open(filepath, 'r')
+ data = fn.read()
+ uixml = xml.dom.minidom.parseString(data).getElementsByTagName("ui")[0]
+ fn.close()
+
+ def draw_xml(self, context):
+ node = self._xml_node.getElementsByTagName("draw")[0]
+ ui_xml_list(self.layout, node.childNodes)
+
+ def draw_header_xml(self, context):
+ node = self._xml_node.getElementsByTagName("draw_header")[0]
+ ui_xml_list(self.layout, node.childNodes)
+
+ for node in uixml.childNodes:
+ if node.nodeType not in (node.TEXT_NODE, node.COMMENT_NODE):
+ name = node.tagName
+ class_name = node.attributes["identifier"].value
+
+ if name == "panel":
+ class_dict = {
+ "bl_label": node.attributes["label"].value,
+ "bl_region_type": node.attributes["region_type"].value,
+ "bl_space_type": node.attributes["space_type"].value,
+ "bl_context": node.attributes["context"].value,
+ "bl_default_closed": ((node.attributes["default_closed"].value == "true") if "default_closed" in node.attributes else False),
+
+ "draw": draw_xml,
+ "_xml_node": node
+ }
+
+ if node.getElementsByTagName("draw_header"):
+ class_dict["draw_header"] = draw_header_xml
+
+ # will register instantly
+ class_new = type(class_name, (_bpy.types.Panel,), class_dict)
+
+ elif name == "menu":
+ class_dict = {
+ "bl_label": node.attributes["label"].value,
+
+ "draw": draw_xml,
+ "_xml_node": node
+ }
+
+ # will register instantly
+ class_new = type(class_name, (_bpy.types.Menu,), class_dict)
+
+ elif name == "header":
+ class_dict = {
+ "bl_label": node.attributes["label"].value,
+ "bl_space_type": node.attributes["space_type"].value,
+
+ "draw": draw_xml,
+ "_xml_node": node
+ }
+
+ # will register instantly
+ class_new = type(class_name, (_bpy.types.Header,), class_dict)
+ else:
+ raise Exception("invalid id found '%s': expected a value in ('header', 'panel', 'menu)'" % name)
+
+ classes.append(class_new)
+
+
+ return classes
diff --git a/release/scripts/modules/rna_info.py b/release/scripts/modules/rna_info.py
index 71895a25446..5d769d01641 100644
--- a/release/scripts/modules/rna_info.py
+++ b/release/scripts/modules/rna_info.py
@@ -625,18 +625,23 @@ def BuildRNAInfo():
if __name__ == "__main__":
import rna_info
struct = rna_info.BuildRNAInfo()[0]
- data = ""
+ data = []
for struct_id, v in sorted(struct.items()):
- struct_id_str = "".join(sid for sid in struct_id if struct_id)
- props = [(prop.identifier, prop) for prop in v.properties]
+ struct_id_str = v.identifier # "".join(sid for sid in struct_id if struct_id)
+
+ for base in v.get_bases():
+ struct_id_str = base.identifier + "|" + struct_id_str
+ props = [(prop.identifier, prop) for prop in v.properties]
for prop_id, prop in sorted(props):
# if prop.type == 'boolean':
# continue
- data += "%s.%s -> %s: %s%s %s\n" % (struct_id_str, prop.identifier, prop.identifier, prop.type, ", (read-only)" if prop.is_readonly else "", prop.description)
+ data.append("%s.%s -> %s: %s%s %s" % (struct_id_str, prop.identifier, prop.identifier, prop.type, ", (read-only)" if prop.is_readonly else "", prop.description))
+ data.sort()
if bpy.app.background:
- print(data)
+ import sys
+ sys.stderr.write("\n".join(data))
else:
text = bpy.data.texts.new(name="api.py")
text.from_string(data)
diff --git a/release/scripts/modules/rna_prop_ui.py b/release/scripts/modules/rna_prop_ui.py
index eda27240fb5..63762855737 100644
--- a/release/scripts/modules/rna_prop_ui.py
+++ b/release/scripts/modules/rna_prop_ui.py
@@ -132,6 +132,10 @@ class PropertyPanel():
bl_label = "Custom Properties"
bl_default_closed = True
+ @classmethod
+ def poll(cls, context):
+ bool(eval("context.%s" % cls._context_path))
+
def draw(self, context):
draw(self.layout, context, self._context_path)
diff --git a/release/scripts/op/fcurve_euler_filter.py b/release/scripts/op/fcurve_euler_filter.py
index cc973d94e2a..c6f5ddd12e4 100644
--- a/release/scripts/op/fcurve_euler_filter.py
+++ b/release/scripts/op/fcurve_euler_filter.py
@@ -48,8 +48,8 @@ class DiscontFilterOp(bpy.types.Operator):
bl_idname = "graph.euler_filter"
bl_label = "Filter out discontinuities in the active fcurves"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_object != None
def execute(self, context):
diff --git a/release/scripts/op/mesh.py b/release/scripts/op/mesh.py
index 1074ee7b482..736ec41ba14 100644
--- a/release/scripts/op/mesh.py
+++ b/release/scripts/op/mesh.py
@@ -28,8 +28,8 @@ class MeshSelectInteriorFaces(bpy.types.Operator):
bl_label = "Select Interior Faces"
bl_options = {'REGISTER', 'UNDO'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
return (ob and ob.type == 'MESH')
@@ -70,8 +70,8 @@ class MeshMirrorUV(bpy.types.Operator):
bl_label = "Copy Mirrored UV coords"
bl_options = {'REGISTER', 'UNDO'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
return (ob and ob.type == 'MESH')
diff --git a/release/scripts/op/object.py b/release/scripts/op/object.py
index e3ee4e00062..476db76735e 100644
--- a/release/scripts/op/object.py
+++ b/release/scripts/op/object.py
@@ -80,8 +80,8 @@ class SelectCamera(bpy.types.Operator):
bl_label = "Select Camera"
bl_options = {'REGISTER', 'UNDO'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.scene.camera is not None
def execute(self, context):
@@ -110,8 +110,8 @@ class SelectHierarchy(bpy.types.Operator):
extend = BoolProperty(name="Extend", description="Extend the existing selection", default=False)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.object
def execute(self, context):
@@ -169,8 +169,8 @@ class SubdivisionSet(bpy.types.Operator):
relative = BoolProperty(name="Relative", description="Apply the subsurf level as an offset relative to the current level", default=False)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obs = context.selected_editable_objects
return (obs is not None)
@@ -382,8 +382,8 @@ class ShapeTransfer(bpy.types.Operator):
return {'FINISHED'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.active_object
return (obj and obj.mode != 'EDIT')
@@ -413,8 +413,8 @@ class JoinUVs(bpy.types.Operator):
bl_idname = "object.join_uvs"
bl_label = "Join as UVs"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.active_object
return (obj and obj.type == 'MESH')
@@ -472,8 +472,8 @@ class MakeDupliFace(bpy.types.Operator):
bl_idname = "object.make_dupli_face"
bl_label = "Make DupliFace"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.active_object
return (obj and obj.type == 'MESH')
diff --git a/release/scripts/op/object_align.py b/release/scripts/op/object_align.py
index d156ccf37c0..dc9b7c34523 100644
--- a/release/scripts/op/object_align.py
+++ b/release/scripts/op/object_align.py
@@ -263,8 +263,8 @@ class AlignObjects(bpy.types.Operator):
align_z = BoolProperty(name="Align Z",
description="Align in the Z axis", default=False)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.mode == 'OBJECT'
def execute(self, context):
diff --git a/release/scripts/op/sequencer.py b/release/scripts/op/sequencer.py
index 63480cae180..cbb7d00e659 100644
--- a/release/scripts/op/sequencer.py
+++ b/release/scripts/op/sequencer.py
@@ -30,8 +30,8 @@ class SequencerCrossfadeSounds(bpy.types.Operator):
bl_label = "Crossfade sounds"
bl_options = {'REGISTER', 'UNDO'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if context.scene and context.scene.sequence_editor and context.scene.sequence_editor.active_strip:
return context.scene.sequence_editor.active_strip.type == 'SOUND'
else:
@@ -84,8 +84,8 @@ class SequencerCutMulticam(bpy.types.Operator):
camera = IntProperty(name="Camera",
default=1, min=1, max=32, soft_min=1, soft_max=32)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if context.scene and context.scene.sequence_editor and context.scene.sequence_editor.active_strip:
return context.scene.sequence_editor.active_strip.type == 'MULTICAM'
else:
@@ -119,8 +119,8 @@ class SequencerDeinterlaceSelectedMovies(bpy.types.Operator):
bl_label = "Deinterlace Movies"
bl_options = {'REGISTER', 'UNDO'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if context.scene and context.scene.sequence_editor:
return True
else:
diff --git a/release/scripts/op/uv.py b/release/scripts/op/uv.py
index 0d6e1904ff2..7d677181858 100644
--- a/release/scripts/op/uv.py
+++ b/release/scripts/op/uv.py
@@ -39,8 +39,8 @@ class ExportUVLayout(bpy.types.Operator):
description="File format to export the UV layout to",
default='SVG')
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.active_object
return (obj and obj.type == 'MESH')
diff --git a/release/scripts/op/uvcalc_follow_active.py b/release/scripts/op/uvcalc_follow_active.py
index 5aeae37aaf6..f02ee497999 100644
--- a/release/scripts/op/uvcalc_follow_active.py
+++ b/release/scripts/op/uvcalc_follow_active.py
@@ -249,8 +249,8 @@ class FollowActiveQuads(bpy.types.Operator):
description="Method to space UV edge loops",
default="LENGTH")
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.active_object
return (obj is not None and obj.type == 'MESH')
diff --git a/release/scripts/op/uvcalc_smart_project.py b/release/scripts/op/uvcalc_smart_project.py
index b52a2c41c26..fbda1955013 100644
--- a/release/scripts/op/uvcalc_smart_project.py
+++ b/release/scripts/op/uvcalc_smart_project.py
@@ -1124,8 +1124,8 @@ class SmartProject(bpy.types.Operator):
description="Margin to reduce bleed from adjacent islands.",
default=0.0, min=0.0, max=1.0)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_object != None
def execute(self, context):
diff --git a/release/scripts/templates/operator.py b/release/scripts/templates/operator.py
index 9a875c6899e..5a525784b51 100644
--- a/release/scripts/templates/operator.py
+++ b/release/scripts/templates/operator.py
@@ -23,8 +23,8 @@ class ExportSomeData(bpy.types.Operator):
description="Choose between two items",
default='OPT_A')
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_object != None
def execute(self, context):
diff --git a/release/scripts/templates/operator_simple.py b/release/scripts/templates/operator_simple.py
index 55afe586a1e..853bfa666eb 100644
--- a/release/scripts/templates/operator_simple.py
+++ b/release/scripts/templates/operator_simple.py
@@ -9,8 +9,8 @@ class SimpleOperator(bpy.types.Operator):
bl_idname = "object.simple_operator"
bl_label = "Simple Object Operator"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_object != None
def execute(self, context):
diff --git a/release/scripts/templates/operator_uv.py b/release/scripts/templates/operator_uv.py
index f27f5300857..46ce15f090d 100644
--- a/release/scripts/templates/operator_uv.py
+++ b/release/scripts/templates/operator_uv.py
@@ -30,8 +30,8 @@ class UvOperator(bpy.types.Operator):
bl_idname = "uv.simple_operator"
bl_label = "Simple UV Operator"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.active_object
return (obj and obj.type == 'MESH')
diff --git a/release/scripts/ui/properties_data_armature.py b/release/scripts/ui/properties_data_armature.py
index 2f5ffd0803f..3d8f2cdc092 100644
--- a/release/scripts/ui/properties_data_armature.py
+++ b/release/scripts/ui/properties_data_armature.py
@@ -21,17 +21,17 @@ import bpy
from rna_prop_ui import PropertyPanel
-class DataButtonsPanel():
+class ArmatureButtonsPanel():
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.armature
-class DATA_PT_context_arm(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_context_arm(ArmatureButtonsPanel, bpy.types.Panel):
bl_label = ""
bl_show_header = False
@@ -51,11 +51,12 @@ class DATA_PT_context_arm(DataButtonsPanel, bpy.types.Panel):
split.separator()
-class DATA_PT_custom_props_arm(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
+class DATA_PT_custom_props_arm(ArmatureButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "object.data"
-class DATA_PT_skeleton(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_skeleton(ArmatureButtonsPanel, bpy.types.Panel):
bl_label = "Skeleton"
def draw(self, context):
@@ -85,7 +86,7 @@ class DATA_PT_skeleton(DataButtonsPanel, bpy.types.Panel):
col.prop(arm, "deform_quaternion", text="Quaternion")
-class DATA_PT_display(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_display(ArmatureButtonsPanel, bpy.types.Panel):
bl_label = "Display"
def draw(self, context):
@@ -109,11 +110,11 @@ class DATA_PT_display(DataButtonsPanel, bpy.types.Panel):
col.prop(arm, "delay_deform", text="Delay Refresh")
-class DATA_PT_bone_groups(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_bone_groups(ArmatureButtonsPanel, bpy.types.Panel):
bl_label = "Bone Groups"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type == 'ARMATURE' and context.object.pose)
def draw(self, context):
@@ -158,7 +159,7 @@ class DATA_PT_bone_groups(DataButtonsPanel, bpy.types.Panel):
# TODO: this panel will soon be depreceated too
-class DATA_PT_ghost(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_ghost(ArmatureButtonsPanel, bpy.types.Panel):
bl_label = "Ghost"
def draw(self, context):
@@ -186,12 +187,12 @@ class DATA_PT_ghost(DataButtonsPanel, bpy.types.Panel):
col.prop(arm, "ghost_only_selected", text="Selected Only")
-class DATA_PT_iksolver_itasc(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_iksolver_itasc(ArmatureButtonsPanel, bpy.types.Panel):
bl_label = "iTaSC parameters"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.object
return (ob and ob.pose)
@@ -245,8 +246,8 @@ class DATA_PT_motion_paths(MotionPathButtonsPanel, bpy.types.Panel):
#bl_label = "Bones Motion Paths"
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
# XXX: include posemode check?
return (context.object) and (context.armature)
@@ -272,8 +273,8 @@ class DATA_PT_onion_skinning(OnionSkinButtonsPanel): #, bpy.types.Panel): # inhe
#bl_label = "Bones Onion Skinning"
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
# XXX: include posemode check?
return (context.object) and (context.armature)
diff --git a/release/scripts/ui/properties_data_armature_rigify.py b/release/scripts/ui/properties_data_armature_rigify.py
index d0a6821c16b..070f1fb7678 100644
--- a/release/scripts/ui/properties_data_armature_rigify.py
+++ b/release/scripts/ui/properties_data_armature_rigify.py
@@ -42,8 +42,8 @@ class DATA_PT_template(bpy.types.Panel):
templates = []
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if not context.armature:
return False
obj = context.object
@@ -261,8 +261,8 @@ class ActiveAssign(bpy.types.Operator):
bl_idname = "pose.metarig_assign"
bl_label = "Assign to the active posebone"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
bone = context.active_pose_bone
return bool(bone and bone.id_data.mode == 'POSE')
@@ -280,8 +280,8 @@ class ActiveClear(bpy.types.Operator):
bl_idname = "pose.metarig_clear"
bl_label = "Metarig Clear Type"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
bone = context.active_pose_bone
return bool(bone and bone.id_data.mode == 'POSE')
diff --git a/release/scripts/ui/properties_data_bone.py b/release/scripts/ui/properties_data_bone.py
index 108845ae8fc..1296ccd7e70 100644
--- a/release/scripts/ui/properties_data_bone.py
+++ b/release/scripts/ui/properties_data_bone.py
@@ -26,8 +26,8 @@ class BoneButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "bone"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.bone or context.edit_bone)
@@ -48,6 +48,7 @@ class BONE_PT_context_bone(BoneButtonsPanel, bpy.types.Panel):
class BONE_PT_custom_props(BoneButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
@property
def _context_path(self):
@@ -108,8 +109,8 @@ class BONE_PT_transform_locks(BoneButtonsPanel, bpy.types.Panel):
bl_label = "Transform Locks"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.bone
def draw(self, context):
@@ -184,8 +185,8 @@ class BONE_PT_relations(BoneButtonsPanel, bpy.types.Panel):
class BONE_PT_display(BoneButtonsPanel, bpy.types.Panel):
bl_label = "Display"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.bone
def draw(self, context):
@@ -220,8 +221,8 @@ class BONE_PT_inverse_kinematics(BoneButtonsPanel, bpy.types.Panel):
bl_label = "Inverse Kinematics"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.active_pose_bone
def draw(self, context):
diff --git a/release/scripts/ui/properties_data_camera.py b/release/scripts/ui/properties_data_camera.py
index 75bf2eb86d2..cda2b79c909 100644
--- a/release/scripts/ui/properties_data_camera.py
+++ b/release/scripts/ui/properties_data_camera.py
@@ -21,22 +21,22 @@ import bpy
from rna_prop_ui import PropertyPanel
-class DataButtonsPanel():
+class CameraButtonsPanel():
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "data"
+ @classmethod
+ def poll(cls, context):
+ engine = context.scene.render.engine
+ return context.camera and (engine in cls.COMPAT_ENGINES)
+
-class DATA_PT_context_camera(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_context_camera(CameraButtonsPanel, bpy.types.Panel):
bl_label = ""
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.camera and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -53,25 +53,15 @@ class DATA_PT_context_camera(DataButtonsPanel, bpy.types.Panel):
split.separator()
-class DATA_PT_custom_props_camera(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
- _context_path = "object.data"
+class DATA_PT_custom_props_camera(CameraButtonsPanel, PropertyPanel, bpy.types.Panel):
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
-
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.camera and (engine in __class__.COMPAT_ENGINES)
+ _context_path = "object.data"
-class DATA_PT_camera(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_camera(CameraButtonsPanel, bpy.types.Panel):
bl_label = "Lens"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.camera and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -121,15 +111,10 @@ class DATA_PT_camera(DataButtonsPanel, bpy.types.Panel):
col.prop(cam, "dof_distance", text="Distance")
-class DATA_PT_camera_display(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_camera_display(CameraButtonsPanel, bpy.types.Panel):
bl_label = "Display"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.camera and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/properties_data_curve.py b/release/scripts/ui/properties_data_curve.py
index 43f2f3497bb..1262f6739b7 100644
--- a/release/scripts/ui/properties_data_curve.py
+++ b/release/scripts/ui/properties_data_curve.py
@@ -21,34 +21,34 @@ import bpy
from rna_prop_ui import PropertyPanel
-class DataButtonsPanel():
+class CurveButtonsPanel():
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type in ('CURVE', 'SURFACE', 'TEXT') and context.curve)
-class DataButtonsPanelCurve(DataButtonsPanel):
+class CurveButtonsPanelCurve(CurveButtonsPanel):
'''Same as above but for curves only'''
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type == 'CURVE' and context.curve)
-class DataButtonsPanelActive(DataButtonsPanel):
+class CurveButtonsPanelActive(CurveButtonsPanel):
'''Same as above but for curves only'''
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
curve = context.curve
return (curve and type(curve) is not bpy.types.TextCurve and curve.splines.active)
-class DATA_PT_context_curve(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_context_curve(CurveButtonsPanel, bpy.types.Panel):
bl_label = ""
bl_show_header = False
@@ -69,11 +69,12 @@ class DATA_PT_context_curve(DataButtonsPanel, bpy.types.Panel):
split.separator()
-class DATA_PT_custom_props_curve(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
+class DATA_PT_custom_props_curve(CurveButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "object.data"
-class DATA_PT_shape_curve(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_shape_curve(CurveButtonsPanel, bpy.types.Panel):
bl_label = "Shape"
def draw(self, context):
@@ -124,11 +125,11 @@ class DATA_PT_shape_curve(DataButtonsPanel, bpy.types.Panel):
col.prop(curve, "auto_texspace")
-class DATA_PT_geometry_curve(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_geometry_curve(CurveButtonsPanel, bpy.types.Panel):
bl_label = "Geometry"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
obj = context.object
if obj and obj.type == 'SURFACE':
return False
@@ -157,7 +158,7 @@ class DATA_PT_geometry_curve(DataButtonsPanel, bpy.types.Panel):
col.prop(curve, "bevel_object", text="")
-class DATA_PT_pathanim(DataButtonsPanelCurve, bpy.types.Panel):
+class DATA_PT_pathanim(CurveButtonsPanelCurve, bpy.types.Panel):
bl_label = "Path Animation"
def draw_header(self, context):
@@ -188,7 +189,7 @@ class DATA_PT_pathanim(DataButtonsPanelCurve, bpy.types.Panel):
col.prop(curve, "use_time_offset", text="Offset Children")
-class DATA_PT_active_spline(DataButtonsPanelActive, bpy.types.Panel):
+class DATA_PT_active_spline(CurveButtonsPanelActive, bpy.types.Panel):
bl_label = "Active Spline"
def draw(self, context):
@@ -259,11 +260,11 @@ class DATA_PT_active_spline(DataButtonsPanelActive, bpy.types.Panel):
layout.prop(act_spline, "smooth")
-class DATA_PT_font(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_font(CurveButtonsPanel, bpy.types.Panel):
bl_label = "Font"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type == 'TEXT' and context.curve)
def draw(self, context):
@@ -315,11 +316,11 @@ class DATA_PT_font(DataButtonsPanel, bpy.types.Panel):
col.prop(char, "use_small_caps")
-class DATA_PT_paragraph(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_paragraph(CurveButtonsPanel, bpy.types.Panel):
bl_label = "Paragraph"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type == 'TEXT' and context.curve)
def draw(self, context):
@@ -344,11 +345,11 @@ class DATA_PT_paragraph(DataButtonsPanel, bpy.types.Panel):
col.prop(text, "offset_y", text="Y")
-class DATA_PT_textboxes(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_textboxes(CurveButtonsPanel, bpy.types.Panel):
bl_label = "Text Boxes"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type == 'TEXT' and context.curve)
def draw(self, context):
diff --git a/release/scripts/ui/properties_data_empty.py b/release/scripts/ui/properties_data_empty.py
index b4725647a0a..bf2f3b3d0ba 100644
--- a/release/scripts/ui/properties_data_empty.py
+++ b/release/scripts/ui/properties_data_empty.py
@@ -25,8 +25,8 @@ class DataButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object and context.object.type == 'EMPTY')
diff --git a/release/scripts/ui/properties_data_lamp.py b/release/scripts/ui/properties_data_lamp.py
index b2ab9cf9cfb..9a58622974e 100644
--- a/release/scripts/ui/properties_data_lamp.py
+++ b/release/scripts/ui/properties_data_lamp.py
@@ -34,16 +34,16 @@ class DataButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "data"
+ @classmethod
+ def poll(cls, context):
+ engine = context.scene.render.engine
+ return context.lamp and (engine in cls.COMPAT_ENGINES)
+
class DATA_PT_preview(DataButtonsPanel, bpy.types.Panel):
bl_label = "Preview"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.lamp and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
self.layout.template_preview(context.lamp)
@@ -52,11 +52,6 @@ class DATA_PT_context_lamp(DataButtonsPanel, bpy.types.Panel):
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.lamp and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -75,24 +70,14 @@ class DATA_PT_context_lamp(DataButtonsPanel, bpy.types.Panel):
class DATA_PT_custom_props_lamp(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
- _context_path = "object.data"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
-
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.lamp and (engine in __class__.COMPAT_ENGINES)
+ _context_path = "object.data"
class DATA_PT_lamp(DataButtonsPanel, bpy.types.Panel):
bl_label = "Lamp"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.lamp and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -135,11 +120,11 @@ class DATA_PT_sunsky(DataButtonsPanel, bpy.types.Panel):
bl_label = "Sky & Atmosphere"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
lamp = context.lamp
engine = context.scene.render.engine
- return (lamp and lamp.type == 'SUN') and (engine in __class__.COMPAT_ENGINES)
+ return (lamp and lamp.type == 'SUN') and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -206,11 +191,11 @@ class DATA_PT_shadow(DataButtonsPanel, bpy.types.Panel):
bl_label = "Shadow"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
lamp = context.lamp
engine = context.scene.render.engine
- return (lamp and lamp.type in ('POINT', 'SUN', 'SPOT', 'AREA')) and (engine in __class__.COMPAT_ENGINES)
+ return (lamp and lamp.type in ('POINT', 'SUN', 'SPOT', 'AREA')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -326,11 +311,11 @@ class DATA_PT_area(DataButtonsPanel, bpy.types.Panel):
bl_label = "Area Shape"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
lamp = context.lamp
engine = context.scene.render.engine
- return (lamp and lamp.type == 'AREA') and (engine in __class__.COMPAT_ENGINES)
+ return (lamp and lamp.type == 'AREA') and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
lamp = context.lamp
@@ -354,11 +339,11 @@ class DATA_PT_spot(DataButtonsPanel, bpy.types.Panel):
bl_label = "Spot Shape"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
lamp = context.lamp
engine = context.scene.render.engine
- return (lamp and lamp.type == 'SPOT') and (engine in __class__.COMPAT_ENGINES)
+ return (lamp and lamp.type == 'SPOT') and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -389,12 +374,12 @@ class DATA_PT_falloff_curve(DataButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
lamp = context.lamp
engine = context.scene.render.engine
- return (lamp and lamp.type in ('POINT', 'SPOT') and lamp.falloff_type == 'CUSTOM_CURVE') and (engine in __class__.COMPAT_ENGINES)
+ return (lamp and lamp.type in ('POINT', 'SPOT') and lamp.falloff_type == 'CUSTOM_CURVE') and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
lamp = context.lamp
diff --git a/release/scripts/ui/properties_data_lattice.py b/release/scripts/ui/properties_data_lattice.py
index a2dfeb191b8..5e313b79d85 100644
--- a/release/scripts/ui/properties_data_lattice.py
+++ b/release/scripts/ui/properties_data_lattice.py
@@ -26,8 +26,8 @@ class DataButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.lattice
@@ -52,6 +52,7 @@ class DATA_PT_context_lattice(DataButtonsPanel, bpy.types.Panel):
class DATA_PT_custom_props_lattice(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "object.data"
diff --git a/release/scripts/ui/properties_data_mesh.py b/release/scripts/ui/properties_data_mesh.py
index dd75850f1d3..1be2ce824fa 100644
--- a/release/scripts/ui/properties_data_mesh.py
+++ b/release/scripts/ui/properties_data_mesh.py
@@ -47,22 +47,22 @@ class MESH_MT_shape_key_specials(bpy.types.Menu):
layout.operator("object.shape_key_mirror", icon='ARROW_LEFTRIGHT')
-class DataButtonsPanel():
+class MeshButtonsPanel():
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "data"
+ @classmethod
+ def poll(cls, context):
+ engine = context.scene.render.engine
+ return context.mesh and (engine in cls.COMPAT_ENGINES)
+
-class DATA_PT_context_mesh(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_context_mesh(MeshButtonsPanel, bpy.types.Panel):
bl_label = ""
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.mesh and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -79,25 +79,15 @@ class DATA_PT_context_mesh(DataButtonsPanel, bpy.types.Panel):
split.separator()
-class DATA_PT_custom_props_mesh(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
- _context_path = "object.data"
+class DATA_PT_custom_props_mesh(MeshButtonsPanel, PropertyPanel, bpy.types.Panel):
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
-
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.mesh and (engine in __class__.COMPAT_ENGINES)
+ _context_path = "object.data"
-class DATA_PT_normals(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_normals(MeshButtonsPanel, bpy.types.Panel):
bl_label = "Normals"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.mesh and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -116,15 +106,10 @@ class DATA_PT_normals(DataButtonsPanel, bpy.types.Panel):
col.prop(mesh, "double_sided")
-class DATA_PT_settings(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_settings(MeshButtonsPanel, bpy.types.Panel):
bl_label = "Settings"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.mesh and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -133,15 +118,15 @@ class DATA_PT_settings(DataButtonsPanel, bpy.types.Panel):
layout.prop(mesh, "texture_mesh")
-class DATA_PT_vertex_groups(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_vertex_groups(MeshButtonsPanel, bpy.types.Panel):
bl_label = "Vertex Groups"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
engine = context.scene.render.engine
obj = context.object
- return (obj and obj.type in ('MESH', 'LATTICE') and (engine in __class__.COMPAT_ENGINES))
+ return (obj and obj.type in ('MESH', 'LATTICE') and (engine in cls.COMPAT_ENGINES))
def draw(self, context):
layout = self.layout
@@ -182,15 +167,15 @@ class DATA_PT_vertex_groups(DataButtonsPanel, bpy.types.Panel):
layout.prop(context.tool_settings, "vertex_group_weight", text="Weight")
-class DATA_PT_shape_keys(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_shape_keys(MeshButtonsPanel, bpy.types.Panel):
bl_label = "Shape Keys"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
engine = context.scene.render.engine
obj = context.object
- return (obj and obj.type in ('MESH', 'LATTICE', 'CURVE', 'SURFACE') and (engine in __class__.COMPAT_ENGINES))
+ return (obj and obj.type in ('MESH', 'LATTICE', 'CURVE', 'SURFACE') and (engine in cls.COMPAT_ENGINES))
def draw(self, context):
layout = self.layout
@@ -274,15 +259,10 @@ class DATA_PT_shape_keys(DataButtonsPanel, bpy.types.Panel):
row.prop(key, "slurph")
-class DATA_PT_uv_texture(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_uv_texture(MeshButtonsPanel, bpy.types.Panel):
bl_label = "UV Texture"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.mesh and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -302,12 +282,12 @@ class DATA_PT_uv_texture(DataButtonsPanel, bpy.types.Panel):
layout.prop(lay, "name")
-class DATA_PT_texface(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_texface(MeshButtonsPanel, bpy.types.Panel):
bl_label = "Texture Face"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
rd = context.scene.render
@@ -348,15 +328,10 @@ class DATA_PT_texface(DataButtonsPanel, bpy.types.Panel):
col.label(text="No UV Texture")
-class DATA_PT_vertex_colors(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_vertex_colors(MeshButtonsPanel, bpy.types.Panel):
bl_label = "Vertex Colors"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- engine = context.scene.render.engine
- return context.mesh and (engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/properties_data_metaball.py b/release/scripts/ui/properties_data_metaball.py
index dbc0f642c7c..a6b1bb75cbe 100644
--- a/release/scripts/ui/properties_data_metaball.py
+++ b/release/scripts/ui/properties_data_metaball.py
@@ -26,8 +26,8 @@ class DataButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "data"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.meta_ball
@@ -52,6 +52,7 @@ class DATA_PT_context_metaball(DataButtonsPanel, bpy.types.Panel):
class DATA_PT_custom_props_metaball(DataButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "object.data"
@@ -82,8 +83,8 @@ class DATA_PT_metaball(DataButtonsPanel, bpy.types.Panel):
class DATA_PT_metaball_element(DataButtonsPanel, bpy.types.Panel):
bl_label = "Active Element"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.meta_ball and context.meta_ball.active_element)
def draw(self, context):
diff --git a/release/scripts/ui/properties_data_modifier.py b/release/scripts/ui/properties_data_modifier.py
index ad16dce5030..2847810f417 100644
--- a/release/scripts/ui/properties_data_modifier.py
+++ b/release/scripts/ui/properties_data_modifier.py
@@ -20,13 +20,13 @@
import bpy
-class DataButtonsPanel():
+class ModifierButtonsPanel():
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "modifier"
-class DATA_PT_modifiers(DataButtonsPanel, bpy.types.Panel):
+class DATA_PT_modifiers(ModifierButtonsPanel, bpy.types.Panel):
bl_label = "Modifiers"
def draw(self, context):
diff --git a/release/scripts/ui/properties_game.py b/release/scripts/ui/properties_game.py
index 6d3225553ba..608976f373c 100644
--- a/release/scripts/ui/properties_game.py
+++ b/release/scripts/ui/properties_game.py
@@ -30,11 +30,11 @@ class PHYSICS_PT_game_physics(PhysicsButtonsPanel, bpy.types.Panel):
bl_label = "Physics"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
rd = context.scene.render
- return ob and ob.game and (rd.engine in __class__.COMPAT_ENGINES)
+ return ob and ob.game and (rd.engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -157,11 +157,11 @@ class PHYSICS_PT_game_collision_bounds(PhysicsButtonsPanel, bpy.types.Panel):
bl_label = "Collision Bounds"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
game = context.object.game
rd = context.scene.render
- return (game.physics_type in ('DYNAMIC', 'RIGID_BODY', 'SENSOR', 'SOFT_BODY', 'STATIC')) and (rd.engine in __class__.COMPAT_ENGINES)
+ return (game.physics_type in ('DYNAMIC', 'RIGID_BODY', 'SENSOR', 'SOFT_BODY', 'STATIC')) and (rd.engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
game = context.active_object.game
@@ -190,16 +190,16 @@ class RenderButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "render"
+ @classmethod
+ def poll(cls, context):
+ rd = context.scene.render
+ return (rd.engine in cls.COMPAT_ENGINES)
+
class RENDER_PT_game(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Game"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -212,11 +212,6 @@ class RENDER_PT_game_player(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Standalone Player"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -250,11 +245,6 @@ class RENDER_PT_game_stereo(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Stereo"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -309,11 +299,6 @@ class RENDER_PT_game_shading(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Shading"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -339,11 +324,6 @@ class RENDER_PT_game_performance(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Performance"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -369,11 +349,6 @@ class RENDER_PT_game_sound(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Sound"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -396,8 +371,8 @@ class WORLD_PT_game_context_world(WorldButtonsPanel, bpy.types.Panel):
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
rd = context.scene.render
return (context.scene) and (rd.use_game_engine)
@@ -419,10 +394,10 @@ class WORLD_PT_game_world(WorldButtonsPanel, bpy.types.Panel):
bl_label = "World"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
- return (scene.world and scene.render.engine in __class__.COMPAT_ENGINES)
+ return (scene.world and scene.render.engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -442,10 +417,10 @@ class WORLD_PT_game_mist(WorldButtonsPanel, bpy.types.Panel):
bl_label = "Mist"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
- return (scene.world and scene.render.engine in __class__.COMPAT_ENGINES)
+ return (scene.world and scene.render.engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
world = context.world
@@ -471,10 +446,10 @@ class WORLD_PT_game_physics(WorldButtonsPanel, bpy.types.Panel):
bl_label = "Physics"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.scene
- return (scene.world and scene.render.engine in __class__.COMPAT_ENGINES)
+ return (scene.world and scene.render.engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/properties_material.py b/release/scripts/ui/properties_material.py
index 6dfc3fc95a1..d14c8c05c63 100644
--- a/release/scripts/ui/properties_material.py
+++ b/release/scripts/ui/properties_material.py
@@ -58,6 +58,10 @@ class MaterialButtonsPanel():
bl_context = "material"
# COMPAT_ENGINES must be defined in each subclass, external engines can add themselves here
+ @classmethod
+ def poll(cls, context):
+ return context.material and (context.scene.render.engine in cls.COMPAT_ENGINES)
+
class MATERIAL_PT_preview(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Preview"
@@ -72,13 +76,13 @@ class MATERIAL_PT_context_material(MaterialButtonsPanel, bpy.types.Panel):
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
# An exception, dont call the parent poll func because
# this manages materials for all engine types
engine = context.scene.render.engine
- return (context.material or context.object) and (engine in __class__.COMPAT_ENGINES)
+ return (context.material or context.object) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -126,23 +130,19 @@ class MATERIAL_PT_context_material(MaterialButtonsPanel, bpy.types.Panel):
class MATERIAL_PT_custom_props(MaterialButtonsPanel, PropertyPanel, bpy.types.Panel):
- COMPAT_ENGINES = {'BLENDER_RENDER'}
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "material"
- @staticmethod
- def poll(context):
- return context.material and (context.scene.render.engine in __class__.COMPAT_ENGINES)
-
class MATERIAL_PT_shading(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Shading"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE', 'HALO')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE', 'HALO')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -176,11 +176,11 @@ class MATERIAL_PT_strand(MaterialButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = context.material
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE', 'HALO')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE', 'HALO')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -223,9 +223,9 @@ class MATERIAL_PT_physics(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Physics"
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- return context.material and (context.scene.render.engine in __class__.COMPAT_ENGINES)
+ @classmethod
+ def poll(cls, context):
+ return context.material and (context.scene.render.engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -249,11 +249,11 @@ class MATERIAL_PT_options(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Options"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -294,11 +294,11 @@ class MATERIAL_PT_shadow(MaterialButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -329,11 +329,11 @@ class MATERIAL_PT_diffuse(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Diffuse"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -396,11 +396,11 @@ class MATERIAL_PT_specular(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Specular"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -462,11 +462,11 @@ class MATERIAL_PT_sss(MaterialButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
mat = active_node_mat(context.material)
@@ -513,11 +513,11 @@ class MATERIAL_PT_mirror(MaterialButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
raym = active_node_mat(context.material).raytrace_mirror
@@ -571,11 +571,11 @@ class MATERIAL_PT_transp(MaterialButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type in ('SURFACE', 'WIRE')) and (engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
mat = active_node_mat(context.material)
@@ -633,11 +633,11 @@ class MATERIAL_PT_transp_game(MaterialButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = active_node_mat(context.material)
engine = context.scene.render.engine
- return mat and (engine in __class__.COMPAT_ENGINES)
+ return mat and (engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
mat = active_node_mat(context.material)
@@ -664,11 +664,11 @@ class MATERIAL_PT_halo(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Halo"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = context.material
engine = context.scene.render.engine
- return mat and (mat.type == 'HALO') and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type == 'HALO') and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -713,11 +713,11 @@ class MATERIAL_PT_flare(MaterialButtonsPanel, bpy.types.Panel):
bl_label = "Flare"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = context.material
engine = context.scene.render.engine
- return mat and (mat.type == 'HALO') and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type == 'HALO') and (engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
halo = context.material.halo
@@ -750,11 +750,11 @@ class VolumeButtonsPanel():
bl_context = "material"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
mat = context.material
engine = context.scene.render.engine
- return mat and (mat.type == 'VOLUME') and (engine in __class__.COMPAT_ENGINES)
+ return mat and (mat.type == 'VOLUME') and (engine in cls.COMPAT_ENGINES)
class MATERIAL_PT_volume_density(VolumeButtonsPanel, bpy.types.Panel):
diff --git a/release/scripts/ui/properties_object.py b/release/scripts/ui/properties_object.py
index f5d61a22b8f..6923e60a3df 100644
--- a/release/scripts/ui/properties_object.py
+++ b/release/scripts/ui/properties_object.py
@@ -274,8 +274,8 @@ class OBJECT_PT_motion_paths(MotionPathButtonsPanel, bpy.types.Panel):
#bl_label = "Object Motion Paths"
bl_context = "object"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object)
def draw(self, context):
@@ -300,8 +300,8 @@ class OBJECT_PT_onion_skinning(OnionSkinButtonsPanel): #, bpy.types.Panel): # in
#bl_label = "Object Onion Skinning"
bl_context = "object"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object)
def draw(self, context):
@@ -311,9 +311,12 @@ class OBJECT_PT_onion_skinning(OnionSkinButtonsPanel): #, bpy.types.Panel): # in
self.draw_settings(context, ob.animation_visualisation)
+
class OBJECT_PT_custom_props(ObjectButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "object"
+
def register():
pass
diff --git a/release/scripts/ui/properties_object_constraint.py b/release/scripts/ui/properties_object_constraint.py
index 87ca702fa69..b3a96841d71 100644
--- a/release/scripts/ui/properties_object_constraint.py
+++ b/release/scripts/ui/properties_object_constraint.py
@@ -678,8 +678,8 @@ class OBJECT_PT_constraints(ConstraintButtonsPanel, bpy.types.Panel):
bl_label = "Object Constraints"
bl_context = "constraint"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.object)
def draw(self, context):
@@ -697,8 +697,8 @@ class BONE_PT_constraints(ConstraintButtonsPanel, bpy.types.Panel):
bl_label = "Bone Constraints"
bl_context = "bone_constraint"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.pose_bone)
def draw(self, context):
diff --git a/release/scripts/ui/properties_particle.py b/release/scripts/ui/properties_particle.py
index 0d830c121ee..72e804a1cef 100644
--- a/release/scripts/ui/properties_particle.py
+++ b/release/scripts/ui/properties_particle.py
@@ -45,16 +45,20 @@ class ParticleButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "particle"
+ @classmethod
+ def poll(cls, context):
+ return particle_panel_poll(cls, context)
+
class PARTICLE_PT_context_particles(ParticleButtonsPanel, bpy.types.Panel):
bl_label = ""
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
engine = context.scene.render.engine
- return (context.particle_system or context.object) and (engine in __class__.COMPAT_ENGINES)
+ return (context.particle_system or context.object) and (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -136,17 +140,13 @@ class PARTICLE_PT_custom_props(ParticleButtonsPanel, PropertyPanel, bpy.types.Pa
COMPAT_ENGINES = {'BLENDER_RENDER'}
_context_path = "particle_system.settings"
- @staticmethod
- def poll(context):
- return particle_panel_poll(__class__, context)
-
class PARTICLE_PT_emission(ParticleButtonsPanel, bpy.types.Panel):
bl_label = "Emission"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if particle_panel_poll(PARTICLE_PT_emission, context):
return not context.particle_system.point_cache.external
else:
@@ -204,15 +204,15 @@ class PARTICLE_PT_hair_dynamics(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
psys = context.particle_system
engine = context.scene.render.engine
if psys is None:
return False
if psys.settings is None:
return False
- return psys.settings.type == 'HAIR' and (engine in __class__.COMPAT_ENGINES)
+ return psys.settings.type == 'HAIR' and (engine in cls.COMPAT_ENGINES)
def draw_header(self, context):
#cloth = context.cloth.collision_settings
@@ -262,8 +262,8 @@ class PARTICLE_PT_cache(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
psys = context.particle_system
engine = context.scene.render.engine
if psys is None:
@@ -273,7 +273,7 @@ class PARTICLE_PT_cache(ParticleButtonsPanel, bpy.types.Panel):
phystype = psys.settings.physics_type
if phystype == 'NO' or phystype == 'KEYED':
return False
- return (psys.settings.type in ('EMITTER', 'REACTOR') or (psys.settings.type == 'HAIR' and psys.hair_dynamics)) and engine in __class__.COMPAT_ENGINES
+ return (psys.settings.type in ('EMITTER', 'REACTOR') or (psys.settings.type == 'HAIR' and psys.hair_dynamics)) and engine in cls.COMPAT_ENGINES
def draw(self, context):
psys = context.particle_system
@@ -285,8 +285,8 @@ class PARTICLE_PT_velocity(ParticleButtonsPanel, bpy.types.Panel):
bl_label = "Velocity"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if particle_panel_poll(PARTICLE_PT_velocity, context):
psys = context.particle_system
return psys.settings.physics_type != 'BOIDS' and not psys.point_cache.external
@@ -333,8 +333,8 @@ class PARTICLE_PT_rotation(ParticleButtonsPanel, bpy.types.Panel):
bl_label = "Rotation"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if particle_panel_poll(PARTICLE_PT_rotation, context):
psys = context.particle_system
return psys.settings.physics_type != 'BOIDS' and not psys.point_cache.external
@@ -376,8 +376,8 @@ class PARTICLE_PT_physics(ParticleButtonsPanel, bpy.types.Panel):
bl_label = "Physics"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if particle_panel_poll(PARTICLE_PT_physics, context):
return not context.particle_system.point_cache.external
else:
@@ -570,8 +570,8 @@ class PARTICLE_PT_boidbrain(ParticleButtonsPanel, bpy.types.Panel):
bl_label = "Boid Brain"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
psys = context.particle_system
engine = context.scene.render.engine
if psys is None:
@@ -580,7 +580,7 @@ class PARTICLE_PT_boidbrain(ParticleButtonsPanel, bpy.types.Panel):
return False
if psys.point_cache.external:
return False
- return psys.settings.physics_type == 'BOIDS' and engine in __class__.COMPAT_ENGINES
+ return psys.settings.physics_type == 'BOIDS' and engine in cls.COMPAT_ENGINES
def draw(self, context):
layout = self.layout
@@ -671,15 +671,15 @@ class PARTICLE_PT_render(ParticleButtonsPanel, bpy.types.Panel):
bl_label = "Render"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
psys = context.particle_system
engine = context.scene.render.engine
if psys is None:
return False
if psys.settings is None:
return False
- return engine in __class__.COMPAT_ENGINES
+ return engine in cls.COMPAT_ENGINES
def draw(self, context):
layout = self.layout
@@ -836,15 +836,15 @@ class PARTICLE_PT_draw(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
psys = context.particle_system
engine = context.scene.render.engine
if psys is None:
return False
if psys.settings is None:
return False
- return engine in __class__.COMPAT_ENGINES
+ return engine in cls.COMPAT_ENGINES
def draw(self, context):
layout = self.layout
@@ -892,9 +892,9 @@ class PARTICLE_PT_children(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- return particle_panel_poll(__class__, context)
+ @classmethod
+ def poll(cls, context):
+ return particle_panel_poll(cls, context)
def draw(self, context):
layout = self.layout
@@ -974,10 +974,6 @@ class PARTICLE_PT_field_weights(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- return particle_panel_poll(__class__, context)
-
def draw(self, context):
part = context.particle_system.settings
effector_weights_ui(self, context, part.effector_weights)
@@ -991,10 +987,6 @@ class PARTICLE_PT_force_fields(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- return particle_panel_poll(__class__, context)
-
def draw(self, context):
layout = self.layout
@@ -1023,10 +1015,6 @@ class PARTICLE_PT_vertexgroups(ParticleButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- return particle_panel_poll(__class__, context)
-
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/properties_physics_cloth.py b/release/scripts/ui/properties_physics_cloth.py
index d711dc9d9cf..0755b9be603 100644
--- a/release/scripts/ui/properties_physics_cloth.py
+++ b/release/scripts/ui/properties_physics_cloth.py
@@ -43,8 +43,8 @@ class PhysicButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "physics"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.object
rd = context.scene.render
return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
@@ -133,8 +133,8 @@ class PHYSICS_PT_cloth_cache(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Cloth Cache"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.cloth
def draw(self, context):
@@ -146,8 +146,8 @@ class PHYSICS_PT_cloth_collision(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Cloth Collision"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.cloth
def draw_header(self, context):
@@ -185,8 +185,8 @@ class PHYSICS_PT_cloth_stiffness(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Cloth Stiffness Scaling"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.cloth
def draw_header(self, context):
@@ -221,8 +221,8 @@ class PHYSICS_PT_cloth_field_weights(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Cloth Field Weights"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.cloth)
def draw(self, context):
diff --git a/release/scripts/ui/properties_physics_field.py b/release/scripts/ui/properties_physics_field.py
index bf9fb1ab996..b67232f888d 100644
--- a/release/scripts/ui/properties_physics_field.py
+++ b/release/scripts/ui/properties_physics_field.py
@@ -29,8 +29,8 @@ class PhysicButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "physics"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
rd = context.scene.render
return (context.object) and (not rd.use_game_engine)
@@ -160,8 +160,8 @@ class PHYSICS_PT_collision(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Collision"
#bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.object
rd = context.scene.render
return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
diff --git a/release/scripts/ui/properties_physics_fluid.py b/release/scripts/ui/properties_physics_fluid.py
index 7f0352fa052..2c25270eb39 100644
--- a/release/scripts/ui/properties_physics_fluid.py
+++ b/release/scripts/ui/properties_physics_fluid.py
@@ -25,8 +25,8 @@ class PhysicButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "physics"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.object
rd = context.scene.render
return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
@@ -203,8 +203,8 @@ class PHYSICS_PT_domain_gravity(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Domain World"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.fluid
return md and md.settings and (md.settings.type == 'DOMAIN')
@@ -253,8 +253,8 @@ class PHYSICS_PT_domain_boundary(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Domain Boundary"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.fluid
return md and md.settings and (md.settings.type == 'DOMAIN')
@@ -281,8 +281,8 @@ class PHYSICS_PT_domain_particles(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Domain Particles"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.fluid
return md and md.settings and (md.settings.type == 'DOMAIN')
diff --git a/release/scripts/ui/properties_physics_smoke.py b/release/scripts/ui/properties_physics_smoke.py
index 4831bafa490..3538b88afcf 100644
--- a/release/scripts/ui/properties_physics_smoke.py
+++ b/release/scripts/ui/properties_physics_smoke.py
@@ -29,8 +29,8 @@ class PhysicButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "physics"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.object
rd = context.scene.render
return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
@@ -123,8 +123,8 @@ class PHYSICS_PT_smoke_groups(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Smoke Groups"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.smoke
return md and (md.smoke_type == 'DOMAIN')
@@ -151,8 +151,8 @@ class PHYSICS_PT_smoke_cache(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Smoke Cache"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.smoke
return md and (md.smoke_type == 'DOMAIN')
@@ -172,8 +172,8 @@ class PHYSICS_PT_smoke_highres(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Smoke High Resolution"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.smoke
return md and (md.smoke_type == 'DOMAIN')
@@ -207,8 +207,8 @@ class PHYSICS_PT_smoke_cache_highres(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Smoke High Resolution Cache"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
md = context.smoke
return md and (md.smoke_type == 'DOMAIN') and md.domain_settings.highres
@@ -228,8 +228,8 @@ class PHYSICS_PT_smoke_field_weights(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Smoke Field Weights"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
smoke = context.smoke
return (smoke and smoke.smoke_type == 'DOMAIN')
diff --git a/release/scripts/ui/properties_physics_softbody.py b/release/scripts/ui/properties_physics_softbody.py
index 50e0910adc9..5240e6477d8 100644
--- a/release/scripts/ui/properties_physics_softbody.py
+++ b/release/scripts/ui/properties_physics_softbody.py
@@ -33,8 +33,8 @@ class PhysicButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "physics"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.object
rd = context.scene.render
# return (ob and ob.type == 'MESH') and (not rd.use_game_engine)
@@ -88,8 +88,8 @@ class PHYSICS_PT_softbody_cache(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Soft Body Cache"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.soft_body
def draw(self, context):
@@ -101,8 +101,8 @@ class PHYSICS_PT_softbody_goal(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Soft Body Goal"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.soft_body
def draw_header(self, context):
@@ -144,8 +144,8 @@ class PHYSICS_PT_softbody_edge(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Soft Body Edges"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.soft_body
def draw_header(self, context):
@@ -198,8 +198,8 @@ class PHYSICS_PT_softbody_collision(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Soft Body Self Collision"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.soft_body
def draw_header(self, context):
@@ -230,8 +230,8 @@ class PHYSICS_PT_softbody_solver(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Soft Body Solver"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.soft_body
def draw(self, context):
@@ -266,8 +266,8 @@ class PHYSICS_PT_softbody_field_weights(PhysicButtonsPanel, bpy.types.Panel):
bl_label = "Soft Body Field Weights"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.soft_body)
def draw(self, context):
diff --git a/release/scripts/ui/properties_render.py b/release/scripts/ui/properties_render.py
index 7b080445aee..cd11179dc25 100644
--- a/release/scripts/ui/properties_render.py
+++ b/release/scripts/ui/properties_render.py
@@ -40,16 +40,16 @@ class RenderButtonsPanel():
bl_context = "render"
# COMPAT_ENGINES must be defined in each subclass, external engines can add themselves here
+ @classmethod
+ def poll(cls, context):
+ rd = context.scene.render
+ return (context.scene and rd.use_game_engine is False) and (rd.engine in cls.COMPAT_ENGINES)
+
class RENDER_PT_render(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Render"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -71,11 +71,6 @@ class RENDER_PT_layers(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -178,11 +173,6 @@ class RENDER_PT_shading(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Shading"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -207,11 +197,6 @@ class RENDER_PT_performance(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -254,11 +239,6 @@ class RENDER_PT_post_processing(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -297,11 +277,6 @@ class RENDER_PT_output(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Output"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -417,8 +392,8 @@ class RENDER_PT_encoding(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
rd = context.scene.render
return rd.file_format in ('FFMPEG', 'XVID', 'H264', 'THEORA')
@@ -484,11 +459,6 @@ class RENDER_PT_antialiasing(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Anti-Aliasing"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw_header(self, context):
rd = context.scene.render
@@ -518,11 +488,6 @@ class RENDER_PT_motion_blur(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw_header(self, context):
rd = context.scene.render
@@ -542,11 +507,6 @@ class RENDER_PT_dimensions(RenderButtonsPanel, bpy.types.Panel):
bl_label = "Dimensions"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -593,11 +553,6 @@ class RENDER_PT_stamp(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw_header(self, context):
rd = context.scene.render
@@ -642,11 +597,6 @@ class RENDER_PT_bake(RenderButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
- rd = context.scene.render
- return (context.scene and rd.use_game_engine is False) and (rd.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/properties_render_test.xml b/release/scripts/ui/properties_render_test.xml
new file mode 100644
index 00000000000..f8a77e37e21
--- /dev/null
+++ b/release/scripts/ui/properties_render_test.xml
@@ -0,0 +1,79 @@
+<ui>
+ <panel identifier="RENDER_PT_stamp_test" label="Stamp (XML)" space_type="PROPERTIES" region_type="WINDOW" context="render" default_closed="true">
+ <draw_header>
+ <prop data="context.scene.render" property="render_stamp" text=""/>
+ </draw_header>
+
+ <draw>
+ <split>
+ <column>
+ <prop data="context.scene.render" property="stamp_time" text="Time"/>
+ <prop data="context.scene.render" property="stamp_date" text="Date"/>
+ <prop data="context.scene.render" property="stamp_render_time" text="RenderTime"/>
+ <prop data="context.scene.render" property="stamp_frame" text="Frame"/>
+ <prop data="context.scene.render" property="stamp_scene" text="Scene"/>
+ <prop data="context.scene.render" property="stamp_camera" text="Camera"/>
+ <prop data="context.scene.render" property="stamp_filename" text="Filename"/>
+ <prop data="context.scene.render" property="stamp_marker" text="Marker"/>
+ <prop data="context.scene.render" property="stamp_sequencer_strip" text="Seq. Strip"/>
+ </column>
+ <column>
+ <active expr="context.scene.render.render_stamp"/>
+ <prop data="context.scene.render" property="stamp_foreground" slider="true"/>
+ <prop data="context.scene.render" property="stamp_background" slider="true"/>
+ <separator/>
+ <prop data="context.scene.render" property="stamp_font_size" text="Font Size"/>
+ </column>
+ </split>
+ <split percentage="0.2">
+ <prop data="context.scene.render" property="stamp_note" text="Note"/>
+ <row>
+ <active expr="context.scene.render.stamp_note"/>
+ <prop data="context.scene.render" property="stamp_note_text" text=""/>
+ </row>
+ </split>
+ </draw>
+ </panel>
+
+ <panel identifier="RENDER_PT_dimensions_test" label="Dimensions (XML)" space_type="PROPERTIES" region_type="WINDOW" context="render">
+ <draw>
+ <row align="true">
+ <menu menu="RENDER_MT_presets"/>
+ <operator operator="render.preset_add" text="" icon="ZOOMIN"/>
+ </row>
+ <split>
+ <column>
+ <column align="true">
+ <label text="Resolution:"/>
+ <prop data="context.scene.render" property="resolution_x" text="X"/>
+ <prop data="context.scene.render" property="resolution_y" text="Y"/>
+ <prop data="context.scene.render" property="resolution_percentage" text=""/>
+
+ <label text="Aspect Ratio:"/>
+ <prop data="context.scene.render" property="pixel_aspect_x" text="X"/>
+ <prop data="context.scene.render" property="pixel_aspect_y" text="Y"/>
+ </column>
+ <row>
+ <prop data="context.scene.render" property="use_border" text="Border"/>
+ <row>
+ <active expr="context.scene.render.use_border"/>
+ <prop data="context.scene.render" property="crop_to_border" text="Crop"/>
+ </row>
+ </row>
+ </column>
+ <column>
+ <column align="true">
+ <label text="Frame Range:"/>
+ <prop data="context.scene" property="frame_start" text="Start"/>
+ <prop data="context.scene" property="frame_end" text="End"/>
+ <prop data="context.scene" property="frame_step" text="Step"/>
+
+ <label text="Frame Rate:"/>
+ <prop data="context.scene.render" property="fps"/>
+ <prop data="context.scene.render" property="fps_base" text="/"/>
+ </column>
+ </column>
+ </split>
+ </draw>
+ </panel>
+</ui>
diff --git a/release/scripts/ui/properties_scene.py b/release/scripts/ui/properties_scene.py
index 37af2b511b8..3ed8dfb72b8 100644
--- a/release/scripts/ui/properties_scene.py
+++ b/release/scripts/ui/properties_scene.py
@@ -26,8 +26,8 @@ class SceneButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "scene"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.scene
@@ -44,6 +44,7 @@ class SCENE_PT_scene(SceneButtonsPanel, bpy.types.Panel):
class SCENE_PT_custom_props(SceneButtonsPanel, PropertyPanel, bpy.types.Panel):
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "scene"
@@ -108,8 +109,8 @@ class SCENE_PT_keying_sets(SceneButtonsPanel, bpy.types.Panel):
class SCENE_PT_keying_set_paths(SceneButtonsPanel, bpy.types.Panel):
bl_label = "Active Keying Set"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.scene.active_keying_set and context.scene.active_keying_set.absolute)
def draw(self, context):
diff --git a/release/scripts/ui/properties_texture.py b/release/scripts/ui/properties_texture.py
index 32c572d849b..b675576ec3f 100644
--- a/release/scripts/ui/properties_texture.py
+++ b/release/scripts/ui/properties_texture.py
@@ -68,16 +68,16 @@ class TextureButtonsPanel():
bl_region_type = 'WINDOW'
bl_context = "texture"
+ @classmethod
+ def poll(cls, context):
+ tex = context.texture
+ return tex and (tex.type != 'NONE' or tex.use_nodes) and (context.scene.render.engine in cls.COMPAT_ENGINES)
+
class TEXTURE_PT_preview(TextureButtonsPanel, bpy.types.Panel):
bl_label = "Preview"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- return tex and (tex.type != 'NONE' or tex.use_nodes) and (context.scene.render.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -96,13 +96,13 @@ class TEXTURE_PT_context_texture(TextureButtonsPanel, bpy.types.Panel):
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
engine = context.scene.render.engine
if not hasattr(context, "texture_slot"):
return False
return ((context.material or context.world or context.lamp or context.brush or context.texture)
- and (engine in __class__.COMPAT_ENGINES))
+ and (engine in cls.COMPAT_ENGINES))
def draw(self, context):
layout = self.layout
@@ -156,13 +156,8 @@ class TEXTURE_PT_context_texture(TextureButtonsPanel, bpy.types.Panel):
class TEXTURE_PT_custom_props(TextureButtonsPanel, PropertyPanel, bpy.types.Panel):
- _context_path = "texture"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
-
- @staticmethod
- def poll(context): # use alternate poll since NONE texture type is ok
- engine = context.scene.render.engine
- return context.texture and (engine in __class__.COMPAT_ENGINES)
+ _context_path = "texture"
class TEXTURE_PT_colors(TextureButtonsPanel, bpy.types.Panel):
@@ -170,11 +165,6 @@ class TEXTURE_PT_colors(TextureButtonsPanel, bpy.types.Panel):
bl_default_closed = True
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- return tex and (tex.type != 'NONE' or tex.use_nodes) and (context.scene.render.engine in __class__.COMPAT_ENGINES)
-
def draw(self, context):
layout = self.layout
@@ -205,21 +195,21 @@ class TEXTURE_PT_colors(TextureButtonsPanel, bpy.types.Panel):
class TextureSlotPanel(TextureButtonsPanel):
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
if not hasattr(context, "texture_slot"):
return False
engine = context.scene.render.engine
- return TextureButtonsPanel.poll(self, context) and (engine in __class__.COMPAT_ENGINES)
+ return TextureButtonsPanel.poll(self, context) and (engine in cls.COMPAT_ENGINES)
class TEXTURE_PT_mapping(TextureSlotPanel, bpy.types.Panel):
bl_label = "Mapping"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
idblock = context_tex_datablock(context)
if type(idblock) == bpy.types.Brush and not context.sculpt_object:
return False
@@ -228,7 +218,7 @@ class TEXTURE_PT_mapping(TextureSlotPanel, bpy.types.Panel):
return False
engine = context.scene.render.engine
- return (engine in __class__.COMPAT_ENGINES)
+ return (engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -311,8 +301,8 @@ class TEXTURE_PT_influence(TextureSlotPanel, bpy.types.Panel):
bl_label = "Influence"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
idblock = context_tex_datablock(context)
if type(idblock) == bpy.types.Brush:
return False
@@ -321,7 +311,7 @@ class TEXTURE_PT_influence(TextureSlotPanel, bpy.types.Panel):
return False
engine = context.scene.render.engine
- return (engine in __class__.COMPAT_ENGINES)
+ return (engine in cls.COMPAT_ENGINES)
def draw(self, context):
@@ -428,7 +418,12 @@ class TEXTURE_PT_influence(TextureSlotPanel, bpy.types.Panel):
class TextureTypePanel(TextureButtonsPanel):
- pass
+
+ @classmethod
+ def poll(cls, context):
+ tex = context.texture
+ engine = context.scene.render.engine
+ return tex and ((tex.type == cls.tex_type and not tex.use_nodes) and (engine in cls.COMPAT_ENGINES))
class TEXTURE_PT_clouds(TextureTypePanel, bpy.types.Panel):
@@ -436,12 +431,6 @@ class TEXTURE_PT_clouds(TextureTypePanel, bpy.types.Panel):
tex_type = 'CLOUDS'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -467,12 +456,6 @@ class TEXTURE_PT_wood(TextureTypePanel, bpy.types.Panel):
tex_type = 'WOOD'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -503,12 +486,6 @@ class TEXTURE_PT_marble(TextureTypePanel, bpy.types.Panel):
tex_type = 'MARBLE'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -536,12 +513,6 @@ class TEXTURE_PT_magic(TextureTypePanel, bpy.types.Panel):
tex_type = 'MAGIC'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -561,12 +532,6 @@ class TEXTURE_PT_blend(TextureTypePanel, bpy.types.Panel):
tex_type = 'BLEND'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -585,12 +550,6 @@ class TEXTURE_PT_stucci(TextureTypePanel, bpy.types.Panel):
tex_type = 'STUCCI'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -615,12 +574,6 @@ class TEXTURE_PT_image(TextureTypePanel, bpy.types.Panel):
tex_type = 'IMAGE'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -648,12 +601,6 @@ class TEXTURE_PT_image_sampling(TextureTypePanel, bpy.types.Panel):
tex_type = 'IMAGE'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -692,12 +639,6 @@ class TEXTURE_PT_image_mapping(TextureTypePanel, bpy.types.Panel):
tex_type = 'IMAGE'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -749,12 +690,6 @@ class TEXTURE_PT_plugin(TextureTypePanel, bpy.types.Panel):
tex_type = 'PLUGIN'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -768,12 +703,6 @@ class TEXTURE_PT_envmap(TextureTypePanel, bpy.types.Panel):
tex_type = 'ENVIRONMENT_MAP'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -814,12 +743,6 @@ class TEXTURE_PT_envmap_sampling(TextureTypePanel, bpy.types.Panel):
tex_type = 'ENVIRONMENT_MAP'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -833,12 +756,6 @@ class TEXTURE_PT_musgrave(TextureTypePanel, bpy.types.Panel):
tex_type = 'MUSGRAVE'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -878,12 +795,6 @@ class TEXTURE_PT_voronoi(TextureTypePanel, bpy.types.Panel):
tex_type = 'VORONOI'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -925,12 +836,6 @@ class TEXTURE_PT_distortednoise(TextureTypePanel, bpy.types.Panel):
tex_type = 'DISTORTED_NOISE'
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
- tex = context.texture
- engine = context.scene.render.engine
- return tex and ((tex.type == __class__.tex_type and not tex.use_nodes) and (engine in __class__.COMPAT_ENGINES))
-
def draw(self, context):
layout = self.layout
@@ -953,11 +858,11 @@ class TEXTURE_PT_voxeldata(TextureButtonsPanel, bpy.types.Panel):
bl_label = "Voxel Data"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
tex = context.texture
engine = context.scene.render.engine
- return tex and (tex.type == 'VOXEL_DATA' and (engine in __class__.COMPAT_ENGINES))
+ return tex and (tex.type == 'VOXEL_DATA' and (engine in cls.COMPAT_ENGINES))
def draw(self, context):
layout = self.layout
@@ -992,11 +897,11 @@ class TEXTURE_PT_pointdensity(TextureButtonsPanel, bpy.types.Panel):
bl_label = "Point Density"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
tex = context.texture
engine = context.scene.render.engine
- return tex and (tex.type == 'POINT_DENSITY' and (engine in __class__.COMPAT_ENGINES))
+ return tex and (tex.type == 'POINT_DENSITY' and (engine in cls.COMPAT_ENGINES))
def draw(self, context):
layout = self.layout
@@ -1048,11 +953,11 @@ class TEXTURE_PT_pointdensity_turbulence(TextureButtonsPanel, bpy.types.Panel):
bl_label = "Turbulence"
COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
tex = context.texture
engine = context.scene.render.engine
- return tex and (tex.type == 'POINT_DENSITY' and (engine in __class__.COMPAT_ENGINES))
+ return tex and (tex.type == 'POINT_DENSITY' and (engine in cls.COMPAT_ENGINES))
def draw_header(self, context):
layout = self.layout
diff --git a/release/scripts/ui/properties_world.py b/release/scripts/ui/properties_world.py
index 9825ba94d17..eec1caf58f7 100644
--- a/release/scripts/ui/properties_world.py
+++ b/release/scripts/ui/properties_world.py
@@ -27,15 +27,20 @@ class WorldButtonsPanel():
bl_context = "world"
# COMPAT_ENGINES must be defined in each subclass, external engines can add themselves here
+ @classmethod
+ def poll(cls, context):
+ rd = context.scene.render
+ return (rd.engine in cls.COMPAT_ENGINES)
+
class WORLD_PT_preview(WorldButtonsPanel, bpy.types.Panel):
bl_label = "Preview"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
rd = context.scene.render
- return (context.world) and (not rd.use_game_engine) and (rd.engine in __class__.COMPAT_ENGINES)
+ return (context.world) and (not rd.use_game_engine) and (rd.engine in cls.COMPAT_ENGINES)
def draw(self, context):
self.layout.template_preview(context.world)
@@ -46,10 +51,10 @@ class WORLD_PT_context_world(WorldButtonsPanel, bpy.types.Panel):
bl_show_header = False
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
rd = context.scene.render
- return (not rd.use_game_engine) and (rd.engine in __class__.COMPAT_ENGINES)
+ return (not rd.use_game_engine) and (rd.engine in cls.COMPAT_ENGINES)
def draw(self, context):
layout = self.layout
@@ -66,7 +71,7 @@ class WORLD_PT_context_world(WorldButtonsPanel, bpy.types.Panel):
class WORLD_PT_custom_props(WorldButtonsPanel, PropertyPanel, bpy.types.Panel):
- COMPAT_ENGINES = {'BLENDER_RENDER'}
+ COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_GAME'}
_context_path = "world"
@@ -189,8 +194,8 @@ class WORLD_PT_indirect_lighting(WorldButtonsPanel, bpy.types.Panel):
bl_label = "Indirect Lighting"
COMPAT_ENGINES = {'BLENDER_RENDER'}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
light = context.world.lighting
return light.gather_method == 'APPROXIMATE'
diff --git a/release/scripts/ui/space_console.py b/release/scripts/ui/space_console.py
index dbe08c16a77..feda3a54b41 100644
--- a/release/scripts/ui/space_console.py
+++ b/release/scripts/ui/space_console.py
@@ -138,8 +138,8 @@ class ConsoleAutocomplete(bpy.types.Operator):
bl_idname = "console.autocomplete"
bl_label = "Console Autocomplete"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return context.space_data.console_type != 'REPORT'
def execute(self, context):
diff --git a/release/scripts/ui/space_image.py b/release/scripts/ui/space_image.py
index 2bd394809d5..99d41244431 100644
--- a/release/scripts/ui/space_image.py
+++ b/release/scripts/ui/space_image.py
@@ -20,6 +20,17 @@
import bpy
+class BrushButtonsPanel():
+ bl_space_type = 'IMAGE_EDITOR'
+ bl_region_type = 'UI'
+
+ @classmethod
+ def poll(cls, context):
+ sima = context.space_data
+ toolsettings = context.tool_settings.image_paint
+ return sima.show_paint and toolsettings.brush
+
+
class IMAGE_MT_view(bpy.types.Menu):
bl_label = "View"
@@ -333,8 +344,8 @@ class IMAGE_PT_image_properties(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Image"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return (sima.image)
@@ -353,8 +364,8 @@ class IMAGE_PT_game_properties(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Game Properties"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
rd = context.scene.render
sima = context.space_data
return (sima and sima.image) and (rd.engine == 'BLENDER_GAME')
@@ -397,8 +408,8 @@ class IMAGE_PT_view_histogram(bpy.types.Panel):
bl_region_type = 'PREVIEW'
bl_label = "Histogram"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return (sima and sima.image)
@@ -416,8 +427,8 @@ class IMAGE_PT_view_waveform(bpy.types.Panel):
bl_region_type = 'PREVIEW'
bl_label = "Waveform"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return (sima and sima.image)
@@ -436,8 +447,8 @@ class IMAGE_PT_view_vectorscope(bpy.types.Panel):
bl_region_type = 'PREVIEW'
bl_label = "Vectorscope"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return (sima and sima.image)
@@ -454,8 +465,8 @@ class IMAGE_PT_sample_line(bpy.types.Panel):
bl_region_type = 'PREVIEW'
bl_label = "Sample Line"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return (sima and sima.image)
@@ -472,8 +483,8 @@ class IMAGE_PT_scope_sample(bpy.types.Panel):
bl_region_type = 'PREVIEW'
bl_label = "Scope Samples"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return sima
@@ -493,8 +504,8 @@ class IMAGE_PT_view_properties(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Display"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return (sima and (sima.image or sima.show_uvedit))
@@ -551,8 +562,8 @@ class IMAGE_PT_paint(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Paint"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
sima = context.space_data
return sima.show_paint
@@ -591,18 +602,10 @@ class IMAGE_PT_paint(bpy.types.Panel):
col.prop(brush, "clone_alpha", text="Alpha")
-class IMAGE_PT_tools_brush_texture(bpy.types.Panel):
- bl_space_type = 'IMAGE_EDITOR'
- bl_region_type = 'UI'
+class IMAGE_PT_tools_brush_texture(BrushButtonsPanel, bpy.types.Panel):
bl_label = "Texture"
bl_default_closed = True
- @staticmethod
- def poll(context):
- sima = context.space_data
- toolsettings = context.tool_settings.image_paint
- return sima.show_paint and toolsettings.brush
-
def draw(self, context):
layout = self.layout
@@ -616,18 +619,10 @@ class IMAGE_PT_tools_brush_texture(bpy.types.Panel):
col.template_ID_preview(brush, "texture", new="texture.new", rows=3, cols=8)
-class IMAGE_PT_paint_stroke(bpy.types.Panel):
- bl_space_type = 'IMAGE_EDITOR'
- bl_region_type = 'UI'
+class IMAGE_PT_paint_stroke(BrushButtonsPanel, bpy.types.Panel):
bl_label = "Paint Stroke"
bl_default_closed = True
- @staticmethod
- def poll(context):
- sima = context.space_data
- toolsettings = context.tool_settings.image_paint
- return sima.show_paint and toolsettings.brush
-
def draw(self, context):
layout = self.layout
@@ -648,18 +643,10 @@ class IMAGE_PT_paint_stroke(bpy.types.Panel):
layout.prop(brush, "use_wrap")
-class IMAGE_PT_paint_curve(bpy.types.Panel):
- bl_space_type = 'IMAGE_EDITOR'
- bl_region_type = 'UI'
+class IMAGE_PT_paint_curve(BrushButtonsPanel, bpy.types.Panel):
bl_label = "Paint Curve"
bl_default_closed = True
- @staticmethod
- def poll(context):
- sima = context.space_data
- toolsettings = context.tool_settings.image_paint
- return sima.show_paint and toolsettings.brush
-
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/space_logic.py b/release/scripts/ui/space_logic.py
index 370e49c4475..f2d99c6e447 100644
--- a/release/scripts/ui/space_logic.py
+++ b/release/scripts/ui/space_logic.py
@@ -25,8 +25,8 @@ class LOGIC_PT_properties(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Properties"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
ob = context.active_object
return ob and ob.game
diff --git a/release/scripts/ui/space_sequencer.py b/release/scripts/ui/space_sequencer.py
index df373526584..3a828bfb6d0 100644
--- a/release/scripts/ui/space_sequencer.py
+++ b/release/scripts/ui/space_sequencer.py
@@ -320,9 +320,9 @@ class SequencerButtonsPanel():
def has_sequencer(context):
return (context.space_data.view_type == 'SEQUENCER') or (context.space_data.view_type == 'SEQUENCER_PREVIEW')
- @staticmethod
- def poll(context):
- return __class__.has_sequencer(context) and (act_strip(context) is not None)
+ @classmethod
+ def poll(cls, context):
+ return cls.has_sequencer(context) and (act_strip(context) is not None)
class SequencerButtonsPanel_Output():
@@ -333,9 +333,9 @@ class SequencerButtonsPanel_Output():
def has_preview(context):
return (context.space_data.view_type == 'PREVIEW') or (context.space_data.view_type == 'SEQUENCER_PREVIEW')
- @staticmethod
- def poll(context):
- return __class__.has_preview(context)
+ @classmethod
+ def poll(cls, context):
+ return cls.has_preview(context)
class SEQUENCER_PT_edit(SequencerButtonsPanel, bpy.types.Panel):
@@ -388,9 +388,9 @@ class SEQUENCER_PT_edit(SequencerButtonsPanel, bpy.types.Panel):
class SEQUENCER_PT_effect(SequencerButtonsPanel, bpy.types.Panel):
bl_label = "Effect Strip"
- @staticmethod
- def poll(context):
- if not __class__.has_sequencer(context):
+ @classmethod
+ def poll(cls, context):
+ if not cls.has_sequencer(context):
return False
strip = act_strip(context)
@@ -518,9 +518,9 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, bpy.types.Panel):
class SEQUENCER_PT_input(SequencerButtonsPanel, bpy.types.Panel):
bl_label = "Strip Input"
- @staticmethod
- def poll(context):
- if not __class__.has_sequencer(context):
+ @classmethod
+ def poll(cls, context):
+ if not cls.has_sequencer(context):
return False
strip = act_strip(context)
@@ -593,9 +593,9 @@ class SEQUENCER_PT_input(SequencerButtonsPanel, bpy.types.Panel):
class SEQUENCER_PT_sound(SequencerButtonsPanel, bpy.types.Panel):
bl_label = "Sound"
- @staticmethod
- def poll(context):
- if not __class__.has_sequencer(context):
+ @classmethod
+ def poll(cls, context):
+ if not cls.has_sequencer(context):
return False
strip = act_strip(context)
@@ -634,9 +634,9 @@ class SEQUENCER_PT_sound(SequencerButtonsPanel, bpy.types.Panel):
class SEQUENCER_PT_scene(SequencerButtonsPanel, bpy.types.Panel):
bl_label = "Scene"
- @staticmethod
- def poll(context):
- if not __class__.has_sequencer(context):
+ @classmethod
+ def poll(cls, context):
+ if not cls.has_sequencer(context):
return False
strip = act_strip(context)
@@ -659,9 +659,9 @@ class SEQUENCER_PT_scene(SequencerButtonsPanel, bpy.types.Panel):
class SEQUENCER_PT_filter(SequencerButtonsPanel, bpy.types.Panel):
bl_label = "Filter"
- @staticmethod
- def poll(context):
- if not __class__.has_sequencer(context):
+ @classmethod
+ def poll(cls, context):
+ if not cls.has_sequencer(context):
return False
strip = act_strip(context)
@@ -721,9 +721,9 @@ class SEQUENCER_PT_filter(SequencerButtonsPanel, bpy.types.Panel):
class SEQUENCER_PT_proxy(SequencerButtonsPanel, bpy.types.Panel):
bl_label = "Proxy"
- @staticmethod
- def poll(context):
- if not __class__.has_sequencer(context):
+ @classmethod
+ def poll(cls, context):
+ if not cls.has_sequencer(context):
return False
strip = act_strip(context)
diff --git a/release/scripts/ui/space_text.py b/release/scripts/ui/space_text.py
index cdc1dcb12c3..71ab6540132 100644
--- a/release/scripts/ui/space_text.py
+++ b/release/scripts/ui/space_text.py
@@ -246,8 +246,8 @@ class TEXT_MT_edit_to3d(bpy.types.Menu):
class TEXT_MT_edit(bpy.types.Menu):
bl_label = "Edit"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.space_data.text)
def draw(self, context):
diff --git a/release/scripts/ui/space_userpref.py b/release/scripts/ui/space_userpref.py
index 6f521ede722..049d22a44ed 100644
--- a/release/scripts/ui/space_userpref.py
+++ b/release/scripts/ui/space_userpref.py
@@ -142,8 +142,8 @@ class USERPREF_PT_interface(bpy.types.Panel):
bl_region_type = 'WINDOW'
bl_show_header = False
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'INTERFACE')
@@ -237,8 +237,8 @@ class USERPREF_PT_edit(bpy.types.Panel):
bl_region_type = 'WINDOW'
bl_show_header = False
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'EDITING')
@@ -352,8 +352,8 @@ class USERPREF_PT_system(bpy.types.Panel):
bl_region_type = 'WINDOW'
bl_show_header = False
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'SYSTEM')
@@ -517,8 +517,8 @@ class USERPREF_PT_theme(bpy.types.Panel):
for i, attr in enumerate(props_ls):
colsub_pair[i % 2].row().prop(themedata, attr)
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'THEMES')
@@ -650,8 +650,8 @@ class USERPREF_PT_file(bpy.types.Panel):
bl_region_type = 'WINDOW'
bl_show_header = False
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'FILES')
@@ -722,8 +722,8 @@ class USERPREF_PT_input(InputKeyMapPanel):
bl_space_type = 'USER_PREFERENCES'
bl_label = "Input"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'INPUT')
@@ -817,8 +817,8 @@ class USERPREF_PT_addons(bpy.types.Panel):
_addons_fake_modules = {}
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
userpref = context.user_preferences
return (userpref.active_section == 'ADDONS')
@@ -841,112 +841,85 @@ class USERPREF_PT_addons(bpy.types.Panel):
if bpy.app.debug:
t_main = time.time()
- if 1:
- # fake module importing
- def fake_module(mod_name, mod_path, speedy=True):
- if bpy.app.debug:
- print("fake_module", mod_name, mod_path)
- import ast
- ModuleType = type(ast)
- if speedy:
- lines = []
- line_iter = iter(open(mod_path, "r"))
- l = ""
- while not l.startswith("bl_addon_info"):
- l = line_iter.readline()
- if len(l) == 0:
+ # fake module importing
+ def fake_module(mod_name, mod_path, speedy=True):
+ if bpy.app.debug:
+ print("fake_module", mod_name, mod_path)
+ import ast
+ ModuleType = type(ast)
+ if speedy:
+ lines = []
+ line_iter = iter(open(mod_path, "r"))
+ l = ""
+ while not l.startswith("bl_addon_info"):
+ l = line_iter.readline()
+ if len(l) == 0:
+ break
+ while l.rstrip():
+ lines.append(l)
+ l = line_iter.readline()
+ del line_iter
+ data = "".join(lines)
+
+ else:
+ data = open(mod_path, "r").read()
+
+ ast_data = ast.parse(data, filename=mod_path)
+ body_info = None
+ for body in ast_data.body:
+ if body.__class__ == ast.Assign:
+ if len(body.targets) == 1:
+ if getattr(body.targets[0], "id", "") == "bl_addon_info":
+ body_info = body
break
- while l.rstrip():
- lines.append(l)
- l = line_iter.readline()
- del line_iter
- data = "".join(lines)
+ if body_info:
+ mod = ModuleType(mod_name)
+ mod.bl_addon_info = ast.literal_eval(body.value)
+ mod.__file__ = mod_path
+ mod.__time__ = os.path.getmtime(mod_path)
+ return mod
+ else:
+ return None
+
+ modules_stale = set(USERPREF_PT_addons._addons_fake_modules.keys())
+
+ for path in paths:
+ for f in sorted(os.listdir(path)):
+ if f.endswith(".py"):
+ mod_name = f[0:-3]
+ mod_path = os.path.join(path, f)
+ elif ("." not in f) and (os.path.isfile(os.path.join(path, f, "__init__.py"))):
+ mod_name = f
+ mod_path = os.path.join(path, f, "__init__.py")
else:
- data = open(mod_path, "r").read()
-
- ast_data = ast.parse(data, filename=mod_path)
- body_info = None
- for body in ast_data.body:
- if body.__class__ == ast.Assign:
- if len(body.targets) == 1:
- if getattr(body.targets[0], "id", "") == "bl_addon_info":
- body_info = body
- break
-
- if body_info:
- mod = ModuleType(mod_name)
- mod.bl_addon_info = ast.literal_eval(body.value)
- mod.__file__ = mod_path
- mod.__time__ = os.path.getmtime(mod_path)
- return mod
- else:
- return None
-
-
- modules_stale = set(USERPREF_PT_addons._addons_fake_modules.keys())
-
- for path in paths:
- for f in sorted(os.listdir(path)):
- if f.endswith(".py"):
- mod_name = f[0:-3]
- mod_path = os.path.join(path, f)
- elif ("." not in f) and (os.path.isfile(os.path.join(path, f, "__init__.py"))):
- mod_name = f
- mod_path = os.path.join(path, f, "__init__.py")
- else:
- mod_name = ""
- mod_path = ""
-
- if mod_name:
- if mod_name in modules_stale:
- modules_stale.remove(mod_name)
- mod = USERPREF_PT_addons._addons_fake_modules.get(mod_name)
+ mod_name = ""
+ mod_path = ""
+
+ if mod_name:
+ if mod_name in modules_stale:
+ modules_stale.remove(mod_name)
+ mod = USERPREF_PT_addons._addons_fake_modules.get(mod_name)
+ if mod:
+ if mod.__time__ != os.path.getmtime(mod_path):
+ print("Reloading", mod_name)
+ del USERPREF_PT_addons._addons_fake_modules[mod_name]
+ mod = None
+
+ if mod is None:
+ mod = fake_module(mod_name, mod_path)
if mod:
- if mod.__time__ != os.path.getmtime(mod_path):
- print("Reloading", mod_name)
- del USERPREF_PT_addons._addons_fake_modules[mod_name]
- mod = None
-
- if mod is None:
- mod = fake_module(mod_name, mod_path)
- if mod:
- USERPREF_PT_addons._addons_fake_modules[mod_name] = mod
-
-
- # just incase we get stale modules, not likely
- for mod_stale in modules_stale:
- del USERPREF_PT_addons._addons_fake_modules[mod_stale]
- del modules_stale
-
- return list(USERPREF_PT_addons._addons_fake_modules.values())
-
- else:
- # never run this!, before it used ast
- pass
- '''
- # note, this still gets added to _bpy_types.TypeMap
- import bpy_types as _bpy_types
- _bpy_types._register_override = True
-
- # sys.path.insert(0, None)
- for path in paths:
- # sys.path[0] = path
- modules.extend(bpy.utils.modules_from_path(path, loaded_modules))
-
- if bpy.app.debug:
- print("Addon Script Load Time %.4f" % (time.time() - t_main))
-
- _bpy_types._register_override = False
-
- # del sys.path[0]
- return modules
- '''
-
-
-
-
+ USERPREF_PT_addons._addons_fake_modules[mod_name] = mod
+
+ # just incase we get stale modules, not likely
+ for mod_stale in modules_stale:
+ del USERPREF_PT_addons._addons_fake_modules[mod_stale]
+ del modules_stale
+
+ mod_list = list(USERPREF_PT_addons._addons_fake_modules.values())
+ mod_list.sort(key=lambda mod: (mod.bl_addon_info['category'], mod.bl_addon_info['name']))
+ return mod_list
def draw(self, context):
layout = self.layout
diff --git a/release/scripts/ui/space_userpref_keymap.py b/release/scripts/ui/space_userpref_keymap.py
index 460ae88d1f7..9a482b89652 100644
--- a/release/scripts/ui/space_userpref_keymap.py
+++ b/release/scripts/ui/space_userpref_keymap.py
@@ -763,8 +763,8 @@ class WM_OT_keyconfig_remove(bpy.types.Operator):
bl_idname = "wm.keyconfig_remove"
bl_label = "Remove Key Config"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
wm = context.manager
return wm.active_keyconfig.user_defined
diff --git a/release/scripts/ui/space_view3d.py b/release/scripts/ui/space_view3d.py
index 47788a48ba4..a3e945f460a 100644
--- a/release/scripts/ui/space_view3d.py
+++ b/release/scripts/ui/space_view3d.py
@@ -714,8 +714,8 @@ class VIEW3D_MT_object_clear(bpy.types.Menu):
class VIEW3D_MT_object_specials(bpy.types.Menu):
bl_label = "Specials"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
# add more special types
return context.object
@@ -1940,8 +1940,8 @@ class VIEW3D_PT_view3d_properties(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "View"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
view = context.space_data
return (view)
@@ -1977,8 +1977,8 @@ class VIEW3D_PT_view3d_name(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Item"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.space_data and context.active_object)
def draw(self, context):
@@ -2003,8 +2003,8 @@ class VIEW3D_PT_view3d_display(bpy.types.Panel):
bl_label = "Display"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
view = context.space_data
return (view)
@@ -2071,8 +2071,8 @@ class VIEW3D_PT_view3d_meshdisplay(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Mesh Display"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
# The active object check is needed because of localmode
return (context.active_object and (context.mode == 'EDIT_MESH'))
@@ -2108,8 +2108,8 @@ class VIEW3D_PT_view3d_curvedisplay(bpy.types.Panel):
bl_region_type = 'UI'
bl_label = "Curve Display"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
editmesh = context.mode == 'EDIT_CURVE'
return (editmesh)
@@ -2131,8 +2131,8 @@ class VIEW3D_PT_background_image(bpy.types.Panel):
bl_label = "Background Images"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
view = context.space_data
# bg = context.space_data.background_image
return (view)
@@ -2181,8 +2181,8 @@ class VIEW3D_PT_transform_orientations(bpy.types.Panel):
bl_label = "Transform Orientations"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
view = context.space_data
return (view)
@@ -2209,8 +2209,8 @@ class VIEW3D_PT_etch_a_ton(bpy.types.Panel):
bl_label = "Skeleton Sketching"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
scene = context.space_data
ob = context.active_object
return scene and ob and ob.type == 'ARMATURE' and ob.mode == 'EDIT'
@@ -2266,9 +2266,9 @@ class VIEW3D_PT_context_properties(bpy.types.Panel):
return ""
- @staticmethod
- def poll(context):
- member = __class__._active_context_member(context)
+ @classmethod
+ def poll(cls, context):
+ member = cls._active_context_member(context)
if member:
context_member = getattr(context, member)
return context_member and context_member.keys()
diff --git a/release/scripts/ui/space_view3d_toolbar.py b/release/scripts/ui/space_view3d_toolbar.py
index af435f1da77..56abbb3cb14 100644
--- a/release/scripts/ui/space_view3d_toolbar.py
+++ b/release/scripts/ui/space_view3d_toolbar.py
@@ -493,9 +493,9 @@ class PaintPanel():
class VIEW3D_PT_tools_brush(PaintPanel, bpy.types.Panel):
bl_label = "Brush"
- @staticmethod
- def poll(context):
- return __class__.paint_settings(context)
+ @classmethod
+ def poll(cls, context):
+ return cls.paint_settings(context)
def draw(self, context):
layout = self.layout
@@ -721,9 +721,9 @@ class VIEW3D_PT_tools_brush_texture(PaintPanel, bpy.types.Panel):
bl_label = "Texture"
bl_default_closed = True
- @staticmethod
- def poll(context):
- settings = __class__.paint_settings(context)
+ @classmethod
+ def poll(cls, context):
+ settings = cls.paint_settings(context)
return (settings and settings.brush and (context.sculpt_object or
context.texture_paint_object))
@@ -820,9 +820,9 @@ class VIEW3D_PT_tools_brush_tool(PaintPanel, bpy.types.Panel):
bl_label = "Tool"
bl_default_closed = True
- @staticmethod
- def poll(context):
- settings = __class__.paint_settings(context)
+ @classmethod
+ def poll(cls, context):
+ settings = cls.paint_settings(context)
return (settings and settings.brush and
(context.sculpt_object or context.texture_paint_object or
context.vertex_paint_object or context.weight_paint_object))
@@ -856,9 +856,9 @@ class VIEW3D_PT_tools_brush_stroke(PaintPanel, bpy.types.Panel):
bl_label = "Stroke"
bl_default_closed = True
- @staticmethod
- def poll(context):
- settings = __class__.paint_settings(context)
+ @classmethod
+ def poll(cls, context):
+ settings = cls.paint_settings(context)
return (settings and settings.brush and (context.sculpt_object or
context.vertex_paint_object or
context.weight_paint_object or
@@ -954,15 +954,15 @@ class VIEW3D_PT_tools_brush_curve(PaintPanel, bpy.types.Panel):
bl_label = "Curve"
bl_default_closed = True
- @staticmethod
- def poll(context):
- settings = __class__.paint_settings(context)
+ @classmethod
+ def poll(cls, context):
+ settings = cls.paint_settings(context)
return (settings and settings.brush and settings.brush.curve)
def draw(self, context):
layout = self.layout
- settings = __class__.paint_settings(context)
+ settings = self.paint_settings(context)
brush = settings.brush
layout.template_curve_mapping(brush, "curve", brush=True)
@@ -975,12 +975,13 @@ class VIEW3D_PT_tools_brush_curve(PaintPanel, bpy.types.Panel):
row.operator("brush.curve_preset", icon="LINCURVE", text="").shape = 'LINE'
row.operator("brush.curve_preset", icon="NOCURVE", text="").shape = 'MAX'
+
class VIEW3D_PT_sculpt_options(PaintPanel, bpy.types.Panel):
bl_label = "Options"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.sculpt_object and context.tool_settings.sculpt)
def draw(self, context):
@@ -1018,8 +1019,8 @@ class VIEW3D_PT_sculpt_symmetry(PaintPanel, bpy.types.Panel):
bl_label = "Symmetry"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.sculpt_object and context.tool_settings.sculpt)
def draw(self, context):
@@ -1053,8 +1054,8 @@ class VIEW3D_PT_tools_brush_appearance(PaintPanel, bpy.types.Panel):
bl_label = "Appearance"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.sculpt_object and context.tool_settings.sculpt) or (context.vertex_paint_object and context.tool_settings.vertex_paint) or (context.weight_paint_object and context.tool_settings.weight_paint) or (context.texture_paint_object and context.tool_settings.image_paint)
def draw(self, context):
@@ -1173,8 +1174,8 @@ class VIEW3D_PT_tools_projectpaint(View3DPanel, bpy.types.Panel):
bl_context = "texturepaint"
bl_label = "Project Paint"
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
brush = context.tool_settings.image_paint.brush
return (brush and brush.imagepaint_tool != 'SMEAR')
@@ -1244,8 +1245,8 @@ class VIEW3D_PT_imagepaint_options(PaintPanel):
bl_label = "Options"
bl_default_closed = True
- @staticmethod
- def poll(context):
+ @classmethod
+ def poll(cls, context):
return (context.texture_paint_object and context.tool_settings.image_paint)
def draw(self, context):
diff --git a/source/blender/blenfont/intern/blf_font.c b/source/blender/blenfont/intern/blf_font.c
index f7c5531f0ac..a932682b027 100644
--- a/source/blender/blenfont/intern/blf_font.c
+++ b/source/blender/blenfont/intern/blf_font.c
@@ -38,10 +38,8 @@
#include "MEM_guardedalloc.h"
-#include "DNA_listBase.h"
#include "DNA_vec_types.h"
-#include "BKE_utildefines.h"
#include "BLI_blenlib.h"
#include "BLI_linklist.h" /* linknode */
diff --git a/source/blender/blenkernel/BKE_cloth.h b/source/blender/blenkernel/BKE_cloth.h
index d8b3fcfd0bb..034bedbb07d 100644
--- a/source/blender/blenkernel/BKE_cloth.h
+++ b/source/blender/blenkernel/BKE_cloth.h
@@ -33,24 +33,8 @@
#include <float.h>
-#include "BLI_linklist.h"
-#include "BKE_customdata.h"
-#include "BKE_DerivedMesh.h"
-
-#include "BLI_blenlib.h"
-#include "BLI_math.h"
-#include "BLI_edgehash.h"
-
-#include "DNA_cloth_types.h"
-#include "DNA_customdata_types.h"
-#include "DNA_meshdata_types.h"
-#include "DNA_modifier_types.h"
-#include "DNA_object_types.h"
-#include "DNA_scene_types.h"
-
-#include "BKE_collision.h"
-
struct Object;
+struct ListBase;
struct Scene;
struct MFace;
struct DerivedMesh;
@@ -210,7 +194,7 @@ typedef enum
////////////////////////////////////////////////
// needed for implicit.c
-int cloth_bvh_objcollision (Object *ob, ClothModifierData * clmd, float step, float dt );
+int cloth_bvh_objcollision (struct Object *ob, struct ClothModifierData * clmd, float step, float dt );
////////////////////////////////////////////////
@@ -220,10 +204,10 @@ int cloth_bvh_objcollision (Object *ob, ClothModifierData * clmd, float step, fl
////////////////////////////////////////////////
// needed for cloth.c
-int implicit_init ( Object *ob, ClothModifierData *clmd );
-int implicit_free ( ClothModifierData *clmd );
-int implicit_solver ( Object *ob, float frame, ClothModifierData *clmd, ListBase *effectors );
-void implicit_set_positions ( ClothModifierData *clmd );
+int implicit_init ( struct Object *ob, struct ClothModifierData *clmd );
+int implicit_free ( struct ClothModifierData *clmd );
+int implicit_solver ( struct Object *ob, float frame, struct ClothModifierData *clmd, struct ListBase *effectors );
+void implicit_set_positions ( struct ClothModifierData *clmd );
// globally needed
void clmdSetInterruptCallBack ( int ( *f ) ( void ) );
@@ -235,23 +219,23 @@ void clmdSetInterruptCallBack ( int ( *f ) ( void ) );
////////////////////////////////////////////////
// needed for modifier.c
-void cloth_free_modifier_extern ( ClothModifierData *clmd );
-void cloth_free_modifier ( Object *ob, ClothModifierData *clmd );
-void cloth_init ( ClothModifierData *clmd );
-DerivedMesh *clothModifier_do ( ClothModifierData *clmd, struct Scene *scene, Object *ob, DerivedMesh *dm, int useRenderParams, int isFinalCalc );
+void cloth_free_modifier_extern ( struct ClothModifierData *clmd );
+void cloth_free_modifier ( struct Object *ob, struct ClothModifierData *clmd );
+void cloth_init ( struct ClothModifierData *clmd );
+struct DerivedMesh *clothModifier_do ( struct ClothModifierData *clmd, struct Scene *scene, struct Object *ob, struct DerivedMesh *dm, int useRenderParams, int isFinalCalc );
-void cloth_update_normals ( ClothVertex *verts, int nVerts, MFace *face, int totface );
-int cloth_uses_vgroup(ClothModifierData *clmd);
+void cloth_update_normals ( ClothVertex *verts, int nVerts, struct MFace *face, int totface );
+int cloth_uses_vgroup(struct ClothModifierData *clmd);
// needed for collision.c
-void bvhtree_update_from_cloth ( ClothModifierData *clmd, int moving );
-void bvhselftree_update_from_cloth ( ClothModifierData *clmd, int moving );
+void bvhtree_update_from_cloth ( struct ClothModifierData *clmd, int moving );
+void bvhselftree_update_from_cloth ( struct ClothModifierData *clmd, int moving );
// needed for button_object.c
-void cloth_clear_cache ( Object *ob, ClothModifierData *clmd, float framenr );
+void cloth_clear_cache ( struct Object *ob, struct ClothModifierData *clmd, float framenr );
// needed for cloth.c
-int cloth_add_spring ( ClothModifierData *clmd, unsigned int indexA, unsigned int indexB, float restlength, int spring_type);
+int cloth_add_spring ( struct ClothModifierData *clmd, unsigned int indexA, unsigned int indexB, float restlength, int spring_type);
////////////////////////////////////////////////
@@ -270,9 +254,9 @@ typedef struct
{
char *name;
CM_SOLVER_ID id;
- int ( *init ) ( Object *ob, ClothModifierData *clmd );
- int ( *solver ) ( Object *ob, float framenr, ClothModifierData *clmd, ListBase *effectors );
- int ( *free ) ( ClothModifierData *clmd );
+ int ( *init ) ( struct Object *ob, struct ClothModifierData *clmd );
+ int ( *solver ) ( struct Object *ob, float framenr, struct ClothModifierData *clmd, struct ListBase *effectors );
+ int ( *free ) ( struct ClothModifierData *clmd );
}
CM_SOLVER_DEF;
diff --git a/source/blender/blenkernel/BKE_collision.h b/source/blender/blenkernel/BKE_collision.h
index 91c5eb4afee..d7ae7df9342 100644
--- a/source/blender/blenkernel/BKE_collision.h
+++ b/source/blender/blenkernel/BKE_collision.h
@@ -37,25 +37,21 @@
#include <string.h>
/* types */
-#include "BLI_linklist.h"
#include "BKE_collision.h"
-#include "BKE_customdata.h"
-#include "BKE_DerivedMesh.h"
#include "DNA_cloth_types.h"
-#include "DNA_customdata_types.h"
-#include "DNA_meshdata_types.h"
-#include "DNA_modifier_types.h"
-#include "DNA_object_types.h"
#include "BLI_kdopbvh.h"
struct Cloth;
struct ClothModifierData;
+struct CollisionModifierData;
struct DerivedMesh;
struct Group;
struct MFace;
+struct MVert;
struct Object;
struct Scene;
+struct LinkNode;
////////////////////////////////////////
// used for collisions in collision.c
@@ -122,16 +118,16 @@ FaceCollPair;
// used in modifier.c from collision.c
/////////////////////////////////////////////////
-BVHTree *bvhtree_build_from_mvert ( MFace *mfaces, unsigned int numfaces, MVert *x, unsigned int numverts, float epsilon );
-void bvhtree_update_from_mvert ( BVHTree * bvhtree, MFace *faces, int numfaces, MVert *x, MVert *xnew, int numverts, int moving );
+BVHTree *bvhtree_build_from_mvert ( struct MFace *mfaces, unsigned int numfaces, struct MVert *x, unsigned int numverts, float epsilon );
+void bvhtree_update_from_mvert ( BVHTree * bvhtree, struct MFace *faces, int numfaces, struct MVert *x, struct MVert *xnew, int numverts, int moving );
/////////////////////////////////////////////////
-LinkNode *BLI_linklist_append_fast ( LinkNode **listp, void *ptr );
+struct LinkNode *BLI_linklist_append_fast ( struct LinkNode **listp, void *ptr );
// move Collision modifier object inter-frame with step = [0,1]
// defined in collisions.c
-void collision_move_object ( CollisionModifierData *collmd, float step, float prevstep );
+void collision_move_object ( struct CollisionModifierData *collmd, float step, float prevstep );
// interface for collision functions
void collisions_compute_barycentric ( float pv[3], float p1[3], float p2[3], float p3[3], float *w1, float *w2, float *w3 );
diff --git a/source/blender/blenkernel/BKE_effect.h b/source/blender/blenkernel/BKE_effect.h
index 837fede3c8a..99f55200eac 100644
--- a/source/blender/blenkernel/BKE_effect.h
+++ b/source/blender/blenkernel/BKE_effect.h
@@ -31,7 +31,6 @@
#ifndef BKE_EFFECT_H
#define BKE_EFFECT_H
-#include "DNA_object_types.h"
#include "DNA_modifier_types.h"
struct Object;
diff --git a/source/blender/blenkernel/BKE_sca.h b/source/blender/blenkernel/BKE_sca.h
index 7adbfd9b48d..6cafb7ef104 100644
--- a/source/blender/blenkernel/BKE_sca.h
+++ b/source/blender/blenkernel/BKE_sca.h
@@ -70,9 +70,9 @@ void set_sca_new_poins_ob(struct Object *ob);
void set_sca_new_poins(void);
void sca_remove_ob_poin(struct Object *obt, struct Object *ob);
-void sca_move_sensor(struct bSensor *sens_to_move, Object *ob, int move_up);
-void sca_move_controller(struct bController *cont_to_move, Object *ob, int move_up);
-void sca_move_actuator(struct bActuator *act_to_move, Object *ob, int move_up);
+void sca_move_sensor(struct bSensor *sens_to_move, struct Object *ob, int move_up);
+void sca_move_controller(struct bController *cont_to_move, struct Object *ob, int move_up);
+void sca_move_actuator(struct bActuator *act_to_move, struct Object *ob, int move_up);
#endif
diff --git a/source/blender/blenkernel/intern/cloth.c b/source/blender/blenkernel/intern/cloth.c
index b9b1c16c0c4..bebfa4af88e 100644
--- a/source/blender/blenkernel/intern/cloth.c
+++ b/source/blender/blenkernel/intern/cloth.c
@@ -27,6 +27,14 @@
#include "MEM_guardedalloc.h"
+#include "DNA_cloth_types.h"
+#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
+#include "DNA_meshdata_types.h"
+
+#include "BLI_math.h"
+#include "BLI_edgehash.h"
+
#include "BKE_cdderivedmesh.h"
#include "BKE_cloth.h"
#include "BKE_effect.h"
diff --git a/source/blender/blenkernel/intern/collision.c b/source/blender/blenkernel/intern/collision.c
index 54adc648539..3a9c15f654c 100644
--- a/source/blender/blenkernel/intern/collision.c
+++ b/source/blender/blenkernel/intern/collision.c
@@ -37,6 +37,11 @@
#include "DNA_object_types.h"
#include "DNA_object_force.h"
#include "DNA_scene_types.h"
+#include "DNA_meshdata_types.h"
+
+#include "BLI_blenlib.h"
+#include "BLI_math.h"
+#include "BLI_edgehash.h"
#include "BKE_DerivedMesh.h"
#include "BKE_global.h"
diff --git a/source/blender/blenkernel/intern/implicit.c b/source/blender/blenkernel/intern/implicit.c
index 902965bd2f6..d544174b0d4 100644
--- a/source/blender/blenkernel/intern/implicit.c
+++ b/source/blender/blenkernel/intern/implicit.c
@@ -29,16 +29,21 @@
#include "MEM_guardedalloc.h"
-#include "BKE_cloth.h"
-
+#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
#include "DNA_object_force.h"
+#include "DNA_meshdata_types.h"
+
+#include "BLI_threads.h"
+#include "BLI_math.h"
+#include "BLI_linklist.h"
+#include "BKE_cloth.h"
+#include "BKE_collision.h"
#include "BKE_effect.h"
#include "BKE_global.h"
#include "BKE_utildefines.h"
-#include "BLI_threads.h"
-
#define CLOTH_OPENMP_LIMIT 25
#ifdef _WIN32
diff --git a/source/blender/blenkernel/intern/lattice.c b/source/blender/blenkernel/intern/lattice.c
index 1eb7b5d2021..1390f0dbd56 100644
--- a/source/blender/blenkernel/intern/lattice.c
+++ b/source/blender/blenkernel/intern/lattice.c
@@ -225,8 +225,12 @@ void free_lattice(Lattice *lt)
if(lt->def) MEM_freeN(lt->def);
if(lt->dvert) free_dverts(lt->dvert, lt->pntsu*lt->pntsv*lt->pntsw);
if(lt->editlatt) {
- if(lt->editlatt->def) MEM_freeN(lt->editlatt->def);
- if(lt->editlatt->dvert) free_dverts(lt->editlatt->dvert, lt->pntsu*lt->pntsv*lt->pntsw);
+ Lattice *editlt= lt->editlatt->latt;
+
+ if(editlt->def) MEM_freeN(editlt->def);
+ if(editlt->dvert) free_dverts(editlt->dvert, lt->pntsu*lt->pntsv*lt->pntsw);
+
+ MEM_freeN(editlt);
MEM_freeN(lt->editlatt);
}
}
@@ -295,7 +299,7 @@ void init_latt_deform(Object *oblatt, Object *ob)
float fu, fv, fw;
int u, v, w;
- if(lt->editlatt) lt= lt->editlatt;
+ if(lt->editlatt) lt= lt->editlatt->latt;
bp = lt->def;
fp= lt->latticedata= MEM_mallocN(sizeof(float)*3*lt->pntsu*lt->pntsv*lt->pntsw, "latticedata");
@@ -350,7 +354,7 @@ void calc_latt_deform(Object *ob, float *co, float weight)
MDeformVert *dvert= lattice_get_deform_verts(ob);
- if(lt->editlatt) lt= lt->editlatt;
+ if(lt->editlatt) lt= lt->editlatt->latt;
if(lt->latticedata==NULL) return;
if(lt->vgroup[0] && dvert) {
@@ -446,7 +450,7 @@ void end_latt_deform(Object *ob)
{
Lattice *lt= ob->data;
- if(lt->editlatt) lt= lt->editlatt;
+ if(lt->editlatt) lt= lt->editlatt->latt;
if(lt->latticedata)
MEM_freeN(lt->latticedata);
@@ -1002,7 +1006,7 @@ float (*lattice_getVertexCos(struct Object *ob, int *numVerts_r))[3]
int i, numVerts;
float (*vertexCos)[3];
- if(lt->editlatt) lt= lt->editlatt;
+ if(lt->editlatt) lt= lt->editlatt->latt;
numVerts = *numVerts_r = lt->pntsu*lt->pntsv*lt->pntsw;
vertexCos = MEM_mallocN(sizeof(*vertexCos)*numVerts,"lt_vcos");
@@ -1066,7 +1070,7 @@ struct MDeformVert* lattice_get_deform_verts(struct Object *oblatt)
if(oblatt->type == OB_LATTICE)
{
Lattice *lt = (Lattice*)oblatt->data;
- if(lt->editlatt) lt= lt->editlatt;
+ if(lt->editlatt) lt= lt->editlatt->latt;
return lt->dvert;
}
diff --git a/source/blender/blenkernel/intern/modifier.c b/source/blender/blenkernel/intern/modifier.c
index 858e9d6c6d9..ea118e4a53c 100644
--- a/source/blender/blenkernel/intern/modifier.c
+++ b/source/blender/blenkernel/intern/modifier.c
@@ -41,6 +41,8 @@
#include "float.h"
#include "DNA_armature_types.h"
+#include "DNA_object_types.h"
+#include "DNA_meshdata_types.h"
#include "BKE_bmesh.h"
#include "BKE_cloth.h"
@@ -193,7 +195,7 @@ void modifier_copyData(ModifierData *md, ModifierData *target)
mti->copyData(md, target);
}
-int modifier_couldBeCage(Scene *scene, ModifierData *md)
+int modifier_couldBeCage(struct Scene *scene, ModifierData *md)
{
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
@@ -233,7 +235,7 @@ void modifier_setError(ModifierData *md, char *format, ...)
* also used in transform_conversion.c, to detect CrazySpace [tm] (2nd arg
* then is NULL)
*/
-int modifiers_getCageIndex(Scene *scene, Object *ob, int *lastPossibleCageIndex_r, int virtual_)
+int modifiers_getCageIndex(struct Scene *scene, Object *ob, int *lastPossibleCageIndex_r, int virtual_)
{
ModifierData *md = (virtual_)? modifiers_getVirtualModifierList(ob): ob->modifiers.first;
int i, cageIndex = -1;
@@ -283,7 +285,7 @@ int modifiers_isParticleEnabled(Object *ob)
return (md && md->mode & (eModifierMode_Realtime | eModifierMode_Render));
}
-int modifier_isEnabled(Scene *scene, ModifierData *md, int required_mode)
+int modifier_isEnabled(struct Scene *scene, ModifierData *md, int required_mode)
{
ModifierTypeInfo *mti = modifierType_getInfo(md->type);
@@ -298,7 +300,7 @@ int modifier_isEnabled(Scene *scene, ModifierData *md, int required_mode)
return 1;
}
-LinkNode *modifiers_calcDataMasks(Scene *scene, Object *ob, ModifierData *md, CustomDataMask dataMask, int required_mode)
+LinkNode *modifiers_calcDataMasks(struct Scene *scene, Object *ob, ModifierData *md, CustomDataMask dataMask, int required_mode)
{
LinkNode *dataMasks = NULL;
LinkNode *curr, *prev;
@@ -487,7 +489,7 @@ int modifier_isCorrectableDeformed(ModifierData *md)
return 0;
}
-int modifiers_isCorrectableDeformed(Scene *scene, Object *ob)
+int modifiers_isCorrectableDeformed(struct Scene *scene, Object *ob)
{
ModifierData *md = modifiers_getVirtualModifierList(ob);
diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c
index c08a3408505..18eedd63906 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -1917,7 +1917,7 @@ static void give_parvert(Object *par, int nr, float *vec)
DispList *dl = find_displist(&par->disp, DL_VERTS);
float *co = dl?dl->verts:NULL;
- if(latt->editlatt) latt= latt->editlatt;
+ if(latt->editlatt) latt= latt->editlatt->latt;
a= latt->pntsu*latt->pntsv*latt->pntsw;
count= 0;
diff --git a/source/blender/blenkernel/intern/particle.c b/source/blender/blenkernel/intern/particle.c
index 52ee0180f43..7b3638f0e33 100644
--- a/source/blender/blenkernel/intern/particle.c
+++ b/source/blender/blenkernel/intern/particle.c
@@ -40,12 +40,16 @@
#include "DNA_key_types.h"
#include "DNA_material_types.h"
#include "DNA_mesh_types.h"
+#include "DNA_meshdata_types.h"
#include "DNA_particle_types.h"
#include "DNA_smoke_types.h"
+#include "DNA_scene_types.h"
+#include "BLI_blenlib.h"
#include "BLI_kdtree.h"
#include "BLI_rand.h"
#include "BLI_threads.h"
+#include "BLI_math.h"
#include "BKE_anim.h"
#include "BKE_animsys.h"
diff --git a/source/blender/blenkernel/intern/pointcache.c b/source/blender/blenkernel/intern/pointcache.c
index d44221d2cd3..6cf49808ec7 100644
--- a/source/blender/blenkernel/intern/pointcache.c
+++ b/source/blender/blenkernel/intern/pointcache.c
@@ -43,6 +43,7 @@
#include "BLI_blenlib.h"
#include "BLI_threads.h"
+#include "BLI_math.h"
#include "PIL_time.h"
diff --git a/source/blender/blenkernel/intern/seqeffects.c b/source/blender/blenkernel/intern/seqeffects.c
index c117f51c072..1e1ace0f758 100644
--- a/source/blender/blenkernel/intern/seqeffects.c
+++ b/source/blender/blenkernel/intern/seqeffects.c
@@ -2968,22 +2968,11 @@ void sequence_effect_speed_rebuild_map(Scene *scene, Sequence * seq, int force)
fallback_fac = 1.0;
- /* if there is no IPO, try to make retiming easy by stretching the
+ /* if there is no fcurve, try to make retiming easy by stretching the
strip */
- // XXX old animation system - seq
if (!fcu && seq->seq1->enddisp != seq->seq1->start && seq->seq1->len != 0) {
fallback_fac = (float) seq->seq1->len /
(float) (seq->seq1->enddisp - seq->seq1->start);
- /* FIXME: this strip stretching gets screwed by stripdata
- handling one layer up.
-
- So it currently works by enlarging, never by shrinking!
-
- (IPOs still work, if used correctly)
- */
- if (fallback_fac > 1.0) {
- fallback_fac = 1.0;
- }
}
if ((v->flags & SEQ_SPEED_INTEGRATE) != 0) {
@@ -3006,8 +2995,8 @@ void sequence_effect_speed_rebuild_map(Scene *scene, Sequence * seq, int force)
cursor += facf;
- if (cursor >= v->length) {
- v->frameMap[cfra] = v->length - 1;
+ if (cursor >= seq->seq1->len) {
+ v->frameMap[cfra] = seq->seq1->len - 1;
} else {
v->frameMap[cfra] = cursor;
v->lastValidFrame = cfra;
@@ -3033,8 +3022,8 @@ void sequence_effect_speed_rebuild_map(Scene *scene, Sequence * seq, int force)
facf = (float) cfra * fallback_fac;
}
facf *= v->globalSpeed;
- if (facf >= v->length) {
- facf = v->length - 1;
+ if (facf >= seq->seq1->len) {
+ facf = seq->seq1->len - 1;
} else {
v->lastValidFrame = cfra;
}
diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c
index 7f3057bba96..866f907ef9e 100644
--- a/source/blender/blenkernel/intern/sequencer.c
+++ b/source/blender/blenkernel/intern/sequencer.c
@@ -899,7 +899,6 @@ static float give_stripelem_index(Sequence *seq, float cfra)
{
float nr;
- if(seq->startdisp >cfra || seq->enddisp <= cfra) return -1;
if(seq->len == 0) return -1;
if(seq->flag&SEQ_REVERSE_FRAMES) {
/*reverse frame in this sequence */
@@ -1461,8 +1460,7 @@ int input_have_to_preprocess(
mul = seq->mul;
- if(seq->blend_mode == SEQ_BLEND_REPLACE &&
- !(seq->type & SEQ_EFFECT)) {
+ if(seq->blend_mode == SEQ_BLEND_REPLACE) {
mul *= seq->blend_opacity / 100.0;
}
@@ -1993,7 +1991,7 @@ static ImBuf * seq_render_strip(Scene *scene, Sequence * seq, float cfra,
} else if(seq->type == SEQ_IMAGE) {
StripElem * s_elem = give_stripelem(seq, cfra);
- if(ibuf == 0) {
+ if(ibuf == 0 && s_elem) {
BLI_join_dirfile(name, seq->strip->dir, s_elem->name);
BLI_path_abs(name, G.sce);
@@ -2004,7 +2002,8 @@ static ImBuf * seq_render_strip(Scene *scene, Sequence * seq, float cfra,
ibuf = copy_from_ibuf_still(seq,nr,seqrectx,seqrecty);
}
- if (ibuf == 0 && (ibuf=IMB_loadiffname(name, IB_rect))) {
+ if (ibuf == 0 && s_elem &&
+ (ibuf = IMB_loadiffname(name, IB_rect))) {
/* we don't need both (speed reasons)! */
if (ibuf->rect_float && ibuf->rect)
imb_freerectImBuf(ibuf);
@@ -3541,12 +3540,6 @@ static Sequence *seq_dupli(struct Scene *scene, Sequence *seq, int dupe_flag)
// XXX: add F-Curve duplication stuff?
- seqn->strip->tstripdata = 0;
- seqn->strip->tstripdata_startstill = 0;
- seqn->strip->tstripdata_endstill = 0;
- seqn->strip->ibuf_startstill = 0;
- seqn->strip->ibuf_endstill = 0;
-
if (seq->strip->crop) {
seqn->strip->crop = MEM_dupallocN(seq->strip->crop);
}
diff --git a/source/blender/blenkernel/intern/softbody.c b/source/blender/blenkernel/intern/softbody.c
index 4d1994e760b..b8e824ce3d5 100644
--- a/source/blender/blenkernel/intern/softbody.c
+++ b/source/blender/blenkernel/intern/softbody.c
@@ -55,11 +55,12 @@ variables on the UI for now
#include "MEM_guardedalloc.h"
/* types */
+#include "DNA_object_types.h"
+#include "DNA_scene_types.h"
+#include "DNA_lattice_types.h"
#include "DNA_curve_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
-#include "DNA_lattice_types.h"
-#include "DNA_scene_types.h"
#include "BLI_math.h"
#include "BLI_ghash.h"
diff --git a/source/blender/blenlib/intern/path_util.c b/source/blender/blenlib/intern/path_util.c
index 9a56722b5d9..260f59aa03c 100644
--- a/source/blender/blenlib/intern/path_util.c
+++ b/source/blender/blenlib/intern/path_util.c
@@ -637,6 +637,8 @@ int BLI_path_abs(char *path, const char *basepath)
if (path[0]!='\0') {
if ( path[strlen(path)-1]=='/') {
+ /* remove the '/' so we avoid BLI_cleanup_dir adding an extra \ in WIN32 */
+ path[strlen(path)-1] = '\0';
BLI_cleanup_dir(NULL, path);
} else {
BLI_cleanup_file(NULL, path);
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 88ddca3328c..e36b73189e6 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -47,26 +47,19 @@
#endif
#include "DNA_anim_types.h"
-#include "DNA_action_types.h"
#include "DNA_armature_types.h"
-#include "DNA_ID.h"
#include "DNA_actuator_types.h"
-#include "DNA_boid_types.h"
#include "DNA_brush_types.h"
#include "DNA_camera_types.h"
#include "DNA_cloth_types.h"
-#include "DNA_color_types.h"
#include "DNA_controller_types.h"
#include "DNA_constraint_types.h"
-#include "DNA_curve_types.h"
-#include "DNA_customdata_types.h"
#include "DNA_effect_types.h"
#include "DNA_fileglobal_types.h"
#include "DNA_genfile.h"
#include "DNA_group_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_ipo_types.h"
-#include "DNA_image_types.h"
#include "DNA_key_types.h"
#include "DNA_lattice_types.h"
#include "DNA_lamp_types.h"
@@ -74,16 +67,10 @@
#include "DNA_material_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
-#include "DNA_modifier_types.h"
#include "DNA_nla_types.h"
#include "DNA_node_types.h"
-#include "DNA_object_types.h"
-#include "DNA_object_force.h"
#include "DNA_object_fluidsim.h" // NT
-#include "DNA_outliner_types.h"
-#include "DNA_object_force.h"
#include "DNA_packedFile_types.h"
-#include "DNA_particle_types.h"
#include "DNA_property_types.h"
#include "DNA_text_types.h"
#include "DNA_view3d_types.h"
@@ -95,11 +82,8 @@
#include "DNA_smoke_types.h"
#include "DNA_sound_types.h"
#include "DNA_space_types.h"
-#include "DNA_texture_types.h"
-#include "DNA_userdef_types.h"
#include "DNA_vfont_types.h"
#include "DNA_world_types.h"
-#include "DNA_windowmanager_types.h"
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
@@ -138,7 +122,6 @@
#include "BKE_sequencer.h"
#include "BKE_texture.h" // for open_plugin_tex
#include "BKE_utildefines.h" // SWITCH_INT DATA ENDB DNA1 O_BINARY GLOB USER TEST REND
-#include "BKE_ipo.h"
#include "BKE_sound.h"
//XXX #include "BIF_butspace.h" // badlevel, for do_versions, patching event codes
@@ -4312,11 +4295,6 @@ static void direct_link_scene(FileData *fd, Scene *sce)
seq->strip= newdataadr(fd, seq->strip);
if(seq->strip && seq->strip->done==0) {
seq->strip->done= 1;
- seq->strip->tstripdata = 0;
- seq->strip->tstripdata_startstill = 0;
- seq->strip->tstripdata_endstill = 0;
- seq->strip->ibuf_startstill = 0;
- seq->strip->ibuf_endstill = 0;
if(seq->type == SEQ_IMAGE ||
seq->type == SEQ_MOVIE ||
diff --git a/source/blender/blenloader/intern/undofile.c b/source/blender/blenloader/intern/undofile.c
index 40b03a78f34..9cdf8613011 100644
--- a/source/blender/blenloader/intern/undofile.c
+++ b/source/blender/blenloader/intern/undofile.c
@@ -36,10 +36,7 @@
#include "MEM_guardedalloc.h"
#include "DNA_listBase.h"
-#include "DNA_userdef_types.h"
-#include "BKE_utildefines.h"
-#include "BKE_global.h"
#include "BLO_undofile.h"
diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c
index dbe869450a5..f9f66ed8504 100644
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@ -88,38 +88,26 @@ Any case: direct data is ALWAYS after the lib block
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
-#include "DNA_action_types.h"
#include "DNA_actuator_types.h"
-#include "DNA_boid_types.h"
#include "DNA_brush_types.h"
#include "DNA_camera_types.h"
#include "DNA_cloth_types.h"
-#include "DNA_color_types.h"
#include "DNA_constraint_types.h"
#include "DNA_controller_types.h"
-#include "DNA_curve_types.h"
-#include "DNA_customdata_types.h"
-#include "DNA_effect_types.h"
#include "DNA_genfile.h"
#include "DNA_group_types.h"
#include "DNA_gpencil_types.h"
-#include "DNA_image_types.h"
-#include "DNA_ipo_types.h" // XXX depreceated - animsys
#include "DNA_fileglobal_types.h"
#include "DNA_key_types.h"
#include "DNA_lattice_types.h"
-#include "DNA_listBase.h" /* for Listbase, the type of samples, ...*/
#include "DNA_lamp_types.h"
#include "DNA_meta_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_material_types.h"
-#include "DNA_modifier_types.h"
-#include "DNA_nla_types.h"
#include "DNA_node_types.h"
#include "DNA_object_types.h"
#include "DNA_object_force.h"
-#include "DNA_outliner_types.h"
#include "DNA_packedFile_types.h"
#include "DNA_particle_types.h"
#include "DNA_property_types.h"
@@ -131,11 +119,9 @@ Any case: direct data is ALWAYS after the lib block
#include "DNA_space_types.h"
#include "DNA_screen_types.h"
#include "DNA_sound_types.h"
-#include "DNA_texture_types.h"
#include "DNA_text_types.h"
#include "DNA_view3d_types.h"
#include "DNA_vfont_types.h"
-#include "DNA_userdef_types.h"
#include "DNA_world_types.h"
#include "DNA_windowmanager_types.h"
@@ -146,23 +132,16 @@ Any case: direct data is ALWAYS after the lib block
#include "BKE_action.h"
#include "BKE_blender.h"
-#include "BKE_cloth.h"
#include "BKE_curve.h"
-#include "BKE_customdata.h"
#include "BKE_constraint.h"
#include "BKE_global.h" // for G
#include "BKE_library.h" // for set_listbasepointers
#include "BKE_main.h"
#include "BKE_node.h"
-#include "BKE_packedFile.h" // for packAll
-#include "BKE_pointcache.h"
#include "BKE_report.h"
-#include "BKE_screen.h" // for waitcursor
#include "BKE_sequencer.h"
-#include "BKE_sound.h" /* ... and for samples */
#include "BKE_utildefines.h" // for defines
#include "BKE_modifier.h"
-#include "BKE_idprop.h"
#include "BKE_fcurve.h"
#include "BLO_writefile.h"
diff --git a/source/blender/collada/DocumentExporter.cpp b/source/blender/collada/DocumentExporter.cpp
index 7a994d6b418..d77cd02f9e1 100644
--- a/source/blender/collada/DocumentExporter.cpp
+++ b/source/blender/collada/DocumentExporter.cpp
@@ -1774,6 +1774,7 @@ public:
for (int a = 0; a < MAX_MTEX; a++) {
if (ma->mtex[a] &&
+ ma->mtex[a]->tex &&
ma->mtex[a]->tex->type == TEX_IMAGE &&
ma->mtex[a]->texco == TEXCO_UV){
indices.push_back(a);
diff --git a/source/blender/editors/animation/anim_filter.c b/source/blender/editors/animation/anim_filter.c
index f631430b03e..0ff75c1cded 100644
--- a/source/blender/editors/animation/anim_filter.c
+++ b/source/blender/editors/animation/anim_filter.c
@@ -49,7 +49,6 @@
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
-#include "DNA_constraint_types.h"
#include "DNA_camera_types.h"
#include "DNA_lamp_types.h"
#include "DNA_lattice_types.h"
@@ -82,7 +81,6 @@
#include "BKE_material.h"
#include "BKE_node.h"
#include "BKE_sequencer.h"
-#include "BKE_utildefines.h"
#include "ED_anim_api.h"
diff --git a/source/blender/editors/animation/keyframes_draw.c b/source/blender/editors/animation/keyframes_draw.c
index 5c348f16c06..d46c18a553d 100644
--- a/source/blender/editors/animation/keyframes_draw.c
+++ b/source/blender/editors/animation/keyframes_draw.c
@@ -55,14 +55,9 @@
#include "DNA_world_types.h"
#include "DNA_gpencil_types.h"
-#include "BKE_action.h"
-#include "BKE_depsgraph.h"
-#include "BKE_fcurve.h"
#include "BKE_key.h"
#include "BKE_material.h"
-#include "BKE_object.h"
#include "BKE_global.h" // XXX remove me!
-#include "BKE_context.h"
#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/animation/keyframes_edit.c b/source/blender/editors/animation/keyframes_edit.c
index 3175e9e34a7..17d674784f8 100644
--- a/source/blender/editors/animation/keyframes_edit.c
+++ b/source/blender/editors/animation/keyframes_edit.c
@@ -48,7 +48,6 @@
#include "DNA_scene_types.h"
#include "DNA_world_types.h"
-#include "BKE_action.h"
#include "BKE_fcurve.h"
#include "BKE_key.h"
#include "BKE_material.h"
diff --git a/source/blender/editors/animation/keyframes_general.c b/source/blender/editors/animation/keyframes_general.c
index abced485769..5073cfe08b8 100644
--- a/source/blender/editors/animation/keyframes_general.c
+++ b/source/blender/editors/animation/keyframes_general.c
@@ -40,9 +40,7 @@
#include "DNA_scene_types.h"
-#include "BKE_action.h"
#include "BKE_fcurve.h"
-#include "BKE_key.h"
#include "BKE_utildefines.h"
#include "ED_anim_api.h"
diff --git a/source/blender/editors/animation/keyframing.c b/source/blender/editors/animation/keyframing.c
index bd50b52b27d..fc5649be869 100644
--- a/source/blender/editors/animation/keyframing.c
+++ b/source/blender/editors/animation/keyframing.c
@@ -55,7 +55,6 @@
#include "BKE_main.h"
#include "BKE_nla.h"
#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "BKE_context.h"
#include "BKE_report.h"
#include "BKE_key.h"
diff --git a/source/blender/editors/animation/keyingsets.c b/source/blender/editors/animation/keyingsets.c
index 690e9dfa8a6..0a58ad64e2f 100644
--- a/source/blender/editors/animation/keyingsets.c
+++ b/source/blender/editors/animation/keyingsets.c
@@ -40,22 +40,14 @@
#include "BLI_dynstr.h"
#include "DNA_anim_types.h"
-#include "DNA_constraint_types.h"
#include "DNA_scene_types.h"
#include "DNA_object_types.h"
#include "BKE_main.h"
#include "BKE_animsys.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_constraint.h"
#include "BKE_depsgraph.h"
-#include "BKE_fcurve.h"
-#include "BKE_utildefines.h"
-#include "BKE_context.h"
#include "BKE_report.h"
-#include "BKE_key.h"
-#include "BKE_material.h"
#include "ED_keyframing.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/armature/armature_ops.c b/source/blender/editors/armature/armature_ops.c
index 63cef278104..d50b50cb107 100644
--- a/source/blender/editors/armature/armature_ops.c
+++ b/source/blender/editors/armature/armature_ops.c
@@ -35,9 +35,6 @@
#include "BLI_math.h"
#include "BLI_blenlib.h"
-#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/armature/editarmature.c b/source/blender/editors/armature/editarmature.c
index e8942bcd963..525ca9aae1c 100644
--- a/source/blender/editors/armature/editarmature.c
+++ b/source/blender/editors/armature/editarmature.c
@@ -58,7 +58,6 @@
#include "BKE_object.h"
#include "BKE_report.h"
#include "BKE_subsurf.h"
-#include "BKE_utildefines.h"
#include "BKE_modifier.h"
#include "DNA_object_types.h"
diff --git a/source/blender/editors/armature/editarmature_generate.c b/source/blender/editors/armature/editarmature_generate.c
index c48e7686ca9..8c53a03fd2b 100644
--- a/source/blender/editors/armature/editarmature_generate.c
+++ b/source/blender/editors/armature/editarmature_generate.c
@@ -42,8 +42,6 @@
#include "BLI_graph.h"
#include "BKE_utildefines.h"
-#include "BKE_global.h"
-#include "BKE_context.h"
#include "ED_armature.h"
#include "armature_intern.h"
diff --git a/source/blender/editors/armature/editarmature_retarget.c b/source/blender/editors/armature/editarmature_retarget.c
index af91823f917..637c6076314 100644
--- a/source/blender/editors/armature/editarmature_retarget.c
+++ b/source/blender/editors/armature/editarmature_retarget.c
@@ -48,8 +48,6 @@
//#include "BDR_editobject.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "BKE_constraint.h"
#include "BKE_armature.h"
#include "BKE_context.h"
diff --git a/source/blender/editors/armature/editarmature_sketch.c b/source/blender/editors/armature/editarmature_sketch.c
index 2c9ddf3abd8..241301b8ee1 100644
--- a/source/blender/editors/armature/editarmature_sketch.c
+++ b/source/blender/editors/armature/editarmature_sketch.c
@@ -38,10 +38,6 @@
#include "BLI_graph.h"
#include "BLI_ghash.h"
-#include "BKE_utildefines.h"
-#include "BKE_global.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_object.h"
#include "BKE_context.h"
#include "BKE_sketch.h"
diff --git a/source/blender/editors/armature/meshlaplacian.c b/source/blender/editors/armature/meshlaplacian.c
index 0325232e5b9..84b02b4796a 100644
--- a/source/blender/editors/armature/meshlaplacian.c
+++ b/source/blender/editors/armature/meshlaplacian.c
@@ -36,7 +36,6 @@
#include "DNA_object_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
-#include "DNA_modifier_types.h"
#include "DNA_scene_types.h"
#include "BLI_math.h"
diff --git a/source/blender/editors/armature/poseSlide.c b/source/blender/editors/armature/poseSlide.c
index 21b99bc10c0..54777535146 100644
--- a/source/blender/editors/armature/poseSlide.c
+++ b/source/blender/editors/armature/poseSlide.c
@@ -44,17 +44,10 @@
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
-#include "BKE_animsys.h"
-#include "BKE_action.h"
-#include "BKE_armature.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
#include "BKE_context.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/armature/poseUtils.c b/source/blender/editors/armature/poseUtils.c
index c9a80318050..efacc6571cf 100644
--- a/source/blender/editors/armature/poseUtils.c
+++ b/source/blender/editors/armature/poseUtils.c
@@ -44,17 +44,11 @@
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
-#include "BKE_animsys.h"
#include "BKE_action.h"
#include "BKE_armature.h"
#include "BKE_depsgraph.h"
-#include "BKE_fcurve.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
#include "BKE_context.h"
-#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/armature/poselib.c b/source/blender/editors/armature/poselib.c
index 408a2e1e599..756dee2494b 100644
--- a/source/blender/editors/armature/poselib.c
+++ b/source/blender/editors/armature/poselib.c
@@ -48,13 +48,9 @@
#include "BKE_action.h"
#include "BKE_armature.h"
#include "BKE_depsgraph.h"
-#include "BKE_modifier.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
#include "BKE_context.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/armature/poseobject.c b/source/blender/editors/armature/poseobject.c
index 92b52d4b62a..7e17b6d0674 100644
--- a/source/blender/editors/armature/poseobject.c
+++ b/source/blender/editors/armature/poseobject.c
@@ -45,20 +45,13 @@
#include "BKE_anim.h"
#include "BKE_idprop.h"
-#include "BKE_animsys.h"
#include "BKE_action.h"
#include "BKE_armature.h"
-#include "BKE_blender.h"
#include "BKE_context.h"
#include "BKE_constraint.h"
#include "BKE_deform.h"
#include "BKE_depsgraph.h"
-#include "BKE_displist.h"
-#include "BKE_fcurve.h"
-#include "BKE_global.h"
#include "BKE_modifier.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/armature/reeb.c b/source/blender/editors/armature/reeb.c
index fd95879f3ec..9af07d36ac0 100644
--- a/source/blender/editors/armature/reeb.c
+++ b/source/blender/editors/armature/reeb.c
@@ -53,9 +53,6 @@
//#include "BIF_graphics.h"
#include "BIF_gl.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
-#include "BKE_customdata.h"
//#include "blendef.h"
diff --git a/source/blender/editors/curve/curve_ops.c b/source/blender/editors/curve/curve_ops.c
index 47b1fee3cf6..85c3cc91679 100644
--- a/source/blender/editors/curve/curve_ops.c
+++ b/source/blender/editors/curve/curve_ops.c
@@ -36,9 +36,6 @@
#include "BLI_math.h"
#include "BLI_blenlib.h"
-#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c
index f2e05da7995..b85429e36a9 100644
--- a/source/blender/editors/curve/editcurve.c
+++ b/source/blender/editors/curve/editcurve.c
@@ -56,9 +56,7 @@
#include "BKE_key.h"
#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_object.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
@@ -726,7 +724,7 @@ static void calc_shapeKeys(Object *obedit)
int a, i, j;
EditNurb *editnurb= cu->editnurb;
KeyBlock *currkey;
- KeyBlock *actkey= ob_get_keyblock(obedit);
+ KeyBlock *actkey= BLI_findlink(&cu->key->block, editnurb->shapenr-1);
BezTriple *bezt, *oldbezt;
BPoint *bp, *oldbp;
Nurb *nu;
@@ -740,7 +738,7 @@ static void calc_shapeKeys(Object *obedit)
int act_is_basis = 0;
/* find if this key is a basis for any others */
for(currkey = cu->key->block.first; currkey; currkey= currkey->next) {
- if(obedit->shapenr-1 == currkey->relative) {
+ if(editnurb->shapenr-1 == currkey->relative) {
act_is_basis = 1;
break;
}
@@ -808,7 +806,7 @@ static void calc_shapeKeys(Object *obedit)
currkey = cu->key->block.first;
while(currkey) {
- int apply_offset = (ofs && (currkey != actkey) && (obedit->shapenr-1 == currkey->relative));
+ int apply_offset = (ofs && (currkey != actkey) && (editnurb->shapenr-1 == currkey->relative));
fp= newkey= MEM_callocN(cu->key->elemsize * totvert, "currkey->data");
ofp= oldkey = currkey->data;
@@ -1037,6 +1035,7 @@ void make_editNurb(Object *obedit)
}
if(actkey) {
+ editnurb->shapenr= obedit->shapenr;
init_editNurb_keyIndex(editnurb, &cu->nurb);
}
}
diff --git a/source/blender/editors/curve/editfont.c b/source/blender/editors/curve/editfont.c
index 20355de0e73..146213af667 100644
--- a/source/blender/editors/curve/editfont.c
+++ b/source/blender/editors/curve/editfont.c
@@ -51,12 +51,9 @@
#include "BKE_curve.h"
#include "BKE_depsgraph.h"
#include "BKE_font.h"
-#include "BKE_global.h"
#include "BKE_library.h"
-#include "BKE_main.h"
#include "BKE_object.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/gpencil/drawgpencil.c b/source/blender/editors/gpencil/drawgpencil.c
index 2b26f4a295d..5e0e09231eb 100644
--- a/source/blender/editors/gpencil/drawgpencil.c
+++ b/source/blender/editors/gpencil/drawgpencil.c
@@ -44,11 +44,9 @@
#include "DNA_screen_types.h"
#include "DNA_space_types.h"
-#include "BKE_blender.h"
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_gpencil.h"
-#include "BKE_sequencer.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/editors/gpencil/editaction_gpencil.c b/source/blender/editors/gpencil/editaction_gpencil.c
index dff0839b5bd..9073cb01d5f 100644
--- a/source/blender/editors/gpencil/editaction_gpencil.c
+++ b/source/blender/editors/gpencil/editaction_gpencil.c
@@ -37,11 +37,6 @@
#include "BLI_blenlib.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
-#include "BKE_blender.h"
-#include "BKE_fcurve.h"
-#include "BKE_gpencil.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/gpencil/gpencil_buttons.c b/source/blender/editors/gpencil/gpencil_buttons.c
index c051678b86b..00a6d0fb94d 100644
--- a/source/blender/editors/gpencil/gpencil_buttons.c
+++ b/source/blender/editors/gpencil/gpencil_buttons.c
@@ -41,7 +41,6 @@
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_gpencil.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/gpencil/gpencil_edit.c b/source/blender/editors/gpencil/gpencil_edit.c
index fb72ec8f3b4..d41b581e9e0 100644
--- a/source/blender/editors/gpencil/gpencil_edit.c
+++ b/source/blender/editors/gpencil/gpencil_edit.c
@@ -47,17 +47,12 @@
#include "DNA_view3d_types.h"
#include "DNA_gpencil_types.h"
-#include "BKE_armature.h"
-#include "BKE_blender.h"
#include "BKE_context.h"
#include "BKE_curve.h"
-#include "BKE_global.h"
#include "BKE_gpencil.h"
-#include "BKE_image.h"
#include "BKE_library.h"
#include "BKE_object.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/gpencil/gpencil_paint.c b/source/blender/editors/gpencil/gpencil_paint.c
index abee15990d1..cfa7af99d2a 100644
--- a/source/blender/editors/gpencil/gpencil_paint.c
+++ b/source/blender/editors/gpencil/gpencil_paint.c
@@ -40,7 +40,6 @@
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
diff --git a/source/blender/editors/include/ED_lattice.h b/source/blender/editors/include/ED_lattice.h
new file mode 100644
index 00000000000..bebd6c5f3ab
--- /dev/null
+++ b/source/blender/editors/include/ED_lattice.h
@@ -0,0 +1,33 @@
+/**
+ * $Id$
+ *
+ * ***** 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 2
+ * 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, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * The Original Code is Copyright (C) 2008 Blender Foundation.
+ * All rights reserved.
+ *
+ *
+ * Contributor(s): Blender Foundation
+ *
+ * ***** END GPL LICENSE BLOCK *****
+ */
+
+struct Object;
+
+void free_editLatt(struct Object *ob);
+void make_editLatt(struct Object *obedit);
+void load_editLatt(struct Object *obedit);
diff --git a/source/blender/editors/include/ED_view3d.h b/source/blender/editors/include/ED_view3d.h
index 1da51af5e28..ced2536b411 100644
--- a/source/blender/editors/include/ED_view3d.h
+++ b/source/blender/editors/include/ED_view3d.h
@@ -51,7 +51,7 @@ struct ViewContext;
/* for derivedmesh drawing callbacks, for view3d_select, .... */
typedef struct ViewContext {
- Scene *scene;
+ struct Scene *scene;
struct Object *obact;
struct Object *obedit;
struct ARegion *ar;
diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c
index 38c11e507cc..5d4621b426d 100644
--- a/source/blender/editors/interface/interface.c
+++ b/source/blender/editors/interface/interface.c
@@ -41,11 +41,7 @@
#include "BLI_dynstr.h"
#include "BKE_context.h"
-#include "BKE_idprop.h"
#include "BKE_library.h"
-#include "BKE_screen.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "BKE_unit.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/interface/interface_anim.c b/source/blender/editors/interface/interface_anim.c
index 4108e1c8532..dd690ba75d7 100644
--- a/source/blender/editors/interface/interface_anim.c
+++ b/source/blender/editors/interface/interface_anim.c
@@ -12,7 +12,6 @@
#include "BLI_listbase.h"
#include "BLI_string.h"
-#include "BKE_animsys.h"
#include "BKE_context.h"
#include "BKE_fcurve.h"
diff --git a/source/blender/editors/interface/interface_draw.c b/source/blender/editors/interface/interface_draw.c
index 0dd333dc387..7179ef96dc0 100644
--- a/source/blender/editors/interface/interface_draw.c
+++ b/source/blender/editors/interface/interface_draw.c
@@ -35,7 +35,6 @@
#include "BLI_math.h"
#include "BKE_colortools.h"
-#include "BKE_global.h"
#include "BKE_texture.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index f617cc4ae8d..e1a760628b0 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -44,7 +44,6 @@
#include "BKE_idprop.h"
#include "BKE_report.h"
#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
#include "ED_util.h"
diff --git a/source/blender/editors/interface/interface_icons.c b/source/blender/editors/interface/interface_icons.c
index 02586a86d1e..e72bbaede4d 100644
--- a/source/blender/editors/interface/interface_icons.c
+++ b/source/blender/editors/interface/interface_icons.c
@@ -47,16 +47,13 @@
#include "DNA_brush_types.h"
#include "DNA_object_types.h"
#include "DNA_screen_types.h"
-#include "DNA_userdef_types.h"
#include "RNA_access.h"
#include "RNA_enum_types.h"
#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_image.h"
#include "BKE_icons.h"
-#include "BKE_brush.h"
#include "BKE_utildefines.h"
#include "IMB_imbuf.h"
diff --git a/source/blender/editors/interface/interface_layout.c b/source/blender/editors/interface/interface_layout.c
index 77551fbf211..35062c44cb6 100644
--- a/source/blender/editors/interface/interface_layout.c
+++ b/source/blender/editors/interface/interface_layout.c
@@ -38,9 +38,7 @@
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_idprop.h"
-#include "BKE_library.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/interface/interface_ops.c b/source/blender/editors/interface/interface_ops.c
index 20752099814..caee3c1c2fe 100644
--- a/source/blender/editors/interface/interface_ops.c
+++ b/source/blender/editors/interface/interface_ops.c
@@ -39,7 +39,6 @@
#include "BLI_math_color.h"
#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/interface/interface_panel.c b/source/blender/editors/interface/interface_panel.c
index 61694b859c5..9d22f3c5212 100644
--- a/source/blender/editors/interface/interface_panel.c
+++ b/source/blender/editors/interface/interface_panel.c
@@ -43,7 +43,6 @@
#include "BKE_context.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/interface/interface_regions.c b/source/blender/editors/interface/interface_regions.c
index 2f19ab6698a..50b85360196 100644
--- a/source/blender/editors/interface/interface_regions.c
+++ b/source/blender/editors/interface/interface_regions.c
@@ -38,11 +38,7 @@
#include "BLI_ghash.h"
#include "BKE_context.h"
-#include "BKE_icons.h"
-#include "BKE_report.h"
#include "BKE_screen.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/interface/interface_style.c b/source/blender/editors/interface/interface_style.c
index f12b8aeeca5..360360127a0 100644
--- a/source/blender/editors/interface/interface_style.c
+++ b/source/blender/editors/interface/interface_style.c
@@ -38,9 +38,7 @@
#include "BLI_rect.h"
#include "BLI_string.h"
-#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c
index e2c033bd68d..eb99a45d62d 100644
--- a/source/blender/editors/interface/interface_templates.c
+++ b/source/blender/editors/interface/interface_templates.c
@@ -30,18 +30,15 @@
#include "DNA_scene_types.h"
#include "DNA_userdef_types.h"
-#include "DNA_windowmanager_types.h"
#include "BLI_string.h"
#include "BKE_colortools.h"
#include "BKE_context.h"
-#include "BKE_icons.h"
#include "BKE_global.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "ED_screen.h"
@@ -631,12 +628,8 @@ void uiTemplatePathBuilder(uiLayout *layout, bContext *C, PointerRNA *ptr, char
#include "DNA_object_force.h"
#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_global.h"
#include "BKE_modifier.h"
-#include "BKE_object.h"
#include "BKE_particle.h"
-#include "BKE_report.h"
#include "ED_util.h"
@@ -1150,7 +1143,6 @@ uiLayout *uiTemplateConstraint(uiLayout *layout, PointerRNA *ptr, int compact)
#include "DNA_lamp_types.h"
#include "DNA_material_types.h"
-#include "DNA_texture_types.h"
#include "DNA_world_types.h"
#define B_MATPRV 1
@@ -1250,7 +1242,6 @@ void uiTemplatePreview(uiLayout *layout, ID *id, ID *parent, MTex *slot)
/********************** ColorRamp Template **************************/
-#include "BKE_texture.h"
typedef struct RNAUpdateCb {
PointerRNA ptr;
@@ -1546,7 +1537,6 @@ void uiTemplateVectorscope(uiLayout *layout, PointerRNA *ptr, char *propname, in
/********************* CurveMapping Template ************************/
-#include "BKE_colortools.h"
static void curvemap_buttons_zoom_in(bContext *C, void *cumap_v, void *unused)
{
@@ -2107,12 +2097,6 @@ static void list_item_row(bContext *C, uiLayout *layout, PointerRNA *ptr, Pointe
/* list item behind label & other buttons */
sub= uiLayoutRow(overlap, 0);
- if(itemptr->type == &RNA_ShapeKey) {
- ob= (Object*)activeptr->data;
- if(ob->mode == OB_MODE_EDIT && !(ob->type == OB_MESH))
- uiLayoutSetEnabled(sub, 0);
- }
-
but= uiDefButR(block, LISTROW, 0, "", 0,0, UI_UNIT_X*10,UI_UNIT_Y, activeptr, activepropname, 0, 0, i, 0, 0, "");
uiButSetFlag(but, UI_BUT_NO_TOOLTIP);
diff --git a/source/blender/editors/interface/interface_widgets.c b/source/blender/editors/interface/interface_widgets.c
index 8cd42b271a9..e4bf6af1564 100644
--- a/source/blender/editors/interface/interface_widgets.c
+++ b/source/blender/editors/interface/interface_widgets.c
@@ -39,7 +39,6 @@
#include "BKE_context.h"
#include "BKE_curve.h"
-#include "BKE_global.h"
#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/interface/view2d_ops.c b/source/blender/editors/interface/view2d_ops.c
index a5ed57a9ee8..8611f6dd4ea 100644
--- a/source/blender/editors/interface/view2d_ops.c
+++ b/source/blender/editors/interface/view2d_ops.c
@@ -34,7 +34,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/mesh/editface.c b/source/blender/editors/mesh/editface.c
index e36035081ce..a2db1929989 100644
--- a/source/blender/editors/mesh/editface.c
+++ b/source/blender/editors/mesh/editface.c
@@ -44,17 +44,9 @@
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
-#include "BKE_brush.h"
-#include "BKE_customdata.h"
-#include "BKE_depsgraph.h"
#include "BKE_DerivedMesh.h"
-#include "BKE_displist.h"
#include "BKE_global.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
-#include "BKE_customdata.h"
#include "BKE_context.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/mesh/editmesh.c b/source/blender/editors/mesh/editmesh.c
index a63f4995acc..e6ba228c260 100644
--- a/source/blender/editors/mesh/editmesh.c
+++ b/source/blender/editors/mesh/editmesh.c
@@ -32,8 +32,11 @@
#include "MEM_guardedalloc.h"
-
+#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
#include "DNA_key_types.h"
+#include "DNA_meshdata_types.h"
+#include "DNA_modifier_types.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
@@ -41,24 +44,15 @@
#include "BLI_dynstr.h"
#include "BLI_rand.h"
-#include "BKE_cloth.h"
+#include "BKE_DerivedMesh.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
#include "BKE_global.h"
#include "BKE_key.h"
-#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_mesh.h"
-#include "BKE_modifier.h"
-#include "BKE_object.h"
#include "BKE_paint.h"
-#include "BKE_pointcache.h"
-#include "BKE_softbody.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "ED_mesh.h"
#include "ED_object.h"
diff --git a/source/blender/editors/mesh/editmesh_add.c b/source/blender/editors/mesh/editmesh_add.c
index 6cb6695cebc..8ad768f2658 100644
--- a/source/blender/editors/mesh/editmesh_add.c
+++ b/source/blender/editors/mesh/editmesh_add.c
@@ -47,11 +47,8 @@
#include "BKE_context.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
#include "BKE_library.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "WM_api.h"
diff --git a/source/blender/editors/mesh/editmesh_loop.c b/source/blender/editors/mesh/editmesh_loop.c
index 373a4e60cdb..682fbca5072 100644
--- a/source/blender/editors/mesh/editmesh_loop.c
+++ b/source/blender/editors/mesh/editmesh_loop.c
@@ -51,13 +51,7 @@ editmesh_loop: tools with own drawing subloops, select, knife, subdiv
#include "BKE_context.h"
#include "BKE_depsgraph.h"
-#include "BKE_displist.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
-#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "PIL_time.h"
diff --git a/source/blender/editors/mesh/editmesh_mods.c b/source/blender/editors/mesh/editmesh_mods.c
index f952820c1f0..4af3aab569f 100644
--- a/source/blender/editors/mesh/editmesh_mods.c
+++ b/source/blender/editors/mesh/editmesh_mods.c
@@ -55,14 +55,9 @@ editmesh_mods.c, UI level access, no geometry changes
#include "BKE_context.h"
#include "BKE_displist.h"
#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_customdata.h"
-#include "BKE_global.h"
#include "BKE_mesh.h"
#include "BKE_material.h"
#include "BKE_paint.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "IMB_imbuf_types.h"
diff --git a/source/blender/editors/mesh/editmesh_tools.c b/source/blender/editors/mesh/editmesh_tools.c
index ea89877b7cd..375488f25f8 100644
--- a/source/blender/editors/mesh/editmesh_tools.c
+++ b/source/blender/editors/mesh/editmesh_tools.c
@@ -59,14 +59,10 @@ editmesh_tool.c: UI called tools for editmesh, geometry changes here, otherwise
#include "BLI_heap.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
#include "BKE_global.h"
#include "BKE_key.h"
-#include "BKE_library.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BKE_bmesh.h"
#include "BKE_report.h"
diff --git a/source/blender/editors/mesh/loopcut.c b/source/blender/editors/mesh/loopcut.c
index 703f3cd425f..876cafd4bfb 100644
--- a/source/blender/editors/mesh/loopcut.c
+++ b/source/blender/editors/mesh/loopcut.c
@@ -51,7 +51,6 @@
#include "BKE_context.h"
#include "BKE_depsgraph.h"
#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "BKE_mesh.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/mesh/mesh_data.c b/source/blender/editors/mesh/mesh_data.c
index 53da24fa455..2d337558f56 100644
--- a/source/blender/editors/mesh/mesh_data.c
+++ b/source/blender/editors/mesh/mesh_data.c
@@ -39,10 +39,8 @@
#include "DNA_view3d_types.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
#include "BKE_displist.h"
-#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_library.h"
#include "BKE_material.h"
diff --git a/source/blender/editors/mesh/mesh_ops.c b/source/blender/editors/mesh/mesh_ops.c
index 9eac347c893..a02ed82b45a 100644
--- a/source/blender/editors/mesh/mesh_ops.c
+++ b/source/blender/editors/mesh/mesh_ops.c
@@ -39,9 +39,6 @@
#include "BLI_editVert.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_mesh.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/mesh/meshtools.c b/source/blender/editors/mesh/meshtools.c
index 47b7b89ff7a..f78819d1b74 100644
--- a/source/blender/editors/mesh/meshtools.c
+++ b/source/blender/editors/mesh/meshtools.c
@@ -44,7 +44,6 @@
#include "DNA_meshdata_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
-#include "DNA_view3d_types.h"
#include "BLI_math.h"
#include "BLI_blenlib.h"
@@ -54,20 +53,14 @@
#include "BLI_threads.h"
-#include "BKE_blender.h"
#include "BKE_context.h"
#include "BKE_depsgraph.h"
#include "BKE_DerivedMesh.h"
-#include "BKE_customdata.h"
-#include "BKE_global.h"
-#include "BKE_image.h"
#include "BKE_key.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_material.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "BLO_sys_types.h" // for intptr_t support
diff --git a/source/blender/editors/metaball/mball_edit.c b/source/blender/editors/metaball/mball_edit.c
index eb344b1e5fe..b59a0d3aaaf 100644
--- a/source/blender/editors/metaball/mball_edit.c
+++ b/source/blender/editors/metaball/mball_edit.c
@@ -43,11 +43,8 @@
#include "RNA_define.h"
#include "RNA_access.h"
-#include "BKE_utildefines.h"
#include "BKE_depsgraph.h"
-#include "BKE_object.h"
#include "BKE_context.h"
-#include "BKE_library.h"
#include "ED_screen.h"
#include "ED_view3d.h"
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c
index 67cae8d4155..aa3b7f9422a 100644
--- a/source/blender/editors/object/object_add.c
+++ b/source/blender/editors/object/object_add.c
@@ -49,12 +49,10 @@
#include "BKE_constraint.h"
#include "BKE_context.h"
#include "BKE_curve.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
#include "BKE_DerivedMesh.h"
#include "BKE_displist.h"
#include "BKE_effect.h"
-#include "BKE_global.h"
#include "BKE_group.h"
#include "BKE_lattice.h"
#include "BKE_library.h"
@@ -67,9 +65,7 @@
#include "BKE_particle.h"
#include "BKE_report.h"
#include "BKE_sca.h"
-#include "BKE_scene.h"
#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/object/object_bake.c b/source/blender/editors/object/object_bake.c
index 6261c33a6f7..98252723816 100644
--- a/source/blender/editors/object/object_bake.c
+++ b/source/blender/editors/object/object_bake.c
@@ -48,8 +48,6 @@
#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_main.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "RE_pipeline.h"
diff --git a/source/blender/editors/object/object_constraint.c b/source/blender/editors/object/object_constraint.c
index ee1c7df0409..de4a931e069 100644
--- a/source/blender/editors/object/object_constraint.c
+++ b/source/blender/editors/object/object_constraint.c
@@ -51,7 +51,6 @@
#include "BKE_main.h"
#include "BKE_object.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "BIK_api.h"
#ifndef DISABLE_PYTHON
diff --git a/source/blender/editors/object/object_edit.c b/source/blender/editors/object/object_edit.c
index 18da264336e..36879e43fe2 100644
--- a/source/blender/editors/object/object_edit.c
+++ b/source/blender/editors/object/object_edit.c
@@ -43,6 +43,9 @@
#include "DNA_material_types.h"
#include "DNA_meta_types.h"
#include "DNA_property_types.h"
+#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
+#include "DNA_meshdata_types.h"
#include "DNA_vfont_types.h"
#include "BLI_blenlib.h"
@@ -51,49 +54,31 @@
#include "BLI_ghash.h"
#include "BLI_rand.h"
-#include "BKE_action.h"
#include "BKE_anim.h"
-#include "BKE_armature.h"
#include "BKE_constraint.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
-#include "BKE_blender.h"
-#include "BKE_cloth.h"
#include "BKE_curve.h"
-#include "BKE_displist.h"
#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_effect.h"
#include "BKE_font.h"
-#include "BKE_global.h"
-#include "BKE_group.h"
#include "BKE_image.h"
-#include "BKE_key.h"
-#include "BKE_lattice.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_mball.h"
#include "BKE_mesh.h"
-#include "BKE_nla.h"
#include "BKE_object.h"
#include "BKE_paint.h"
-#include "BKE_particle.h"
#include "BKE_pointcache.h"
#include "BKE_property.h"
-#include "BKE_report.h"
#include "BKE_sca.h"
-#include "BKE_scene.h"
#include "BKE_softbody.h"
-#include "BKE_subsurf.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "BKE_modifier.h"
#include "ED_armature.h"
#include "ED_curve.h"
#include "ED_mesh.h"
#include "ED_mball.h"
+#include "ED_lattice.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_util.h"
@@ -954,14 +939,15 @@ void special_editmenu(Scene *scene, View3D *v3d)
static float weight= 1.0f;
{ // XXX
// XXX if(fbutton(&weight, 0.0f, 1.0f, 10, 10, "Set Weight")) {
- int a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
- BPoint *bp= lt->editlatt->def;
+ Lattice *editlt= lt->editlatt->latt;
+ int a= editlt->pntsu*editlt->pntsv*editlt->pntsw;
+ BPoint *bp= editlt->def;
while(a--) {
if(bp->f1 & SELECT)
bp->weight= weight;
bp++;
- }
+ }
}
}
diff --git a/source/blender/editors/object/object_group.c b/source/blender/editors/object/object_group.c
index b0a6c6471a2..8a0e598af9f 100644
--- a/source/blender/editors/object/object_group.c
+++ b/source/blender/editors/object/object_group.c
@@ -39,11 +39,9 @@
#include "BKE_context.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
#include "BKE_group.h"
#include "BKE_main.h"
#include "BKE_report.h"
-#include "BKE_scene.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/object/object_hook.c b/source/blender/editors/object/object_hook.c
index fefefae586c..75e22d5356f 100644
--- a/source/blender/editors/object/object_hook.c
+++ b/source/blender/editors/object/object_hook.c
@@ -43,7 +43,6 @@
#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
@@ -51,7 +50,6 @@
#include "BKE_object.h"
#include "BKE_report.h"
#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "RNA_define.h"
#include "RNA_access.h"
@@ -193,13 +191,14 @@ static int return_editlattice_indexar(Lattice *editlatt, int *tot, int **indexar
static void select_editlattice_hook(Object *obedit, HookModifierData *hmd)
{
- Lattice *lt= obedit->data;
+ Lattice *lt= obedit->data, *editlt;
BPoint *bp;
int index=0, nr=0, a;
-
+
+ editlt= lt->editlatt->latt;
/* count */
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
- bp= lt->editlatt->def;
+ a= editlt->pntsu*editlt->pntsv*editlt->pntsw;
+ bp= editlt->def;
while(a--) {
if(hmd->indexar[index]==nr) {
bp->f1 |= SELECT;
@@ -315,7 +314,7 @@ static int object_hook_index_array(Object *obedit, int *tot, int **indexar, char
case OB_LATTICE:
{
Lattice *lt= obedit->data;
- return return_editlattice_indexar(lt->editlatt, tot, indexar, cent_r);
+ return return_editlattice_indexar(lt->editlatt->latt, tot, indexar, cent_r);
}
default:
return 0;
diff --git a/source/blender/editors/object/object_intern.h b/source/blender/editors/object/object_intern.h
index bd48db2f780..ed75c4060a2 100644
--- a/source/blender/editors/object/object_intern.h
+++ b/source/blender/editors/object/object_intern.h
@@ -131,11 +131,6 @@ void OBJECT_OT_hook_reset(struct wmOperatorType *ot);
void OBJECT_OT_hook_recenter(struct wmOperatorType *ot);
/* object_lattice.c */
-void free_editLatt(struct Object *ob);
-void make_editLatt(struct Object *obedit);
-void load_editLatt(struct Object *obedit);
-void remake_editLatt(struct Object *obedit);
-
void LATTICE_OT_select_all(struct wmOperatorType *ot);
void LATTICE_OT_make_regular(struct wmOperatorType *ot);
diff --git a/source/blender/editors/object/object_lattice.c b/source/blender/editors/object/object_lattice.c
index 52f779748fa..9f82a1209cf 100644
--- a/source/blender/editors/object/object_lattice.c
+++ b/source/blender/editors/object/object_lattice.c
@@ -45,7 +45,8 @@
#include "BKE_key.h"
#include "BKE_lattice.h"
#include "BKE_mesh.h"
-#include "BKE_utildefines.h"
+
+#include "BLI_listbase.h"
#include "ED_screen.h"
#include "ED_view3d.h"
@@ -63,12 +64,16 @@ void free_editLatt(Object *ob)
Lattice *lt= ob->data;
if(lt->editlatt) {
- if(lt->editlatt->def)
- MEM_freeN(lt->editlatt->def);
- if(lt->editlatt->dvert)
- free_dverts(lt->editlatt->dvert, lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw);
-
+ Lattice *editlt= lt->editlatt->latt;
+
+ if(editlt->def)
+ MEM_freeN(editlt->def);
+ if(editlt->dvert)
+ free_dverts(editlt->dvert, editlt->pntsu*editlt->pntsv*editlt->pntsw);
+
+ MEM_freeN(editlt);
MEM_freeN(lt->editlatt);
+
lt->editlatt= NULL;
}
}
@@ -77,47 +82,51 @@ void make_editLatt(Object *obedit)
{
Lattice *lt= obedit->data;
KeyBlock *actkey;
-
+
free_editLatt(obedit);
-
+
lt= obedit->data;
actkey= ob_get_keyblock(obedit);
if(actkey)
key_to_latt(actkey, lt);
- lt->editlatt= MEM_dupallocN(lt);
- lt->editlatt->def= MEM_dupallocN(lt->def);
-
+ lt->editlatt= MEM_callocN(sizeof(EditLatt), "editlatt");
+ lt->editlatt->latt= MEM_dupallocN(lt);
+ lt->editlatt->latt->def= MEM_dupallocN(lt->def);
+
if(lt->dvert) {
int tot= lt->pntsu*lt->pntsv*lt->pntsw;
- lt->editlatt->dvert = MEM_mallocN (sizeof (MDeformVert)*tot, "Lattice MDeformVert");
- copy_dverts(lt->editlatt->dvert, lt->dvert, tot);
+ lt->editlatt->latt->dvert = MEM_mallocN (sizeof (MDeformVert)*tot, "Lattice MDeformVert");
+ copy_dverts(lt->editlatt->latt->dvert, lt->dvert, tot);
}
+
+ if(lt->key) lt->editlatt->shapenr= obedit->shapenr;
}
void load_editLatt(Object *obedit)
{
- Lattice *lt;
+ Lattice *lt, *editlt;
KeyBlock *actkey;
BPoint *bp;
float *fp;
int tot;
-
+
lt= obedit->data;
-
- actkey= ob_get_keyblock(obedit);
+ editlt= lt->editlatt->latt;
+
+ if(lt->editlatt->shapenr) {
+ actkey= BLI_findlink(&lt->key->block, lt->editlatt->shapenr-1);
- if(actkey) {
/* active key: vertices */
- tot= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ tot= editlt->pntsu*editlt->pntsv*editlt->pntsw;
if(actkey->data) MEM_freeN(actkey->data);
fp=actkey->data= MEM_callocN(lt->key->elemsize*tot, "actkey->data");
actkey->totelem= tot;
-
- bp= lt->editlatt->def;
+
+ bp= editlt->def;
while(tot--) {
VECCOPY(fp, bp->vec);
fp+= 3;
@@ -126,30 +135,30 @@ void load_editLatt(Object *obedit)
}
else {
MEM_freeN(lt->def);
-
- lt->def= MEM_dupallocN(lt->editlatt->def);
- lt->flag= lt->editlatt->flag;
+ lt->def= MEM_dupallocN(editlt->def);
- lt->pntsu= lt->editlatt->pntsu;
- lt->pntsv= lt->editlatt->pntsv;
- lt->pntsw= lt->editlatt->pntsw;
+ lt->flag= editlt->flag;
+
+ lt->pntsu= editlt->pntsu;
+ lt->pntsv= editlt->pntsv;
+ lt->pntsw= editlt->pntsw;
- lt->typeu= lt->editlatt->typeu;
- lt->typev= lt->editlatt->typev;
- lt->typew= lt->editlatt->typew;
+ lt->typeu= editlt->typeu;
+ lt->typev= editlt->typev;
+ lt->typew= editlt->typew;
}
-
+
if(lt->dvert) {
free_dverts(lt->dvert, lt->pntsu*lt->pntsv*lt->pntsw);
lt->dvert= NULL;
}
-
- if(lt->editlatt->dvert) {
+
+ if(editlt->dvert) {
int tot= lt->pntsu*lt->pntsv*lt->pntsw;
-
+
lt->dvert = MEM_mallocN (sizeof (MDeformVert)*tot, "Lattice MDeformVert");
- copy_dverts(lt->dvert, lt->editlatt->dvert, tot);
+ copy_dverts(lt->dvert, editlt->dvert, tot);
}
}
@@ -161,9 +170,9 @@ void ED_setflagsLatt(Object *obedit, int flag)
BPoint *bp;
int a;
- bp= lt->editlatt->def;
+ bp= lt->editlatt->latt->def;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
while(a--) {
if(bp->hide==0) {
@@ -184,8 +193,8 @@ int select_all_exec(bContext *C, wmOperator *op)
if (action == SEL_TOGGLE) {
action = SEL_SELECT;
- bp= lt->editlatt->def;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ bp= lt->editlatt->latt->def;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
while(a--) {
if(bp->hide==0) {
@@ -206,8 +215,8 @@ int select_all_exec(bContext *C, wmOperator *op)
ED_setflagsLatt(obedit, 0);
break;
case SEL_INVERT:
- bp= lt->editlatt->def;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ bp= lt->editlatt->latt->def;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
while(a--) {
if(bp->hide==0) {
@@ -257,7 +266,7 @@ int make_regular_exec(bContext *C, wmOperator *op)
if(ob) {
lt= ob->data;
- resizelattice(lt->editlatt, lt->pntsu, lt->pntsv, lt->pntsw, NULL);
+ resizelattice(lt->editlatt->latt, lt->pntsu, lt->pntsv, lt->pntsw, NULL);
}
else {
ob= CTX_data_active_object(C);
@@ -355,21 +364,21 @@ typedef struct UndoLattice {
static void undoLatt_to_editLatt(void *data, void *edata)
{
UndoLattice *ult= (UndoLattice*)data;
- Lattice *editlatt= (Lattice *)edata;
- int a= editlatt->pntsu*editlatt->pntsv*editlatt->pntsw;
+ EditLatt *editlatt= (EditLatt *)edata;
+ int a= editlatt->latt->pntsu*editlatt->latt->pntsv*editlatt->latt->pntsw;
- memcpy(editlatt->def, ult->def, a*sizeof(BPoint));
+ memcpy(editlatt->latt->def, ult->def, a*sizeof(BPoint));
}
static void *editLatt_to_undoLatt(void *edata)
{
UndoLattice *ult= MEM_callocN(sizeof(UndoLattice), "UndoLattice");
- Lattice *editlatt= (Lattice *)edata;
+ EditLatt *editlatt= (EditLatt *)edata;
- ult->def= MEM_dupallocN(editlatt->def);
- ult->pntsu= editlatt->pntsu;
- ult->pntsv= editlatt->pntsv;
- ult->pntsw= editlatt->pntsw;
+ ult->def= MEM_dupallocN(editlatt->latt->def);
+ ult->pntsu= editlatt->latt->pntsu;
+ ult->pntsv= editlatt->latt->pntsv;
+ ult->pntsw= editlatt->latt->pntsw;
return ult;
}
@@ -385,11 +394,11 @@ static void free_undoLatt(void *data)
static int validate_undoLatt(void *data, void *edata)
{
UndoLattice *ult= (UndoLattice*)data;
- Lattice *editlatt= (Lattice *)edata;
+ EditLatt *editlatt= (EditLatt *)edata;
- return (ult->pntsu == editlatt->pntsu &&
- ult->pntsv == editlatt->pntsv &&
- ult->pntsw == editlatt->pntsw);
+ return (ult->pntsu == editlatt->latt->pntsu &&
+ ult->pntsv == editlatt->latt->pntsv &&
+ ult->pntsw == editlatt->latt->pntsw);
}
static void *get_editlatt(bContext *C)
diff --git a/source/blender/editors/object/object_modifier.c b/source/blender/editors/object/object_modifier.c
index a54ed9bd239..286e953a69a 100644
--- a/source/blender/editors/object/object_modifier.c
+++ b/source/blender/editors/object/object_modifier.c
@@ -43,7 +43,6 @@
#include "BLI_string.h"
#include "BLI_path_util.h"
-#include "BKE_action.h"
#include "BKE_curve.h"
#include "BKE_context.h"
#include "BKE_depsgraph.h"
@@ -61,7 +60,6 @@
#include "BKE_object.h"
#include "BKE_particle.h"
#include "BKE_softbody.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/object/object_ops.c b/source/blender/editors/object/object_ops.c
index 610a82d964c..97dc6f7486c 100644
--- a/source/blender/editors/object/object_ops.c
+++ b/source/blender/editors/object/object_ops.c
@@ -38,8 +38,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
#include "RNA_define.h"
diff --git a/source/blender/editors/object/object_relations.c b/source/blender/editors/object/object_relations.c
index ceba2ad3997..6e9244e39ca 100644
--- a/source/blender/editors/object/object_relations.c
+++ b/source/blender/editors/object/object_relations.c
@@ -69,7 +69,6 @@
#include "BKE_sca.h"
#include "BKE_scene.h"
#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
@@ -173,8 +172,8 @@ static int vertex_parent_set_exec(bContext *C, wmOperator *op)
else if(obedit->type==OB_LATTICE) {
Lattice *lt= obedit->data;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
- bp= lt->editlatt->def;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
+ bp= lt->editlatt->latt->def;
while(a--) {
if(bp->f1 & SELECT) {
if(v1==0) v1= nr;
diff --git a/source/blender/editors/object/object_select.c b/source/blender/editors/object/object_select.c
index 3c86c135914..accdb67fb99 100644
--- a/source/blender/editors/object/object_select.c
+++ b/source/blender/editors/object/object_select.c
@@ -44,7 +44,6 @@
#include "BLI_string.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
#include "BKE_group.h"
#include "BKE_main.h"
#include "BKE_material.h"
@@ -52,7 +51,6 @@
#include "BKE_property.h"
#include "BKE_report.h"
#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "BKE_deform.h"
#include "WM_api.h"
diff --git a/source/blender/editors/object/object_shapekey.c b/source/blender/editors/object/object_shapekey.c
index 2a0fca19be4..7b1ab933e28 100644
--- a/source/blender/editors/object/object_shapekey.c
+++ b/source/blender/editors/object/object_shapekey.c
@@ -47,18 +47,12 @@
#include "DNA_scene_types.h"
#include "DNA_object_types.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_curve.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
-#include "BKE_ipo.h"
#include "BKE_key.h"
#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_mesh.h"
#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BLO_sys_types.h" // for intptr_t support
diff --git a/source/blender/editors/object/object_transform.c b/source/blender/editors/object/object_transform.c
index ba9a03194ac..bbafde60755 100644
--- a/source/blender/editors/object/object_transform.c
+++ b/source/blender/editors/object/object_transform.c
@@ -43,12 +43,10 @@
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_object.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "RNA_define.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/object/object_vgroup.c b/source/blender/editors/object/object_vgroup.c
index ff48e7e349a..5cdabcab41a 100644
--- a/source/blender/editors/object/object_vgroup.c
+++ b/source/blender/editors/object/object_vgroup.c
@@ -50,13 +50,8 @@
#include "BKE_customdata.h"
#include "BKE_deform.h"
#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_displist.h"
#include "BKE_global.h"
-#include "BKE_lattice.h"
#include "BKE_mesh.h"
-#include "BKE_paint.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "RNA_access.h"
@@ -78,7 +73,7 @@ static Lattice *vgroup_edit_lattice(Object *ob)
{
if(ob->type==OB_LATTICE) {
Lattice *lt= ob->data;
- return (lt->editlatt)? lt->editlatt: lt;
+ return (lt->editlatt)? lt->editlatt->latt: lt;
}
return NULL;
@@ -174,7 +169,7 @@ int ED_vgroup_give_parray(ID *id, MDeformVert ***dvert_arr, int *dvert_tot)
int i=0;
Lattice *lt= (Lattice *)id;
- lt= (lt->editlatt)? lt->editlatt: lt;
+ lt= (lt->editlatt)? lt->editlatt->latt: lt;
*dvert_tot= lt->pntsu*lt->pntsv*lt->pntsw;
*dvert_arr= MEM_mallocN(sizeof(void*)*(*dvert_tot), "vgroup parray from me");
@@ -208,7 +203,7 @@ int ED_vgroup_give_array(ID *id, MDeformVert **dvert_arr, int *dvert_tot)
case ID_LT:
{
Lattice *lt= (Lattice *)id;
- lt= (lt->editlatt)? lt->editlatt: lt;
+ lt= (lt->editlatt)? lt->editlatt->latt: lt;
*dvert_arr= lt->dvert;
*dvert_tot= lt->pntsu*lt->pntsv*lt->pntsw;
return TRUE;
diff --git a/source/blender/editors/render/render_internal.c b/source/blender/editors/render/render_internal.c
index b5392f6dede..b11ae8525b0 100644
--- a/source/blender/editors/render/render_internal.c
+++ b/source/blender/editors/render/render_internal.c
@@ -38,17 +38,13 @@
#include "DNA_scene_types.h"
#include "BKE_blender.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_image.h"
-#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_multires.h"
#include "BKE_report.h"
-#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
+#include "BKE_sequencer.h"
#include "WM_api.h"
#include "WM_types.h"
@@ -418,6 +414,12 @@ static int screen_render_exec(bContext *C, wmOperator *op)
BKE_image_signal(ima, NULL, IMA_SIGNAL_FREE);
BKE_image_backup_render(scene, ima);
+ /* cleanup sequencer caches before starting user triggered render.
+ otherwise, invalidated cache entries can make their way into
+ the output rendering. We can't put that into RE_BlenderFrame,
+ since sequence rendering can call that recursively... (peter) */
+ seq_stripelem_cache_cleanup();
+
if(RNA_boolean_get(op->ptr, "animation"))
RE_BlenderAnim(re, mainp, scene, lay, scene->r.sfra, scene->r.efra, scene->r.frame_step, op->reports);
else
@@ -638,6 +640,12 @@ static int screen_render_invoke(bContext *C, wmOperator *op, wmEvent *event)
/* flush multires changes (for sculpt) */
multires_force_render_update(CTX_data_active_object(C));
+ /* cleanup sequencer caches before starting user triggered render.
+ otherwise, invalidated cache entries can make their way into
+ the output rendering. We can't put that into RE_BlenderFrame,
+ since sequence rendering can call that recursively... (peter) */
+ seq_stripelem_cache_cleanup();
+
/* get editmode results */
ED_object_exit_editmode(C, 0); /* 0 = does not exit editmode */
diff --git a/source/blender/editors/render/render_opengl.c b/source/blender/editors/render/render_opengl.c
index 524e36b3fc9..c0e6ea66bc4 100644
--- a/source/blender/editors/render/render_opengl.c
+++ b/source/blender/editors/render/render_opengl.c
@@ -40,19 +40,11 @@
#include "DNA_scene_types.h"
#include "DNA_object_types.h"
-#include "BKE_blender.h"
-#include "BKE_object.h"
#include "BKE_context.h"
-#include "BKE_global.h"
#include "BKE_image.h"
-#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_mesh.h"
-#include "BKE_multires.h"
#include "BKE_report.h"
#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BKE_writeavi.h"
#include "WM_api.h"
diff --git a/source/blender/editors/render/render_preview.c b/source/blender/editors/render/render_preview.c
index 901bd8ce8fd..ae34dc967f5 100644
--- a/source/blender/editors/render/render_preview.c
+++ b/source/blender/editors/render/render_preview.c
@@ -64,13 +64,8 @@
#include "BKE_icons.h"
#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_texture.h"
#include "BKE_material.h"
#include "BKE_node.h"
-#include "BKE_world.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
-#include "BKE_brush.h"
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
diff --git a/source/blender/editors/render/render_shading.c b/source/blender/editors/render/render_shading.c
index 9fd0074b9f1..24796441fe4 100644
--- a/source/blender/editors/render/render_shading.c
+++ b/source/blender/editors/render/render_shading.c
@@ -52,7 +52,6 @@
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "BKE_world.h"
#include "IMB_imbuf.h"
diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c
index 3712ef01054..90f9d5683c2 100644
--- a/source/blender/editors/screen/area.c
+++ b/source/blender/editors/screen/area.c
@@ -40,7 +40,6 @@
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/screen/screen_context.c b/source/blender/editors/screen/screen_context.c
index 1c570d98744..fbc83b1de65 100644
--- a/source/blender/editors/screen/screen_context.c
+++ b/source/blender/editors/screen/screen_context.c
@@ -35,7 +35,6 @@
#include "BKE_context.h"
#include "BKE_utildefines.h"
-#include "BKE_global.h"
#include "BKE_action.h"
#include "BKE_sequencer.h"
diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c
index 8cee4a24dcc..7f7c52a416e 100644
--- a/source/blender/editors/screen/screen_edit.c
+++ b/source/blender/editors/screen/screen_edit.c
@@ -42,7 +42,6 @@
#include "BKE_node.h"
#include "BKE_screen.h"
#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/screen/screen_ops.c b/source/blender/editors/screen/screen_ops.c
index b085c8178b0..3daacd8f68e 100644
--- a/source/blender/editors/screen/screen_ops.c
+++ b/source/blender/editors/screen/screen_ops.c
@@ -41,20 +41,13 @@
#include "DNA_scene_types.h"
#include "DNA_meta_types.h"
-#include "BKE_blender.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_customdata.h"
-#include "BKE_global.h"
-#include "BKE_idprop.h"
-#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
-#include "BKE_multires.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BKE_sound.h"
#include "WM_api.h"
diff --git a/source/blender/editors/screen/screendump.c b/source/blender/editors/screen/screendump.c
index d5cd8285515..56efa0a5a83 100644
--- a/source/blender/editors/screen/screendump.c
+++ b/source/blender/editors/screen/screendump.c
@@ -44,7 +44,6 @@
#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "BKE_writeavi.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/sculpt_paint/paint_image.c b/source/blender/editors/sculpt_paint/paint_image.c
index 250f57824b5..77b6d88fdf5 100644
--- a/source/blender/editors/sculpt_paint/paint_image.c
+++ b/source/blender/editors/sculpt_paint/paint_image.c
@@ -60,13 +60,10 @@
#include "BKE_idprop.h"
#include "BKE_object.h"
#include "BKE_brush.h"
-#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
-#include "BKE_node.h"
#include "BKE_paint.h"
-#include "BKE_utildefines.h"
#include "BKE_DerivedMesh.h"
#include "BKE_report.h"
#include "BKE_depsgraph.h"
diff --git a/source/blender/editors/sculpt_paint/paint_stroke.c b/source/blender/editors/sculpt_paint/paint_stroke.c
index 06fffa3c757..6d58731d79c 100644
--- a/source/blender/editors/sculpt_paint/paint_stroke.c
+++ b/source/blender/editors/sculpt_paint/paint_stroke.c
@@ -53,7 +53,6 @@
#include "paint_intern.h"
#include "sculpt_intern.h" // XXX, for expedience in getting this working, refactor later (or this just shows that this needs unification)
-#include "BKE_image.h"
#include <float.h>
#include <math.h>
diff --git a/source/blender/editors/sculpt_paint/paint_utils.c b/source/blender/editors/sculpt_paint/paint_utils.c
index f69f08a16c7..0098b8ca12c 100644
--- a/source/blender/editors/sculpt_paint/paint_utils.c
+++ b/source/blender/editors/sculpt_paint/paint_utils.c
@@ -15,13 +15,10 @@
#include "BLI_math.h"
#include "BKE_brush.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_DerivedMesh.h"
-#include "BKE_global.h"
#include "BKE_paint.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/sculpt_paint/paint_vertex.c b/source/blender/editors/sculpt_paint/paint_vertex.c
index 9d14da973d6..198ec4fee3b 100644
--- a/source/blender/editors/sculpt_paint/paint_vertex.c
+++ b/source/blender/editors/sculpt_paint/paint_vertex.c
@@ -48,27 +48,24 @@
#include "DNA_armature_types.h"
#include "DNA_mesh_types.h"
#include "DNA_particle_types.h"
+#include "DNA_scene_types.h"
#include "DNA_brush_types.h"
+#include "DNA_object_types.h"
+#include "DNA_meshdata_types.h"
#include "RNA_access.h"
#include "RNA_define.h"
-#include "BKE_armature.h"
+#include "BKE_DerivedMesh.h"
#include "BKE_action.h"
#include "BKE_brush.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_cloth.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
#include "BKE_deform.h"
-#include "BKE_displist.h"
-#include "BKE_global.h"
#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_object.h"
#include "BKE_paint.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/sculpt_paint/sculpt.c b/source/blender/editors/sculpt_paint/sculpt.c
index e7ea298e58c..dabb5b84326 100644
--- a/source/blender/editors/sculpt_paint/sculpt.c
+++ b/source/blender/editors/sculpt_paint/sculpt.c
@@ -41,8 +41,6 @@
#include "BLI_editVert.h"
#include "BLI_rand.h"
-#include "DNA_key_types.h"
-#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
@@ -51,22 +49,14 @@
#include "BKE_brush.h"
#include "BKE_cdderivedmesh.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
-#include "BKE_DerivedMesh.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
-#include "BKE_image.h"
#include "BKE_key.h"
#include "BKE_library.h"
-#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_multires.h"
#include "BKE_paint.h"
#include "BKE_report.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
-#include "BKE_colortools.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/sculpt_paint/sculpt_undo.c b/source/blender/editors/sculpt_paint/sculpt_undo.c
index e4121c9c76a..b6b796bce2b 100644
--- a/source/blender/editors/sculpt_paint/sculpt_undo.c
+++ b/source/blender/editors/sculpt_paint/sculpt_undo.c
@@ -38,7 +38,6 @@
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_mesh_types.h"
-#include "DNA_key_types.h"
#include "BKE_cdderivedmesh.h"
#include "BKE_context.h"
@@ -46,7 +45,6 @@
#include "BKE_modifier.h"
#include "BKE_multires.h"
#include "BKE_paint.h"
-#include "BKE_mesh.h"
#include "BKE_key.h"
#include "WM_api.h"
diff --git a/source/blender/editors/sound/sound_ops.c b/source/blender/editors/sound/sound_ops.c
index 1658f336130..fe1fe3266bc 100644
--- a/source/blender/editors/sound/sound_ops.c
+++ b/source/blender/editors/sound/sound_ops.c
@@ -41,11 +41,9 @@
#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_main.h"
#include "BKE_report.h"
#include "BKE_packedFile.h"
#include "BKE_sound.h"
-#include "BKE_utildefines.h"
#include "BLI_blenlib.h"
diff --git a/source/blender/editors/space_action/action_draw.c b/source/blender/editors/space_action/action_draw.c
index 7ed07372e96..0d1ab8a2c0f 100644
--- a/source/blender/editors/space_action/action_draw.c
+++ b/source/blender/editors/space_action/action_draw.c
@@ -45,12 +45,6 @@
#include "DNA_screen_types.h"
#include "BKE_action.h"
-#include "BKE_depsgraph.h"
-#include "BKE_fcurve.h"
-#include "BKE_key.h"
-#include "BKE_material.h"
-#include "BKE_object.h"
-#include "BKE_global.h" // XXX remove me!
#include "BKE_context.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/editors/space_action/action_edit.c b/source/blender/editors/space_action/action_edit.c
index 0e2a7f690c5..99160cfab7b 100644
--- a/source/blender/editors/space_action/action_edit.c
+++ b/source/blender/editors/space_action/action_edit.c
@@ -46,15 +46,10 @@
#include "RNA_enum_types.h"
#include "BKE_action.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_key.h"
-#include "BKE_material.h"
#include "BKE_nla.h"
-#include "BKE_object.h"
#include "BKE_context.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "UI_view2d.h"
diff --git a/source/blender/editors/space_action/action_ops.c b/source/blender/editors/space_action/action_ops.c
index 8ef37942fb3..73148f016b0 100644
--- a/source/blender/editors/space_action/action_ops.c
+++ b/source/blender/editors/space_action/action_ops.c
@@ -35,8 +35,6 @@
#include "BLI_blenlib.h"
-#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "ED_transform.h"
diff --git a/source/blender/editors/space_action/action_select.c b/source/blender/editors/space_action/action_select.c
index 3be9c9bf3f7..b2c47194384 100644
--- a/source/blender/editors/space_action/action_select.c
+++ b/source/blender/editors/space_action/action_select.c
@@ -42,15 +42,9 @@
#include "RNA_access.h"
#include "RNA_define.h"
-#include "BKE_action.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_key.h"
-#include "BKE_material.h"
#include "BKE_nla.h"
-#include "BKE_object.h"
#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "UI_view2d.h"
diff --git a/source/blender/editors/space_action/space_action.c b/source/blender/editors/space_action/space_action.c
index bad35d9d3e6..7b96618d923 100644
--- a/source/blender/editors/space_action/space_action.c
+++ b/source/blender/editors/space_action/space_action.c
@@ -38,10 +38,8 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_api/space.c b/source/blender/editors/space_api/space.c
index 66cb88ebf70..111c22c3542 100644
--- a/source/blender/editors/space_api/space.c
+++ b/source/blender/editors/space_api/space.c
@@ -34,8 +34,6 @@
#include "BLI_blenlib.h"
#include "BLI_math.h"
-#include "BKE_context.h"
-#include "BKE_screen.h"
/* */
diff --git a/source/blender/editors/space_buttons/buttons_context.c b/source/blender/editors/space_buttons/buttons_context.c
index 715f0a78808..343237dee5e 100644
--- a/source/blender/editors/space_buttons/buttons_context.c
+++ b/source/blender/editors/space_buttons/buttons_context.c
@@ -41,7 +41,6 @@
#include "BLI_listbase.h"
#include "BKE_context.h"
-#include "BKE_global.h"
#include "BKE_action.h"
#include "BKE_material.h"
#include "BKE_modifier.h"
@@ -50,7 +49,6 @@
#include "BKE_screen.h"
#include "BKE_texture.h"
#include "BKE_utildefines.h"
-#include "BKE_world.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/space_buttons/buttons_header.c b/source/blender/editors/space_buttons/buttons_header.c
index d8cbbb0cbae..c7f80f4d724 100644
--- a/source/blender/editors/space_buttons/buttons_header.c
+++ b/source/blender/editors/space_buttons/buttons_header.c
@@ -35,8 +35,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
#include "ED_types.h"
diff --git a/source/blender/editors/space_buttons/buttons_ops.c b/source/blender/editors/space_buttons/buttons_ops.c
index ebdc0d37b43..c4357008a9c 100644
--- a/source/blender/editors/space_buttons/buttons_ops.c
+++ b/source/blender/editors/space_buttons/buttons_ops.c
@@ -35,7 +35,6 @@
#include "BLI_fileops.h"
#include "BKE_context.h"
-#include "BKE_global.h" /* G.sce only */
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/space_buttons/space_buttons.c b/source/blender/editors/space_buttons/space_buttons.c
index a775a0b6e6a..c890a3f3273 100644
--- a/source/blender/editors/space_buttons/space_buttons.c
+++ b/source/blender/editors/space_buttons/space_buttons.c
@@ -36,7 +36,6 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
diff --git a/source/blender/editors/space_console/console_draw.c b/source/blender/editors/space_console/console_draw.c
index 2fab998b9b6..f9deac6c753 100644
--- a/source/blender/editors/space_console/console_draw.c
+++ b/source/blender/editors/space_console/console_draw.c
@@ -42,10 +42,7 @@
#include "DNA_space_types.h"
#include "DNA_screen_types.h"
-#include "BKE_global.h"
-#include "BKE_main.h"
// #include "BKE_suggestions.h"
-#include "BKE_text.h"
#include "BKE_report.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/editors/space_console/console_ops.c b/source/blender/editors/space_console/console_ops.c
index 089e769e0d9..9a53531ba73 100644
--- a/source/blender/editors/space_console/console_ops.c
+++ b/source/blender/editors/space_console/console_ops.c
@@ -39,13 +39,7 @@
#include "BLI_blenlib.h"
#include "BLI_dynstr.h"
-#include "BKE_utildefines.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
-#include "BKE_report.h"
#include "BKE_text.h" /* only for character utility funcs */
#include "WM_api.h"
diff --git a/source/blender/editors/space_console/console_report.c b/source/blender/editors/space_console/console_report.c
index 50829e4365c..51bffa5b981 100644
--- a/source/blender/editors/space_console/console_report.c
+++ b/source/blender/editors/space_console/console_report.c
@@ -36,13 +36,7 @@
#include "BLI_blenlib.h"
#include "BLI_dynstr.h"
-#include "BKE_utildefines.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
-#include "BKE_report.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/space_console/space_console.c b/source/blender/editors/space_console/space_console.c
index c04f8183bee..f5d913e9f32 100644
--- a/source/blender/editors/space_console/space_console.c
+++ b/source/blender/editors/space_console/space_console.c
@@ -40,7 +40,6 @@
#include "BLI_blenlib.h"
#include "BLI_math.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
diff --git a/source/blender/editors/space_file/file_draw.c b/source/blender/editors/space_file/file_draw.c
index 03ab42b467d..22c5270ae6d 100644
--- a/source/blender/editors/space_file/file_draw.c
+++ b/source/blender/editors/space_file/file_draw.c
@@ -38,11 +38,8 @@
#include "BIF_gl.h"
#include "BIF_glutil.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
-#include "BKE_screen.h"
#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "BLF_api.h"
diff --git a/source/blender/editors/space_file/filelist.c b/source/blender/editors/space_file/filelist.c
index 310e3d49bd9..2664082b20b 100644
--- a/source/blender/editors/space_file/filelist.c
+++ b/source/blender/editors/space_file/filelist.c
@@ -52,25 +52,13 @@
#endif
#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "BKE_global.h"
#include "BKE_library.h"
-#include "BKE_global.h"
#include "BKE_main.h"
#include "BKE_report.h"
#include "BLO_readfile.h"
#include "DNA_space_types.h"
-#include "DNA_ipo_types.h"
-#include "DNA_ID.h"
-#include "DNA_object_types.h"
-#include "DNA_listBase.h"
-#include "DNA_lamp_types.h"
-#include "DNA_material_types.h"
-#include "DNA_texture_types.h"
-#include "DNA_world_types.h"
-#include "DNA_scene_types.h"
-#include "DNA_userdef_types.h"
#include "ED_datafiles.h"
diff --git a/source/blender/editors/space_file/filesel.c b/source/blender/editors/space_file/filesel.c
index 086d4f9cce2..8783296f5c2 100644
--- a/source/blender/editors/space_file/filesel.c
+++ b/source/blender/editors/space_file/filesel.c
@@ -65,7 +65,6 @@
#include "BLO_readfile.h"
#include "BKE_context.h"
-#include "BKE_screen.h"
#include "BKE_global.h"
#include "BLF_api.h"
@@ -207,6 +206,13 @@ short ED_fileselect_set_params(SpaceFile *sfile)
params->filter = 0;
params->sort = FILE_SORT_ALPHA;
}
+
+
+ /* initialize the list with previous folders */
+ if (!sfile->folders_prev)
+ sfile->folders_prev = folderlist_new();
+ folderlist_pushdir(sfile->folders_prev, sfile->params->dir);
+
return 1;
}
diff --git a/source/blender/editors/space_file/fsmenu.c b/source/blender/editors/space_file/fsmenu.c
index 6603bba5a89..8211257da02 100644
--- a/source/blender/editors/space_file/fsmenu.c
+++ b/source/blender/editors/space_file/fsmenu.c
@@ -55,7 +55,6 @@
#define ID ID_
#include <CoreServices/CoreServices.h>
-#include "BKE_utildefines.h"
#endif
#ifdef __linux__
diff --git a/source/blender/editors/space_file/space_file.c b/source/blender/editors/space_file/space_file.c
index 34571278f13..2f023aeebc1 100644
--- a/source/blender/editors/space_file/space_file.c
+++ b/source/blender/editors/space_file/space_file.c
@@ -43,7 +43,6 @@
#include "BLI_rand.h"
#include "BLI_storage_types.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
diff --git a/source/blender/editors/space_file/writeimage.c b/source/blender/editors/space_file/writeimage.c
index 131e9fa0e14..39cd48b1d8a 100644
--- a/source/blender/editors/space_file/writeimage.c
+++ b/source/blender/editors/space_file/writeimage.c
@@ -43,7 +43,6 @@
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_image.h"
-#include "BKE_utildefines.h"
#include "RE_pipeline.h"
diff --git a/source/blender/editors/space_graph/graph_buttons.c b/source/blender/editors/space_graph/graph_buttons.c
index a6c57126cfe..4e7661b12ac 100644
--- a/source/blender/editors/space_graph/graph_buttons.c
+++ b/source/blender/editors/space_graph/graph_buttons.c
@@ -42,19 +42,11 @@
#include "BLI_editVert.h"
#include "BLI_rand.h"
-#include "BKE_action.h"
-#include "BKE_animsys.h"
#include "BKE_context.h"
-#include "BKE_curve.h"
-#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_object.h"
-#include "BKE_scene.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_graph/graph_draw.c b/source/blender/editors/space_graph/graph_draw.c
index 543bd8b9964..b9ef1d80ec3 100644
--- a/source/blender/editors/space_graph/graph_draw.c
+++ b/source/blender/editors/space_graph/graph_draw.c
@@ -46,15 +46,9 @@
#include "DNA_space_types.h"
#include "DNA_windowmanager_types.h"
-#include "BKE_animsys.h"
#include "BKE_context.h"
#include "BKE_curve.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_global.h"
-#include "BKE_key.h"
-#include "BKE_object.h"
-#include "BKE_screen.h"
#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_graph/graph_edit.c b/source/blender/editors/space_graph/graph_edit.c
index 6249edc1090..01378d9ef85 100644
--- a/source/blender/editors/space_graph/graph_edit.c
+++ b/source/blender/editors/space_graph/graph_edit.c
@@ -47,16 +47,10 @@
#include "RNA_define.h"
#include "RNA_enum_types.h"
-#include "BKE_action.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_key.h"
-#include "BKE_material.h"
#include "BKE_nla.h"
-#include "BKE_object.h"
#include "BKE_context.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "UI_interface.h"
#include "UI_view2d.h"
diff --git a/source/blender/editors/space_graph/graph_ops.c b/source/blender/editors/space_graph/graph_ops.c
index 5648eff17f0..66d07c3bd11 100644
--- a/source/blender/editors/space_graph/graph_ops.c
+++ b/source/blender/editors/space_graph/graph_ops.c
@@ -37,7 +37,6 @@
#include "BKE_context.h"
#include "BKE_sound.h"
-#include "BKE_utildefines.h"
#include "UI_view2d.h"
diff --git a/source/blender/editors/space_graph/graph_select.c b/source/blender/editors/space_graph/graph_select.c
index 6a9d8801e28..cdc8166f2d6 100644
--- a/source/blender/editors/space_graph/graph_select.c
+++ b/source/blender/editors/space_graph/graph_select.c
@@ -43,15 +43,9 @@
#include "RNA_access.h"
#include "RNA_define.h"
-#include "BKE_action.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_key.h"
-#include "BKE_material.h"
#include "BKE_nla.h"
-#include "BKE_object.h"
#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "UI_view2d.h"
diff --git a/source/blender/editors/space_graph/graph_utils.c b/source/blender/editors/space_graph/graph_utils.c
index ad96370e4fa..7b8bf8c7973 100644
--- a/source/blender/editors/space_graph/graph_utils.c
+++ b/source/blender/editors/space_graph/graph_utils.c
@@ -42,18 +42,8 @@
#include "BLI_editVert.h"
#include "BLI_rand.h"
-#include "BKE_animsys.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_curve.h"
-#include "BKE_customdata.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
-#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_graph/space_graph.c b/source/blender/editors/space_graph/space_graph.c
index 1e006ca38ec..ca372d74da6 100644
--- a/source/blender/editors/space_graph/space_graph.c
+++ b/source/blender/editors/space_graph/space_graph.c
@@ -43,7 +43,6 @@
#include "BKE_main.h"
#include "BKE_fcurve.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
#include "ED_anim_api.h"
diff --git a/source/blender/editors/space_image/image_buttons.c b/source/blender/editors/space_image/image_buttons.c
index 357aa9dacdf..40f048ceadb 100644
--- a/source/blender/editors/space_image/image_buttons.c
+++ b/source/blender/editors/space_image/image_buttons.c
@@ -45,15 +45,9 @@
#include "BKE_context.h"
#include "BKE_customdata.h"
#include "BKE_image.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_node.h"
-#include "BKE_packedFile.h"
-#include "BKE_paint.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "RE_pipeline.h"
diff --git a/source/blender/editors/space_image/image_draw.c b/source/blender/editors/space_image/image_draw.c
index e37e8d3d2be..6a77d4da067 100644
--- a/source/blender/editors/space_image/image_draw.c
+++ b/source/blender/editors/space_image/image_draw.c
@@ -45,11 +45,9 @@
#include "IMB_imbuf_types.h"
#include "BKE_context.h"
-#include "BKE_colortools.h"
#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_paint.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/space_image/image_header.c b/source/blender/editors/space_image/image_header.c
index 25208b61c28..5ccd479da96 100644
--- a/source/blender/editors/space_image/image_header.c
+++ b/source/blender/editors/space_image/image_header.c
@@ -39,11 +39,6 @@
#include "BLI_editVert.h"
#include "BKE_context.h"
-#include "BKE_customdata.h"
-#include "BKE_image.h"
-#include "BKE_mesh.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_image.h"
diff --git a/source/blender/editors/space_image/image_ops.c b/source/blender/editors/space_image/image_ops.c
index 4246516b5bc..be2782ab25c 100644
--- a/source/blender/editors/space_image/image_ops.c
+++ b/source/blender/editors/space_image/image_ops.c
@@ -41,7 +41,6 @@
#include "BKE_context.h"
#include "BKE_image.h"
#include "BKE_global.h"
-#include "BKE_image.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_node.h"
diff --git a/source/blender/editors/space_image/image_render.c b/source/blender/editors/space_image/image_render.c
index 18e42ce8797..be9d60a5adb 100644
--- a/source/blender/editors/space_image/image_render.c
+++ b/source/blender/editors/space_image/image_render.c
@@ -32,9 +32,7 @@
#include "DNA_space_types.h"
#include "BKE_context.h"
-#include "BKE_global.h"
#include "BKE_image.h"
-#include "BKE_screen.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c
index 9cd67793747..ca71b021630 100644
--- a/source/blender/editors/space_image/space_image.c
+++ b/source/blender/editors/space_image/space_image.c
@@ -45,7 +45,6 @@
#include "BKE_image.h"
#include "BKE_mesh.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
diff --git a/source/blender/editors/space_info/info_ops.c b/source/blender/editors/space_info/info_ops.c
index 62e82f83e58..202e79f2c2d 100644
--- a/source/blender/editors/space_info/info_ops.c
+++ b/source/blender/editors/space_info/info_ops.c
@@ -45,7 +45,6 @@
#include "BKE_main.h"
#include "BKE_packedFile.h"
#include "BKE_report.h"
-#include "BKE_screen.h"
#include "WM_api.h"
diff --git a/source/blender/editors/space_info/info_stats.c b/source/blender/editors/space_info/info_stats.c
index 1b5cf133749..0789114c054 100644
--- a/source/blender/editors/space_info/info_stats.c
+++ b/source/blender/editors/space_info/info_stats.c
@@ -35,7 +35,6 @@
#include "DNA_scene_types.h"
#include "BKE_anim.h"
-#include "BKE_context.h"
#include "BKE_displist.h"
#include "BKE_DerivedMesh.h"
#include "BKE_key.h"
@@ -226,7 +225,7 @@ static void stats_object_edit(Object *obedit, SceneStats *stats)
else if(obedit->type==OB_LATTICE) {
/* Lattice Edit */
Lattice *lt= obedit->data;
- Lattice *editlatt= lt->editlatt;
+ Lattice *editlatt= lt->editlatt->latt;
BPoint *bp;
int a;
diff --git a/source/blender/editors/space_info/space_info.c b/source/blender/editors/space_info/space_info.c
index 0b2d52d6e25..b47c8e8d189 100644
--- a/source/blender/editors/space_info/space_info.c
+++ b/source/blender/editors/space_info/space_info.c
@@ -37,10 +37,8 @@
#include "BLI_rand.h"
#include "BKE_context.h"
-#include "BKE_colortools.h"
#include "BKE_global.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_logic/logic_buttons.c b/source/blender/editors/space_logic/logic_buttons.c
index fc0955bf9d1..3787ac6213d 100644
--- a/source/blender/editors/space_logic/logic_buttons.c
+++ b/source/blender/editors/space_logic/logic_buttons.c
@@ -27,7 +27,6 @@
#include <string.h>
#include <stdio.h>
-#include "DNA_object_types.h"
#include "MEM_guardedalloc.h"
@@ -35,13 +34,7 @@
#include "BLI_math.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
-#include "BKE_mesh.h"
-#include "BKE_node.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_logic/logic_ops.c b/source/blender/editors/space_logic/logic_ops.c
index 2a179ac281c..4641fd2ce61 100644
--- a/source/blender/editors/space_logic/logic_ops.c
+++ b/source/blender/editors/space_logic/logic_ops.c
@@ -28,7 +28,6 @@
#include <stddef.h>
#include "DNA_object_types.h"
-#include "DNA_scene_types.h"
#include "DNA_sensor_types.h"
#include "DNA_controller_types.h"
#include "DNA_actuator_types.h"
diff --git a/source/blender/editors/space_logic/logic_window.c b/source/blender/editors/space_logic/logic_window.c
index 1387631870d..723227a36e4 100644
--- a/source/blender/editors/space_logic/logic_window.c
+++ b/source/blender/editors/space_logic/logic_window.c
@@ -50,10 +50,7 @@
#include "BKE_global.h"
#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_property.h"
-#include "BKE_screen.h"
#include "BKE_sca.h"
-#include "BKE_utildefines.h"
#include "ED_util.h"
diff --git a/source/blender/editors/space_logic/space_logic.c b/source/blender/editors/space_logic/space_logic.c
index 3f11c3e6bae..d4d07b7c14e 100644
--- a/source/blender/editors/space_logic/space_logic.c
+++ b/source/blender/editors/space_logic/space_logic.c
@@ -37,7 +37,6 @@
#include "BKE_context.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_nla/nla_buttons.c b/source/blender/editors/space_nla/nla_buttons.c
index ef46f8a274d..e31d7635f7a 100644
--- a/source/blender/editors/space_nla/nla_buttons.c
+++ b/source/blender/editors/space_nla/nla_buttons.c
@@ -40,19 +40,9 @@
#include "BLI_editVert.h"
#include "BLI_rand.h"
-#include "BKE_animsys.h"
#include "BKE_nla.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_curve.h"
-#include "BKE_customdata.h"
-#include "BKE_depsgraph.h"
-#include "BKE_fcurve.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
-#include "BKE_scene.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_nla/nla_channels.c b/source/blender/editors/space_nla/nla_channels.c
index cf98decb825..3e0ec5afac2 100644
--- a/source/blender/editors/space_nla/nla_channels.c
+++ b/source/blender/editors/space_nla/nla_channels.c
@@ -46,7 +46,6 @@
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_anim_api.h"
#include "ED_keyframes_edit.h"
diff --git a/source/blender/editors/space_nla/nla_draw.c b/source/blender/editors/space_nla/nla_draw.c
index 049337d688c..2568baf0f0a 100644
--- a/source/blender/editors/space_nla/nla_draw.c
+++ b/source/blender/editors/space_nla/nla_draw.c
@@ -44,12 +44,10 @@
#include "BLI_rand.h"
#include "BLI_dlrbTree.h"
-#include "BKE_animsys.h"
#include "BKE_fcurve.h"
#include "BKE_nla.h"
#include "BKE_context.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_anim_api.h"
#include "ED_keyframes_draw.h"
diff --git a/source/blender/editors/space_nla/nla_edit.c b/source/blender/editors/space_nla/nla_edit.c
index 38c6ecdca22..247987cda9f 100644
--- a/source/blender/editors/space_nla/nla_edit.c
+++ b/source/blender/editors/space_nla/nla_edit.c
@@ -39,16 +39,13 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_animsys.h"
#include "BKE_action.h"
#include "BKE_fcurve.h"
#include "BKE_nla.h"
#include "BKE_context.h"
-#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_report.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_anim_api.h"
#include "ED_keyframes_edit.h"
diff --git a/source/blender/editors/space_nla/nla_ops.c b/source/blender/editors/space_nla/nla_ops.c
index f1974a8ec4f..9c7eee39e29 100644
--- a/source/blender/editors/space_nla/nla_ops.c
+++ b/source/blender/editors/space_nla/nla_ops.c
@@ -37,10 +37,7 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_animsys.h"
-#include "BKE_nla.h"
#include "BKE_context.h"
-#include "BKE_report.h"
#include "BKE_screen.h"
#include "ED_anim_api.h"
diff --git a/source/blender/editors/space_nla/nla_select.c b/source/blender/editors/space_nla/nla_select.c
index 55463580115..f49897e79fe 100644
--- a/source/blender/editors/space_nla/nla_select.c
+++ b/source/blender/editors/space_nla/nla_select.c
@@ -38,10 +38,8 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_animsys.h"
#include "BKE_nla.h"
#include "BKE_context.h"
-#include "BKE_report.h"
#include "BKE_screen.h"
#include "ED_anim_api.h"
diff --git a/source/blender/editors/space_nla/space_nla.c b/source/blender/editors/space_nla/space_nla.c
index 64933e3c11a..92c5ef6c410 100644
--- a/source/blender/editors/space_nla/space_nla.c
+++ b/source/blender/editors/space_nla/space_nla.c
@@ -38,15 +38,10 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_animsys.h"
-#include "BKE_action.h"
-#include "BKE_nla.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_main.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_anim_api.h"
#include "ED_markers.h"
diff --git a/source/blender/editors/space_node/drawnode.c b/source/blender/editors/space_node/drawnode.c
index 171f56c63fb..a74b070e6cd 100644
--- a/source/blender/editors/space_node/drawnode.c
+++ b/source/blender/editors/space_node/drawnode.c
@@ -43,16 +43,9 @@
#include "BKE_context.h"
#include "BKE_curve.h"
-#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_material.h"
-#include "BKE_node.h"
-#include "BKE_object.h"
-#include "BKE_texture.h"
-#include "BKE_text.h"
-#include "BKE_utildefines.h"
#include "CMP_node.h"
#include "SHD_node.h"
diff --git a/source/blender/editors/space_node/node_buttons.c b/source/blender/editors/space_node/node_buttons.c
index 41cf689407b..65925b1e9a2 100644
--- a/source/blender/editors/space_node/node_buttons.c
+++ b/source/blender/editors/space_node/node_buttons.c
@@ -41,14 +41,8 @@
#include "BLI_rand.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_idprop.h"
-#include "BKE_object.h"
#include "BKE_node.h"
-#include "BKE_global.h"
-#include "BKE_scene.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_node/node_draw.c b/source/blender/editors/space_node/node_draw.c
index 5eb6d9cf94a..0e33dff82a6 100644
--- a/source/blender/editors/space_node/node_draw.c
+++ b/source/blender/editors/space_node/node_draw.c
@@ -44,16 +44,7 @@
#include "BKE_context.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
-#include "BKE_image.h"
-#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_material.h"
-#include "BKE_node.h"
-#include "BKE_object.h"
-#include "BKE_texture.h"
-#include "BKE_text.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/space_node/node_edit.c b/source/blender/editors/space_node/node_edit.c
index f4876aba9ad..9fb4facdcc8 100644
--- a/source/blender/editors/space_node/node_edit.c
+++ b/source/blender/editors/space_node/node_edit.c
@@ -41,7 +41,6 @@
#include "DNA_scene_types.h"
#include "BKE_context.h"
-#include "BKE_colortools.h"
#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_library.h"
@@ -51,8 +50,6 @@
#include "BKE_paint.h"
#include "BKE_texture.h"
#include "BKE_report.h"
-#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_node/node_header.c b/source/blender/editors/space_node/node_header.c
index 3ed719eccc0..d98bb766e3a 100644
--- a/source/blender/editors/space_node/node_header.c
+++ b/source/blender/editors/space_node/node_header.c
@@ -42,7 +42,6 @@
#include "BKE_screen.h"
#include "BKE_node.h"
#include "BKE_main.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
diff --git a/source/blender/editors/space_node/node_ops.c b/source/blender/editors/space_node/node_ops.c
index 937a524367e..46cd8515f23 100644
--- a/source/blender/editors/space_node/node_ops.c
+++ b/source/blender/editors/space_node/node_ops.c
@@ -30,7 +30,6 @@
#include "DNA_scene_types.h"
#include "BKE_context.h"
-#include "BKE_node.h"
#include "ED_screen.h"
#include "ED_transform.h"
diff --git a/source/blender/editors/space_node/node_select.c b/source/blender/editors/space_node/node_select.c
index 2cccbf17bea..ec08cdf07ac 100644
--- a/source/blender/editors/space_node/node_select.c
+++ b/source/blender/editors/space_node/node_select.c
@@ -32,9 +32,6 @@
#include "DNA_scene_types.h"
#include "BKE_context.h"
-#include "BKE_node.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "BLI_rect.h"
diff --git a/source/blender/editors/space_node/node_state.c b/source/blender/editors/space_node/node_state.c
index e12730f4317..b4f09f960d6 100644
--- a/source/blender/editors/space_node/node_state.c
+++ b/source/blender/editors/space_node/node_state.c
@@ -33,7 +33,6 @@
#include "BKE_context.h"
#include "BKE_node.h"
-#include "BKE_global.h"
#include "BLI_rect.h"
diff --git a/source/blender/editors/space_node/space_node.c b/source/blender/editors/space_node/space_node.c
index 5b681958a3a..9f50245551e 100644
--- a/source/blender/editors/space_node/space_node.c
+++ b/source/blender/editors/space_node/space_node.c
@@ -40,10 +40,8 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
-#include "BKE_node.h"
#include "ED_render.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_outliner/outliner.c b/source/blender/editors/space_outliner/outliner.c
index c4a8a0309bd..fc08f3390c9 100644
--- a/source/blender/editors/space_outliner/outliner.c
+++ b/source/blender/editors/space_outliner/outliner.c
@@ -62,7 +62,6 @@
#include "IMB_imbuf_types.h"
#include "BKE_animsys.h"
-#include "BKE_constraint.h"
#include "BKE_context.h"
#include "BKE_deform.h"
#include "BKE_depsgraph.h"
@@ -71,14 +70,10 @@
#include "BKE_group.h"
#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_material.h"
#include "BKE_modifier.h"
-#include "BKE_object.h"
#include "BKE_report.h"
-#include "BKE_screen.h"
#include "BKE_scene.h"
#include "BKE_sequencer.h"
-#include "BKE_utildefines.h"
#include "ED_armature.h"
#include "ED_object.h"
@@ -988,8 +983,6 @@ static TreeElement *outliner_add_element(SpaceOops *soops, ListBase *lb, void *i
else {
if((seq->strip) && (seq->strip->stripdata))
te->name= seq->strip->stripdata->name;
- else if((seq->strip) && (seq->strip->tstripdata) && (seq->strip->tstripdata->ibuf))
- te->name= seq->strip->tstripdata->ibuf->name;
else
te->name= "SQ None";
}
diff --git a/source/blender/editors/space_outliner/space_outliner.c b/source/blender/editors/space_outliner/space_outliner.c
index 1c86eb4df70..829538b9174 100644
--- a/source/blender/editors/space_outliner/space_outliner.c
+++ b/source/blender/editors/space_outliner/space_outliner.c
@@ -36,11 +36,8 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
-#include "BKE_texture.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_script/script_edit.c b/source/blender/editors/space_script/script_edit.c
index 6f41f235b7b..fe5ecd10eb1 100644
--- a/source/blender/editors/space_script/script_edit.c
+++ b/source/blender/editors/space_script/script_edit.c
@@ -35,10 +35,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
-#include "BKE_report.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/space_script/script_header.c b/source/blender/editors/space_script/script_header.c
index 9c23d1b8131..4fc6aa78f66 100644
--- a/source/blender/editors/space_script/script_header.c
+++ b/source/blender/editors/space_script/script_header.c
@@ -35,7 +35,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_screen.h"
#include "ED_screen.h"
#include "ED_types.h"
diff --git a/source/blender/editors/space_script/script_ops.c b/source/blender/editors/space_script/script_ops.c
index 15140f080e7..e392f8d6e12 100644
--- a/source/blender/editors/space_script/script_ops.c
+++ b/source/blender/editors/space_script/script_ops.c
@@ -38,8 +38,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/space_script/space_script.c b/source/blender/editors/space_script/space_script.c
index 0aba1df47e9..f93ddc6efbe 100644
--- a/source/blender/editors/space_script/space_script.c
+++ b/source/blender/editors/space_script/space_script.c
@@ -36,7 +36,6 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
diff --git a/source/blender/editors/space_sequencer/sequencer_add.c b/source/blender/editors/space_sequencer/sequencer_add.c
index b00fcfcc22a..c426cd9fdc2 100644
--- a/source/blender/editors/space_sequencer/sequencer_add.c
+++ b/source/blender/editors/space_sequencer/sequencer_add.c
@@ -47,13 +47,8 @@
#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_image.h"
-#include "BKE_library.h"
#include "BKE_main.h"
-#include "BKE_plugin_types.h"
#include "BKE_sequencer.h"
-#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_sequencer/sequencer_buttons.c b/source/blender/editors/space_sequencer/sequencer_buttons.c
index a2aa7e649b9..4394e334614 100644
--- a/source/blender/editors/space_sequencer/sequencer_buttons.c
+++ b/source/blender/editors/space_sequencer/sequencer_buttons.c
@@ -33,10 +33,7 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_main.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_sequencer/sequencer_draw.c b/source/blender/editors/space_sequencer/sequencer_draw.c
index 27f45628492..1abc2fc3398 100644
--- a/source/blender/editors/space_sequencer/sequencer_draw.c
+++ b/source/blender/editors/space_sequencer/sequencer_draw.c
@@ -43,9 +43,7 @@
#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_plugin_types.h"
#include "BKE_sequencer.h"
-#include "BKE_scene.h"
#include "BKE_utildefines.h"
#include "BKE_sound.h"
diff --git a/source/blender/editors/space_sequencer/sequencer_edit.c b/source/blender/editors/space_sequencer/sequencer_edit.c
index 27e9645a4d8..590856803cc 100644
--- a/source/blender/editors/space_sequencer/sequencer_edit.c
+++ b/source/blender/editors/space_sequencer/sequencer_edit.c
@@ -43,19 +43,12 @@
#include "BLI_storage_types.h"
-#include "DNA_ipo_types.h"
#include "DNA_scene_types.h"
#include "DNA_userdef_types.h"
#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_image.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
-#include "BKE_plugin_types.h"
#include "BKE_sequencer.h"
-#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "BKE_report.h"
#include "BKE_sound.h"
diff --git a/source/blender/editors/space_sequencer/sequencer_ops.c b/source/blender/editors/space_sequencer/sequencer_ops.c
index ea1c05148a7..6d1c6aa45a8 100644
--- a/source/blender/editors/space_sequencer/sequencer_ops.c
+++ b/source/blender/editors/space_sequencer/sequencer_ops.c
@@ -37,9 +37,6 @@
#include "BLI_math.h"
#include "BLI_blenlib.h"
-#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
diff --git a/source/blender/editors/space_sequencer/sequencer_select.c b/source/blender/editors/space_sequencer/sequencer_select.c
index 449204900e8..ecc7aa0c630 100644
--- a/source/blender/editors/space_sequencer/sequencer_select.c
+++ b/source/blender/editors/space_sequencer/sequencer_select.c
@@ -43,12 +43,7 @@
#include "DNA_scene_types.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
#include "BKE_sequencer.h"
-#include "BKE_scene.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
diff --git a/source/blender/editors/space_sound/sound_header.c b/source/blender/editors/space_sound/sound_header.c
index acc9645af9d..fbf6d8c85c9 100644
--- a/source/blender/editors/space_sound/sound_header.c
+++ b/source/blender/editors/space_sound/sound_header.c
@@ -35,7 +35,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_screen.h"
#include "ED_screen.h"
#include "ED_types.h"
diff --git a/source/blender/editors/space_sound/space_sound.c b/source/blender/editors/space_sound/space_sound.c
index 174d686cf73..905e1d6cdd9 100644
--- a/source/blender/editors/space_sound/space_sound.c
+++ b/source/blender/editors/space_sound/space_sound.c
@@ -29,7 +29,6 @@
#include <string.h>
#include <stdio.h>
-#include "DNA_sound_types.h"
#include "DNA_scene_types.h"
#include "MEM_guardedalloc.h"
@@ -38,7 +37,6 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
diff --git a/source/blender/editors/space_text/space_text.c b/source/blender/editors/space_text/space_text.c
index bbea5bce226..c8c19a0bc93 100644
--- a/source/blender/editors/space_text/space_text.c
+++ b/source/blender/editors/space_text/space_text.c
@@ -38,7 +38,6 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_screen.h"
diff --git a/source/blender/editors/space_text/text_draw.c b/source/blender/editors/space_text/text_draw.c
index 3c05d9c176b..926ccc1914a 100644
--- a/source/blender/editors/space_text/text_draw.c
+++ b/source/blender/editors/space_text/text_draw.c
@@ -44,8 +44,6 @@
#include "DNA_userdef_types.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_main.h"
#include "BKE_suggestions.h"
#include "BKE_text.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/editors/space_text/text_header.c b/source/blender/editors/space_text/text_header.c
index 3b1c882ff2f..4b37994c39e 100644
--- a/source/blender/editors/space_text/text_header.c
+++ b/source/blender/editors/space_text/text_header.c
@@ -49,12 +49,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_library.h"
-#include "BKE_main.h"
-#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_text.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_text/text_ops.c b/source/blender/editors/space_text/text_ops.c
index 087f83182fb..0e0a9592104 100644
--- a/source/blender/editors/space_text/text_ops.c
+++ b/source/blender/editors/space_text/text_ops.c
@@ -34,7 +34,6 @@
#include "MEM_guardedalloc.h"
-#include "DNA_constraint_types.h"
#include "DNA_text_types.h"
#include "DNA_userdef_types.h"
@@ -42,12 +41,10 @@
#include "PIL_time.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
#include "BKE_global.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_report.h"
-#include "BKE_suggestions.h"
#include "BKE_text.h"
#include "WM_api.h"
diff --git a/source/blender/editors/space_time/space_time.c b/source/blender/editors/space_time/space_time.c
index b73c08e6542..d65422ce327 100644
--- a/source/blender/editors/space_time/space_time.c
+++ b/source/blender/editors/space_time/space_time.c
@@ -31,7 +31,6 @@
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
-#include "DNA_particle_types.h"
#include "MEM_guardedalloc.h"
@@ -42,7 +41,6 @@
#include "BKE_global.h"
#include "BKE_screen.h"
#include "BKE_pointcache.h"
-#include "BKE_utildefines.h"
#include "ED_anim_api.h"
#include "ED_keyframes_draw.h"
diff --git a/source/blender/editors/space_time/time_ops.c b/source/blender/editors/space_time/time_ops.c
index 68036d0ea33..95e8a724d32 100644
--- a/source/blender/editors/space_time/time_ops.c
+++ b/source/blender/editors/space_time/time_ops.c
@@ -36,7 +36,6 @@
#include "BLI_blenlib.h"
#include "BKE_context.h"
-#include "BKE_utildefines.h"
#include "ED_screen.h"
diff --git a/source/blender/editors/space_view3d/drawanimviz.c b/source/blender/editors/space_view3d/drawanimviz.c
index a0437625cb2..2de51c2dd92 100644
--- a/source/blender/editors/space_view3d/drawanimviz.c
+++ b/source/blender/editors/space_view3d/drawanimviz.c
@@ -46,17 +46,6 @@
#include "BKE_animsys.h"
#include "BKE_action.h"
-#include "BKE_armature.h"
-#include "BKE_constraint.h"
-#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_global.h"
-#include "BKE_main.h"
-#include "BKE_modifier.h"
-#include "BKE_nla.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
diff --git a/source/blender/editors/space_view3d/drawarmature.c b/source/blender/editors/space_view3d/drawarmature.c
index e6f4b2b9f8f..3222f2396a4 100644
--- a/source/blender/editors/space_view3d/drawarmature.c
+++ b/source/blender/editors/space_view3d/drawarmature.c
@@ -48,15 +48,9 @@
#include "BKE_animsys.h"
#include "BKE_action.h"
#include "BKE_armature.h"
-#include "BKE_constraint.h"
-#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
#include "BKE_global.h"
-#include "BKE_main.h"
#include "BKE_modifier.h"
#include "BKE_nla.h"
-#include "BKE_object.h"
#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_view3d/drawmesh.c b/source/blender/editors/space_view3d/drawmesh.c
index f0e2f33491c..372ac976342 100644
--- a/source/blender/editors/space_view3d/drawmesh.c
+++ b/source/blender/editors/space_view3d/drawmesh.c
@@ -42,17 +42,12 @@
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_view3d_types.h"
+#include "DNA_object_types.h"
-#include "BKE_bmfont.h"
-#include "BKE_displist.h"
#include "BKE_DerivedMesh.h"
#include "BKE_effect.h"
-#include "BKE_global.h"
#include "BKE_image.h"
-#include "BKE_main.h"
#include "BKE_material.h"
-#include "BKE_mesh.h"
-#include "BKE_object.h"
#include "BKE_paint.h"
#include "BKE_property.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/editors/space_view3d/drawobject.c b/source/blender/editors/space_view3d/drawobject.c
index 741b7848543..e23276cecad 100644
--- a/source/blender/editors/space_view3d/drawobject.c
+++ b/source/blender/editors/space_view3d/drawobject.c
@@ -49,12 +49,10 @@
#include "BLI_rand.h"
#include "BKE_anim.h" //for the where_on_path function
-#include "BKE_curve.h"
#include "BKE_constraint.h" // for the get_constraint_target function
#include "BKE_DerivedMesh.h"
#include "BKE_deform.h"
#include "BKE_displist.h"
-#include "BKE_effect.h"
#include "BKE_font.h"
#include "BKE_global.h"
#include "BKE_image.h"
@@ -68,9 +66,6 @@
#include "BKE_paint.h"
#include "BKE_particle.h"
#include "BKE_pointcache.h"
-#include "BKE_property.h"
-#include "BKE_softbody.h"
-#include "BKE_smoke.h"
#include "BKE_unit.h"
#include "BKE_utildefines.h"
#include "smoke_API.h"
@@ -1362,10 +1357,10 @@ void lattice_foreachScreenVert(ViewContext *vc, void (*func)(void *userData, BPo
{
Object *obedit= vc->obedit;
Lattice *lt= obedit->data;
- BPoint *bp = lt->editlatt->def;
+ BPoint *bp = lt->editlatt->latt->def;
DispList *dl = find_displist(&obedit->disp, DL_VERTS);
float *co = dl?dl->verts:NULL;
- int i, N = lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ int i, N = lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
short s[2] = {IS_CLIPPED, 0};
ED_view3d_local_clipping(vc->rv3d, obedit->obmat); /* for local clipping lookups */
@@ -1413,7 +1408,7 @@ static void drawlattice(Scene *scene, View3D *v3d, Object *ob)
dl= find_displist(&ob->disp, DL_VERTS);
if(is_edit) {
- lt= lt->editlatt;
+ lt= lt->editlatt->latt;
cpack(0x004000);
diff --git a/source/blender/editors/space_view3d/drawvolume.c b/source/blender/editors/space_view3d/drawvolume.c
index 7ff74c82876..406435bb149 100644
--- a/source/blender/editors/space_view3d/drawvolume.c
+++ b/source/blender/editors/space_view3d/drawvolume.c
@@ -65,7 +65,6 @@
#include "BKE_particle.h"
#include "BKE_property.h"
#include "BKE_smoke.h"
-#include "BKE_unit.h"
#include "BKE_utildefines.h"
#include "smoke_API.h"
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index c04c3498cb5..ac845ec7ea3 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -38,12 +38,8 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_global.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
-#include "BKE_image.h"
#include "ED_screen.h"
#include "ED_object.h"
diff --git a/source/blender/editors/space_view3d/view3d_buttons.c b/source/blender/editors/space_view3d/view3d_buttons.c
index f4ae87c5b60..e6c8ff2c268 100644
--- a/source/blender/editors/space_view3d/view3d_buttons.c
+++ b/source/blender/editors/space_view3d/view3d_buttons.c
@@ -47,19 +47,13 @@
#include "BLI_rand.h"
#include "BKE_action.h"
-#include "BKE_brush.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
-#include "BKE_idprop.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
-#include "BKE_scene.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BKE_deform.h"
#include "BIF_gl.h"
@@ -261,8 +255,8 @@ static void v3d_editvertex_buts(const bContext *C, uiLayout *layout, View3D *v3d
BPoint *bp;
int a;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
- bp= lt->editlatt->def;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
+ bp= lt->editlatt->latt->def;
while(a--) {
if(bp->f1 & SELECT) {
add_v3_v3(median, bp->vec);
@@ -463,8 +457,8 @@ static void v3d_editvertex_buts(const bContext *C, uiLayout *layout, View3D *v3d
BPoint *bp;
int a;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
- bp= lt->editlatt->def;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
+ bp= lt->editlatt->latt->def;
while(a--) {
if(bp->f1 & SELECT) {
add_v3_v3(bp->vec, median);
diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c
index 2be746a72ab..840cedd8360 100644
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@ -50,14 +50,11 @@
#include "BKE_context.h"
#include "BKE_customdata.h"
#include "BKE_image.h"
-#include "BKE_ipo.h"
#include "BKE_key.h"
#include "BKE_object.h"
#include "BKE_global.h"
#include "BKE_paint.h"
#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BKE_unit.h"
#include "RE_pipeline.h" // make_stars
diff --git a/source/blender/editors/space_view3d/view3d_edit.c b/source/blender/editors/space_view3d/view3d_edit.c
index e71899e40f7..d1c5429c1a8 100644
--- a/source/blender/editors/space_view3d/view3d_edit.c
+++ b/source/blender/editors/space_view3d/view3d_edit.c
@@ -41,16 +41,11 @@
#include "BLI_math.h"
#include "BLI_rand.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
#include "BKE_object.h"
-#include "BKE_global.h"
#include "BKE_paint.h"
#include "BKE_report.h"
#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c
index 761ef436d48..aa7e0e51cae 100644
--- a/source/blender/editors/space_view3d/view3d_header.c
+++ b/source/blender/editors/space_view3d/view3d_header.c
@@ -31,28 +31,20 @@
#include <stdlib.h>
#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
#include "RNA_access.h"
#include "MEM_guardedalloc.h"
-#include "BKE_action.h"
-#include "BKE_brush.h"
#include "BKE_context.h"
-#include "BKE_curve.h"
#include "BKE_depsgraph.h"
-#include "BKE_displist.h"
#include "BKE_effect.h"
-#include "BKE_global.h"
-#include "BKE_image.h"
-#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_paint.h"
-#include "BKE_particle.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h" /* for VECCOPY */
#include "ED_mesh.h"
#include "ED_util.h"
diff --git a/source/blender/editors/space_view3d/view3d_intern.h b/source/blender/editors/space_view3d/view3d_intern.h
index fd78c8298e9..173d8256269 100644
--- a/source/blender/editors/space_view3d/view3d_intern.h
+++ b/source/blender/editors/space_view3d/view3d_intern.h
@@ -102,9 +102,9 @@ void draw_motion_paths_cleanup(Scene *scene, View3D *v3d, struct ARegion *ar);
/* drawobject.c */
void draw_object(Scene *scene, struct ARegion *ar, View3D *v3d, Base *base, int flag);
-int draw_glsl_material(Scene *scene, Object *ob, View3D *v3d, int dt);
-void draw_object_instance(Scene *scene, View3D *v3d, RegionView3D *rv3d, Object *ob, int dt, int outline);
-void draw_object_backbufsel(Scene *scene, View3D *v3d, RegionView3D *rv3d, Object *ob);
+int draw_glsl_material(Scene *scene, struct Object *ob, View3D *v3d, int dt);
+void draw_object_instance(Scene *scene, View3D *v3d, RegionView3D *rv3d, struct Object *ob, int dt, int outline);
+void draw_object_backbufsel(Scene *scene, View3D *v3d, RegionView3D *rv3d, struct Object *ob);
void drawaxes(float size, int flag, char drawtype);
void view3d_cached_text_draw_begin(void);
@@ -117,7 +117,7 @@ void view3d_cached_text_draw_end(View3D *v3d, ARegion *ar, int depth_write, floa
int draw_armature(Scene *scene, View3D *v3d, ARegion *ar, Base *base, int dt, int flag);
/* drawmesh.c */
-void draw_mesh_textured(Scene *scene, View3D *v3d, RegionView3D *rv3d, Object *ob, struct DerivedMesh *dm, int faceselect);
+void draw_mesh_textured(Scene *scene, View3D *v3d, RegionView3D *rv3d, struct Object *ob, struct DerivedMesh *dm, int faceselect);
/* view3d_draw.c */
void view3d_main_area_draw(const struct bContext *C, struct ARegion *ar);
@@ -154,7 +154,7 @@ int boundbox_clip(RegionView3D *rv3d, float obmat[][4], struct BoundBox *bb);
void centerview(struct ARegion *ar, View3D *v3d);
-void smooth_view(struct bContext *C, Object *, Object *, float *ofs, float *quat, float *dist, float *lens);
+void smooth_view(struct bContext *C, struct Object *, struct Object *, float *ofs, float *quat, float *dist, float *lens);
void setwinmatrixview3d(ARegion *ar, View3D *v3d, rctf *rect); /* rect: for picking */
void setviewmatrixview3d(Scene *scene, View3D *v3d, RegionView3D *rv3d);
@@ -174,7 +174,7 @@ void view3d_toolshelf_register(struct ARegionType *art);
void view3d_tool_props_register(struct ARegionType *art);
/* view3d_snap.c */
-int minmax_verts(Object *obedit, float *min, float *max);
+int minmax_verts(struct Object *obedit, float *min, float *max);
void VIEW3D_OT_snap_selected_to_grid(struct wmOperatorType *ot);
void VIEW3D_OT_snap_selected_to_cursor(struct wmOperatorType *ot);
diff --git a/source/blender/editors/space_view3d/view3d_ops.c b/source/blender/editors/space_view3d/view3d_ops.c
index 22fab5887ee..d230085716d 100644
--- a/source/blender/editors/space_view3d/view3d_ops.c
+++ b/source/blender/editors/space_view3d/view3d_ops.c
@@ -40,9 +40,6 @@
#include "BLI_math.h"
#include "BLI_blenlib.h"
-#include "BKE_context.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "RNA_access.h"
diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c
index fc3dea5fd22..0b1bdf00078 100644
--- a/source/blender/editors/space_view3d/view3d_select.c
+++ b/source/blender/editors/space_view3d/view3d_select.c
@@ -46,15 +46,8 @@
#include "BLI_rand.h"
#include "BLI_linklist.h"
-#include "BKE_action.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_object.h"
-#include "BKE_global.h"
#include "BKE_paint.h"
-#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_view3d/view3d_snap.c b/source/blender/editors/space_view3d/view3d_snap.c
index 9beb809e0dd..a4e893a6181 100644
--- a/source/blender/editors/space_view3d/view3d_snap.c
+++ b/source/blender/editors/space_view3d/view3d_snap.c
@@ -44,20 +44,13 @@
#include "BLI_editVert.h"
#include "BLI_linklist.h"
-#include "BKE_action.h"
#include "BKE_armature.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_depsgraph.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_displist.h"
-#include "BKE_global.h"
#include "BKE_lattice.h"
#include "BKE_main.h"
-#include "BKE_mesh.h"
-#include "BKE_modifier.h"
#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "WM_api.h"
#include "WM_types.h"
@@ -152,8 +145,8 @@ static void special_transvert_update(Scene *scene, Object *obedit)
else if(obedit->type==OB_LATTICE) {
Lattice *lt= obedit->data;
- if(lt->editlatt->flag & LT_OUTSIDE)
- outside_lattice(lt->editlatt);
+ if(lt->editlatt->latt->flag & LT_OUTSIDE)
+ outside_lattice(lt->editlatt->latt);
}
}
}
@@ -379,9 +372,9 @@ static void make_trans_verts(Object *obedit, float *min, float *max, int mode)
else if(obedit->type==OB_LATTICE) {
Lattice *lt= obedit->data;
- bp= lt->editlatt->def;
+ bp= lt->editlatt->latt->def;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
tv=transvmain= MEM_callocN(a*sizeof(TransVert), "maketransverts curve");
diff --git a/source/blender/editors/space_view3d/view3d_toolbar.c b/source/blender/editors/space_view3d/view3d_toolbar.c
index ac6d61fce18..7cb6921902c 100644
--- a/source/blender/editors/space_view3d/view3d_toolbar.c
+++ b/source/blender/editors/space_view3d/view3d_toolbar.c
@@ -41,19 +41,10 @@
#include "BLI_editVert.h"
#include "BLI_rand.h"
-#include "BKE_action.h"
-#include "BKE_brush.h"
#include "BKE_context.h"
-#include "BKE_curve.h"
-#include "BKE_customdata.h"
-#include "BKE_depsgraph.h"
#include "BKE_idprop.h"
-#include "BKE_mesh.h"
-#include "BKE_object.h"
#include "BKE_global.h"
-#include "BKE_scene.h"
#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BIF_gl.h"
diff --git a/source/blender/editors/space_view3d/view3d_view.c b/source/blender/editors/space_view3d/view3d_view.c
index b2bc071122f..aad91e74af9 100644
--- a/source/blender/editors/space_view3d/view3d_view.c
+++ b/source/blender/editors/space_view3d/view3d_view.c
@@ -52,8 +52,6 @@
#include "BKE_main.h"
#include "BKE_report.h"
#include "BKE_scene.h"
-#include "BKE_screen.h"
-#include "BKE_utildefines.h"
#include "BKE_depsgraph.h" /* for fly mode updating */
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c
index 2550da13ad7..a450222dd95 100644
--- a/source/blender/editors/transform/transform.c
+++ b/source/blender/editors/transform/transform.c
@@ -63,7 +63,6 @@
//#include "BIF_editsima.h"
//#include "BIF_editparticle.h"
-#include "BKE_action.h"
#include "BKE_nla.h"
//#include "BKE_bad_level_calls.h"/* popmenu and error */
#include "BKE_bmesh.h"
@@ -72,8 +71,6 @@
#include "BKE_global.h"
#include "BKE_particle.h"
#include "BKE_pointcache.h"
-#include "BKE_utildefines.h"
-#include "BKE_context.h"
#include "BKE_unit.h"
//#include "BSE_view.h"
diff --git a/source/blender/editors/transform/transform_constraints.c b/source/blender/editors/transform/transform_constraints.c
index 0177d458868..3abd2dc25c1 100644
--- a/source/blender/editors/transform/transform_constraints.c
+++ b/source/blender/editors/transform/transform_constraints.c
@@ -50,7 +50,6 @@
#include "BIF_glutil.h"
#include "BKE_context.h"
-#include "BKE_global.h"
#include "BKE_utildefines.h"
#include "ED_image.h"
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index aaf69e17f38..a82037ead11 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -47,37 +47,26 @@
#include "DNA_sequence_types.h"
#include "DNA_view3d_types.h"
#include "DNA_constraint_types.h"
+#include "DNA_scene_types.h"
+#include "DNA_meshdata_types.h"
#include "BKE_action.h"
#include "BKE_armature.h"
-#include "BKE_blender.h"
-#include "BKE_cloth.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_constraint.h"
#include "BKE_depsgraph.h"
-#include "BKE_displist.h"
-#include "BKE_DerivedMesh.h"
-#include "BKE_effect.h"
-#include "BKE_font.h"
#include "BKE_fcurve.h"
#include "BKE_global.h"
-#include "BKE_lattice.h"
#include "BKE_key.h"
#include "BKE_main.h"
-#include "BKE_mball.h"
-#include "BKE_mesh.h"
#include "BKE_modifier.h"
#include "BKE_nla.h"
#include "BKE_object.h"
#include "BKE_particle.h"
#include "BKE_sequencer.h"
#include "BKE_pointcache.h"
-#include "BKE_softbody.h"
-#include "BKE_utildefines.h"
#include "BKE_bmesh.h"
-#include "BKE_context.h"
-#include "BKE_report.h"
#include "BKE_scene.h"
#include "BIF_gl.h"
@@ -1543,7 +1532,7 @@ static void createTransCurveVerts(bContext *C, TransInfo *t)
static void createTransLatticeVerts(bContext *C, TransInfo *t)
{
- Lattice *latt = ((Lattice*)t->obedit->data)->editlatt;
+ Lattice *latt = ((Lattice*)t->obedit->data)->editlatt->latt;
TransData *td = NULL;
BPoint *bp;
float mtx[3][3], smtx[3][3];
diff --git a/source/blender/editors/transform/transform_generics.c b/source/blender/editors/transform/transform_generics.c
index 1b87a6f4ae7..56a4eb846c0 100644
--- a/source/blender/editors/transform/transform_generics.c
+++ b/source/blender/editors/transform/transform_generics.c
@@ -38,9 +38,12 @@
#include "DNA_armature_types.h"
#include "DNA_lattice_types.h"
#include "DNA_screen_types.h"
-#include "DNA_scene_types.h"
#include "DNA_space_types.h"
+#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
+#include "DNA_meshdata_types.h"
#include "DNA_view3d_types.h"
+#include "DNA_modifier_types.h"
#include "RNA_access.h"
@@ -56,21 +59,13 @@
#include "BKE_animsys.h"
#include "BKE_action.h"
#include "BKE_armature.h"
-#include "BKE_cloth.h"
#include "BKE_curve.h"
#include "BKE_depsgraph.h"
#include "BKE_displist.h"
-#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
-#include "BKE_global.h"
-#include "BKE_group.h"
#include "BKE_lattice.h"
-#include "BKE_key.h"
#include "BKE_mesh.h"
-#include "BKE_modifier.h"
#include "BKE_nla.h"
-#include "BKE_object.h"
-#include "BKE_utildefines.h"
#include "BKE_context.h"
#include "ED_anim_api.h"
@@ -664,7 +659,7 @@ void recalcData(TransInfo *t)
Lattice *la= t->obedit->data;
DAG_id_flush_update(t->obedit->data, OB_RECALC_DATA); /* sets recalc flags */
- if(la->editlatt->flag & LT_OUTSIDE) outside_lattice(la->editlatt);
+ if(la->editlatt->latt->flag & LT_OUTSIDE) outside_lattice(la->editlatt->latt);
}
else if (t->obedit->type == OB_MESH) {
EditMesh *em = ((Mesh*)t->obedit->data)->edit_mesh;
diff --git a/source/blender/editors/transform/transform_manipulator.c b/source/blender/editors/transform/transform_manipulator.c
index 2a717f8b4d9..27c3f056b9b 100644
--- a/source/blender/editors/transform/transform_manipulator.c
+++ b/source/blender/editors/transform/transform_manipulator.c
@@ -51,15 +51,11 @@
#include "RNA_access.h"
#include "BKE_action.h"
-#include "BKE_armature.h"
#include "BKE_context.h"
#include "BKE_global.h"
-#include "BKE_lattice.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
#include "BKE_particle.h"
#include "BKE_pointcache.h"
-#include "BKE_utildefines.h"
#include "BLI_math.h"
#include "BLI_editVert.h"
@@ -383,9 +379,9 @@ int calc_manipulator_stats(const bContext *C)
BPoint *bp;
Lattice *lt= obedit->data;
- bp= lt->editlatt->def;
+ bp= lt->editlatt->latt->def;
- a= lt->editlatt->pntsu*lt->editlatt->pntsv*lt->editlatt->pntsw;
+ a= lt->editlatt->latt->pntsu*lt->editlatt->latt->pntsv*lt->editlatt->latt->pntsw;
while(a--) {
if(bp->f1 & SELECT) {
calc_tw_center(scene, bp->vec);
diff --git a/source/blender/editors/transform/transform_ops.c b/source/blender/editors/transform/transform_ops.c
index da454d1f03d..76866d9a0dc 100644
--- a/source/blender/editors/transform/transform_ops.c
+++ b/source/blender/editors/transform/transform_ops.c
@@ -32,7 +32,6 @@
#include "BLI_math.h"
-#include "BKE_utildefines.h"
#include "BKE_context.h"
#include "BKE_global.h"
diff --git a/source/blender/editors/transform/transform_orientations.c b/source/blender/editors/transform/transform_orientations.c
index 8451b0c154a..210ab0d45a8 100644
--- a/source/blender/editors/transform/transform_orientations.c
+++ b/source/blender/editors/transform/transform_orientations.c
@@ -34,7 +34,6 @@
#include "DNA_screen_types.h"
#include "DNA_view3d_types.h"
-#include "BKE_global.h"
#include "BKE_utildefines.h"
#include "BKE_armature.h"
#include "BKE_context.h"
diff --git a/source/blender/editors/transform/transform_snap.c b/source/blender/editors/transform/transform_snap.c
index 5ad7e1fa061..742001cae74 100644
--- a/source/blender/editors/transform/transform_snap.c
+++ b/source/blender/editors/transform/transform_snap.c
@@ -61,8 +61,6 @@
//#include "BIF_drawimage.h"
//#include "BIF_editmesh.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "BKE_DerivedMesh.h"
#include "BKE_object.h"
#include "BKE_anim.h" /* for duplis */
diff --git a/source/blender/editors/util/ed_util.c b/source/blender/editors/util/ed_util.c
index 3491c1b4df2..0d3d8a48b60 100644
--- a/source/blender/editors/util/ed_util.c
+++ b/source/blender/editors/util/ed_util.c
@@ -38,7 +38,6 @@
#include "BLI_editVert.h"
#include "BKE_context.h"
-#include "BKE_global.h"
#include "BKE_main.h"
#include "ED_armature.h"
diff --git a/source/blender/editors/util/editmode_undo.c b/source/blender/editors/util/editmode_undo.c
index 4b8d5c1df67..290c8a64881 100644
--- a/source/blender/editors/util/editmode_undo.c
+++ b/source/blender/editors/util/editmode_undo.c
@@ -40,12 +40,10 @@
#include "BKE_context.h"
#include "BKE_depsgraph.h"
#include "BKE_global.h"
-#include "BKE_object.h"
#include "BLI_blenlib.h"
#include "BLI_dynstr.h"
-#include "BKE_utildefines.h"
#include "ED_mesh.h"
diff --git a/source/blender/editors/util/numinput.c b/source/blender/editors/util/numinput.c
index a5c0bfeb73a..868aa8ac6af 100644
--- a/source/blender/editors/util/numinput.c
+++ b/source/blender/editors/util/numinput.c
@@ -30,8 +30,6 @@
#include <math.h> /* fabs */
#include <stdio.h> /* for sprintf */
-#include "BKE_global.h" /* for G */
-#include "BKE_utildefines.h" /* ABS */
#include "WM_types.h"
diff --git a/source/blender/editors/util/undo.c b/source/blender/editors/util/undo.c
index 1618ef88ba4..283e2b49f0d 100644
--- a/source/blender/editors/util/undo.c
+++ b/source/blender/editors/util/undo.c
@@ -38,16 +38,11 @@
#include "BKE_blender.h"
#include "BKE_context.h"
-#include "BKE_depsgraph.h"
-#include "BKE_global.h"
-#include "BKE_object.h"
-#include "BKE_text.h"
#include "BLI_blenlib.h"
#include "BLI_editVert.h"
#include "BLI_dynstr.h"
-#include "BKE_utildefines.h"
#include "ED_armature.h"
#include "ED_particle.h"
diff --git a/source/blender/editors/uvedit/uvedit_draw.c b/source/blender/editors/uvedit/uvedit_draw.c
index 335e17b8796..f1f2dd8548a 100644
--- a/source/blender/editors/uvedit/uvedit_draw.c
+++ b/source/blender/editors/uvedit/uvedit_draw.c
@@ -35,10 +35,8 @@
#include "DNA_screen_types.h"
#include "DNA_space_types.h"
-#include "BKE_customdata.h"
#include "BKE_DerivedMesh.h"
#include "BKE_mesh.h"
-#include "BKE_object.h"
#include "BKE_utildefines.h"
#include "BLI_math.h"
diff --git a/source/blender/editors/uvedit/uvedit_ops.c b/source/blender/editors/uvedit/uvedit_ops.c
index cbc0eb41f84..c2918f0faae 100644
--- a/source/blender/editors/uvedit/uvedit_ops.c
+++ b/source/blender/editors/uvedit/uvedit_ops.c
@@ -48,7 +48,6 @@
#include "BKE_library.h"
#include "BKE_mesh.h"
#include "BKE_report.h"
-#include "BKE_utildefines.h"
#include "ED_image.h"
#include "ED_mesh.h"
diff --git a/source/blender/editors/uvedit/uvedit_unwrap_ops.c b/source/blender/editors/uvedit/uvedit_unwrap_ops.c
index e7c89c1fd1b..54ee7db9556 100644
--- a/source/blender/editors/uvedit/uvedit_unwrap_ops.c
+++ b/source/blender/editors/uvedit/uvedit_unwrap_ops.c
@@ -41,10 +41,8 @@
#include "BKE_context.h"
#include "BKE_customdata.h"
#include "BKE_depsgraph.h"
-#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_mesh.h"
-#include "BKE_utildefines.h"
#include "BLI_math.h"
#include "BLI_edgehash.h"
diff --git a/source/blender/gpu/intern/gpu_buffers.c b/source/blender/gpu/intern/gpu_buffers.c
index bc90ddb23b7..daef5de0ce6 100644
--- a/source/blender/gpu/intern/gpu_buffers.c
+++ b/source/blender/gpu/intern/gpu_buffers.c
@@ -45,7 +45,6 @@
#include "DNA_meshdata_types.h"
#include "BKE_DerivedMesh.h"
-#include "BKE_utildefines.h"
#include "DNA_userdef_types.h"
diff --git a/source/blender/gpu/intern/gpu_codegen.c b/source/blender/gpu/intern/gpu_codegen.c
index a6250650787..d596f573682 100644
--- a/source/blender/gpu/intern/gpu_codegen.c
+++ b/source/blender/gpu/intern/gpu_codegen.c
@@ -36,7 +36,6 @@
#include "DNA_customdata_types.h"
#include "DNA_image_types.h"
-#include "DNA_listBase.h"
#include "DNA_material_types.h"
#include "BLI_dynstr.h"
@@ -44,8 +43,6 @@
#include "BLI_ghash.h"
#include "BLI_heap.h"
-#include "BKE_global.h"
-#include "BKE_utildefines.h"
#include "GPU_material.h"
#include "GPU_extensions.h"
diff --git a/source/blender/gpu/intern/gpu_draw.c b/source/blender/gpu/intern/gpu_draw.c
index 488eea40500..4c477db627e 100644
--- a/source/blender/gpu/intern/gpu_draw.c
+++ b/source/blender/gpu/intern/gpu_draw.c
@@ -36,7 +36,6 @@
#include "BLI_math.h"
-#include "DNA_image_types.h"
#include "DNA_lamp_types.h"
#include "DNA_material_types.h"
#include "DNA_meshdata_types.h"
@@ -45,7 +44,6 @@
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_smoke_types.h"
-#include "DNA_userdef_types.h"
#include "DNA_view3d_types.h"
#include "MEM_guardedalloc.h"
diff --git a/source/blender/gpu/intern/gpu_extensions.c b/source/blender/gpu/intern/gpu_extensions.c
index a96920aa839..75038698643 100644
--- a/source/blender/gpu/intern/gpu_extensions.c
+++ b/source/blender/gpu/intern/gpu_extensions.c
@@ -32,13 +32,10 @@
#include "GL/glew.h"
-#include "DNA_listBase.h"
#include "DNA_image_types.h"
-#include "DNA_userdef_types.h"
#include "MEM_guardedalloc.h"
-#include "BKE_image.h"
#include "BKE_global.h"
#include "BKE_utildefines.h"
diff --git a/source/blender/gpu/intern/gpu_material.c b/source/blender/gpu/intern/gpu_material.c
index f5898c8d0be..9dc881617b7 100644
--- a/source/blender/gpu/intern/gpu_material.c
+++ b/source/blender/gpu/intern/gpu_material.c
@@ -34,14 +34,10 @@
#include "MEM_guardedalloc.h"
-#include "DNA_image_types.h"
#include "DNA_lamp_types.h"
-#include "DNA_listBase.h"
#include "DNA_material_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
-#include "DNA_texture_types.h"
-#include "DNA_view3d_types.h"
#include "DNA_world_types.h"
#include "BKE_anim.h"
diff --git a/source/blender/imbuf/intern/thumbs.c b/source/blender/imbuf/intern/thumbs.c
index dcbd6df7ced..1624e9c2b01 100644
--- a/source/blender/imbuf/intern/thumbs.c
+++ b/source/blender/imbuf/intern/thumbs.c
@@ -29,7 +29,6 @@
#include <stdio.h>
-#include "BKE_global.h"
#include "BKE_utildefines.h"
#include "BLI_blenlib.h"
#include "MEM_guardedalloc.h"
diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h
index a013177e1b8..973ba896100 100644
--- a/source/blender/makesdna/DNA_curve_types.h
+++ b/source/blender/makesdna/DNA_curve_types.h
@@ -157,6 +157,11 @@ typedef struct EditNurb {
/* index data for shape keys */
struct GHash *keyindex;
+
+ /* shape key being edited */
+ int shapenr;
+
+ char pad[4];
} EditNurb;
typedef struct Curve {
diff --git a/source/blender/makesdna/DNA_lattice_types.h b/source/blender/makesdna/DNA_lattice_types.h
index 3a0fcb3c38c..94fc9fefb66 100644
--- a/source/blender/makesdna/DNA_lattice_types.h
+++ b/source/blender/makesdna/DNA_lattice_types.h
@@ -36,6 +36,14 @@ struct Ipo;
struct Key;
struct MDeformVert;
+typedef struct EditLatt {
+ struct Lattice *latt;
+
+ int shapenr;
+
+ char pad[4];
+} EditLatt;
+
typedef struct Lattice {
ID id;
@@ -58,7 +66,7 @@ typedef struct Lattice {
float *latticedata;
float latmat[4][4];
- struct Lattice *editlatt;
+ struct EditLatt *editlatt;
} Lattice;
/* ***************** LATTICE ********************* */
diff --git a/source/blender/makesdna/DNA_sequence_types.h b/source/blender/makesdna/DNA_sequence_types.h
index f9d482b2159..d51dec97351 100644
--- a/source/blender/makesdna/DNA_sequence_types.h
+++ b/source/blender/makesdna/DNA_sequence_types.h
@@ -44,15 +44,6 @@ typedef struct StripElem {
char name[80];
} StripElem;
-typedef struct TStripElem {
- struct ImBuf *ibuf;
- struct ImBuf *ibuf_comp;
- struct TStripElem *se1, *se2, *se3;
- short ok;
- short flag;
- int nr;
-} TStripElem;
-
typedef struct StripCrop {
int top;
int bottom;
@@ -95,11 +86,6 @@ typedef struct Strip {
StripCrop *crop;
StripTransform *transform;
StripColorBalance *color_balance;
- TStripElem *tstripdata;
- TStripElem *tstripdata_startstill;
- TStripElem *tstripdata_endstill;
- struct ImBuf *ibuf_startstill;
- struct ImBuf *ibuf_endstill;
} Strip;
diff --git a/source/blender/makesrna/intern/rna_lattice.c b/source/blender/makesrna/intern/rna_lattice.c
index c5132844016..9f979582165 100644
--- a/source/blender/makesrna/intern/rna_lattice.c
+++ b/source/blender/makesrna/intern/rna_lattice.c
@@ -79,8 +79,8 @@ static void rna_Lattice_points_begin(CollectionPropertyIterator *iter, PointerRN
Lattice *lt= (Lattice*)ptr->data;
int tot= lt->pntsu*lt->pntsv*lt->pntsw;
- if(lt->editlatt && lt->editlatt->def)
- rna_iterator_array_begin(iter, (void*)lt->editlatt->def, sizeof(BPoint), tot, 0, NULL);
+ if(lt->editlatt && lt->editlatt->latt->def)
+ rna_iterator_array_begin(iter, (void*)lt->editlatt->latt->def, sizeof(BPoint), tot, 0, NULL);
else if(lt->def)
rna_iterator_array_begin(iter, (void*)lt->def, sizeof(BPoint), tot, 0, NULL);
else
@@ -111,7 +111,7 @@ static void rna_Lattice_update_size(Main *bmain, Scene *scene, PointerRNA *ptr)
if(ob->data == lt) {
resizelattice(lt, newu, newv, neww, ob);
if(lt->editlatt)
- resizelattice(lt->editlatt, newu, newv, neww, ob);
+ resizelattice(lt->editlatt->latt, newu, newv, neww, ob);
break;
}
}
@@ -120,7 +120,7 @@ static void rna_Lattice_update_size(Main *bmain, Scene *scene, PointerRNA *ptr)
if(!ob) {
resizelattice(lt, newu, newv, neww, NULL);
if(lt->editlatt)
- resizelattice(lt->editlatt, newu, newv, neww, NULL);
+ resizelattice(lt->editlatt->latt, newu, newv, neww, NULL);
}
rna_Lattice_update_data(bmain, scene, ptr);
@@ -136,26 +136,39 @@ static void rna_Lattice_outside_set(PointerRNA *ptr, int value)
outside_lattice(lt);
if(lt->editlatt) {
- if(value) lt->editlatt->flag |= LT_OUTSIDE;
- else lt->editlatt->flag &= ~LT_OUTSIDE;
+ if(value) lt->editlatt->latt->flag |= LT_OUTSIDE;
+ else lt->editlatt->latt->flag &= ~LT_OUTSIDE;
- outside_lattice(lt->editlatt);
+ outside_lattice(lt->editlatt->latt);
}
}
+static int rna_Lattice_size_editable(PointerRNA *ptr)
+{
+ Lattice *lt= (Lattice*)ptr->data;
+
+ return lt->key == NULL;
+}
+
static void rna_Lattice_points_u_set(PointerRNA *ptr, int value)
{
- ((Lattice*)ptr->data)->opntsu= CLAMPIS(value, 1, 64);
+ Lattice *lt= (Lattice*)ptr->data;
+
+ lt->opntsu= CLAMPIS(value, 1, 64);
}
static void rna_Lattice_points_v_set(PointerRNA *ptr, int value)
{
- ((Lattice*)ptr->data)->opntsv= CLAMPIS(value, 1, 64);
+ Lattice *lt= (Lattice*)ptr->data;
+
+ lt->opntsv= CLAMPIS(value, 1, 64);
}
static void rna_Lattice_points_w_set(PointerRNA *ptr, int value)
{
- ((Lattice*)ptr->data)->opntsw= CLAMPIS(value, 1, 64);
+ Lattice *lt= (Lattice*)ptr->data;
+
+ lt->opntsw= CLAMPIS(value, 1, 64);
}
static void rna_Lattice_vg_name_set(PointerRNA *ptr, const char *value)
@@ -164,7 +177,7 @@ static void rna_Lattice_vg_name_set(PointerRNA *ptr, const char *value)
strcpy(lt->vgroup, value);
if(lt->editlatt)
- strcpy(lt->editlatt->vgroup, value);
+ strcpy(lt->editlatt->latt->vgroup, value);
}
@@ -216,22 +229,25 @@ static void rna_def_lattice(BlenderRNA *brna)
RNA_def_property_int_sdna(prop, NULL, "pntsu");
RNA_def_property_int_funcs(prop, NULL, "rna_Lattice_points_u_set", NULL);
RNA_def_property_range(prop, 1, 64);
- RNA_def_property_ui_text(prop, "U", "Points in U direction");
+ RNA_def_property_ui_text(prop, "U", "Points in U direction (can't be changed when there are shape keys)");
RNA_def_property_update(prop, 0, "rna_Lattice_update_size");
+ RNA_def_property_editable_func(prop, "rna_Lattice_size_editable");
prop= RNA_def_property(srna, "points_v", PROP_INT, PROP_NONE);
RNA_def_property_int_sdna(prop, NULL, "pntsv");
RNA_def_property_int_funcs(prop, NULL, "rna_Lattice_points_v_set", NULL);
RNA_def_property_range(prop, 1, 64);
- RNA_def_property_ui_text(prop, "V", "Points in V direction");
+ RNA_def_property_ui_text(prop, "V", "Points in V direction (can't be changed when there are shape keys)");
RNA_def_property_update(prop, 0, "rna_Lattice_update_size");
+ RNA_def_property_editable_func(prop, "rna_Lattice_size_editable");
prop= RNA_def_property(srna, "points_w", PROP_INT, PROP_NONE);
RNA_def_property_int_sdna(prop, NULL, "pntsw");
RNA_def_property_int_funcs(prop, NULL, "rna_Lattice_points_w_set", NULL);
RNA_def_property_range(prop, 1, 64);
- RNA_def_property_ui_text(prop, "W", "Points in W direction");
+ RNA_def_property_ui_text(prop, "W", "Points in W direction (can't be changed when there are shape keys)");
RNA_def_property_update(prop, 0, "rna_Lattice_update_size");
+ RNA_def_property_editable_func(prop, "rna_Lattice_size_editable");
prop= RNA_def_property(srna, "interpolation_type_u", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_sdna(prop, NULL, "typeu");
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c
index 51e2fc38014..ee38505d792 100644
--- a/source/blender/makesrna/intern/rna_object.c
+++ b/source/blender/makesrna/intern/rna_object.c
@@ -128,6 +128,8 @@ EnumPropertyItem object_type_curve_items[] = {
#include "ED_mesh.h"
#include "ED_object.h"
#include "ED_particle.h"
+#include "ED_curve.h"
+#include "ED_lattice.h"
static void rna_Object_internal_update(Main *bmain, Scene *scene, PointerRNA *ptr)
{
@@ -182,12 +184,24 @@ void rna_Object_internal_update_data(Main *bmain, Scene *scene, PointerRNA *ptr)
void rna_Object_active_shape_update(Main *bmain, Scene *scene, PointerRNA *ptr)
{
Object *ob= ptr->id.data;
- int editmode= (scene->obedit == ob && ob->type == OB_MESH);
- if(editmode) {
+ if(scene->obedit == ob) {
/* exit/enter editmode to get new shape */
- load_editMesh(scene, ob);
- make_editMesh(scene, ob);
+ switch(ob->type) {
+ case OB_MESH:
+ load_editMesh(scene, ob);
+ make_editMesh(scene, ob);
+ break;
+ case OB_CURVE:
+ case OB_SURF:
+ load_editNurb(ob);
+ make_editNurb(ob);
+ break;
+ case OB_LATTICE:
+ load_editLatt(ob);
+ make_editLatt(ob);
+ break;
+ }
}
rna_Object_internal_update_data(bmain, scene, ptr);
diff --git a/source/blender/makesrna/intern/rna_particle.c b/source/blender/makesrna/intern/rna_particle.c
index a8ea4adb9b9..700b817f7ce 100644
--- a/source/blender/makesrna/intern/rna_particle.c
+++ b/source/blender/makesrna/intern/rna_particle.c
@@ -32,6 +32,7 @@
#include "rna_internal.h"
#include "DNA_modifier_types.h"
+#include "DNA_cloth_types.h"
#include "DNA_particle_types.h"
#include "DNA_object_force.h"
#include "DNA_object_types.h"
diff --git a/source/blender/makesrna/intern/rna_scene_api.c b/source/blender/makesrna/intern/rna_scene_api.c
index c3b60514d2a..8ec210f2046 100644
--- a/source/blender/makesrna/intern/rna_scene_api.c
+++ b/source/blender/makesrna/intern/rna_scene_api.c
@@ -47,9 +47,11 @@
-static void rna_Scene_set_frame(Scene *scene, int frame)
+static void rna_Scene_set_frame(Scene *scene, int frame, float subframe)
{
scene->r.cfra= frame;
+ scene->r.subframe= subframe;
+
CLAMP(scene->r.cfra, MINAFRAME, MAXFRAME);
scene_update_for_newframe(G.main, scene, (1<<20) - 1);
@@ -107,6 +109,7 @@ void RNA_api_scene(StructRNA *srna)
RNA_def_function_ui_description(func, "Set scene frame updating all objects immediately.");
parm= RNA_def_int(func, "frame", 0, MINAFRAME, MAXFRAME, "", "Frame number to set.", MINAFRAME, MAXFRAME);
RNA_def_property_flag(parm, PROP_REQUIRED);
+ parm= RNA_def_float(func, "subframe", 0.0, 0.0, 1.0, "", "Sub-frame time, between 0.0 and 1.0", 0.0, 1.0);
func= RNA_def_function(srna, "update", "rna_Scene_update_tagged");
RNA_def_function_ui_description(func, "Update data tagged to be updated from previous access to data or operators.");
diff --git a/source/blender/makesrna/intern/rna_ui.c b/source/blender/makesrna/intern/rna_ui.c
index 9ace62996ea..e13483bf87a 100644
--- a/source/blender/makesrna/intern/rna_ui.c
+++ b/source/blender/makesrna/intern/rna_ui.c
@@ -545,10 +545,11 @@ static void rna_def_ui_layout(BlenderRNA *brna)
prop= RNA_def_property(srna, "operator_context", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_items(prop, operator_context_items);
RNA_def_property_enum_funcs(prop, "rna_UILayout_op_context_get", "rna_UILayout_op_context_set", NULL);
-
+
prop= RNA_def_property(srna, "enabled", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_funcs(prop, "rna_UILayout_enabled_get", "rna_UILayout_enabled_set");
-
+ RNA_def_property_ui_text(prop, "Enabled", "When false, this (sub)layout is greyed out.");
+
#if 0
prop= RNA_def_property(srna, "red_alert", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_funcs(prop, "rna_UILayout_red_alert_get", "rna_UILayout_red_alert_set");
@@ -565,10 +566,11 @@ static void rna_def_ui_layout(BlenderRNA *brna)
prop= RNA_def_property(srna, "scale_x", PROP_FLOAT, PROP_UNSIGNED);
RNA_def_property_float_funcs(prop, "rna_UILayout_scale_x_get", "rna_UILayout_scale_x_set", NULL);
-
+ RNA_def_property_ui_text(prop, "Scale X", "Scale factor along the X for items in this (sub)layout.");
+
prop= RNA_def_property(srna, "scale_y", PROP_FLOAT, PROP_UNSIGNED);
RNA_def_property_float_funcs(prop, "rna_UILayout_scale_y_get", "rna_UILayout_scale_y_set", NULL);
-
+ RNA_def_property_ui_text(prop, "Scale Y", "Scale factor along the Y for items in this (sub)layout.");
RNA_api_ui_layout(srna);
}
@@ -710,7 +712,7 @@ static void rna_def_menu(BlenderRNA *brna)
/* poll */
func= RNA_def_function(srna, "poll", NULL);
- RNA_def_function_ui_description(func, "If this method returns a non-null output, then the menu can be drawn.");
+ RNA_def_function_ui_description(func, "If this method returns a non-null output, then the menu can be drawn. This is a static method, hence it is not possible to use 'self' in it.");
RNA_def_function_flag(func, FUNC_NO_SELF|FUNC_REGISTER|FUNC_REGISTER_OPTIONAL);
RNA_def_function_return(func, RNA_def_boolean(func, "visible", 1, "", ""));
parm= RNA_def_pointer(func, "context", "Context", "", "");
diff --git a/source/blender/makesrna/intern/rna_ui_api.c b/source/blender/makesrna/intern/rna_ui_api.c
index 1c751433e31..032aa731e0f 100644
--- a/source/blender/makesrna/intern/rna_ui_api.c
+++ b/source/blender/makesrna/intern/rna_ui_api.c
@@ -127,11 +127,13 @@ void RNA_api_ui_layout(StructRNA *srna)
func= RNA_def_function(srna, "row", "uiLayoutRow");
parm= RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in.");
RNA_def_function_return(func, parm);
+ RNA_def_function_ui_description(func, "Sub-layout. Items placed in this sublayout are placed next to each other in a row.");
RNA_def_boolean(func, "align", 0, "", "Align buttons to each other.");
-
+
func= RNA_def_function(srna, "column", "uiLayoutColumn");
parm= RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in.");
RNA_def_function_return(func, parm);
+ RNA_def_function_ui_description(func, "Sub-layout. Items placed in this sublayout are placed under each other in a column.");
RNA_def_boolean(func, "align", 0, "", "Align buttons to each other.");
func= RNA_def_function(srna, "column_flow", "uiLayoutColumnFlow");
@@ -144,7 +146,8 @@ void RNA_api_ui_layout(StructRNA *srna)
func= RNA_def_function(srna, "box", "uiLayoutBox");
parm= RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in.");
RNA_def_function_return(func, parm);
-
+ RNA_def_function_ui_description(func, "Sublayout. Items placed in this sublayout are placed under each other in a column and are surrounded by a box.");
+
/* split layout */
func= RNA_def_function(srna, "split", "uiLayoutSplit");
parm= RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in.");
@@ -154,6 +157,7 @@ void RNA_api_ui_layout(StructRNA *srna)
/* items */
func= RNA_def_function(srna, "prop", "rna_uiItemR");
+ RNA_def_function_ui_description(func, "Item. Exposes an RNA item and places it into the layout.");
api_ui_item_rna_common(func);
api_ui_item_common(func);
RNA_def_boolean(func, "expand", 0, "", "Expand button to show more detail.");
@@ -192,6 +196,7 @@ void RNA_api_ui_layout(StructRNA *srna)
parm= RNA_def_pointer(func, "properties", "OperatorProperties", "", "Operator properties to fill in, return when 'properties' is set to true.");
RNA_def_property_flag(parm, PROP_REQUIRED|PROP_RNAPTR);
RNA_def_function_return(func, parm);
+ RNA_def_function_ui_description(func, "Item. Places a button into the layout to call an Operator.");
/* func= RNA_def_function(srna, "operator_enum", "uiItemEnumO_string");
api_ui_item_op_common(func);
@@ -241,6 +246,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_property_flag(parm, PROP_REQUIRED); */
func= RNA_def_function(srna, "label", "uiItemL");
+ RNA_def_function_ui_description(func, "Item. Display text in the layout.");
api_ui_item_common(func);
func= RNA_def_function(srna, "menu", "uiItemM");
@@ -250,6 +256,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_property_flag(parm, PROP_REQUIRED);
func= RNA_def_function(srna, "separator", "uiItemS");
+ RNA_def_function_ui_description(func, "Item. Inserts empty space into the layout between items.");
/* context */
func= RNA_def_function(srna, "set_context_pointer", "uiLayoutSetContextPointer");
@@ -306,6 +313,7 @@ void RNA_api_ui_layout(StructRNA *srna)
func= RNA_def_function(srna, "template_modifier", "uiTemplateModifier");
RNA_def_function_flag(func, FUNC_USE_CONTEXT);
+ RNA_def_function_ui_description(func, "Layout . Generates the UI layout for modifiers.");
parm= RNA_def_pointer(func, "data", "Modifier", "", "Modifier data.");
RNA_def_property_flag(parm, PROP_REQUIRED|PROP_RNAPTR|PROP_NEVER_NULL);
parm= RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in.");
@@ -313,6 +321,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_boolean(func, "compact", 0, "", "Show a smaller version of the template, split on two lines.");
func= RNA_def_function(srna, "template_constraint", "uiTemplateConstraint");
+ RNA_def_function_ui_description(func, "Layout . Generates the UI layout for constraints.");
parm= RNA_def_pointer(func, "data", "Constraint", "", "Constraint data.");
RNA_def_property_flag(parm, PROP_REQUIRED|PROP_RNAPTR|PROP_NEVER_NULL);
parm= RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in.");
@@ -320,30 +329,36 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_boolean(func, "compact", 0, "", "Show a smaller version of the template, split on two lines.");
func= RNA_def_function(srna, "template_preview", "uiTemplatePreview");
+ RNA_def_function_ui_description(func, "Item. A preview window for materials, textures, lamps, etc.");
parm= RNA_def_pointer(func, "id", "ID", "", "ID datablock.");
RNA_def_property_flag(parm, PROP_REQUIRED);
RNA_def_pointer(func, "parent", "ID", "", "ID datablock.");
RNA_def_pointer(func, "slot", "TextureSlot", "", "Texture slot.");
func= RNA_def_function(srna, "template_curve_mapping", "uiTemplateCurveMapping");
+ RNA_def_function_ui_description(func, "Item. A curve mapping widget used for e.g falloff curves for lamps.");
api_ui_item_rna_common(func);
RNA_def_enum(func, "type", curve_type_items, 0, "Type", "Type of curves to display.");
RNA_def_boolean(func, "levels", 0, "", "Show black/white levels.");
RNA_def_boolean(func, "brush", 0, "", "Show brush options.");
func= RNA_def_function(srna, "template_color_ramp", "uiTemplateColorRamp");
+ RNA_def_function_ui_description(func, "Item. A color ramp widget.");
api_ui_item_rna_common(func);
RNA_def_boolean(func, "expand", 0, "", "Expand button to show more detail.");
func= RNA_def_function(srna, "template_histogram", "uiTemplateHistogram");
+ RNA_def_function_ui_description(func, "Item. A histogramm widget to analyze imaga data.");
api_ui_item_rna_common(func);
RNA_def_boolean(func, "expand", 0, "", "Expand button to show more detail.");
func= RNA_def_function(srna, "template_waveform", "uiTemplateWaveform");
+ RNA_def_function_ui_description(func, "Item. A waveform widget to analyze imaga data.");
api_ui_item_rna_common(func);
RNA_def_boolean(func, "expand", 0, "", "Expand button to show more detail.");
func= RNA_def_function(srna, "template_vectorscope", "uiTemplateVectorscope");
+ RNA_def_function_ui_description(func, "Item. A vectorscope widget to analyze imaga data.");
api_ui_item_rna_common(func);
RNA_def_boolean(func, "expand", 0, "", "Expand button to show more detail.");
@@ -357,6 +372,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_property_flag(parm, PROP_REQUIRED);
func= RNA_def_function(srna, "template_color_wheel", "uiTemplateColorWheel");
+ RNA_def_function_ui_description(func, "Item. A color wheel widget to pick colors.");
api_ui_item_rna_common(func);
RNA_def_boolean(func, "value_slider", 0, "", "Display the value slider to the right of the color wheel");
RNA_def_boolean(func, "lock", 0, "", "Lock the color wheel display to value 1.0 regardless of actual color");
@@ -374,6 +390,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_property_flag(parm, PROP_REQUIRED);
func= RNA_def_function(srna, "template_image", "uiTemplateImage");
+ RNA_def_function_ui_description(func, "Item(s). User interface for selecting images and their source paths.");
RNA_def_function_flag(func, FUNC_USE_CONTEXT);
api_ui_item_rna_common(func);
parm= RNA_def_pointer(func, "image_user", "ImageUser", "", "");
@@ -381,6 +398,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_boolean(func, "compact", 0, "", "Use more compact layout.");
func= RNA_def_function(srna, "template_list", "uiTemplateList");
+ RNA_def_function_ui_description(func, "Item. A list widget to display data. e.g. vertexgroups.");
RNA_def_function_flag(func, FUNC_USE_CONTEXT);
parm= RNA_def_pointer(func, "data", "AnyType", "", "Data from which to take property.");
RNA_def_property_flag(parm, PROP_REQUIRED|PROP_RNAPTR);
diff --git a/source/blender/makesrna/rna_cleanup/rna_booleans.txt b/source/blender/makesrna/rna_cleanup/rna_booleans.txt
deleted file mode 100644
index 51be6427c88..00000000000
--- a/source/blender/makesrna/rna_cleanup/rna_booleans.txt
+++ /dev/null
@@ -1,1330 +0,0 @@
-ActionActuator.continue_last_frame -> use_continue_last_frame: boolean Restore last frame when switching on/off, otherwise play from the start each time
-ActionGroup.expanded -> show_expanded: boolean Action Group is expanded
-
-Actuator.expanded -> show_expanded: boolean Set actuator expanded in the user interface
-AnimData.nla_enabled -> use_nla: boolean NLA stack is evaluated when evaluating this block
-AnimVizMotionPaths.highlight_keyframes -> show_keyframe_highlight: boolean Emphasize position of keyframes on Motion Paths
-AnimVizMotionPaths.search_all_action_keyframes -> show_keyframe_action_all: boolean For bone motion paths, search whole Action for keyframes instead of in group with matching name only (is slower)
-AnimVizMotionPaths.show_frame_numbers -> show_frame_numbers: boolean Show frame numbers on Motion Paths
-AnimVizMotionPaths.show_keyframe_numbers -> show_keyframe_numbers: boolean Show frame numbers of Keyframes on Motion Paths
-AnimVizOnionSkinning.only_selected -> show_only_selected: boolean For Pose-Mode drawing, only draw ghosts for selected bones
-Area.show_menus -> show_menus: boolean Show menus in the header
-AreaLamp.dither -> use_dither: boolean Use 2x2 dithering for sampling (Constant Jittered sampling)
-AreaLamp.jitter -> use_jitter: boolean Use noise for sampling (Constant Jittered sampling)
-AreaLamp.only_shadow -> use_only_shadow: boolean Causes light to cast shadows only without illuminating objects
-AreaLamp.shadow_layer -> use_shadow_layer: boolean Causes only objects on the same layer to cast shadows
-AreaLamp.umbra -> use_umbra: boolean Emphasize parts that are fully shadowed (Constant Jittered sampling)
-Armature.auto_ik -> use_auto_ik: boolean Add temporaral IK constraints while grabbing bones in Pose Mode
-Armature.deform_envelope -> use_deform_envelopes: boolean Enable Bone Envelopes when defining deform
-Armature.deform_quaternion -> use_deform_preserve_volume: boolean Deform rotation interpolation with quaternions
-Armature.deform_vertexgroups -> use_deform_vertex_groups: boolean Enable Vertex Groups when defining deform
-Armature.delay_deform -> use_deform_delay: boolean Don't deform children when manipulating bones in Pose Mode
-Armature.draw_axes -> show_axes: boolean Draw bone axes
-Armature.draw_custom_bone_shapes -> show_bone_custom_shapes: boolean Draw bones with their custom shapes
-Armature.draw_group_colors -> show_group_colors: boolean Draw bone group colors
-Armature.draw_names -> show_names: boolean Draw bone names
-Armature.show_ghost_only_selected -> show_only_ghost_selected: boolean
-Armature.layer -> layers: boolean Armature layer visibility
-Armature.layer_protection -> layers_protected: boolean Protected layers in Proxy Instances are restored to Proxy settings on file reload and undo
-Armature.x_axis_mirror -> use_mirror_x: boolean Apply changes to matching bone on opposite side of X-Axis
-ArmatureModifier.invert -> invert_vertex_group: boolean Invert vertex group influence
-ArmatureModifier.multi_modifier -> use_multi_modifier: boolean Use same input as previous modifier, and mix results using overall vgroup
-ArmatureModifier.quaternion -> use_deform_preserve_volume: boolean Deform rotation interpolation with quaternions
-ArmatureModifier.use_deform_envelopes -> use_deform_envelopes: boolean
-ArmatureModifier.use_deform_vertex_groups -> use_deform_vertex_groups: boolean
-ArrayModifier.add_offset_object -> use_object_offset: boolean Add another object's transformation to the total offset
-ArrayModifier.constant_offset -> use_constant_offset: boolean Add a constant offset
-ArrayModifier.merge_adjacent_vertices -> use_merge_adjacent_vertices: boolean Merge vertices in adjacent duplicates
-ArrayModifier.merge_end_vertices -> use_merge_end_vertices: boolean Merge vertices in first and last duplicates
-ArrayModifier.relative_offset -> use_relative_offset: boolean Add an offset relative to the object's bounding box
-BackgroundImage.show_expanded -> show_expanded: boolean Show the expanded in the user interface
-BevelModifier.only_vertices -> use_only_vertices: boolean Bevel verts/corners, not edges
-
-BoidRule.in_air -> use_in_air: boolean Use rule when boid is flying
-BoidRule.on_land -> use_on_land: boolean Use rule when boid is on land
-BoidRuleAvoid.predict -> use_predict: boolean Predict target movement
-BoidRuleAvoidCollision.boids -> use_avoid: boolean Avoid collision with other boids
-BoidRuleAvoidCollision.deflectors -> use_avoid_collision: boolean Avoid collision with deflector objects
-BoidRuleFollowLeader.line -> use_line: boolean Follow leader in a line
-BoidRuleGoal.predict -> use_predict: boolean Predict target movement
-BoidSettings.allow_climb -> use_climb: boolean Allow boids to climb goal objects
-BoidSettings.allow_flight -> use_flight: boolean Allow boids to move in air
-BoidSettings.allow_land -> use_land: boolean Allow boids to move on land
-Bone.connected -> use_connect: boolean, (read-only) When bone has a parent, bone's head is struck to the parent's tail
-Bone.cyclic_offset -> use_cyclic_offset: boolean When bone doesn't have a parent, it receives cyclic offset effects
-Bone.deform -> use_deform: boolean Bone does not deform any geometry
-Bone.draw_wire -> show_wire: boolean Bone is always drawn as Wireframe regardless of viewport draw mode. Useful for non-obstructive custom bone shapes
-
-Bone.hinge -> use_hinge: boolean Bone inherits rotation or scale from parent bone
-Bone.inherit_scale -> use_inherit_scale: boolean Bone inherits scaling from parent bone
-Bone.layer -> layers: boolean Layers bone exists in
-Bone.local_location -> use_local_location: boolean Bone location is set in local space
-Bone.multiply_vertexgroup_with_envelope -> use_envelope_multiply: boolean When deforming bone, multiply effects of Vertex Group weights with Envelope influence
-BooleanProperty.default -> default: boolean, (read-only) Default value for this number
-BooleanProperty.default_array -> default_array: boolean, (read-only) Default value for this array
-Brush.use_accumulate -> use_accumulate: boolean Accumulate stroke dabs on top of each other
-Brush.use_airbrush -> use_airbrush: boolean Keep applying paint effect while holding mouse (spray)
-Brush.use_alpha -> use_alpha: boolean When this is disabled, lock alpha while painting
-Brush.use_anchor -> use_anchor: boolean Keep the brush anchored to the initial location
-Brush.use_jitter_pressure -> use_pressure_jitter: boolean Enable tablet pressure sensitivity for jitter
-Brush.use_persistent -> use_persistent: boolean Sculpts on a persistent layer of the mesh
-Brush.use_rake -> use_rake: boolean Rotate the brush texture to match the stroke direction
-Brush.use_size_pressure -> use_pressure_size: boolean Enable tablet pressure sensitivity for size
-Brush.use_smooth_stroke -> use_smooth_stroke: boolean Brush lags behind mouse and follows a smoother path
-Brush.use_space -> use_space: boolean Limit brush application to the distance specified by spacing
-Brush.use_spacing_pressure -> use_pressure_spacing: boolean Enable tablet pressure sensitivity for spacing
-Brush.use_strength_pressure -> use_pressure_strength: boolean Enable tablet pressure sensitivity for strength
-Brush.use_wrap -> use_wrap: boolean Enable torus wrapping while painting
-BuildModifier.randomize -> use_random_order: boolean Randomize the faces or edges during build
-Camera.panorama -> use_panorama: boolean Render the scene with a cylindrical camera for pseudo-fisheye lens effects
-Camera.show_limits -> show_limits: boolean Draw the clipping range and focus point on the camera
-Camera.show_mist -> show_mist: boolean Draw a line from the Camera to indicate the mist area
-Camera.show_name -> show_name: boolean Show the active Camera's name in Camera view
-Camera.show_passepartout -> show_passepartout: boolean Show a darkened overlay outside the image area in Camera view
-Camera.show_title_safe -> show_title_safe: boolean Show indicators for the title safe zone in Camera view
-CastModifier.from_radius -> use_radius_as_size: boolean Use radius as size of projection shape (0 = auto)
-CastModifier.use_transform -> use_transform: boolean Use object transform to control projection shape
-CastModifier.x -> use_x: boolean
-CastModifier.y -> use_y: boolean
-CastModifier.z -> use_z: boolean
-ChildOfConstraint.use_location_x -> use_location_x: boolean Use X Location of Parent
-ChildOfConstraint.use_location_y -> use_location_y: boolean Use Y Location of Parent
-ChildOfConstraint.use_location_z -> use_location_z: boolean Use Z Location of Parent
-ChildOfConstraint.use_rotation_x -> use_rotation_x: boolean Use X Rotation of Parent
-ChildOfConstraint.use_rotation_y -> use_rotation_y: boolean Use Y Rotation of Parent
-ChildOfConstraint.use_rotation_z -> use_rotation_z: boolean Use Z Rotation of Parent
-ChildOfConstraint.use_scale_x -> use_scale_x: boolean Use X Scale of Parent
-ChildOfConstraint.use_scale_y -> use_scale_y: boolean Use Y Scale of Parent
-ChildOfConstraint.use_scale_z -> use_scale_z: boolean Use Z Scale of Parent
-ClampToConstraint.cyclic -> use_cyclic: boolean Treat curve as cyclic curve (no clamping to curve bounding box
-ClothCollisionSettings.enable_collision -> use_collision: boolean Enable collisions with other objects
-ClothCollisionSettings.enable_self_collision -> use_self_collision: boolean Enable self collisions
-ClothSettings.pin_cloth -> use_pin_cloth: boolean Enable pinning of cloth vertices to other objects/positions
-ClothSettings.stiffness_scaling -> use_stiffness_scale: boolean If enabled, stiffness can be scaled along a weight painted vertex group
-CollisionSensor.collision_type -> use_material: boolean Use material instead of property
-CollisionSensor.pulse -> use_pulse: boolean Changes to the set of colliding objects generates pulse
-CollisionSettings.enabled -> use: boolean Enable this objects as a collider for physics systems
-CollisionSettings.kill_particles -> use_particle_kill: boolean Kill colliding particles
-CompositorNodeAlphaOver.convert_premul -> use_premultiply: boolean
-CompositorNodeBlur.bokeh -> use_bokeh: boolean
-CompositorNodeBlur.gamma -> use_gamma_correction: boolean
-CompositorNodeBlur.relative -> use_relative: boolean
-CompositorNodeColorSpill.unspill -> use_unspill: boolean Compensate all channels (diffenrently) by hand
-CompositorNodeCrop.crop_size -> use_crop_size: boolean Whether to crop the size of the input image
-CompositorNodeDBlur.wrap -> use_wrap: boolean
-CompositorNodeDefocus.gamma_correction -> use_gamma_correction: boolean Enable gamma correction before and after main process
-CompositorNodeDefocus.preview -> use_preview: boolean Enable sampling mode, useful for preview when using low samplecounts
-CompositorNodeDefocus.use_zbuffer -> use_zbuffer: boolean Disable when using an image as input instead of actual zbuffer (auto enabled if node not image based, eg. time node)
-CompositorNodeGlare.rotate_45 -> use_rotate_45: boolean Simple star filter: add 45 degree rotation offset
-CompositorNodeImage.auto_refresh -> use_auto_refresh: boolean
-CompositorNodeImage.cyclic -> use_cyclic: boolean
-CompositorNodeInvert.alpha -> invert_alpha: boolean
-CompositorNodeInvert.rgb -> invert_rgb: boolean
-CompositorNodeLensdist.fit -> use_fit: boolean For positive distortion factor only: scale image such that black areas are not visible
-CompositorNodeLensdist.jitter -> use_jitter: boolean Enable/disable jittering; faster, but also noisier
-CompositorNodeLensdist.projector -> use_projector: boolean Enable/disable projector mode. Effect is applied in horizontal direction only
-CompositorNodeMapValue.use_max -> use_max: boolean
-CompositorNodeMapValue.use_min -> use_min: boolean
-CompositorNodeMixRGB.alpha -> use_alpha: boolean Include alpha of second input in this operation
-CompositorNodeOutputFile.exr_half -> use_exr_half: boolean
-CompositorNodeVecBlur.curved -> use_curved: boolean Interpolate between frames in a bezier curve, rather than linearly
-Constraint.active -> active: boolean Constraint is the one being edited
-Constraint.disabled -> is_valid: boolean, (read-only) Constraint has invalid settings and will not be evaluated
-Constraint.expanded -> show_expanded: boolean Constraint's panel is expanded in UI
-Constraint.proxy_local -> is_proxy_local: boolean Constraint was added in this proxy instance (i.e. did not belong to source Armature)
-ConstraintActuator.detect_material -> use_material_detect: boolean Detect material instead of property
-ConstraintActuator.fh_normal -> use_fh_normal: boolean Add a horizontal spring force on slopes
-ConstraintActuator.fh_paralel_axis -> use_fh_paralel_axis: boolean Keep object axis parallel to normal
-ConstraintActuator.force_distance -> use_force_distance: boolean Force distance of object to point of impact of ray
-ConstraintActuator.local -> use_local: boolean Set ray along object's axis or global axis
-ConstraintActuator.normal -> use_normal: boolean Set object axis along (local axis) or parallel (global axis) to the normal at hit position
-ConstraintActuator.persistent -> use_persistent: boolean Persistent actuator: stays active even if ray does not reach target
-ControlFluidSettings.active -> use: boolean Object contributes to the fluid simulation
-ControlFluidSettings.reverse_frames -> use_reverse_frames: boolean Reverse control object movement
-Controller.expanded -> show_expanded: boolean Set controller expanded in the user interface
-Controller.priority -> use_priority: boolean Mark controller for execution before all non-marked controllers (good for startup scripts)
-Controller.state -> states: boolean, (read-only) Set Controller state index (1 to 30)
-CopyLocationConstraint.invert_x -> invert_x: boolean Invert the X location
-CopyLocationConstraint.invert_y -> invert_y: boolean Invert the Y location
-CopyLocationConstraint.invert_z -> invert_z: boolean Invert the Z location
-CopyLocationConstraint.use_offset -> use_offset: boolean Add original location into copied location
-CopyLocationConstraint.use_x -> use_x: boolean Copy the target's X location
-CopyLocationConstraint.use_y -> use_y: boolean Copy the target's Y location
-CopyLocationConstraint.use_z -> use_z: boolean Copy the target's Z location
-CopyRotationConstraint.invert_x -> invert_x: boolean Invert the X rotation
-CopyRotationConstraint.invert_y -> invert_y: boolean Invert the Y rotation
-CopyRotationConstraint.invert_z -> invert_z: boolean Invert the Z rotation
-CopyRotationConstraint.use_offset -> use_offset: boolean Add original rotation into copied rotation
-CopyRotationConstraint.use_x -> use_x: boolean Copy the target's X rotation
-CopyRotationConstraint.use_y -> use_y: boolean Copy the target's Y rotation
-CopyRotationConstraint.use_z -> use_z: boolean Copy the target's Z rotation
-CopyScaleConstraint.use_offset -> use_offset: boolean Add original scale into copied scale
-CopyScaleConstraint.use_x -> use_x: boolean Copy the target's X scale
-CopyScaleConstraint.use_y -> use_y: boolean Copy the target's Y scale
-CopyScaleConstraint.use_z -> use_z: boolean Copy the target's Z scale
-Curve.auto_texspace -> use_auto_texspace: boolean Adjusts active object's texture space automatically when transforming object
-Curve.back -> use_fill_back: boolean Draw filled back for extruded/beveled curves
-Curve.draw_handles -> show_handles: boolean Display bezier handles in editmode
-Curve.draw_normals -> show_normals: boolean Display 3D curve normals in editmode
-Curve.front -> use_fill_front: boolean Draw filled front for extruded/beveled curves
-Curve.map_along_length -> use_map_along_length: boolean Generate texture mapping coordinates following the curve direction, rather than the local bounding box
-Curve.use_deform_fill -> use_fill_deform: boolean Fill curve after applying deformation
-Curve.use_path -> use_path: boolean Enable the curve to become a translation path
-Curve.use_path_follow -> use_path_follow: boolean Make curve path children to rotate along the path
-Curve.use_radius -> use_radius: boolean Option for paths: apply the curve radius with path following it and deforming
-Curve.use_stretch -> use_stretch: boolean Option for curve-deform: makes deformed child to stretch along entire path
-Curve.use_time_offset -> use_time_offset: boolean Children will use Time Offset value as path distance offset
-
-CurveMapping.clip -> use_clip: boolean Force the curve view to fit a defined boundary
-DelaySensor.repeat -> use_repeat: boolean Toggle repeat option. If selected, the sensor restarts after Delay+Dur logic tics
-DomainFluidSettings.generate_speed_vectors -> use_speed_vectors: boolean Generate speed vectors for vector blur
-DomainFluidSettings.override_time -> use_time_override: boolean Use a custom start and end time (in seconds) instead of the scene's timeline
-DomainFluidSettings.reverse_frames -> use_reverse_frames: boolean Reverse fluid frames
-NEGATE * DopeSheet.collapse_summary -> show_expanded_summary: boolean Collapse summary when shown, so all other channels get hidden. (DopeSheet Editors Only)
-DopeSheet.display_armature -> show_armatures: boolean Include visualization of Armature related Animation data
-DopeSheet.display_camera -> show_cameras: boolean Include visualization of Camera related Animation data
-DopeSheet.display_curve -> show_curves: boolean Include visualization of Curve related Animation data
-DopeSheet.display_lamp -> show_lamps: boolean Include visualization of Lamp related Animation data
-DopeSheet.display_material -> show_materials: boolean Include visualization of Material related Animation data
-DopeSheet.display_mesh -> show_meshes: boolean Include visualization of Mesh related Animation data
-DopeSheet.display_metaball -> show_metaballs: boolean Include visualization of Metaball related Animation data
-DopeSheet.display_node -> show_nodes: boolean Include visualization of Node related Animation data
-DopeSheet.display_particle -> show_particles: boolean Include visualization of Particle related Animation data
-DopeSheet.display_scene -> show_scenes: boolean Include visualization of Scene related Animation data
-DopeSheet.display_shapekeys -> show_shapekeys: boolean Include visualization of ShapeKey related Animation data
-DopeSheet.display_summary -> show_summary: boolean Display an additional 'summary' line. (DopeSheet Editors only)
-DopeSheet.display_texture -> show_textures: boolean Include visualization of Texture related Animation data
-DopeSheet.display_transforms -> show_transforms: boolean Include visualization of Object-level Animation data (mostly Transforms)
-DopeSheet.display_world -> show_worlds: boolean Include visualization of World related Animation data
-DopeSheet.include_missing_nla -> show_missing_nla: boolean Include Animation Data blocks with no NLA data. (NLA Editor only)
-DopeSheet.only_group_objects -> show_only_group_objects: boolean Only include channels from Objects in the specified Group
-DopeSheet.only_selected -> show_only_selected: boolean Only include channels relating to selected objects and data
-Driver.invalid -> is_valid: boolean Driver could not be evaluated in past, so should be skipped
-Driver.show_debug_info -> show_debug_info: boolean Show intermediate values for the driver calculations to allow debugging of drivers
-DriverTarget.use_local_space_transforms -> use_local_space_transform: boolean Use transforms in Local Space (as opposed to the worldspace default)
-EdgeSplitModifier.use_edge_angle -> use_edge_angle: boolean Split edges with high angle between faces
-EdgeSplitModifier.use_sharp -> use_edge_sharp: boolean Split edges that are marked as sharp
-EditBone.connected -> use_connect: boolean When bone has a parent, bone's head is struck to the parent's tail
-EditBone.cyclic_offset -> use_cyclic_offset: boolean When bone doesn't have a parent, it receives cyclic offset effects
-EditBone.deform -> use_deform: boolean Bone does not deform any geometry
-EditBone.draw_wire -> show_wire: boolean Bone is always drawn as Wireframe regardless of viewport draw mode. Useful for non-obstructive custom bone shapes
-
-EditBone.hinge -> use_hinge: boolean Bone inherits rotation or scale from parent bone
-EditBone.inherit_scale -> use_inherit_scale: boolean Bone inherits scaling from parent bone
-EditBone.layer -> layers: boolean Layers bone exists in
-EditBone.local_location -> use_local_location: boolean Bone location is set in local space
-EditBone.multiply_vertexgroup_with_envelope -> use_envelope_multiply: boolean When deforming bone, multiply effects of Vertex Group weights with Envelope influence
-
-EditObjectActuator.enable_3d_tracking -> use_3d_tracking: boolean Enable 3D tracking
-EditObjectActuator.local_angular_velocity -> use_local_angular_velocity: boolean Apply the rotation locally
-EditObjectActuator.local_linear_velocity -> use_local_linear_velocity: boolean Apply the transformation locally
-EditObjectActuator.replace_display_mesh -> use_replace_display_mesh: boolean Replace the display mesh
-EditObjectActuator.replace_physics_mesh -> use_replace_physics_mesh: boolean Replace the physics mesh (triangle bounds only - compound shapes not supported)
-EffectSequence.convert_float -> use_float: boolean Convert input to float data
-EffectSequence.de_interlace -> use_deinterlace: boolean For video movies to remove fields
-EffectSequence.flip_x -> use_flip_x: boolean Flip on the X axis
-EffectSequence.flip_y -> use_flip_y: boolean Flip on the Y axis
-EffectSequence.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-EffectSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean Use a custom directory to store data
-EffectSequence.proxy_custom_file -> use_proxy_custom_file: boolean Use a custom file to read proxy data from
-EffectSequence.reverse_frames -> use_reverse_frames: boolean Reverse frame order
-EffectSequence.use_color_balance -> use_color_balance: boolean (3-Way color correction) on input
-EffectSequence.use_crop -> use_crop: boolean Crop image before processing
-EffectSequence.use_proxy -> use_proxy: boolean Use a preview proxy for this strip
-EffectSequence.use_translation -> use_translation: boolean Translate image before processing
-EffectorWeights.do_growing_hair -> apply_to_hair_growing: boolean Use force fields when growing hair
-EnvironmentMap.ignore_layers -> layers_ignore: boolean Hide objects on these layers when generating the Environment Map
-EnvironmentMapTexture.use_filter_size_min -> use_minimum_filter_size: boolean Use Filter Size as a minimal filter value in pixels
-EnvironmentMapTexture.mipmap -> use_mipmap: boolean Uses auto-generated MIP maps for the image
-EnvironmentMapTexture.mipmap_gauss -> use_mipmap_gauss: boolean Uses Gauss filter to sample down MIP maps
-Event.alt -> is_pressed_alt: boolean, (read-only) True when the Alt/Option key is held
-Event.ctrl -> is_pressed_ctrl: boolean, (read-only) True when the Ctrl key is held
-Event.oskey -> is_pressed_cmd: boolean, (read-only) True when the Cmd key is held
-Event.shift -> is_pressed_shift: boolean, (read-only) True when the Shift key is held
-ExplodeModifier.alive -> show_alive: boolean Show mesh when particles are alive
-ExplodeModifier.dead -> show_dead: boolean Show mesh when particles are dead
-ExplodeModifier.size -> use_size: boolean Use particle size for the shrapnel
-ExplodeModifier.split_edges -> use_edge_split: boolean Split face edges for nicer shrapnel
-ExplodeModifier.unborn -> show_unborn: boolean Show mesh when particles are unborn
-FCurve.auto_clamped_handles -> use_auto_handle_clamp: boolean All auto-handles for F-Curve are clamped
-FModifier.active -> active: boolean F-Curve Modifier is the one being edited
-NEGATE * FModifier.disabled -> use: boolean, (read-only) F-Curve Modifier has invalid settings and will not be evaluated
-FModifier.expanded -> show_expanded: boolean F-Curve Modifier's panel is expanded in UI
-FModifierFunctionGenerator.additive -> use_additive: boolean Values generated by this modifier are applied on top of the existing values instead of overwriting them
-FModifierGenerator.additive -> use_additive: boolean Values generated by this modifier are applied on top of the existing values instead of overwriting them
-FModifierLimits.use_maximum_x -> use_max_x: boolean Use the maximum X value
-FModifierLimits.use_maximum_y -> use_max_y: boolean Use the maximum Y value
-FModifierLimits.use_minimum_x -> use_min_x: boolean Use the minimum X value
-FModifierLimits.use_minimum_y -> use_min_y: boolean Use the minimum Y value
-FModifierStepped.use_frame_end -> use_frame_end: boolean Restrict modifier to only act before its 'end' frame
-FModifierStepped.use_frame_start -> use_frame_start: boolean Restrict modifier to only act after its 'start' frame
-FcurveActuator.add -> use_add: boolean F-Curve is added to the current loc/rot/scale in global or local coordinate according to Local flag
-FcurveActuator.child -> apply_to_children: boolean Update F-Curve on all children Objects as well
-FcurveActuator.force -> use_force: boolean Apply F-Curve as a global or local force depending on the local option (dynamic objects only)
-FcurveActuator.local -> use_local: boolean Let the F-Curve act in local coordinates, used in Force and Add mode
-FieldSettings.do_absorption -> use_absorption: boolean Force gets absorbed by collision objects
-FieldSettings.do_location -> apply_to_location: boolean Effect particles' location
-FieldSettings.do_rotation -> apply_to_rotation: boolean Effect particles' dynamic rotation
-FieldSettings.force_2d -> use_2d_force: boolean Apply force only in 2d
-FieldSettings.global_coordinates -> use_global_coordinates: boolean Use effector/global coordinates for turbulence
-FieldSettings.guide_path_add -> use_guide_path_add: boolean Based on distance/falloff it adds a portion of the entire path
-FieldSettings.multiple_springs -> use_multiple_springs: boolean Every point is effected by multiple springs
-FieldSettings.root_coordinates -> use_root_coordinates: boolean Texture coordinates from root particle locations
-FieldSettings.use_coordinates -> use_object_coordinates: boolean Use object/global coordinates for texture
-FieldSettings.use_guide_path_weight -> use_guide_path_weight: boolean Use curve weights to influence the particle influence along the curve
-FieldSettings.use_max_distance -> use_max_distance: boolean Use a maximum distance for the field to work
-FieldSettings.use_min_distance -> use_min_distance: boolean Use a minimum distance for the field's fall-off
-FieldSettings.use_radial_max -> use_radial_max: boolean Use a maximum radial distance for the field to work
-FieldSettings.use_radial_min -> use_radial_min: boolean Use a minimum radial distance for the field's fall-off
-FileSelectParams.do_filter -> use_filter: boolean Enable filtering of files
-FileSelectParams.filter_blender -> use_filter_blender: boolean Show .blend files
-FileSelectParams.filter_folder -> use_filter_folder: boolean Show folders
-FileSelectParams.filter_font -> use_filter_font: boolean Show font files
-FileSelectParams.filter_image -> use_filter_image: boolean Show image files
-FileSelectParams.filter_movie -> use_filter_movie: boolean Show movie files
-FileSelectParams.filter_script -> use_filter_script: boolean Show script files
-FileSelectParams.filter_sound -> use_filter_sound: boolean Show sound files
-FileSelectParams.filter_text -> use_filter_text: boolean Show text files
-NEGATE * FileSelectParams.hide_dot -> show_hidden: boolean Hide hidden dot files
-Filter2DActuator.enable_motion_blur -> use_motion_blur: boolean Enable/Disable Motion Blur
-FloorConstraint.sticky -> use_sticky: boolean Immobilize object while constrained
-FloorConstraint.use_rotation -> use_rotation: boolean Use the target's rotation to determine floor
-FluidFluidSettings.active -> use: boolean Object contributes to the fluid simulation
-FluidFluidSettings.export_animated_mesh -> use_animated_mesh: boolean Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it
-FollowPathConstraint.use_curve_follow -> use_curve_follow: boolean Object will follow the heading and banking of the curve
-FollowPathConstraint.use_curve_radius -> use_curve_radius: boolean Objects scale by the curve radius
-FollowPathConstraint.use_fixed_position -> use_fixed_location: boolean Object will stay locked to a single point somewhere along the length of the curve regardless of time
-Function.registered -> is_registered: boolean, (read-only) Function is registered as callback as part of type registration
-Function.registered_optional -> is_registered_optional: boolean, (read-only) Function is optionally registered as callback part of type registration
-GPencilFrame.paint_lock -> is_edited: boolean Frame is being edited (painted on)
-GPencilLayer.active -> active: boolean Set active layer for editing
-GPencilLayer.frame_lock -> lock_frame: boolean Lock current frame displayed by layer
-GPencilLayer.hide -> hide: boolean Set layer Visibility
-
-GPencilLayer.show_points -> show_points: boolean Draw the points which make up the strokes (for debugging purposes)
-GPencilLayer.use_onion_skinning -> use_onion_skinning: boolean Ghost frames on either side of frame
-GameBooleanProperty.value -> value: boolean Property value
-GameObjectSettings.actor -> use_actor: boolean Object is detected by the Near and Radar sensor
-GameObjectSettings.all_states -> use_all_states: boolean Set all state bits
-GameObjectSettings.anisotropic_friction -> use_anisotropic_friction: boolean Enable anisotropic friction
-GameObjectSettings.collision_compound -> use_collision_compound: boolean Add children to form a compound collision object
-GameObjectSettings.debug_state -> show_debug_state: boolean Print state debug info in the game engine
-GameObjectSettings.ghost -> use_ghost: boolean Object does not restitute collisions, like a ghost
-GameObjectSettings.initial_state -> states_initial: boolean Initial state when the game starts
-GameObjectSettings.lock_x_axis -> lock_location_x: boolean Disable simulation of linear motion along the X axis
-GameObjectSettings.lock_x_rot_axis -> lock_rotation_x: boolean Disable simulation of angular motion along the X axis
-GameObjectSettings.lock_y_axis -> lock_location_y: boolean Disable simulation of linear motion along the Y axis
-GameObjectSettings.lock_y_rot_axis -> lock_rotation_y: boolean Disable simulation of angular motion along the Y axis
-GameObjectSettings.lock_z_axis -> lock_location_z: boolean Disable simulation of linear motion along the Z axis
-GameObjectSettings.lock_z_rot_axis -> lock_rotation_z: boolean Disable simulation of angular motion along the Z axis
-GameObjectSettings.material_physics -> use_material_physics: boolean Use physics settings in materials
-NEGATE * GameObjectSettings.no_sleeping -> use_sleep: boolean Disable auto (de)activation in physics simulation
-GameObjectSettings.rotate_from_normal -> use_rotate_from_normal: boolean Use face normal to rotate object, so that it points away from the surface
-GameObjectSettings.show_actuators -> show_actuators: boolean Shows actuators for this object in the user interface
-GameObjectSettings.show_controllers -> show_controllers: boolean Shows controllers for this object in the user interface
-GameObjectSettings.show_sensors -> show_sensors: boolean Shows sensors for this object in the user interface
-GameObjectSettings.show_state_panel -> show_state_panel: boolean Show state panel
-GameObjectSettings.use_activity_culling -> use_activity_culling: boolean Disable simulation of angular motion along the Z axis
-GameObjectSettings.use_collision_bounds -> use_collision_bounds: boolean Specify a collision bounds type other than the default
-GameObjectSettings.used_state -> states_used: boolean, (read-only) States which are being used by controllers
-GameObjectSettings.visible_state -> states_visible: boolean State determining which controllers are displayed
-GameProperty.debug -> show_debug: boolean Print debug information for this property
-GameSoftBodySettings.bending_const -> use_bending_constraints: boolean Enable bending constraints
-GameSoftBodySettings.cluster_rigid_to_softbody -> use_cluster_rigid_to_softbody: boolean Enable cluster collision between soft and rigid body
-GameSoftBodySettings.cluster_soft_to_softbody -> use_cluster_soft_to_softbody: boolean Enable cluster collision between soft and soft body
-GameSoftBodySettings.shape_match -> use_shape_match: boolean Enable soft body shape matching goal
-GlowSequence.only_boost -> use_only_boost: boolean Show the glow buffer only
-GreasePencil.use_stroke_endpoints -> use_stroke_endpoints: boolean Only use the first and last parts of the stroke for snapping
-Group.layer -> layers: boolean Layers visible when this groups is instanced as a dupli
-ID.fake_user -> use_fake_user: boolean Saves this datablock even if it has no users
-ID.tag -> tag: boolean Tools can use this to tag data, (initial state is undefined)
-Image.animated -> use_animation: boolean Use as animated texture in the game engine
-Image.clamp_x -> use_clamp_x: boolean Disable texture repeating horizontally
-Image.clamp_y -> use_clamp_y: boolean Disable texture repeating vertically
-Image.dirty -> is_dirty: boolean, (read-only) Image has changed and is not saved
-Image.fields -> use_fields: boolean Use fields of the image
-Image.has_data -> has_data: boolean, (read-only) True if this image has data
-Image.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-Image.tiles -> use_tiles: boolean Use of tilemode for faces (default shift-LMB to pick the tile for selected faces)
-ImagePaint.invert_stencil -> invert_stencil: boolean Invert the stencil layer
-ImagePaint.show_brush -> show_brush: boolean Enables brush shape while not drawing
-ImagePaint.show_brush_draw -> show_brush_draw: boolean Enables brush shape while drawing
-ImagePaint.use_backface_cull -> use_backface_culling: boolean Ignore faces pointing away from the view (faster)
-ImagePaint.use_clone_layer -> use_clone_layer: boolean Use another UV layer as clone source, otherwise use 3D the cursor as the source
-ImagePaint.use_normal_falloff -> use_normal_falloff: boolean Paint most on faces pointing towards the view
-ImagePaint.use_occlude -> use_occlude: boolean Only paint onto the faces directly under the brush (slower)
-ImagePaint.use_projection -> use_projection: boolean Use projection painting for improved consistency in the brush strokes
-ImagePaint.use_stencil_layer -> use_stencil_layer: boolean Set the mask layer from the UV layer buttons
-ImageSequence.convert_float -> use_float: boolean Convert input to float data
-ImageSequence.de_interlace -> use_deinterlace: boolean For video movies to remove fields
-ImageSequence.flip_x -> use_flip_x: boolean Flip on the X axis
-ImageSequence.flip_y -> use_flip_y: boolean Flip on the Y axis
-ImageSequence.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-ImageSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean Use a custom directory to store data
-ImageSequence.proxy_custom_file -> use_proxy_custom_file: boolean Use a custom file to read proxy data from
-ImageSequence.reverse_frames -> use_reverse_frames: boolean Reverse frame order
-ImageSequence.use_color_balance -> use_color_balance: boolean (3-Way color correction) on input
-ImageSequence.use_crop -> use_crop: boolean Crop image before processing
-ImageSequence.use_proxy -> use_proxy: boolean Use a preview proxy for this strip
-ImageSequence.use_translation -> use_translation: boolean Translate image before processing
-ImageTexture.calculate_alpha -> use_calculate_alpha: boolean Calculates an alpha channel based on RGB values in the image
-ImageTexture.checker_even -> use_checker_even: boolean Sets even checker tiles
-ImageTexture.checker_odd -> use_checker_odd: boolean Sets odd checker tiles
-ImageTexture.filter_size_minimum -> use_minimum_filter_size: boolean Use Filter Size as a minimal filter value in pixels
-ImageTexture.flip_axis -> use_flip_axis: boolean Flips the texture's X and Y axis
-ImageTexture.interpolation -> use_interpolation: boolean Interpolates pixels using Area filter
-ImageTexture.invert_alpha -> invert_alpha: boolean Inverts all the alpha values in the image
-ImageTexture.mipmap -> use_mipmap: boolean Uses auto-generated MIP maps for the image
-ImageTexture.mipmap_gauss -> use_mipmap_gauss: boolean Uses Gauss filter to sample down MIP maps
-ImageTexture.mirror_x -> use_mirror_x: boolean Mirrors the image repetition on the X direction
-ImageTexture.mirror_y -> use_mirror_y: boolean Mirrors the image repetition on the Y direction
-ImageTexture.normal_map -> use_normal_map: boolean Uses image RGB values for normal mapping
-ImageTexture.use_alpha -> use_alpha: boolean Uses the alpha channel information in the image
-ImageUser.auto_refresh -> use_auto_refresh: boolean Always refresh image on frame changes
-ImageUser.cyclic -> use_cyclic: boolean Cycle the images in the movie
-InflowFluidSettings.active -> use: boolean Object contributes to the fluid simulation
-InflowFluidSettings.export_animated_mesh -> use_animated_mesh: boolean Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it
-InflowFluidSettings.local_coordinates -> use_local_coordinates: boolean Use local coordinates for inflow. (e.g. for rotating objects)
-Itasc.auto_step -> use_auto_step: boolean Automatically determine the optimal number of steps for best performance/accuracy trade off
-JoystickSensor.all_events -> use_all_events: boolean Triggered by all events on this joysticks current type (axis/button/hat)
-Key.relative -> use_relative: boolean Makes shape keys relative
-KeyConfig.user_defined -> is_user_defined: boolean, (read-only) Indicates that a keyconfig was defined by the user
-KeyMap.children_expanded -> show_expanded_children: boolean Children expanded in the user interface
-KeyMap.items_expanded -> show_expanded_items: boolean Expanded in the user interface
-KeyMap.modal -> is_modal: boolean, (read-only) Indicates that a keymap is used for translate modal events for an operator
-KeyMap.user_defined -> is_user_defined: boolean Keymap is defined by the user
-KeyMapItem.active -> active: boolean Activate or deactivate item
-KeyMapItem.alt -> pressed_alt: boolean Alt key pressed
-KeyMapItem.any -> pressed_any: boolean Any modifier keys pressed
-KeyMapItem.ctrl -> pressed_ctrl: boolean Control key pressed
-KeyMapItem.expanded -> show_expanded: boolean Show key map event and property details in the user interface
-KeyMapItem.oskey -> pressed_cmd: boolean Operating system key pressed
-KeyMapItem.shift -> pressed_shift: boolean Shift key pressed
-KeyboardSensor.all_keys -> use_all_keys: boolean Trigger this sensor on any keystroke
-KeyingSet.absolute -> use_absolute: boolean Keying Set defines specific paths/settings to be keyframed (i.e. is not reliant on context info)
-KeyingSet.insertkey_needed -> use_insertkey_needed: boolean Only insert keyframes where they're needed in the relevant F-Curves
-KeyingSet.insertkey_visual -> use_insertkey_visual: boolean Insert keyframes based on 'visual transforms'
-KeyingSet.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis
-KeyingSetInfo.insertkey_needed -> use_insertkey_needed: boolean Only insert keyframes where they're needed in the relevant F-Curves
-KeyingSetInfo.insertkey_visual -> use_insertkey_visual: boolean Insert keyframes based on 'visual transforms'
-KeyingSetInfo.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis
-KeyingSetPath.entire_array -> use_entire_array: boolean When an 'array/vector' type is chosen (Location, Rotation, Color, etc.), entire array is to be used
-KeyingSetPath.insertkey_needed -> use_insertkey_needed: boolean Only insert keyframes where they're needed in the relevant F-Curves
-KeyingSetPath.insertkey_visual -> use_insertkey_visual: boolean Insert keyframes based on 'visual transforms'
-KeyingSetPath.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis
-KinematicConstraint.pos_lock_x -> lock_location_x: boolean Constraint position along X axis
-KinematicConstraint.pos_lock_y -> lock_location_y: boolean Constraint position along Y axis
-KinematicConstraint.pos_lock_z -> lock_location_z: boolean Constraint position along Z axis
-KinematicConstraint.rot_lock_x -> lock_rotation_x: boolean Constraint rotation along X axis
-KinematicConstraint.rot_lock_y -> lock_rotation_y: boolean Constraint rotation along Y axis
-KinematicConstraint.rot_lock_z -> lock_rotation_z: boolean Constraint rotation along Z axis
-KinematicConstraint.use_position -> use_location: boolean Chain follows position of target
-KinematicConstraint.use_rotation -> use_rotation: boolean Chain follows rotation of target
-KinematicConstraint.use_stretch -> use_stretch: boolean Enable IK Stretching
-KinematicConstraint.use_tail -> use_tail: boolean Include bone's tail as last element in chain
-KinematicConstraint.use_target -> use_target: boolean Disable for targetless IK
-Lamp.diffuse -> use_diffuse: boolean Lamp does diffuse shading
-Lamp.layer -> use_own_layer: boolean Illuminates objects only on the same layer the lamp is on
-Lamp.negative -> use_negative: boolean Lamp casts negative light
-Lamp.specular -> use_specular: boolean Lamp creates specular highlights
-LampSkySettings.use_atmosphere -> use_atmosphere: boolean Apply sun effect on atmosphere
-LampSkySettings.use_sky -> use_sky: boolean Apply sun effect on sky
-LampTextureSlot.map_color -> use_map_color: boolean Lets the texture affect the basic color of the lamp
-LampTextureSlot.map_shadow -> use_map_shadow: boolean Lets the texture affect the shadow color of the lamp
-Lattice.outside -> use_outside: boolean Only draw, and take into account, the outer vertices
-LimitLocationConstraint.limit_transform -> limit_transform: boolean Transforms are affected by this constraint as well
-LimitLocationConstraint.use_maximum_x -> use_max_x: boolean Use the maximum X value
-LimitLocationConstraint.use_maximum_y -> use_max_y: boolean Use the maximum Y value
-LimitLocationConstraint.use_maximum_z -> use_max_z: boolean Use the maximum Z value
-LimitLocationConstraint.use_minimum_x -> use_min_x: boolean Use the minimum X value
-LimitLocationConstraint.use_minimum_y -> use_min_y: boolean Use the minimum Y value
-LimitLocationConstraint.use_minimum_z -> use_min_z: boolean Use the minimum Z value
-LimitRotationConstraint.limit_transform -> limit_transform: boolean Transforms are affected by this constraint as well
-LimitRotationConstraint.use_limit_x -> use_limit_x: boolean Use the minimum X value
-LimitRotationConstraint.use_limit_y -> use_limit_y: boolean Use the minimum Y value
-LimitRotationConstraint.use_limit_z -> use_limit_z: boolean Use the minimum Z value
-LimitScaleConstraint.limit_transform -> limit_transform: boolean Transforms are affected by this constraint as well
-LimitScaleConstraint.use_maximum_x -> use_max_x: boolean Use the maximum X value
-LimitScaleConstraint.use_maximum_y -> use_max_y: boolean Use the maximum Y value
-LimitScaleConstraint.use_maximum_z -> use_max_z: boolean Use the maximum Z value
-LimitScaleConstraint.use_minimum_x -> use_min_x: boolean Use the minimum X value
-LimitScaleConstraint.use_minimum_y -> use_min_y: boolean Use the minimum Y value
-LimitScaleConstraint.use_minimum_z -> use_min_z: boolean Use the minimum Z value
-Main.debug -> show_debug: boolean Print debugging information in console
-Main.file_is_saved -> is_saved: boolean, (read-only) Has the current session been saved to disk as a .blend file
-MaskModifier.invert -> invert_vertex_group: boolean Use vertices that are not part of region defined
-Material.cast_approximate -> use_cast_approximate: boolean Allow this material to cast shadows when using approximate ambient occlusion.
-Material.cast_buffer_shadows -> use_cast_buffer_shadows: boolean Allow this material to cast shadows from shadow buffer lamps
-Material.cast_shadows_only -> use_cast_shadows_only: boolean Makes objects with this material appear invisible, only casting shadows (not rendered)
-Material.cubic -> use_cubic: boolean Use cubic interpolation for diffuse values, for smoother transitions
-NEGATE * Material.exclude_mist -> use_mist: boolean Excludes this material from mist effects (in world settings)
-Material.face_texture -> use_face_texture: boolean Replaces the object's base color with color from face assigned image textures
-Material.face_texture_alpha -> use_face_texture_alpha: boolean Replaces the object's base alpha value with alpha from face assigned image textures
-Material.full_oversampling -> use_full_oversampling: boolean Force this material to render full shading/textures for all anti-aliasing samples
-Material.invert_z -> invert_z: boolean Renders material's faces with an inverted Z buffer (scanline only)
-Material.light_group_exclusive -> use_light_group_exclusive: boolean Material uses the light group exclusively - these lamps are excluded from other scene lighting
-Material.object_color -> use_object_color: boolean Modulate the result with a per-object color
-Material.only_shadow -> use_only_shadow: boolean Renders shadows as the material's alpha value, making materials transparent except for shadowed areas
-Material.ray_shadow_bias -> use_ray_shadow_bias: boolean Prevents raytraced shadow errors on surfaces with smooth shaded normals (terminator problem)
-Material.receive_transparent_shadows -> use_transparent_shadows: boolean Allow this object to receive transparent shadows casted through other objects
-Material.shadeless -> use_shadeless: boolean Makes this material insensitive to light or shadow
-Material.shadows -> use_shadows: boolean Allows this material to receive shadows
-Material.tangent_shading -> use_tangent_shading: boolean Use the material's tangent vector instead of the normal for shading - for anisotropic shading effects
-Material.traceable -> use_traceable: boolean Include this material and geometry that uses it in ray tracing calculations
-Material.transparency -> use_transparency: boolean Render material as transparent
-Material.use_diffuse_ramp -> use_diffuse_ramp: boolean Toggle diffuse ramp operations
-Material.use_nodes -> use_nodes: boolean Use shader nodes to render the material
-Material.use_sky -> use_sky: boolean Renders this material with zero alpha, with sky background in place (scanline only)
-Material.use_specular_ramp -> use_specular_ramp: boolean Toggle specular ramp operations
-Material.use_textures -> use_textures: boolean Enable/Disable each texture
-Material.vertex_color_light -> use_vertex_color_light: boolean Add vertex colors as additional lighting
-Material.vertex_color_paint -> use_vertex_color_paint: boolean Replaces object base color with vertex colors (multiplies with 'texture face' face assigned textures)
-MaterialHalo.flare_mode -> use_flare_mode: boolean Renders halo as a lensflare
-MaterialHalo.lines -> use_lines: boolean Renders star shaped lines over halo
-MaterialHalo.ring -> use_ring: boolean Renders rings over halo
-MaterialHalo.shaded -> use_shading: boolean Lets halo receive light and shadows from external objects
-MaterialHalo.soft -> use_soft: boolean Softens the edges of halos at intersections with other geometry
-MaterialHalo.star -> use_star: boolean Renders halo as a star
-MaterialHalo.texture -> use_texture: boolean Gives halo a texture
-MaterialHalo.vertex_normal -> use_vertex_normal: boolean Uses the vertex normal to specify the dimension of the halo
-MaterialHalo.xalpha -> use_extreme_alpha: boolean Uses extreme alpha
-MaterialPhysics.align_to_normal -> use_align_to_normal: boolean Align dynamic game objects along the surface normal, when inside the physics distance area
-MaterialRaytraceMirror.enabled -> use: boolean Enable raytraced reflections
-MaterialStrand.blender_units -> use_blender_units: boolean Use Blender units for widths instead of pixels
-MaterialStrand.surface_diffuse -> use_surface_diffuse: boolean Make diffuse shading more similar to shading the surface
-MaterialStrand.tangent_shading -> use_tangent_shading: boolean Uses direction of strands as normal for tangent-shading
-MaterialSubsurfaceScattering.enabled -> use: boolean Enable diffuse subsurface scatting effects in a material
-MaterialTextureSlot.enabled -> use: boolean Enable this material texture slot
-MaterialTextureSlot.from_dupli -> use_from_dupli: boolean Dupli's instanced from verts, faces or particles, inherit texture coordinate from their parent
-MaterialTextureSlot.from_original -> use_from_original: boolean Dupli's derive their object coordinates from the original objects transformation
-MaterialTextureSlot.map_alpha -> use_map_alpha: boolean Causes the texture to affect the alpha value
-MaterialTextureSlot.map_ambient -> use_map_ambient: boolean Causes the texture to affect the value of ambient
-MaterialTextureSlot.map_colordiff -> use_map_colordiff: boolean Causes the texture to affect basic color of the material
-MaterialTextureSlot.map_coloremission -> use_map_coloremission: boolean Causes the texture to affect the color of emission
-MaterialTextureSlot.map_colorreflection -> use_map_colorreflection: boolean Causes the texture to affect the color of scattered light
-MaterialTextureSlot.map_colorspec -> use_map_colorspec: boolean Causes the texture to affect the specularity color
-MaterialTextureSlot.map_colortransmission -> use_map_colortransmission: boolean Causes the texture to affect the result color after other light has been scattered/absorbed
-MaterialTextureSlot.map_density -> use_map_density: boolean Causes the texture to affect the volume's density
-MaterialTextureSlot.map_diffuse -> use_map_diffuse: boolean Causes the texture to affect the value of the materials diffuse reflectivity
-MaterialTextureSlot.map_displacement -> use_map_displacement: boolean Let the texture displace the surface
-MaterialTextureSlot.map_emission -> use_map_emission: boolean Causes the texture to affect the volume's emission
-MaterialTextureSlot.map_emit -> use_map_emit: boolean Causes the texture to affect the emit value
-MaterialTextureSlot.map_hardness -> use_map_hardness: boolean Causes the texture to affect the hardness value
-MaterialTextureSlot.map_mirror -> use_map_mirror: boolean Causes the texture to affect the mirror color
-MaterialTextureSlot.map_normal -> use_map_normal: boolean Causes the texture to affect the rendered normal
-MaterialTextureSlot.map_raymir -> use_map_raymir: boolean Causes the texture to affect the ray-mirror value
-MaterialTextureSlot.map_reflection -> use_map_reflect: boolean Causes the texture to affect the reflected light's brightness
-MaterialTextureSlot.map_scattering -> use_map_scatter: boolean Causes the texture to affect the volume's scattering
-MaterialTextureSlot.map_specular -> use_map_specular: boolean Causes the texture to affect the value of specular reflectivity
-MaterialTextureSlot.map_translucency -> use_map_translucency: boolean Causes the texture to affect the translucency value
-MaterialTextureSlot.map_warp -> use_map_warp: boolean Let the texture warp texture coordinates of next channels
-MaterialTextureSlot.new_bump -> use_new_bump: boolean Use new, corrected bump mapping code (backwards compatibility option)
-MaterialVolume.external_shadows -> use_external_shadows: boolean Receive shadows from sources outside the volume (temporary)
-MaterialVolume.light_cache -> use_light_cache: boolean Pre-calculate the shading information into a voxel grid, speeds up shading at slightly less accuracy
-Mesh.all_edges -> show_all_edges: boolean Displays all edges for wireframe in all view modes in the 3D view
-Mesh.auto_texspace -> use_auto_texspace: boolean Adjusts active object's texture space automatically when transforming object
-Mesh.autosmooth -> use_autosmooth: boolean Treats all set-smoothed faces with angles less than the specified angle as 'smooth' during render
-Mesh.double_sided -> show_double_sided: boolean Render/display the mesh with double or single sided lighting
-Mesh.draw_bevel_weights -> show_bevel_weights: boolean Displays weights created for the Bevel modifier
-Mesh.draw_creases -> show_creases: boolean Displays creases created for subsurf weighting
-Mesh.draw_edge_angle -> show_edge_angle: boolean Displays the angles in the selected edges in degrees
-Mesh.draw_edge_lenght -> show_edge_lenght: boolean Displays selected edge lengths
-Mesh.draw_edges -> show_edges: boolean Displays selected edges using highlights in the 3D view and UV editor
-Mesh.draw_face_area -> show_face_area: boolean Displays the area of selected faces
-Mesh.draw_faces -> show_faces: boolean Displays all faces as shades in the 3D view and UV editor
-Mesh.draw_normals -> show_normals: boolean Displays face normals as lines
-Mesh.draw_seams -> show_seams: boolean Displays UV unwrapping seams
-Mesh.draw_sharp -> show_sharp: boolean Displays sharp edges, used with the EdgeSplit modifier
-Mesh.draw_vertex_normals -> show_vertex_normals: boolean Displays vertex normals as lines
-Mesh.use_mirror_topology -> use_mirror_topology: boolean Use topology based mirroring
-Mesh.use_mirror_x -> use_mirror_x: boolean X Axis mirror editing
-Mesh.use_paint_mask -> use_paint_mask: boolean Face selection masking for painting
-Mesh.vertex_normal_flip -> use_vertex_normal_flip: boolean Flip vertex normals towards the camera during render
-MeshColorLayer.active -> active: boolean Sets the layer as active for display and editing
-MeshColorLayer.active_render -> active_render: boolean Sets the layer as active for rendering
-MeshDeformModifier.dynamic -> use_dynamic_bind: boolean Recompute binding dynamically on top of other deformers (slower and more memory consuming.)
-MeshDeformModifier.invert -> invert_vertex_group: boolean Invert vertex group influence
-MeshDeformModifier.is_bound -> is_bound: boolean, (read-only) Whether geometry has been bound to control cage
-MeshEdge.fgon -> is_fgon: boolean, (read-only) Fgon edge
-MeshEdge.loose -> is_loose: boolean, (read-only) Loose edge
-MeshEdge.seam -> use_seam: boolean Seam edge for UV unwrapping
-MeshEdge.sharp -> use_sharp: boolean Sharp edge for the EdgeSplit modifier
-
-MeshFace.smooth -> use_smooth: boolean
-MeshTextureFace.alpha_sort -> use_alpha_sort: boolean Enable sorting of faces for correct alpha drawing (slow, use Clip Alpha instead when possible)
-MeshTextureFace.billboard -> use_billboard: boolean Billboard with Z-axis constraint
-MeshTextureFace.collision -> use_collision: boolean Use face for collision and ray-sensor detection
-MeshTextureFace.halo -> use_halo: boolean Screen aligned billboard
-MeshTextureFace.invisible -> hide: boolean Make face invisible
-MeshTextureFace.light -> use_light: boolean Use light for face
-MeshTextureFace.object_color -> use_object_color: boolean Use ObColor instead of vertex colors
-MeshTextureFace.shadow -> use_shadow_face: boolean Face is used for shadow
-MeshTextureFace.shared -> use_blend_shared: boolean Blend vertex colors across face when vertices are shared
-MeshTextureFace.tex -> use_texture: boolean Render face with texture
-MeshTextureFace.text -> use_bitmap_text: boolean Enable bitmap text on face
-MeshTextureFace.twoside -> use_twoside: boolean Render face two-sided
-MeshTextureFace.uv_pinned -> pin_uv: boolean
-MeshTextureFace.uv_selected -> select_uv: boolean
-MeshTextureFaceLayer.active -> active: boolean Sets the layer as active for display and editing
-MeshTextureFaceLayer.active_clone -> active_clone: boolean Sets the layer as active for cloning
-MeshTextureFaceLayer.active_render -> active_render: boolean Sets the layer as active for rendering
-MetaBall.auto_texspace -> use_auto_texspace: boolean Adjusts active object's texture space automatically when transforming object
-MetaElement.hide -> hide: boolean Hide element
-MetaElement.negative -> use_negative: boolean Set metaball as negative one
-MetaSequence.convert_float -> use_float: boolean Convert input to float data
-MetaSequence.de_interlace -> use_deinterlace: boolean For video movies to remove fields
-MetaSequence.flip_x -> use_flip_x: boolean Flip on the X axis
-MetaSequence.flip_y -> use_flip_y: boolean Flip on the Y axis
-MetaSequence.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-MetaSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean Use a custom directory to store data
-MetaSequence.proxy_custom_file -> use_proxy_custom_file: boolean Use a custom file to read proxy data from
-MetaSequence.reverse_frames -> use_reverse_frames: boolean Reverse frame order
-MetaSequence.use_color_balance -> use_color_balance: boolean (3-Way color correction) on input
-MetaSequence.use_crop -> use_crop: boolean Crop image before processing
-MetaSequence.use_proxy -> use_proxy: boolean Use a preview proxy for this strip
-MetaSequence.use_translation -> use_translation: boolean Translate image before processing
-MirrorModifier.clip -> use_clip: boolean Prevents vertices from going through the mirror during transform
-MirrorModifier.mirror_u -> use_mirror_u: boolean Mirror the U texture coordinate around the 0.5 point
-MirrorModifier.mirror_v -> use_mirror_v: boolean Mirror the V texture coordinate around the 0.5 point
-MirrorModifier.mirror_vertex_groups -> use_mirror_vertex_groups: boolean Mirror vertex groups (e.g. .R->.L)
-MirrorModifier.x -> use_x: boolean Enable X axis mirror
-MirrorModifier.y -> use_y: boolean Enable Y axis mirror
-MirrorModifier.z -> use_z: boolean Enable Z axis mirror
-Modifier.editmode -> show_in_editmode: boolean Use modifier while in the edit mode
-Modifier.expanded -> show_expanded: boolean Set modifier expanded in the user interface
-Modifier.on_cage -> show_on_cage: boolean Enable direct editing of modifier control cage
-Modifier.realtime -> show_realtime: boolean Realtime display of a modifier
-Modifier.render -> use_render: boolean Use modifier during rendering
-MotionPath.editing -> is_edited: boolean Path is being edited
-MotionPath.use_bone_head -> use_bone_head: boolean, (read-only) For PoseBone paths, use the bone head location when calculating this path
-MovieSequence.convert_float -> use_float: boolean Convert input to float data
-MovieSequence.de_interlace -> use_deinterlace: boolean For video movies to remove fields
-MovieSequence.flip_x -> use_flip_x: boolean Flip on the X axis
-MovieSequence.flip_y -> use_flip_y: boolean Flip on the Y axis
-MovieSequence.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-MovieSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean Use a custom directory to store data
-MovieSequence.proxy_custom_file -> use_proxy_custom_file: boolean Use a custom file to read proxy data from
-MovieSequence.reverse_frames -> use_reverse_frames: boolean Reverse frame order
-MovieSequence.use_color_balance -> use_color_balance: boolean (3-Way color correction) on input
-MovieSequence.use_crop -> use_crop: boolean Crop image before processing
-MovieSequence.use_proxy -> use_proxy: boolean Use a preview proxy for this strip
-MovieSequence.use_translation -> use_translation: boolean Translate image before processing
-MulticamSequence.convert_float -> use_float: boolean Convert input to float data
-MulticamSequence.de_interlace -> use_deinterlace: boolean For video movies to remove fields
-MulticamSequence.flip_x -> use_flip_x: boolean Flip on the X axis
-MulticamSequence.flip_y -> use_flip_y: boolean Flip on the Y axis
-MulticamSequence.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-MulticamSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean Use a custom directory to store data
-MulticamSequence.proxy_custom_file -> use_proxy_custom_file: boolean Use a custom file to read proxy data from
-MulticamSequence.reverse_frames -> use_reverse_frames: boolean Reverse frame order
-MulticamSequence.use_color_balance -> use_color_balance: boolean (3-Way color correction) on input
-MulticamSequence.use_crop -> use_crop: boolean Crop image before processing
-MulticamSequence.use_proxy -> use_proxy: boolean Use a preview proxy for this strip
-MulticamSequence.use_translation -> use_translation: boolean Translate image before processing
-MultiresModifier.external -> is_external: boolean, (read-only) Store multires displacements outside the .blend file, to save memory
-MultiresModifier.optimal_display -> show_only_control_edges: boolean Skip drawing/rendering of interior subdivided edges
-NetRenderSettings.master_broadcast -> use_master_broadcast: boolean broadcast master server address on local network
-NetRenderSettings.master_clear -> use_master_clear: boolean delete saved files on exit
-NetRenderSettings.slave_clear -> use_slave_clear: boolean delete downloaded files on exit
-NetRenderSettings.slave_outputlog -> use_slave_output_log: boolean Output render text log to console as well as sending it to the master
-NetRenderSettings.slave_thumb -> use_slave_thumb: boolean Generate thumbnails on slaves instead of master
-NlaStrip.active -> active: boolean, (read-only) NLA Strip is active
-NlaStrip.animated_influence -> use_animated_influence: boolean Influence setting is controlled by an F-Curve rather than automatically determined
-NlaStrip.animated_time -> use_animated_time: boolean Strip time is controlled by an F-Curve rather than automatically determined
-NlaStrip.animated_time_cyclic -> use_animated_time_cyclic: boolean Cycle the animated time within the action start & end
-NlaStrip.auto_blending -> use_auto_blend: boolean Number of frames for Blending In/Out is automatically determined from overlapping strips
-NlaStrip.muted -> mute: boolean NLA Strip is not evaluated
-NlaStrip.reversed -> use_reverse: boolean NLA Strip is played back in reverse order (only when timing is automatically determined)
-NlaTrack.active -> active: boolean, (read-only) NLA Track is active
-NlaTrack.solo -> is_solo: boolean, (read-only) NLA Track is evaluated itself (i.e. active Action and all other NLA Tracks in the same AnimData block are disabled)
-Object.draw_axis -> show_axis: boolean Displays the object's origin and axis
-Object.draw_bounds -> show_bounds: boolean Displays the object's bounds
-Object.draw_name -> show_name: boolean Displays the object's name
-Object.draw_texture_space -> show_texture_space: boolean Displays the object's texture space
-Object.draw_transparent -> show_transparent: boolean Enables transparent materials for the object (Mesh only)
-Object.draw_wire -> show_wire: boolean Adds the object's wireframe over solid drawing
-Object.duplis_used -> is_duplicator: boolean, (read-only)
-Object.layers -> layers: boolean Layers the object is on
-Object.lock_location -> lock_location: boolean Lock editing of location in the interface
-Object.lock_rotation -> lock_rotation: boolean Lock editing of rotation in the interface
-Object.lock_rotation_w -> lock_rotation_w: boolean Lock editing of 'angle' component of four-component rotations in the interface
-Object.lock_rotations_4d -> lock_rotations_4d: boolean Lock editing of four component rotations by components (instead of as Eulers)
-Object.lock_scale -> lock_scale: boolean Lock editing of scale in the interface
-
-Object.shape_key_edit_mode -> use_shape_key_edit_mode: boolean Apply shape keys in edit mode (for Meshes only)
-Object.shape_key_lock -> show_shape_key: boolean Always show the current Shape for this Object
-Object.slow_parent -> use_slow_parent: boolean Create a delay in the parent relationship
-Object.time_offset_add_parent -> use_time_offset_add_parent: boolean Add the parents time offset value
-Object.time_offset_edit -> use_time_offset_edit: boolean Use time offset when inserting keys and display time offset for F-Curve and action views
-Object.time_offset_parent -> use_time_offset_parent: boolean Apply the time offset to this objects parent relationship
-Object.time_offset_particle -> use_time_offset_particle: boolean Let the time offset work on the particle effect
-Object.use_dupli_faces_scale -> use_dupli_faces_scale: boolean Scale dupli based on face size
-Object.use_dupli_frames_speed -> use_dupli_frames_speed: boolean Set dupliframes to use the frame
-Object.use_dupli_verts_rotation -> use_dupli_verts_rotation: boolean Rotate dupli according to vertex normal
-Object.x_ray -> show_x_ray: boolean Makes the object draw in front of others
-ObjectActuator.add_linear_velocity -> use_add_linear_velocity: boolean Toggles between ADD and SET linV
-ObjectActuator.local_angular_velocity -> use_local_angular_velocity: boolean Angular velocity is defined in local coordinates
-ObjectActuator.local_force -> use_local_force: boolean Force is defined in local coordinates
-ObjectActuator.local_linear_velocity -> use_local_linear_velocity: boolean Velocity is defined in local coordinates
-ObjectActuator.local_location -> use_local_location: boolean Location is defined in local coordinates
-ObjectActuator.local_rotation -> use_local_rotation: boolean Rotation is defined in local coordinates
-ObjectActuator.local_torque -> use_local_torque: boolean Torque is defined in local coordinates
-ObjectActuator.servo_limit_x -> use_servo_limit_x: boolean Set limit to force along the X axis
-ObjectActuator.servo_limit_y -> use_servo_limit_y: boolean Set limit to force along the Y axis
-ObjectActuator.servo_limit_z -> use_servo_limit_z: boolean Set limit to force along the Z axis
-ObjectBase.layers -> layers: boolean Layers the object base is on
-ObstacleFluidSettings.active -> use: boolean Object contributes to the fluid simulation
-ObstacleFluidSettings.export_animated_mesh -> use_animated_mesh: boolean Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it
-Operator.has_reports -> has_reports: boolean, (read-only) Operator has a set of reports (warnings and errors) from last execution
-OperatorStrokeElement.flip -> use_flip: boolean
-OutflowFluidSettings.active -> use: boolean Object contributes to the fluid simulation
-OutflowFluidSettings.export_animated_mesh -> use_animated_mesh: boolean Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it
-Paint.fast_navigate -> show_low_resolution: boolean For multires, show low resolution while navigating the view
-Paint.show_brush -> show_brush: boolean
-Panel.bl_default_closed -> bl_use_closed: boolean
-Panel.bl_show_header -> bl_show_header: boolean
-ParentActuator.compound -> use_compound: boolean Add this object shape to the parent shape (only if the parent shape is already compound)
-ParentActuator.ghost -> use_ghost: boolean Make this object ghost while parented (only if not compound)
-ParticleBrush.use_puff_volume -> use_puff_volume: boolean Apply puff to unselected end-points, (helps maintain hair volume when puffing root)
-ParticleEdit.add_interpolate -> use_add_interpolate: boolean Interpolate new particles from the existing ones
-ParticleEdit.auto_velocity -> use_auto_velocity: boolean Calculate point velocities automatically
-ParticleEdit.draw_particles -> show_particles: boolean Draw actual particles
-ParticleEdit.editable -> is_editable: boolean, (read-only) A valid edit mode exists
-ParticleEdit.emitter_deflect -> use_emitter_deflect: boolean Keep paths from intersecting the emitter
-ParticleEdit.fade_time -> use_fade_time: boolean Fade paths and keys further away from current frame
-ParticleEdit.hair -> is_hair: boolean, (read-only) Editing hair
-ParticleEdit.keep_lengths -> use_preserve_lengths: boolean Keep path lengths constant
-ParticleEdit.keep_root -> use_preserve_root: boolean Keep root keys unmodified
-ParticleFluidSettings.drops -> use_drops: boolean Show drop particles
-ParticleFluidSettings.floats -> use_floats: boolean Show floating foam particles
-ParticleFluidSettings.tracer -> use_tracer: boolean Show tracer particles
-ParticleInstanceModifier.alive -> use_alive: boolean Show instances when particles are alive
-ParticleInstanceModifier.children -> use_children: boolean Create instances from child particles
-ParticleInstanceModifier.dead -> use_dead: boolean Show instances when particles are dead
-ParticleInstanceModifier.keep_shape -> use_preserve_shape: boolean Don't stretch the object
-ParticleInstanceModifier.normal -> use_normal: boolean Create instances from normal particles
-ParticleInstanceModifier.size -> use_size: boolean Use particle size to scale the instances
-ParticleInstanceModifier.unborn -> use_unborn: boolean Show instances when particles are unborn
-ParticleInstanceModifier.use_path -> use_path: boolean Create instances along particle paths
-ParticleSettings.abs_path_time -> use_absolute_path_time: boolean Path timing is in absolute frames
-ParticleSettings.animate_branching -> use_animate_branching: boolean Animate branching
-ParticleSettings.billboard_lock -> lock_billboard: boolean Lock the billboards align axis
-ParticleSettings.boids_2d -> lock_boids_to_surface: boolean Constrain boids to a surface
-ParticleSettings.branching -> use_branching: boolean Branch child paths from each other
-ParticleSettings.child_effector -> apply_effector_to_children: boolean Apply effectors to children
-ParticleSettings.child_guide -> apply_guide_to_children: boolean
-ParticleSettings.die_on_collision -> use_die_on_collision: boolean Particles die when they collide with a deflector object
-ParticleSettings.died -> use_died: boolean Show particles after they have died
-ParticleSettings.draw_health -> show_health: boolean Draw boid health
-ParticleSettings.emitter -> use_render_emitter: boolean Render emitter Object also
-ParticleSettings.enable_simplify -> use_simplify: boolean Remove child strands as the object becomes smaller on the screen
-ParticleSettings.even_distribution -> use_even_distribution: boolean Use even distribution from faces based on face areas or edge lengths
-ParticleSettings.grid_invert -> invert_grid: boolean Invert what is considered object and what is not
-ParticleSettings.hair_bspline -> use_hair_bspline: boolean Interpolate hair using B-Splines
-ParticleSettings.material_color -> show_material_color: boolean Draw particles using material's diffuse color
-ParticleSettings.num -> show_number: boolean Show particle number
-ParticleSettings.parent -> use_parents: boolean Render parent particles
-ParticleSettings.rand_group -> use_group_pick_random: boolean Pick objects from group randomly
-ParticleSettings.react_multiple -> use_react_multiple: boolean React multiple times
-ParticleSettings.react_start_end -> use_react_start_end: boolean Give birth to unreacted particles eventually
-ParticleSettings.render_adaptive -> use_render_adaptive: boolean Use adapative rendering for paths
-ParticleSettings.render_strand -> use_strand_primitive: boolean Use the strand primitive for rendering
-ParticleSettings.rotation_dynamic -> use_dynamic_rotation: boolean Sets rotation to dynamic/constant
-ParticleSettings.self_effect -> use_self_effect: boolean Particle effectors effect themselves
-ParticleSettings.show_size -> show_size: boolean Show particle size
-ParticleSettings.size_deflect -> use_size_deflect: boolean Use particle's size in deflection
-ParticleSettings.sizemass -> use_multiply_size_mass: boolean Multiply mass by particle size
-ParticleSettings.symmetric_branching -> use_symmetric_branching: boolean Start and end points are the same
-ParticleSettings.trand -> use_emit_random: boolean Emit in random order of elements
-ParticleSettings.unborn -> use_unborn: boolean Show particles before they are emitted
-ParticleSettings.use_global_dupli -> use_global_dupli: boolean Use object's global coordinates for duplication
-ParticleSettings.use_group_count -> use_group_count: boolean Use object multiple times in the same group
-ParticleSettings.velocity -> show_velocity: boolean Show particle velocity
-ParticleSettings.velocity_length -> use_velocity_length: boolean Multiply line length by particle speed
-ParticleSettings.viewport -> use_simplify_viewport: boolean
-ParticleSettings.whole_group -> use_whole_group: boolean Use whole group at once
-ParticleSystem.editable -> is_editable: boolean, (read-only) Particle system can be edited in particle mode
-ParticleSystem.edited -> is_edited: boolean, (read-only) Particle system has been edited in particle mode
-ParticleSystem.global_hair -> is_global_hair: boolean, (read-only) Hair keys are in global coordinate space
-ParticleSystem.hair_dynamics -> use_hair_dynamics: boolean Enable hair dynamics using cloth simulation
-ParticleSystem.keyed_timing -> use_keyed_timing: boolean Use key times
-ParticleSystem.multiple_caches -> has_multiple_caches: boolean, (read-only) Particle system has multiple point caches
-ParticleSystem.vertex_group_clump_negate -> invert_vertex_group_clump: boolean Negate the effect of the clump vertex group
-ParticleSystem.vertex_group_density_negate -> invert_vertex_group_density: boolean Negate the effect of the density vertex group
-ParticleSystem.vertex_group_field_negate -> invert_vertex_group_field: boolean Negate the effect of the field vertex group
-ParticleSystem.vertex_group_kink_negate -> invert_vertex_group_kink: boolean Negate the effect of the kink vertex group
-ParticleSystem.vertex_group_length_negate -> invert_vertex_group_length: boolean Negate the effect of the length vertex group
-ParticleSystem.vertex_group_rotation_negate -> invert_vertex_group_rotation: boolean Negate the effect of the rotation vertex group
-ParticleSystem.vertex_group_roughness1_negate -> invert_vertex_group_roughness1: boolean Negate the effect of the roughness 1 vertex group
-ParticleSystem.vertex_group_roughness2_negate -> invert_vertex_group_roughness2: boolean Negate the effect of the roughness 2 vertex group
-ParticleSystem.vertex_group_roughness_end_negate -> invert_vertex_group_roughness_end: boolean Negate the effect of the roughness end vertex group
-ParticleSystem.vertex_group_size_negate -> invert_vertex_group_size: boolean Negate the effect of the size vertex group
-ParticleSystem.vertex_group_tangent_negate -> invert_vertex_group_tangent: boolean Negate the effect of the tangent vertex group
-ParticleSystem.vertex_group_velocity_negate -> invert_vertex_group_velocity: boolean Negate the effect of the velocity vertex group
-ParticleTarget.valid -> is_valid: boolean Keyed particles target is valid
-PivotConstraint.use_relative_position -> use_relative_location: boolean Offset will be an absolute point in space instead of relative to the target
-PointCache.baked -> is_baked: boolean, (read-only)
-PointCache.baking -> is_baking: boolean, (read-only)
-PointCache.disk_cache -> use_disk_cache: boolean Save cache files to disk (.blend file must be saved first)
-PointCache.external -> use_external: boolean Read cache from an external location
-PointCache.has_skipped_frames-> has_skipped_frames: boolean, (read-only)
-PointCache.outdated -> is_outdated: boolean, (read-only)
-PointCache.quick_cache -> use_quick_cache: boolean Update simulation with cache steps
-PointCache.use_library_path -> use_library_path: boolean Use this files path when library linked into another file.
-PointDensity.turbulence -> use_turbulence: boolean Add directed noise to the density at render-time
-PointLamp.only_shadow -> use_only_shadow: boolean Causes light to cast shadows only without illuminating objects
-PointLamp.shadow_layer -> use_shadow_layer: boolean Causes only objects on the same layer to cast shadows
-PointLamp.sphere -> use_sphere: boolean Sets light intensity to zero beyond lamp distance
-PoseBone.has_ik -> is_in_ik_chain: boolean, (read-only) Is part of an IK chain
-NEGATE * PoseBone.ik_dof_x -> lock_ik_x: boolean Allow movement around the X axis
-NEGATE * PoseBone.ik_dof_y -> lock_ik_y: boolean Allow movement around the Y axis
-NEGATE * PoseBone.ik_dof_z -> lock_ik_z: boolean Allow movement around the Z axis
-PoseBone.ik_limit_x -> lock_ik_x: boolean Limit movement around the X axis
-PoseBone.ik_limit_y -> lock_ik_y: boolean Limit movement around the Y axis
-PoseBone.ik_limit_z -> lock_ik_z: boolean Limit movement around the Z axis
-PoseBone.ik_lin_control -> use_ik_lin_control: boolean Apply channel size as IK constraint if stretching is enabled
-PoseBone.ik_rot_control -> use_ik_rot_control: boolean Apply channel rotation as IK constraint
-PoseBone.lock_location -> lock_location: boolean Lock editing of location in the interface
-PoseBone.lock_rotation -> lock_rotation: boolean Lock editing of rotation in the interface
-PoseBone.lock_rotation_w -> lock_rotation_w: boolean Lock editing of 'angle' component of four-component rotations in the interface
-PoseBone.lock_rotations_4d -> lock_rotations_4d: boolean Lock editing of four component rotations by components (instead of as Eulers)
-PoseBone.lock_scale -> lock_scale: boolean Lock editing of scale in the interface
-
-PoseTemplateSettings.generate_def_rig -> use_generate_deform_rig: boolean Create a copy of the metarig, constrainted by the generated rig
-Property.is_never_none -> is_never_none: boolean, (read-only) True when this value can't be set to None
-Property.is_readonly -> is_readonly: boolean, (read-only) Property is editable through RNA
-Property.is_required -> is_required: boolean, (read-only) False when this property is an optional argument in an RNA function
-Property.registered -> is_registered: boolean, (read-only) Property is registered as part of type registration
-Property.registered_optional -> is_registered_optional: boolean, (read-only) Property is optionally registered as part of type registration
-Property.use_output -> is_output: boolean, (read-only) True when this property is an output value from an RNA function
-PythonConstraint.script_error -> has_script_error: boolean, (read-only) The linked Python script has thrown an error
-PythonConstraint.use_targets -> use_targets: boolean Use the targets indicated in the constraint panel
-PythonController.debug -> use_debug: boolean Continuously reload the module from disk for editing external modules without restarting
-RandomActuator.always_true -> use_always_true: boolean Always false or always true
-RaySensor.x_ray_mode -> use_x_ray: boolean See through objects that don't have the property
-RegionView3D.box_clip -> use_box_clip: boolean Clip objects based on what's visible in other side views
-RegionView3D.box_preview -> show_synced_view: boolean Sync view position between side views
-RegionView3D.lock_rotation -> lock_rotation: boolean Lock view rotation in side views
-RenderEngine.bl_postprocess -> bl_use_postprocess: boolean
-RenderEngine.bl_preview -> bl_use_preview: boolean
-RenderLayer.all_z -> use_all_z: boolean, (read-only) Fill in Z values for solid faces in invisible layers, for masking
-RenderLayer.edge -> use_edge_enhance: boolean, (read-only) Render Edge-enhance in this Layer (only works for Solid faces)
-RenderLayer.enabled -> use: boolean, (read-only) Disable or enable the render layer
-RenderLayer.halo -> use_halo: boolean, (read-only) Render Halos in this Layer (on top of Solid)
-RenderLayer.pass_ao -> use_pass_ambient_occlusion: boolean, (read-only) Deliver AO pass
-RenderLayer.pass_ao_exclude -> exclude_ambient_occlusion: boolean, (read-only) Exclude AO pass from combined
-RenderLayer.pass_color -> use_pass_color: boolean, (read-only) Deliver shade-less color pass
-RenderLayer.pass_combined -> use_pass_combined: boolean, (read-only) Deliver full combined RGBA buffer
-RenderLayer.pass_diffuse -> use_pass_diffuse: boolean, (read-only) Deliver diffuse pass
-RenderLayer.pass_emit -> use_pass_emit: boolean, (read-only) Deliver emission pass
-RenderLayer.pass_emit_exclude -> exclude_emit: boolean, (read-only) Exclude emission pass from combined
-RenderLayer.pass_environment -> use_pass_environment: boolean, (read-only) Deliver environment lighting pass
-RenderLayer.pass_environment_exclude -> exclude_environment: boolean, (read-only) Exclude environment pass from combined
-RenderLayer.pass_indirect -> use_pass_indirect: boolean, (read-only) Deliver indirect lighting pass
-RenderLayer.pass_indirect_exclude -> exclude_indirect: boolean, (read-only) Exclude indirect pass from combined
-RenderLayer.pass_mist -> use_pass_mist: boolean, (read-only) Deliver mist factor pass (0.0-1.0)
-RenderLayer.pass_normal -> use_pass_normal: boolean, (read-only) Deliver normal pass
-RenderLayer.pass_object_index -> use_pass_object_index: boolean, (read-only) Deliver object index pass
-RenderLayer.pass_reflection -> use_pass_reflection: boolean, (read-only) Deliver raytraced reflection pass
-RenderLayer.pass_reflection_exclude -> exclude_reflection: boolean, (read-only) Exclude raytraced reflection pass from combined
-RenderLayer.pass_refraction -> use_pass_refraction: boolean, (read-only) Deliver raytraced refraction pass
-RenderLayer.pass_refraction_exclude -> exclude_refraction: boolean, (read-only) Exclude raytraced refraction pass from combined
-RenderLayer.pass_shadow -> use_pass_shadow: boolean, (read-only) Deliver shadow pass
-RenderLayer.pass_shadow_exclude -> exclude_shadow: boolean, (read-only) Exclude shadow pass from combined
-RenderLayer.pass_specular -> use_pass_specular: boolean, (read-only) Deliver specular pass
-RenderLayer.pass_specular_exclude -> exclude_specular: boolean, (read-only) Exclude specular pass from combined
-RenderLayer.pass_uv -> use_pass_uv: boolean, (read-only) Deliver texture UV pass
-RenderLayer.pass_vector -> use_pass_vector: boolean, (read-only) Deliver speed vector pass
-RenderLayer.pass_z -> use_pass_z: boolean, (read-only) Deliver Z values pass
-RenderLayer.sky -> use_sky: boolean, (read-only) Render Sky in this Layer
-RenderLayer.solid -> use_solid: boolean, (read-only) Render Solid faces in this Layer
-RenderLayer.strand -> use_strand: boolean, (read-only) Render Strands in this Layer
-RenderLayer.visible_layers -> layers: boolean, (read-only) Scene layers included in this render layer
-RenderLayer.zmask -> use_zmask: boolean, (read-only) Only render what's in front of the solid z values
-RenderLayer.zmask_layers -> layers_zmask: boolean, (read-only) Zmask scene layers
-RenderLayer.zmask_negate -> invert_zmask: boolean, (read-only) For Zmask, only render what is behind solid z values instead of in front
-RenderLayer.ztransp -> use_ztransp: boolean, (read-only) Render Z-Transparent faces in this Layer (On top of Solid and Halos)
-RenderSettings.backbuf -> use_backbuf: boolean Render backbuffer image
-RenderSettings.bake_active -> use_bake_active_to_selected: boolean Bake shading on the surface of selected objects to the active object
-RenderSettings.bake_clear -> use_bake_clear: boolean Clear Images before baking
-RenderSettings.bake_enable_aa -> use_bake_antialiasing: boolean Enables Anti-aliasing
-RenderSettings.bake_normalized -> use_bake_normalized: boolean With displacement normalize to the distance, with ambient occlusion normalize without using material settings
-RenderSettings.cineon_log -> use_cineon_log: boolean Convert to logarithmic color space
-RenderSettings.color_management -> use_color_management: boolean Use color profiles and gamma corrected imaging pipeline
-RenderSettings.crop_to_border -> use_crop_to_border: boolean Crop the rendered frame to the defined border size
-RenderSettings.edge -> use_edge_enhance: boolean use_Create a toon outline around the edges of geometry
-RenderSettings.exr_half -> use_exr_half: boolean Use 16 bit floats instead of 32 bit floats per channel
-RenderSettings.exr_preview -> use_exr_preview: boolean When rendering animations, save JPG preview images in same directory
-RenderSettings.exr_zbuf -> use_exr_zbuf: boolean Save the z-depth per pixel (32 bit unsigned int zbuffer)
-RenderSettings.ffmpeg_autosplit -> use_ffmpeg_autosplit: boolean Autosplit output at 2GB boundary
-RenderSettings.fields -> use_fields: boolean Render image to two fields per frame, for interlaced TV output
-RenderSettings.fields_still -> use_fields_still: boolean Disable the time difference between fields
-RenderSettings.free_image_textures -> use_free_image_textures: boolean Free all image texture from memory after render, to save memory before compositing
-RenderSettings.free_unused_nodes -> use_free_unused_nodes: boolean Free Nodes that are not used while compositing, to save memory
-RenderSettings.full_sample -> use_full_sample: boolean Save for every anti-aliasing sample the entire RenderLayer results. This solves anti-aliasing issues with compositing
-RenderSettings.is_movie_format -> is_movie_format: boolean, (read-only) When true the format is a movie
-RenderSettings.jpeg2k_ycc -> use_jpeg2k_ycc: boolean Save luminance-chrominance-chrominance channels instead of RGB colors
-RenderSettings.motion_blur -> use_motion_blur: boolean Use multi-sampled 3D scene motion blur
-RenderSettings.multiple_engines -> has_multiple_engines: boolean, (read-only) More than one rendering engine is available
-RenderSettings.render_antialiasing -> use_antialiasing: boolean Render and combine multiple samples per pixel to prevent jagged edges
-RenderSettings.render_stamp -> use_stamp: boolean Render the stamp info text in the rendered image
-RenderSettings.save_buffers -> use_save_buffers: boolean Save tiles for all RenderLayers and SceneNodes to files in the temp directory (saves memory, required for Full Sample)
-RenderSettings.simplify_triangulate -> use_simplify_triangulate: boolean Disables non-planer quads being triangulated
-RenderSettings.single_layer -> use_single_layer: boolean Only render the active layer
-RenderSettings.stamp_camera -> use_stamp_camera: boolean Include the name of the active camera in image metadata
-RenderSettings.stamp_date -> use_stamp_date: boolean Include the current date in image metadata
-RenderSettings.stamp_filename -> use_stamp_filename: boolean Include the filename of the .blend file in image metadata
-RenderSettings.stamp_frame -> use_stamp_frame: boolean Include the frame number in image metadata
-RenderSettings.stamp_marker -> use_stamp_marker: boolean Include the name of the last marker in image metadata
-RenderSettings.stamp_note -> use_stamp_note: boolean Include a custom note in image metadata
-RenderSettings.stamp_render_time -> use_stamp_render_time: boolean Include the render time in the stamp image
-RenderSettings.stamp_scene -> use_stamp_scene: boolean Include the name of the active scene in image metadata
-RenderSettings.stamp_sequencer_strip -> use_stamp_sequencer_strip: boolean Include the name of the foreground sequence strip in image metadata
-RenderSettings.stamp_time -> use_stamp_time: boolean Include the render frame as HH:MM:SS.FF in image metadata
-RenderSettings.tiff_bit -> use_tiff_16bit: boolean Save TIFF with 16 bits per channel
-RenderSettings.use_border -> use_border: boolean Render a user-defined border region, within the frame size. Note, this disables save_buffers and full_sample
-RenderSettings.use_compositing -> use_compositing: boolean Process the render result through the compositing pipeline, if compositing nodes are enabled
-RenderSettings.use_envmaps -> use_envmaps: boolean Calculate environment maps while rendering
-RenderSettings.use_file_extension -> use_file_extension: boolean Add the file format extensions to the rendered file name (eg: filename + .jpg)
-RenderSettings.use_game_engine -> use_game_engine: boolean, (read-only) Current rendering engine is a game engine
-RenderSettings.use_instances -> use_instances: boolean Instance support leads to effective memory reduction when using duplicates
-RenderSettings.use_local_coords -> use_local_coords: boolean Vertex coordinates are stored localy on each primitive. Increases memory usage, but may have impact on speed
-RenderSettings.use_overwrite -> use_overwrite: boolean Overwrite existing files while rendering
-RenderSettings.use_placeholder -> use_placeholder: boolean Create empty placeholder files while rendering frames (similar to Unix 'touch')
-RenderSettings.use_radiosity -> use_radiosity: boolean Calculate radiosity in a pre-process before rendering
-RenderSettings.use_raytracing -> use_raytrace: boolean Pre-calculate the raytrace accelerator and render raytracing effects
-RenderSettings.use_sequencer -> use_sequencer: boolean Process the render (and composited) result through the video sequence editor pipeline, if sequencer strips exist
-RenderSettings.use_sequencer_gl_preview -> use_sequencer_gl_preview: boolean
-RenderSettings.use_sequencer_gl_render -> use_sequencer_gl_render: boolean
-RenderSettings.use_shadows -> use_shadows: boolean Calculate shadows while rendering
-RenderSettings.use_simplify -> use_simplify: boolean Enable simplification of scene for quicker preview renders
-RenderSettings.use_sss -> use_sss: boolean Calculate sub-surface scattering in materials rendering
-RenderSettings.use_textures -> use_textures: boolean Use textures to affect material properties
-NEGATE * RigidBodyJointConstraint.disable_linked_collision -> use_linked_collision: boolean Disable collision between linked bodies
-RigidBodyJointConstraint.draw_pivot -> show_pivot: boolean Display the pivot point and rotation in 3D view
-Scene.frame_drop -> use_frame_drop: boolean Play back dropping frames if frame display is too slow
-Scene.layers -> layers: boolean Layers visible when rendering the scene
-Scene.mute_audio -> mute_audio: boolean Play back of audio from Sequence Editor will be muted
-Scene.nla_tweakmode_on -> use_nla_tweakmode: boolean, (read-only) Indicates whether there is any action referenced by NLA being edited. Strictly read-only
-Scene.pov_radio_always_sample -> use_pov_radio_always_sample: boolean Only use the data from the pretrace step and not gather any new samples during the final radiosity pass
-Scene.pov_radio_display_advanced -> show_pov_radio_advanced: boolean Show advanced options
-Scene.pov_radio_enable -> use_pov_radio: boolean Enable povrays radiosity calculation
-Scene.pov_radio_media -> use_pov_radio_media: boolean Radiosity estimation can be affected by media
-Scene.pov_radio_normal -> use_pov_radio_normal: boolean Radiosity estimation can be affected by normals
-Scene.scrub_audio -> use_audio_scrub: boolean Play audio from Sequence Editor while scrubbing
-Scene.sync_audio -> use_audio_sync: boolean Play back and sync with audio clock, dropping frames if frame display is too slow
-Scene.use_gravity -> use_gravity: boolean Use global gravity for all dynamics
-Scene.use_nodes -> use_nodes: boolean Enable the compositing node tree
-Scene.use_preview_range -> use_preview_range: boolean Use an alternative start/end frame for UI playback, rather than the scene start/end frame
-SceneGameData.activity_culling -> use_activity_culling: boolean Activity culling is enabled
-SceneGameData.auto_start -> use_auto_start: boolean Automatically start game at load time
-SceneGameData.fullscreen -> show_fullscreen: boolean Starts player in a new fullscreen display
-SceneGameData.glsl_extra_textures -> use_glsl_extra_textures: boolean Use extra textures like normal or specular maps for GLSL rendering
-SceneGameData.glsl_lights -> use_glsl_lights: boolean Use lights for GLSL rendering
-SceneGameData.glsl_nodes -> use_glsl_nodes: boolean Use nodes for GLSL rendering
-SceneGameData.glsl_ramps -> use_glsl_ramps: boolean Use ramps for GLSL rendering
-SceneGameData.glsl_shaders -> use_glsl_shaders: boolean Use shaders for GLSL rendering
-SceneGameData.glsl_shadows -> use_glsl_shadows: boolean Use shadows for GLSL rendering
-SceneGameData.show_debug_properties -> show_debug_properties: boolean Show properties marked for debugging while the game runs
-SceneGameData.show_framerate_profile -> show_framerate_profile: boolean Show framerate and profiling information while the game runs
-SceneGameData.show_physics_visualization -> show_physics_visualization: boolean Show a visualization of physics bounds and interactions
-SceneGameData.use_animation_record -> use_animation_record: boolean Record animation to fcurves
-SceneGameData.use_deprecation_warnings -> use_deprecation_warnings: boolean Print warnings when using deprecated features in the python API
-SceneGameData.use_display_lists -> use_display_lists: boolean Use display lists to speed up rendering by keeping geometry on the GPU
-SceneGameData.use_frame_rate -> use_frame_rate: boolean Respect the frame rate rather than rendering as many frames as possible
-SceneGameData.use_occlusion_culling -> use_occlusion_culling: boolean Use optimized Bullet DBVT tree for view frustum and occlusion culling
-SceneRenderLayer.all_z -> use_all_z: boolean Fill in Z values for solid faces in invisible layers, for masking
-SceneRenderLayer.edge -> use_edge_enhance: boolean Render Edge-enhance in this Layer (only works for Solid faces)
-SceneRenderLayer.enabled -> use: boolean Disable or enable the render layer
-SceneRenderLayer.halo -> use_halo: boolean Render Halos in this Layer (on top of Solid)
-SceneRenderLayer.pass_ao -> use_pass_ambient_occlusion: boolean Deliver AO pass
-SceneRenderLayer.pass_ao_exclude -> exclude_ambient_occlusion: boolean Exclude AO pass from combined
-SceneRenderLayer.pass_color -> use_pass_color: boolean Deliver shade-less color pass
-SceneRenderLayer.pass_combined -> use_pass_combined: boolean Deliver full combined RGBA buffer
-SceneRenderLayer.pass_diffuse -> use_pass_diffuse: boolean Deliver diffuse pass
-SceneRenderLayer.pass_emit -> use_pass_emit: boolean Deliver emission pass
-SceneRenderLayer.pass_emit_exclude -> exclude_emit: boolean Exclude emission pass from combined
-SceneRenderLayer.pass_environment -> use_pass_environment: boolean Deliver environment lighting pass
-SceneRenderLayer.pass_environment_exclude -> exclude_environment: boolean Exclude environment pass from combined
-SceneRenderLayer.pass_indirect -> use_pass_indirect: boolean Deliver indirect lighting pass
-SceneRenderLayer.pass_indirect_exclude -> exclude_indirect: boolean Exclude indirect pass from combined
-SceneRenderLayer.pass_mist -> use_pass_mist: boolean Deliver mist factor pass (0.0-1.0)
-SceneRenderLayer.pass_normal -> use_pass_normal: boolean Deliver normal pass
-SceneRenderLayer.pass_object_index -> use_pass_object_index: boolean Deliver object index pass
-SceneRenderLayer.pass_reflection -> use_pass_reflection: boolean Deliver raytraced reflection pass
-SceneRenderLayer.pass_reflection_exclude -> exclude_reflection: boolean Exclude raytraced reflection pass from combined
-SceneRenderLayer.pass_refraction -> use_pass_refraction: boolean Deliver raytraced refraction pass
-SceneRenderLayer.pass_refraction_exclude -> exclude_refraction: boolean Exclude raytraced refraction pass from combined
-SceneRenderLayer.pass_shadow -> use_pass_shadow: boolean Deliver shadow pass
-SceneRenderLayer.pass_shadow_exclude -> exclude_shadow: boolean Exclude shadow pass from combined
-SceneRenderLayer.pass_specular -> use_pass_specular: boolean Deliver specular pass
-SceneRenderLayer.pass_specular_exclude -> exclude_specular: boolean Exclude specular pass from combined
-SceneRenderLayer.pass_uv -> use_pass_uv: boolean Deliver texture UV pass
-SceneRenderLayer.pass_vector -> use_pass_vector: boolean Deliver speed vector pass
-SceneRenderLayer.pass_z -> use_pass_z: boolean Deliver Z values pass
-SceneRenderLayer.sky -> use_sky: boolean Render Sky in this Layer
-SceneRenderLayer.solid -> use_solid: boolean Render Solid faces in this Layer
-SceneRenderLayer.strand -> use_strand: boolean Render Strands in this Layer
-SceneRenderLayer.visible_layers -> layers: boolean Scene layers included in this render layer
-SceneRenderLayer.zmask -> use_zmask: boolean Only render what's in front of the solid z values
-SceneRenderLayer.zmask_layers -> layers_zmask: boolean Zmask scene layers
-SceneRenderLayer.zmask_negate -> invert_zmask: boolean For Zmask, only render what is behind solid z values instead of in front
-SceneRenderLayer.ztransp -> use_ztransp: boolean Render Z-Transparent faces in this Layer (On top of Solid and Halos)
-SceneSequence.convert_float -> use_float: boolean Convert input to float data
-SceneSequence.de_interlace -> use_deinterlace: boolean For video movies to remove fields
-SceneSequence.flip_x -> use_flip_x: boolean Flip on the X axis
-SceneSequence.flip_y -> use_flip_y: boolean Flip on the Y axis
-SceneSequence.premultiply -> use_premultiply: boolean Convert RGB from key alpha to premultiplied alpha
-SceneSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean Use a custom directory to store data
-SceneSequence.proxy_custom_file -> use_proxy_custom_file: boolean Use a custom file to read proxy data from
-SceneSequence.reverse_frames -> use_reverse_frames: boolean Reverse frame order
-SceneSequence.use_color_balance -> use_color_balance: boolean (3-Way color correction) on input
-SceneSequence.use_crop -> use_crop: boolean Crop image before processing
-SceneSequence.use_proxy -> use_proxy: boolean Use a preview proxy for this strip
-SceneSequence.use_translation -> use_translation: boolean Translate image before processing
-Scopes.use_full_resolution -> use_full_resolution: boolean Sample every pixel of the image
-Screen.animation_playing -> is_animation_playing: boolean, (read-only) Animation playback is active
-Screen.fullscreen -> is_fullscreen: boolean, (read-only) An area is maximised, filling this screen
-ScrewModifier.use_normal_calculate -> use_normal_calculate: boolean Calculate the order of edges (needed for meshes, but not curves)
-ScrewModifier.use_normal_flip -> use_normal_flip: boolean Flip normals of lathed faces
-ScrewModifier.use_object_screw_offset -> use_object_screw_offset: boolean Use the distance between the objects to make a screw
-Sculpt.lock_x -> lock_x: boolean Disallow changes to the X axis of vertices
-Sculpt.lock_y -> lock_y: boolean Disallow changes to the Y axis of vertices
-Sculpt.lock_z -> lock_z: boolean Disallow changes to the Z axis of vertices
-Sculpt.symmetry_x -> use_symmetry_x: boolean Mirror brush across the X axis
-Sculpt.symmetry_y -> use_symmetry_y: boolean Mirror brush across the Y axis
-Sculpt.symmetry_z -> use_symmetry_z: boolean Mirror brush across the Z axis
-Sensor.expanded -> show_expanded: boolean Set sensor expanded in the user interface
-Sensor.invert -> invert: boolean Invert the level(output) of this sensor
-Sensor.level -> use_level: boolean Level detector, trigger controllers of new states (only applicable upon logic state transition)
-Sensor.pulse_false_level -> use_pulse_false_level: boolean Activate FALSE level triggering (pulse mode)
-Sensor.pulse_true_level -> use_pulse_true_level: boolean Activate TRUE level triggering (pulse mode)
-Sensor.tap -> use_tap: boolean Trigger controllers only for an instant, even while the sensor remains true
-Sequence.frame_locked -> use_frame_lock: boolean Lock the animation curve to the global frame counter
-Sequence.lock -> lock: boolean Lock strip so that it can't be transformed
-Sequence.mute -> mute: boolean
-Sequence.use_effect_default_fade -> use_default_fade: boolean Fade effect using the built-in default (usually make transition as long as effect strip)
-SequenceColorBalance.inverse_gain -> invert_gain: boolean
-SequenceColorBalance.inverse_gamma -> invert_gamma: boolean
-SequenceColorBalance.inverse_lift -> invert_lift: boolean
-ShaderNodeExtendedMaterial.diffuse -> use_diffuse: boolean Material Node outputs Diffuse
-ShaderNodeExtendedMaterial.invert_normal -> invert_normal: boolean Material Node uses inverted normal
-ShaderNodeExtendedMaterial.specular -> use_specular: boolean Material Node outputs Specular
-ShaderNodeMapping.clamp_maximum -> use_max: boolean Clamp the output coordinate to a maximum value
-ShaderNodeMapping.clamp_minimum -> use_min: boolean Clamp the output coordinate to a minimum value
-ShaderNodeMaterial.diffuse -> use_diffuse: boolean Material Node outputs Diffuse
-ShaderNodeMaterial.invert_normal -> invert_normal: boolean Material Node uses inverted normal
-ShaderNodeMaterial.specular -> use_specular: boolean Material Node outputs Specular
-ShaderNodeMixRGB.alpha -> use_alpha: boolean Include alpha of second input in this operation
-ShapeActionActuator.continue_last_frame -> use_continue_last_frame: boolean Restore last frame when switching on/off, otherwise play from the start each time
-ShapeKey.mute -> mute: boolean Mute this shape key
-ShrinkwrapModifier.cull_back_faces -> use_cull_back_faces: boolean Stop vertices from projecting to a back face on the target
-ShrinkwrapModifier.cull_front_faces -> use_cull_front_faces: boolean Stop vertices from projecting to a front face on the target
-ShrinkwrapModifier.keep_above_surface -> use_keep_above_surface: boolean
-ShrinkwrapModifier.negative -> use_negative_direction: boolean Allow vertices to move in the negative direction of axis
-ShrinkwrapModifier.positive -> use_positive_direction: boolean Allow vertices to move in the positive direction of axis
-ShrinkwrapModifier.x -> use_project_x: boolean
-ShrinkwrapModifier.y -> use_project_y: boolean
-ShrinkwrapModifier.z -> use_project_z: boolean
-SimpleDeformModifier.lock_x_axis -> lock_x: boolean
-SimpleDeformModifier.lock_y_axis -> lock_y: boolean
-SimpleDeformModifier.relative -> use_relative: boolean Sets the origin of deform space to be relative to the object
-SmokeDomainSettings.dissolve_smoke -> use_dissolve_smoke: boolean Enable smoke to disappear over time
-SmokeDomainSettings.dissolve_smoke_log -> use_dissolve_smoke_log: boolean Using 1/x
-SmokeDomainSettings.highres -> use_high_resolution: boolean Enable high resolution (using amplification)
-SmokeDomainSettings.initial_velocity -> use_initial_velocity: boolean Smoke inherits it's velocity from the emitter particle
-SmokeDomainSettings.viewhighres -> show_high_resolution: boolean Show high resolution (using amplification)
-NEGATE * SmokeFlowSettings.outflow -> use_outflow: boolean Deletes smoke from simulation
-SmoothModifier.x -> use_x: boolean
-SmoothModifier.y -> use_y: boolean
-SmoothModifier.z -> use_z: boolean
-SoftBodySettings.auto_step -> use_auto_step: boolean Use velocities for automagic step sizes
-SoftBodySettings.diagnose -> use_diagnose: boolean Turn on SB diagnose console prints
-SoftBodySettings.edge_collision -> use_edge_collision: boolean Edges collide too
-SoftBodySettings.estimate_matrix -> use_estimate_matrix: boolean estimate matrix .. split to COM , ROT ,SCALE
-SoftBodySettings.face_collision -> use_face_collision: boolean Faces collide too, SLOOOOOW warning
-SoftBodySettings.new_aero -> use_new_aero: boolean New aero(uses angle and length)
-SoftBodySettings.self_collision -> use_self_collision: boolean Enable naive vertex ball self collision
-SoftBodySettings.stiff_quads -> use_stiff_quads: boolean Adds diagonal springs on 4-gons
-SoftBodySettings.use_edges -> use_edges: boolean Use Edges as springs
-SoftBodySettings.use_goal -> use_goal: boolean Define forces for vertices to stick to animated position
-SolidifyModifier.invert -> invert_vertex_group: boolean Invert the vertex group influence
-SolidifyModifier.use_even_offset -> use_even_offset: boolean Maintain thickness by adjusting for sharp corners (slow, disable when not needed)
-SolidifyModifier.use_quality_normals -> use_quality_normals: boolean Calculate normals which result in more even thickness (slow, disable when not needed)
-SolidifyModifier.use_rim -> use_rim: boolean Create edge loops between the inner and outer surfaces on face edges (slow, disable when not needed)
-SolidifyModifier.use_rim_material -> use_rim_material: boolean Use in the next material for rim faces
-Sound.caching -> use_ram_cache: boolean The sound file is decoded and loaded into RAM
-SoundActuator.enable_sound_3d -> use_3d_sound: boolean Enable/Disable 3D Sound
-SpaceConsole.show_report_debug -> show_report_debug: boolean Display debug reporting info
-SpaceConsole.show_report_error -> show_report_error: boolean Display error text
-SpaceConsole.show_report_info -> show_report_info: boolean Display general information
-SpaceConsole.show_report_operator -> show_report_operator: boolean Display the operator log
-SpaceConsole.show_report_warn -> show_report_warning: boolean Display warnings
-SpaceDopeSheetEditor.automerge_keyframes -> use_automerge_keyframes: boolean Automatically merge nearby keyframes
-SpaceDopeSheetEditor.realtime_updates -> use_realtime_updates: boolean When transforming keyframes, changes to the animation data are flushed to other views
-SpaceDopeSheetEditor.show_cframe_indicator -> show_frame_indicator: boolean Show frame number beside the current frame indicator line
-SpaceDopeSheetEditor.show_seconds -> show_seconds: boolean, (read-only) Show timing in seconds not frames
-SpaceDopeSheetEditor.show_sliders -> show_sliders: boolean Show sliders beside F-Curve channels
-SpaceDopeSheetEditor.use_marker_sync -> use_marker_sync: boolean Sync Markers with keyframe edits
-SpaceGraphEditor.automerge_keyframes -> use_automerge_keyframes: boolean Automatically merge nearby keyframes
-SpaceGraphEditor.has_ghost_curves -> has_ghost_curves: boolean Graph Editor instance has some ghost curves stored
-SpaceGraphEditor.only_selected_curves_handles -> use_only_selected_curves_handles: boolean Only keyframes of selected F-Curves are visible and editable
-SpaceGraphEditor.only_selected_keyframe_handles -> use_only_selected_keyframe_handles: boolean Only show and edit handles of selected keyframes
-SpaceGraphEditor.realtime_updates -> use_realtime_updates: boolean When transforming keyframes, changes to the animation data are flushed to other views
-SpaceGraphEditor.show_cframe_indicator -> show_frame_indicator: boolean Show frame number beside the current frame indicator line
-SpaceGraphEditor.show_cursor -> show_cursor: boolean Show 2D cursor
-SpaceGraphEditor.show_handles -> show_handles: boolean Show handles of Bezier control points
-SpaceGraphEditor.show_seconds -> show_seconds: boolean, (read-only) Show timing in seconds not frames
-SpaceGraphEditor.show_sliders -> show_sliders: boolean Show sliders beside F-Curve channels
-SpaceImageEditor.draw_repeated -> show_repeated: boolean Draw the image repeated outside of the main view
-SpaceImageEditor.image_painting -> use_image_paint: boolean Enable image painting mode
-SpaceImageEditor.image_pin -> use_image_pin: boolean Display current image regardless of object selection
-SpaceImageEditor.show_paint -> show_paint: boolean, (read-only) Show paint related properties
-SpaceImageEditor.show_render -> show_render: boolean, (read-only) Show render related properties
-SpaceImageEditor.show_uvedit -> show_uvedit: boolean, (read-only) Show UV editing related properties
-SpaceImageEditor.update_automatically -> use_realtime_updates: boolean Update other affected window spaces automatically to reflect changes during interactive operations such as transform
-SpaceImageEditor.use_grease_pencil -> use_grease_pencil: boolean Display and edit the grease pencil freehand annotations overlay
-SpaceLogicEditor.actuators_show_active_objects -> show_actuators_active_objects: boolean Show actuators of active object
-SpaceLogicEditor.actuators_show_active_states -> show_actuators_active_states: boolean Show only actuators connected to active states
-SpaceLogicEditor.actuators_show_linked_controller -> show_actuators_linked_controller: boolean Show linked objects to the actuator
-SpaceLogicEditor.actuators_show_selected_objects -> show_actuators_selected_objects: boolean Show actuators of all selected objects
-SpaceLogicEditor.controllers_show_active_objects -> show_controllers_active_objects: boolean Show controllers of active object
-SpaceLogicEditor.controllers_show_linked_controller -> show_controllers_linked_controller: boolean Show linked objects to sensor/actuator
-SpaceLogicEditor.controllers_show_selected_objects -> show_controllers_selected_objects: boolean Show controllers of all selected objects
-SpaceLogicEditor.sensors_show_active_objects -> show_sensors_active_objects: boolean Show sensors of active object
-SpaceLogicEditor.sensors_show_active_states -> show_sensors_active_states: boolean Show only sensors connected to active states
-SpaceLogicEditor.sensors_show_linked_controller -> show_sensors_linked_controller: boolean Show linked objects to the controller
-SpaceLogicEditor.sensors_show_selected_objects -> show_sensors_selected_objects: boolean Show sensors of all selected objects
-SpaceNLA.realtime_updates -> use_realtime_updates: boolean When transforming strips, changes to the animation data are flushed to other views
-SpaceNLA.show_cframe_indicator -> show_frame_indicator: boolean Show frame number beside the current frame indicator line
-SpaceNLA.show_seconds -> show_seconds: boolean, (read-only) Show timing in seconds not frames
-SpaceNLA.show_strip_curves -> show_strip_curves: boolean Show influence curves on strips
-SpaceNodeEditor.backdrop -> show_backdrop: boolean Use active Viewer Node output as backdrop for compositing nodes
-SpaceOutliner.match_case_sensitive -> use_match_case_sensitive: boolean Only use case sensitive matches of search string
-SpaceOutliner.match_complete -> use_match_complete: boolean Only use complete matches of search string
-SpaceOutliner.show_restriction_columns -> show_restriction_columns: boolean Show column
-SpaceProperties.brush_texture -> show_brush_texture: boolean Show brush textures
-SpaceProperties.use_pin_id -> use_pin_id: boolean Use the pinned context
-SpaceSequenceEditor.draw_frames -> show_frames: boolean Draw frames rather than seconds
-SpaceSequenceEditor.draw_safe_margin -> show_safe_margin: boolean Draw title safe margins in preview
-SpaceSequenceEditor.separate_color_preview -> show_separate_color: boolean Separate color channels in preview
-SpaceSequenceEditor.show_cframe_indicator -> show_frame_indicator: boolean Show frame number beside the current frame indicator line
-SpaceSequenceEditor.use_grease_pencil -> use_grease_pencil: boolean Display and edit the grease pencil freehand annotations overlay
-SpaceSequenceEditor.use_marker_sync -> use_marker_sync: boolean Transform markers as well as strips
-SpaceTextEditor.find_all -> use_find_all: boolean Search in all text datablocks, instead of only the active one
-SpaceTextEditor.find_wrap -> use_find_wrap: boolean Search again from the start of the file when reaching the end
-SpaceTextEditor.line_numbers -> show_line_numbers: boolean Show line numbers next to the text
-SpaceTextEditor.live_edit -> use_live_edit: boolean Run python while editing
-SpaceTextEditor.overwrite -> use_overwrite: boolean Overwrite characters when typing rather than inserting them
-SpaceTextEditor.syntax_highlight -> show_syntax_highlight: boolean Syntax highlight for scripting
-SpaceTextEditor.word_wrap -> use_word_wrap: boolean Wrap words if there is not enough horizontal space
-SpaceTimeline.only_selected -> show_only_selected: boolean Show keyframes for active Object and/or its selected channels only
-SpaceTimeline.play_all_3d -> use_play_3d_editors: boolean
-SpaceTimeline.play_anim -> use_play_animation_editors: boolean
-SpaceTimeline.play_buttons -> use_play_properties_editors: boolean
-SpaceTimeline.play_image -> use_play_image_editors: boolean
-SpaceTimeline.play_nodes -> use_play_node_editors: boolean
-SpaceTimeline.play_sequencer -> use_play_sequence_editors: boolean
-SpaceTimeline.play_top_left -> use_play_top_left_3d_editor: boolean
-SpaceTimeline.show_cframe_indicator -> show_frame_indicator: boolean Show frame number beside the current frame indicator line
-SpaceUVEditor.constrain_to_image_bounds -> use_constrain_to_image_bounds: boolean Constraint to stay within the image bounds while editing
-SpaceUVEditor.draw_modified_edges -> show_modified_edges: boolean Draw edges after modifiers are applied
-SpaceUVEditor.draw_other_objects -> show_other_objects: boolean Draw other selected objects that share the same image
-SpaceUVEditor.draw_smooth_edges -> show_smooth_edges: boolean Draw UV edges anti-aliased
-SpaceUVEditor.draw_stretch -> show_stretch: boolean Draw faces colored according to the difference in shape between UVs and their 3D coordinates (blue for low distortion, red for high distortion)
-SpaceUVEditor.live_unwrap -> use_live_unwrap: boolean Continuously unwrap the selected UV island while transforming pinned vertices
-SpaceUVEditor.normalized_coordinates -> show_normalized_coordinates: boolean Display UV coordinates from 0.0 to 1.0 rather than in pixels
-SpaceUVEditor.snap_to_pixels -> use_snap_to_pixels: boolean Snap UVs to pixel locations while editing
-SpaceView3D.all_object_origins -> show_all_objects_origin: boolean Show the object origin center dot for all (selected and unselected) objects
-SpaceView3D.display_background_images -> show_background_images: boolean Display reference images behind objects in the 3D View
-SpaceView3D.display_floor -> show_floor: boolean Show the ground plane grid in perspective view
-SpaceView3D.display_render_override -> show_only_render: boolean Display only objects which will be rendered
-SpaceView3D.display_x_axis -> show_axis_x: boolean Show the X axis line in perspective view
-SpaceView3D.display_y_axis -> show_axis_y: boolean Show the Y axis line in perspective view
-SpaceView3D.display_z_axis -> show_axis_z: boolean Show the Z axis line in perspective view
-SpaceView3D.layers -> layers: boolean Layers visible in this 3D View
-SpaceView3D.lock_camera_and_layers -> lock_camera_and_layers: boolean Use the scene's active camera and layers in this view, rather than local layers
-SpaceView3D.manipulator -> use_manipulator: boolean Use a 3D manipulator widget for controlling transforms
-SpaceView3D.manipulator_rotate -> use_manipulator_rotate: boolean Use the manipulator for rotation transformations
-SpaceView3D.manipulator_scale -> use_manipulator_scale: boolean Use the manipulator for scale transformations
-SpaceView3D.manipulator_translate -> use_manipulator_translate: boolean Use the manipulator for movement transformations
-SpaceView3D.occlude_geometry -> use_occlude_geometry: boolean Limit selection to visible (clipped with depth buffer)
-SpaceView3D.outline_selected -> show_outline_selected: boolean Show an outline highlight around selected objects in non-wireframe views
-SpaceView3D.pivot_point_align -> use_pivot_point_align: boolean Manipulate object centers only
-SpaceView3D.relationship_lines -> show_relationship_lines: boolean Show dashed lines indicating parent or constraint relationships
-SpaceView3D.textured_solid -> show_textured_solid: boolean Display face-assigned textures in solid view
-SpaceView3D.used_layers -> layers_used: boolean, (read-only) Layers that contain something
-SpeedControlSequence.curve_compress_y -> use_curve_compress_y: boolean Scale F-Curve value to get the target frame number, F-Curve value runs from 0.0 to 1.0
-SpeedControlSequence.curve_velocity -> use_curve_velocity: boolean Interpret the F-Curve value as a velocity instead of a frame number
-SpeedControlSequence.frame_blending -> use_frame_blend: boolean Blend two frames into the target for a smoother result
-Spline.bezier_u -> use_bezier_u: boolean Make this nurbs curve or surface act like a bezier spline in the U direction (Order U must be 3 or 4, Cyclic U must be disabled)
-Spline.bezier_v -> use_bezier_v: boolean Make this nurbs surface act like a bezier spline in the V direction (Order V must be 3 or 4, Cyclic V must be disabled)
-Spline.cyclic_u -> use_cyclic_u: boolean Make this curve or surface a closed loop in the U direction
-Spline.cyclic_v -> use_cyclic_v: boolean Make this surface a closed loop in the V direction
-Spline.endpoint_u -> use_endpoint_u: boolean Make this nurbs curve or surface meet the endpoints in the U direction (Cyclic U must be disabled)
-Spline.endpoint_v -> use_endpoint_v: boolean Make this nurbs surface meet the endpoints in the V direction (Cyclic V must be disabled)
-Spline.hide -> hide: boolean Hide this curve in editmode
-Spline.smooth -> use_smooth: boolean Smooth the normals of the surface or beveled curve
-SplineIKConstraint.chain_offset -> use_chain_offset: boolean Offset the entire chain relative to the root joint
-SplineIKConstraint.even_divisions -> use_even_divisions: boolean Ignore the relative lengths of the bones when fitting to the curve
-SplineIKConstraint.use_curve_radius -> use_curve_radius: boolean Average radius of the endpoints is used to tweak the X and Z Scaling of the bones, on top of XZ Scale mode
-SplineIKConstraint.y_stretch -> use_y_stretch: boolean Stretch the Y axis of the bones to fit the curve
-
-SpotLamp.auto_clip_end -> use_auto_clip_end: boolean Automatic calculation of clipping-end, based on visible vertices
-SpotLamp.auto_clip_start -> use_auto_clip_start: boolean Automatic calculation of clipping-start, based on visible vertices
-SpotLamp.halo -> use_halo: boolean Renders spotlight with a volumetric halo (Buffer Shadows)
-SpotLamp.only_shadow -> use_only_shadow: boolean Causes light to cast shadows only without illuminating objects
-SpotLamp.shadow_layer -> use_shadow_layer: boolean Causes only objects on the same layer to cast shadows
-SpotLamp.show_cone -> show_cone: boolean Draw transparent cone in 3D view to visualize which objects are contained in it
-SpotLamp.sphere -> use_sphere: boolean Sets light intensity to zero beyond lamp distance
-SpotLamp.square -> use_square: boolean Casts a square spot light shape
-StateActuator.state -> states: boolean
-SubsurfModifier.optimal_display -> show_only_control_edges: boolean Skip drawing/rendering of interior subdivided edges
-SubsurfModifier.subsurf_uv -> use_subsurf_uv: boolean Use subsurf to subdivide UVs
-SunLamp.only_shadow -> use_only_shadow: boolean Causes light to cast shadows only without illuminating objects
-SunLamp.shadow_layer -> use_shadow_layer: boolean Causes only objects on the same layer to cast shadows
-SurfaceCurve.map_along_length -> use_map_along_length: boolean Generate texture mapping coordinates following the curve direction, rather than the local bounding box
-SurfaceCurve.vertex_normal_flip -> use_vertex_normal_flip: boolean Flip vertex normals towards the camera during render
-TexMapping.has_maximum -> use_max: boolean Whether to use maximum clipping value
-TexMapping.has_minimum -> use_min: boolean Whether to use minimum clipping value
-Text.dirty -> is_dirty: boolean, (read-only) Text file has been edited since last save
-Text.memory -> is_in_memory: boolean, (read-only) Text file is in memory, without a corresponding file on disk
-Text.modified -> is_modified: boolean, (read-only) Text file on disk is different than the one in memory
-Text.tabs_as_spaces -> use_tabs_as_spaces: boolean Automatically converts all new tabs into spaces
-Text.use_module -> use_module: boolean Register this text as a module on loading, Text name must end with '.py'
-TextCharacterFormat.bold -> use_bold: boolean
-TextCharacterFormat.italic -> use_italic: boolean
-TextCharacterFormat.style -> use_style: boolean
-TextCharacterFormat.underline -> use_underline: boolean
-TextCharacterFormat.wrap -> use_wrap: boolean
-TextCurve.fast -> use_fast_editing: boolean Don't fill polygons while editing
-TextCurve.map_along_length -> use_map_along_length: boolean Generate texture mapping coordinates following the curve direction, rather than the local bounding box
-TextCurve.vertex_normal_flip -> use_vertex_normal_flip: boolean Flip vertex normals towards the camera during render
-TextMarker.edit_all -> use_edit_all: boolean, (read-only) Edit all markers of the same group as one
-TextMarker.temporary -> is_temporary: boolean, (read-only) Marker is temporary
-Texture.use_color_ramp -> use_color_ramp: boolean Toggle color ramp operations
-Texture.use_nodes -> use_nodes: boolean Make this a node-based texture
-Texture.use_preview_alpha -> use_preview_alpha: boolean Show Alpha in Preview Render
-TextureNodeMixRGB.alpha -> use_alpha: boolean Include alpha of second input in this operation
-TextureSlot.negate -> invert: boolean Inverts the values of the texture to reverse its effect
-TextureSlot.rgb_to_intensity -> use_rgb_to_intensity: boolean Converts texture RGB values to intensity (gray) values
-TextureSlot.stencil -> use_stencil: boolean Use this texture as a blending value on the next texture
-ThemeBoneColorSet.colored_constraints -> show_colored_constraints: boolean Allow the use of colors indicating constraints/keyed status
-ThemeWidgetColors.shaded -> show_shaded: boolean
-ToolSettings.auto_normalize -> use_auto_normalize: boolean Ensure all bone-deforming vertex groups add up to 1.0 while weight painting
-ToolSettings.automerge_editing -> use_automerge_editing: boolean Automatically merge vertices moved to the same location
-ToolSettings.bone_sketching -> use_bone_sketching: boolean DOC BROKEN
-ToolSettings.etch_autoname -> use_etch_autoname: boolean DOC BROKEN
-ToolSettings.etch_overdraw -> use_etch_overdraw: boolean DOC BROKEN
-ToolSettings.etch_quick -> use_etch_quick: boolean DOC BROKEN
-ToolSettings.mesh_selection_mode -> mesh_selection_mode: boolean Which mesh elements selection works on
-ToolSettings.record_with_nla -> use_record_with_nla: boolean Add a new NLA Track + Strip for every loop/pass made over the animation to allow non-destructive tweaking
-ToolSettings.snap -> use_snap: boolean Snap during transform
-ToolSettings.snap_align_rotation -> use_snap_align_rotation: boolean Align rotation with the snapping target
-ToolSettings.snap_peel_object -> use_snap_peel_object: boolean Consider objects as whole when finding volume center
-ToolSettings.snap_project -> use_snap_project: boolean Project vertices on the surface of other objects
-ToolSettings.use_auto_keying -> use_keyframe_insert_auto: boolean Automatic keyframe insertion for Objects and Bones
-ToolSettings.uv_local_view -> show_local_view: boolean Draw only faces with the currently displayed image assigned
-ToolSettings.uv_sync_selection -> use_uv_sync_selection: boolean Keep UV and edit mode mesh selection in sync
-TrackToConstraint.target_z -> use_target_z: boolean Target's Z axis, not World Z axis, will constraint the Up direction
-TransformConstraint.extrapolate_motion -> use_motion_extrapolate: boolean Extrapolate ranges
-TransformSequence.uniform_scale -> use_uniform_scale: boolean Scale uniformly, preserving aspect ratio
-UILayout.active -> show_active: boolean
-UILayout.enabled -> show_enabled: boolean
-UVProjectModifier.override_image -> use_image_override: boolean Override faces' current images with the given image
-UnitSettings.use_separate -> use_separate: boolean Display units in pairs
-UserPreferencesEdit.auto_keyframe_insert_available -> use_keyframe_insert_available: boolean Automatic keyframe insertion in available curves
-UserPreferencesEdit.auto_keyframe_insert_keyingset -> use_keyframe_insert_keyingset: boolean Automatic keyframe insertion using active Keying Set
-UserPreferencesEdit.drag_immediately -> use_drag_immediately: boolean Moving things with a mouse drag confirms when releasing the button
-UserPreferencesEdit.duplicate_action -> use_duplicate_action: boolean Causes actions to be duplicated with the object
-UserPreferencesEdit.duplicate_armature -> use_duplicate_armature: boolean Causes armature data to be duplicated with the object
-UserPreferencesEdit.duplicate_curve -> use_duplicate_curve: boolean Causes curve data to be duplicated with the object
-UserPreferencesEdit.duplicate_fcurve -> use_duplicate_fcurve: boolean Causes F-curve data to be duplicated with the object
-UserPreferencesEdit.duplicate_lamp -> use_duplicate_lamp: boolean Causes lamp data to be duplicated with the object
-UserPreferencesEdit.duplicate_material -> use_duplicate_material: boolean Causes material data to be duplicated with the object
-UserPreferencesEdit.duplicate_mesh -> use_duplicate_mesh: boolean Causes mesh data to be duplicated with the object
-UserPreferencesEdit.duplicate_metaball -> use_duplicate_metaball: boolean Causes metaball data to be duplicated with the object
-UserPreferencesEdit.duplicate_particle -> use_duplicate_particle: boolean Causes particle systems to be duplicated with the object
-UserPreferencesEdit.duplicate_surface -> use_duplicate_surface: boolean Causes surface data to be duplicated with the object
-UserPreferencesEdit.duplicate_text -> use_duplicate_text: boolean Causes text data to be duplicated with the object
-UserPreferencesEdit.duplicate_texture -> use_duplicate_texture: boolean Causes texture data to be duplicated with the object
-UserPreferencesEdit.enter_edit_mode -> use_enter_edit_mode: boolean Enter Edit Mode automatically after adding a new object
-UserPreferencesEdit.global_undo -> use_global_undo: boolean Global undo works by keeping a full copy of the file itself in memory, so takes extra memory
-UserPreferencesEdit.grease_pencil_simplify_stroke -> use_grease_pencil_simplify_stroke: boolean Simplify the final stroke
-UserPreferencesEdit.grease_pencil_smooth_stroke -> use_grease_pencil_smooth_stroke: boolean Smooth the final stroke
-UserPreferencesEdit.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis
-UserPreferencesEdit.keyframe_insert_needed -> use_keyframe_insert_needed: boolean Keyframe insertion only when keyframe needed
-UserPreferencesEdit.use_auto_keying -> use_auto_keying: boolean Automatic keyframe insertion for Objects and Bones
-UserPreferencesEdit.use_negative_frames -> use_negative_frames: boolean Current frame number can be manually set to a negative value
-UserPreferencesEdit.use_visual_keying -> use_visual_keying: boolean Use Visual keying automatically for constrained objects
-UserPreferencesFilePaths.auto_save_temporary_files -> use_auto_save_temporary_files: boolean Automatic saving of temporary files
-UserPreferencesFilePaths.compress_file -> use_file_compression: boolean Enable file compression when saving .blend files
-UserPreferencesFilePaths.filter_file_extensions -> use_filter_files: boolean Display only files with extensions in the image select window
-UserPreferencesFilePaths.hide_dot_files_datablocks -> show_hidden_files_datablocks: boolean Hide files/datablocks that start with a dot(.*)
-UserPreferencesFilePaths.load_ui -> use_load_ui: boolean Load user interface setup when loading .blend files
-UserPreferencesFilePaths.save_preview_images -> use_save_preview_images: boolean Enables automatic saving of preview images in the .blend file
-UserPreferencesFilePaths.use_relative_paths -> use_relative_paths: boolean Default relative path option for the file selector
-UserPreferencesInput.continuous_mouse -> use_continuous_mouse: boolean Allow moving the mouse outside the view on some manipulations (transform, ui control drag)
-UserPreferencesInput.emulate_3_button_mouse -> use_emulate_3_button_mouse: boolean Emulates Middle Mouse with Alt+LeftMouse (doesn't work with Left Mouse Select option)
-UserPreferencesInput.emulate_numpad -> use_emulate_numpad: boolean Causes the 1 to 0 keys to act as the numpad (useful for laptops)
-UserPreferencesInput.invert_zoom_direction -> invert_zoom_direction: boolean Invert the axis of mouse movement for zooming
-UserPreferencesSystem.auto_execute_scripts -> use_scripts_auto_execute: boolean Allow any .blend file to run scripts automatically (unsafe with blend files from an untrusted source)
-UserPreferencesSystem.enable_all_codecs -> use_preview_images: boolean Enables automatic saving of preview images in the .blend file (Windows only)
-UserPreferencesSystem.international_fonts -> use_international_fonts: boolean Use international fonts
-UserPreferencesSystem.tabs_as_spaces -> use_tabs_as_spaces: boolean Automatically converts all new tabs into spaces for new and loaded text files
-UserPreferencesSystem.translate_buttons -> use_translate_buttons: boolean Translate button labels
-UserPreferencesSystem.translate_toolbox -> use_translate_toolbox: boolean Translate toolbox menu
-UserPreferencesSystem.translate_tooltips -> use_translate_tooltips: boolean Translate Tooltips
-UserPreferencesSystem.use_antialiasing -> use_antialiasing: boolean Use anti-aliasing for the 3D view (may impact redraw performance)
-UserPreferencesSystem.use_mipmaps -> use_mipmaps: boolean Scale textures for the 3D View (looks nicer but uses more memory and slows image reloading)
-UserPreferencesSystem.use_textured_fonts -> use_textured_fonts: boolean Use textures for drawing international fonts
-UserPreferencesSystem.use_vbos -> use_vertex_buffer_objects: boolean Use Vertex Buffer Objects (or Vertex Arrays, if unsupported) for viewport rendering
-UserPreferencesSystem.use_weight_color_range -> use_weight_color_range: boolean Enable color range used for weight visualization in weight painting mode
-UserPreferencesView.auto_depth -> use_mouse_auto_depth: boolean Use the depth under the mouse to improve view pan/rotate/zoom functionality
-UserPreferencesView.auto_perspective -> use_auto_perspective: boolean Automatically switch between orthographic and perspective when changing from top/front/side views
-UserPreferencesView.directional_menus -> use_directional_menus: boolean Otherwise menus, etc will always be top to bottom, left to right, no matter opening direction
-UserPreferencesView.display_object_info -> show_object_info: boolean Display objects name and frame number in 3D view
-UserPreferencesView.global_pivot -> use_global_pivot: boolean Lock the same rotation/scaling pivot in all 3D Views
-UserPreferencesView.global_scene -> use_global_scene: boolean Forces the current Scene to be displayed in all Screens
-UserPreferencesView.open_mouse_over -> use_mouse_over_open: boolean Open menu buttons and pulldowns automatically when the mouse is hovering
-UserPreferencesView.rotate_around_selection -> use_rotate_around_selection: boolean Use selection as the pivot point
-UserPreferencesView.show_mini_axis -> show_mini_axis: boolean Show a small rotating 3D axis in the bottom left corner of the 3D View
-UserPreferencesView.show_playback_fps -> show_playback_fps: boolean Show the frames per second screen refresh rate, while animation is played back
-UserPreferencesView.show_splash -> show_splash: boolean Display splash screen on startup
-UserPreferencesView.show_view_name -> show_view_name: boolean Show the name of the view's direction in each 3D View
-UserPreferencesView.tooltips -> show_tooltips: boolean Display tooltips
-UserPreferencesView.use_column_layout -> show_column_layout: boolean Use a column layout for toolbox
-UserPreferencesView.use_large_cursors -> show_large_cursors: boolean Use large mouse cursors when available
-UserPreferencesView.use_manipulator -> show_manipulator: boolean Use 3D transform manipulator
-UserPreferencesView.use_middle_mouse_paste -> use_mouse_mmb_paste: boolean In text window, paste with middle mouse button instead of panning
-UserPreferencesView.wheel_invert_zoom -> invert_mouse_wheel_zoom: boolean Swap the Mouse Wheel zoom direction
-UserPreferencesView.zoom_to_mouse -> use_zoom_to_mouse: boolean Zoom in towards the mouse pointer's position in the 3D view, rather than the 2D window center
-UserSolidLight.enabled -> use: boolean Enable this OpenGL light in solid draw mode
-VertexPaint.all_faces -> use_all_faces: boolean Paint on all faces inside brush
-VertexPaint.normals -> use_normal: boolean Applies the vertex normal before painting
-VertexPaint.spray -> use_spray: boolean Keep applying paint effect while holding mouse
-VisibilityActuator.children -> apply_to_children: boolean Set all the children of this object to the same visibility/occlusion recursively
-VisibilityActuator.occlusion -> use_occlusion: boolean Set the object to occlude objects behind it. Initialized from the object type in physics button
-VisibilityActuator.visible -> use_visible: boolean Set the objects visible. Initialized from the objects render restriction toggle (access in the outliner)
-VoxelData.still -> use_still_frame: boolean Always render a still frame from the voxel data sequence
-WaveModifier.cyclic -> use_cyclic: boolean Cyclic wave effect
-WaveModifier.normals -> use_normal: boolean Displace along normal
-WaveModifier.x -> use_x: boolean X axis motion
-WaveModifier.x_normal -> use_normal_x: boolean Enable displacement along the X normal
-WaveModifier.y -> use_y: boolean Y axis motion
-WaveModifier.y_normal -> use_normal_y: boolean Enable displacement along the Y normal
-WaveModifier.z_normal -> use_normal_z: boolean Enable displacement along the Z normal
-World.blend_sky -> use_sky_blend: boolean Render background with natural progression from horizon to zenith
-World.paper_sky -> use_sky_paper: boolean Flatten blend or texture coordinates
-World.real_sky -> use_sky_real: boolean Render background with a real horizon, relative to the camera angle
-WorldLighting.falloff -> use_falloff: boolean
-WorldLighting.pixel_cache -> use_cache: boolean Cache AO results in pixels and interpolate over neighbouring pixels for speedup (for Approximate)
-WorldLighting.use_ambient_occlusion -> use_ambient_occlusian: boolean Use Ambient Occlusion to add shadowing based on distance between objects
-WorldLighting.use_environment_lighting -> use_environment_lighting: boolean Add light coming from the environment
-WorldLighting.use_indirect_lighting -> use_indirect_lighting: boolean Add indirect light bouncing of surrounding objects
-WorldMistSettings.use_mist -> use_mist: boolean Occlude objects with the environment color as they are further away
-WorldStarsSettings.use_stars -> use_stars: boolean Enable starfield generation
-WorldTextureSlot.map_blend -> use_map_blend: boolean Affect the color progression of the background
-WorldTextureSlot.map_horizon -> use_map_horizon: boolean Affect the color of the horizon
-WorldTextureSlot.map_zenith_down -> use_map_zenith_down: boolean Affect the color of the zenith below
-WorldTextureSlot.map_zenith_up -> use_map_zenith_up: boolean Affect the color of the zenith above
diff --git a/source/blender/makesrna/rna_cleanup/rna_cleaner.py b/source/blender/makesrna/rna_cleanup/rna_cleaner.py
index a0ce76d261d..f623b1c673d 100755
--- a/source/blender/makesrna/rna_cleanup/rna_cleaner.py
+++ b/source/blender/makesrna/rna_cleanup/rna_cleaner.py
@@ -6,6 +6,9 @@ This script is used to help cleaning RNA api.
Typical line in the input file (elements in [] are optional).
[comment *] ToolSettings.snap_align_rotation -> use_snap_align_rotation: boolean [Align rotation with the snapping target]
+
+Geterate output format from blender run this:
+ ./blender.bin --background --python ./release/scripts/modules/rna_info.py > source/blender/makesrna/rna_cleanup/out.txt
"""
@@ -73,18 +76,21 @@ def check_commandline():
return (inputfile, sort_priority)
-def check_prefix(prop):
+def check_prefix(prop, btype):
# reminder: props=[comment, changed, bclass, bfrom, bto, kwcheck, btype, description]
- if '_' in prop:
- prefix = prop.split('_')[0]
- if prefix not in kw_prefixes:
- return 'BAD-PREFIX: ' + prefix
+ if btype == "boolean":
+ if '_' in prop:
+ prefix = prop.split('_')[0]
+ if prefix not in kw_prefixes:
+ return 'BAD-PREFIX: ' + prefix
+ else:
+ return prefix + '_'
+ elif prop in kw:
+ return 'SPECIAL-KEYWORD: ' + prop
else:
- return prefix + '_'
- elif prop in kw:
- return 'SPECIAL-KEYWORD: ' + prop
+ return 'BAD-KEYWORD: ' + prop
else:
- return 'BAD-KEYWORD: ' + prop
+ return ""
def check_if_changed(a,b):
@@ -141,7 +147,7 @@ def get_props_from_txt(input_filename):
[btype, description] = [tail,'NO DESCRIPTION']
# keyword-check
- kwcheck = check_prefix(bto)
+ kwcheck = check_prefix(bto, btype)
# changed
changed = check_if_changed(bfrom, bto)
@@ -165,7 +171,7 @@ def get_props_from_py(input_filename):
props_length_max = [0 for i in rna_api[0]] # this way if the vector will take more elements we are safe
for index,props in enumerate(rna_api):
comment, changed, bclass, bfrom, bto, kwcheck, btype, description = props
- kwcheck = check_prefix(bto) # keyword-check
+ kwcheck = check_prefix(bto, btype) # keyword-check
changed = check_if_changed(bfrom, bto) # changed?
description = repr(description)
rna_api[index] = [comment, changed, bclass, bfrom, bto, kwcheck, btype, description]
@@ -189,11 +195,14 @@ def sort(props_list, sort_priority):
"""
# order based on the i-th element in lists
- i = sort_choices.index(sort_priority)
- if i == 0:
- props_list = sorted(props_list, key=lambda p: p[i], reverse=True)
+ if sort_priority == "class.from":
+ props_list = sorted(props_list, key=lambda p: (p[2], p[3]))
else:
- props_list = sorted(props_list, key=lambda p: p[i])
+ i = sort_choices.index(sort_priority)
+ if i == 0:
+ props_list = sorted(props_list, key=lambda p: p[i], reverse=True)
+ else:
+ props_list = sorted(props_list, key=lambda p: p[i])
print ('\nSorted by %s.' % font_bold(sort_priority))
return props_list
@@ -266,10 +275,10 @@ def main():
global sort_choices, default_sort_choice
global kw_prefixes, kw
- sort_choices = ['note','changed','class','from','to','kw']
- default_sort_choice = sort_choices[0]
+ sort_choices = ['note','changed','class','from','to','kw', 'class.from']
+ default_sort_choice = sort_choices[-1]
kw_prefixes = [ 'active','apply','bl','exclude','has','invert','is','lock', \
- 'pressed','show','show_only','use','use_only','layers','states']
+ 'pressed','show','show_only','use','use_only','layers','states', 'select']
kw = ['active','hide','invert','select','layers','mute','states','use','lock']
input_filename, sort_priority = check_commandline()
diff --git a/source/blender/makesrna/rna_cleanup/rna_cleaner_merge.py b/source/blender/makesrna/rna_cleanup/rna_cleaner_merge.py
new file mode 100755
index 00000000000..90b8f021d01
--- /dev/null
+++ b/source/blender/makesrna/rna_cleanup/rna_cleaner_merge.py
@@ -0,0 +1,62 @@
+#! /usr/bin/env python3.1
+
+import sys
+
+'''
+Example usage:
+ python3 rna_cleaner_merge.py out_work.py rna_booleans_work.py
+'''
+def main():
+
+ def work_line_id(line):
+ return line[2].split("|")[-1], line[3] # class/from
+
+
+ if not (sys.argv[-1].endswith(".py") and sys.argv[-2].endswith(".py")):
+ print("Only accepts 2 py files as arguments.")
+
+ sys.path.insert(0, ".")
+
+ mod_from = __import__(sys.argv[-1][:-3])
+ mod_to = __import__(sys.argv[-2][:-3])
+
+ mod_to_dict = dict([(work_line_id(line), line) for line in mod_to.rna_api])
+ mod_from_dict = dict([(work_line_id(line), line) for line in mod_from.rna_api])
+
+ rna_api_new = []
+
+ for key, val_orig in mod_to_dict.items():
+ try:
+ val = mod_from_dict.pop(key)
+ except:
+ # print("not found", key)
+ val = val_orig
+
+ # always take the class from the base
+ val = list(val)
+ val[2] = val_orig[2]
+ print(val_orig[2])
+ val = tuple(val)
+
+ rna_api_new.append(val)
+
+ def write_work_file(file_path, rna_api):
+ rna_api = list(rna_api)
+ rna_api.sort(key=work_line_id)
+ file_out = open(file_path, "w")
+ file_out.write("rna_api = [\n")
+ for line in rna_api:
+ file_out.write(" %s,\n" % (repr(line)))
+ file_out.write("]\n")
+ file_out.close()
+
+ file_path = sys.argv[-2][:-3] + "_merged.py"
+ write_work_file(file_path, rna_api_new)
+
+ if mod_from_dict:
+ file_path = sys.argv[-2][:-3] + "_lost.py"
+ write_work_file(file_path, list(mod_from_dict.values()))
+ print("Warning '%s' contains lost %d items from module %s.py" % (file_path, len(mod_from_dict), mod_from.__name__))
+
+if __name__ == "__main__":
+ main()
diff --git a/source/blender/makesrna/rna_cleanup/rna_properties.txt b/source/blender/makesrna/rna_cleanup/rna_properties.txt
index 0c0b7e1070b..1d68aa0b669 100644
--- a/source/blender/makesrna/rna_cleanup/rna_properties.txt
+++ b/source/blender/makesrna/rna_cleanup/rna_properties.txt
@@ -1,3190 +1,4605 @@
-Action.fcurves -> fcurves: collection, (read-only) The individual F-Curves that make up the Action
-Action.groups -> groups: collection, (read-only) Convenient groupings of F-Curves
-Action.pose_markers -> pose_markers: collection, (read-only) Markers specific to this Action, for labeling poses
-ActionActuator.action -> action: pointer
-ActionActuator.blendin -> blendin: int Number of frames of motion blending
-ActionActuator.frame_end -> frame_end: int
-ActionActuator.frame_property -> frame_property: string Assign the action's current frame number to this property
-ActionActuator.frame_start -> frame_start: int
-ActionActuator.mode -> mode: enum Action playback type
-ActionActuator.priority -> priority: int Execution priority - lower numbers will override actions with higher numbers. With 2 or more actions at once, the overriding channels must be lower in the stack
-ActionActuator.property -> property: string Use this property to define the Action position
-ActionConstraint.action -> action: pointer
-ActionConstraint.frame_end -> frame_end: int Last frame of the Action to use
-ActionConstraint.frame_start -> frame_start: int First frame of the Action to use
-ActionConstraint.maximum -> max: float Maximum value for target channel range
-ActionConstraint.minimum -> min: float Minimum value for target channel range
-ActionConstraint.subtarget -> subtarget: string
-ActionConstraint.target -> target: pointer Target Object
-ActionConstraint.transform_channel -> transform_channel: enum Transformation channel from the target that is used to key the Action
-ActionGroup.channels -> channels: collection, (read-only) F-Curves in this group
-ActionGroup.custom_color -> custom_color: int Index of custom color set
-ActionGroup.name -> name: string
-Actuator.name -> name: string
-Actuator.type -> type: enum
-ActuatorSensor.actuator -> actuator: string Actuator name, actuator active state modifications will be detected
-Addon.module -> module: string Module name
-AnimData.action -> action: pointer Active Action for this datablock
-AnimData.action_blending -> action_blend_type: enum Method used for combining Active Action's result with result of NLA stack
-AnimData.action_extrapolation -> action_extrapolation: enum Action to take for gaps past the Active Action's range (when evaluating with NLA)
-AnimData.action_influence -> action_influence: float Amount the Active Action contributes to the result of the NLA stack
-AnimData.drivers -> drivers: collection, (read-only) The Drivers/Expressions for this datablock
-AnimData.nla_tracks -> nla_tracks: collection, (read-only) NLA Tracks (i.e. Animation Layers)
-AnimViz.motion_paths -> motion_paths: pointer, (read-only) Motion Path settings for visualisation
-AnimViz.onion_skinning -> onion_skin_frames: pointer, (read-only) Onion Skinning (ghosting) settings for visualisation
-AnimVizMotionPaths.after_current -> after_current: int Number of frames to show after the current frame (only for 'Around Current Frame' Onion-skinning method)
-AnimVizMotionPaths.bake_location -> bake_location: enum When calculating Bone Paths, use Head or Tips
-AnimVizMotionPaths.before_current -> before_current: int Number of frames to show before the current frame (only for 'Around Current Frame' Onion-skinning method)
-AnimVizMotionPaths.frame_end -> frame_end: int End frame of range of paths to display/calculate (not for 'Around Current Frame' Onion-skinning method)
-AnimVizMotionPaths.frame_start -> frame_start: int Starting frame of range of paths to display/calculate (not for 'Around Current Frame' Onion-skinning method)
-AnimVizMotionPaths.frame_step -> frame_step: int Number of frames between paths shown (not for 'On Keyframes' Onion-skinning method)
-AnimVizMotionPaths.type -> type: enum Type of range to show for Motion Paths
-AnimVizOnionSkinning.after_current -> after_current: int Number of frames to show after the current frame (only for 'Around Current Frame' Onion-skinning method)
-AnimVizOnionSkinning.before_current -> before_current: int Number of frames to show before the current frame (only for 'Around Current Frame' Onion-skinning method)
-AnimVizOnionSkinning.frame_end -> frame_end: int End frame of range of Ghosts to display (not for 'Around Current Frame' Onion-skinning method)
-AnimVizOnionSkinning.frame_start -> frame_start: int Starting frame of range of Ghosts to display (not for 'Around Current Frame' Onion-skinning method)
-AnimVizOnionSkinning.frame_step -> frame_step: int Number of frames between ghosts shown (not for 'On Keyframes' Onion-skinning method)
-AnimVizOnionSkinning.type -> type: enum Method used for determining what ghosts get drawn
-Area.active_space -> active_space: pointer, (read-only) Space currently being displayed in this area
-Area.regions -> regions: collection, (read-only) Regions this area is subdivided in
-Area.spaces -> spaces: collection, (read-only) Spaces contained in this area, the first space is active
-Area.type -> type: enum Space type
-AreaLamp.gamma -> gamma: float Light gamma correction value
-AreaLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float Threshold for Adaptive Sampling (Raytraced shadows)
-AreaLamp.shadow_color -> shadow_color: float Color of shadows cast by the lamp
-AreaLamp.shadow_method -> shadow_method: enum Method to compute lamp shadow with
-AreaLamp.shadow_ray_samples_x -> shadow_ray_samples_x: int Amount of samples taken extra (samples x samples)
-AreaLamp.shadow_ray_samples_y -> shadow_ray_samples_y: int Amount of samples taken extra (samples x samples)
-AreaLamp.shadow_ray_sampling_method -> shadow_ray_sample_method: enum Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower
-AreaLamp.shadow_soft_size -> shadow_soft_size: float Light size for ray shadow sampling (Raytraced shadows)
-AreaLamp.shape -> shape: enum Shape of the area lamp
-AreaLamp.size -> size: float Size of the area of the area Lamp, X direction size for Rectangle shapes
-AreaLamp.size_y -> size_y: float Size of the area of the area Lamp in the Y direction for Rectangle shapes
-Armature.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Armature.bones -> bones: collection, (read-only)
-Armature.drawtype -> drawtype: enum
-Armature.edit_bones -> edit_bones: collection, (read-only)
-Armature.ghost_frame_end -> ghost_frame_end: int End frame of range of Ghosts to display (not for 'Around Current Frame' Onion-skinning method)
-Armature.ghost_frame_start -> ghost_frame_start: int Starting frame of range of Ghosts to display (not for 'Around Current Frame' Onion-skinning method)
-Armature.ghost_size -> ghost_size: int Frame step for Ghosts (not for 'On Keyframes' Onion-skinning method)
-Armature.ghost_step -> ghost_step: int Number of frame steps on either side of current frame to show as ghosts (only for 'Around Current Frame' Onion-skinning method)
-Armature.ghost_type -> ghost_type: enum Method of Onion-skinning for active Action
-Armature.pose_position -> pose_position: enum Show armature in binding pose or final posed state
-ArmatureActuator.bone -> bone: string Bone on which the constraint is defined
-ArmatureActuator.constraint -> constraint: string Name of the constraint you want to control
-ArmatureActuator.mode -> mode: enum
-ArmatureActuator.secondary_target -> secondary_target: pointer Set weight of this constraint
-ArmatureActuator.target -> target: pointer Set this object as the target of the constraint
-ArmatureActuator.weight -> weight: float Set weight of this constraint
-ArmatureBones.active -> active: pointer Armatures active bone
-ArmatureEditBones.active -> active: pointer Armatures active edit bone
-ArmatureModifier.object -> object: pointer Armature object to deform with
-ArmatureModifier.vertex_group -> vertex_group: string Vertex group name
-ArmatureSensor.bone -> bone: string Identify the bone to check value from
-ArmatureSensor.constraint -> constraint: string Identify the bone constraint to check value from
-ArmatureSensor.test_type -> test_type: enum Type of value and test
-ArmatureSensor.value -> value: float Specify value to be used in comparison
-ArrayModifier.constant_offset_displacement -> constant_offset_displacement: float
-ArrayModifier.count -> count: int Number of duplicates to make
-ArrayModifier.curve -> curve: pointer Curve object to fit array length to
-ArrayModifier.end_cap -> end_cap: pointer Mesh object to use as an end cap
-ArrayModifier.fit_type -> fit_type: enum Array length calculation method
-ArrayModifier.length -> length: float Length to fit array within
-ArrayModifier.merge_distance -> merge_distance: float Limit below which to merge vertices
-ArrayModifier.offset_object -> offset_object: pointer
-ArrayModifier.relative_offset_displacement -> relative_offset_displacement: float
-ArrayModifier.start_cap -> start_cap: pointer Mesh object to use as a start cap
-BackgroundImage.image -> image: pointer Image displayed and edited in this space
-BackgroundImage.image_user -> image_user: pointer, (read-only) Parameters defining which layer, pass and frame of the image is displayed
-BackgroundImage.offset_x -> offset_x: float Offsets image horizontally from the world origin
-BackgroundImage.offset_y -> offset_y: float Offsets image vertically from the world origin
-BackgroundImage.size -> size: float Scaling factor for the background image
-BackgroundImage.transparency -> transparency: float Amount to blend the image against the background color
-BackgroundImage.view_axis -> view_axis: enum The axis to display the image on
-BevelModifier.angle -> angle: float Angle above which to bevel edges
-BevelModifier.edge_weight_method -> edge_weight_method: enum What edge weight to use for weighting a vertex
-BevelModifier.limit_method -> limit_method: enum
-BevelModifier.width -> width: float Bevel value/amount
-BezierSplinePoint.co -> co: float Coordinates of the control point
-BezierSplinePoint.handle1 -> handle_left: float Coordinates of the first handle
-BezierSplinePoint.handle1_type -> handle_left_type: enum Handle types
-BezierSplinePoint.handle2 -> handle_right: float Coordinates of the second handle
-BezierSplinePoint.handle2_type -> handle_right_type: enum Handle types
-BezierSplinePoint.radius -> radius: float, (read-only) Radius for bevelling
-BezierSplinePoint.tilt -> tilt: float Tilt in 3D View
-BezierSplinePoint.weight -> weight: float Softbody goal weight
-BlendTexture.flip_axis -> flip_axis: enum Flips the texture's X and Y axis
-BlendTexture.progression -> progression: enum Sets the style of the color blending
-BlenderRNA.structs -> structs: collection, (read-only)
-BoidRule.name -> name: string Boid rule name
-BoidRule.type -> type: enum, (read-only)
-BoidRuleAverageSpeed.level -> level: float How much velocity's z-component is kept constant
-BoidRuleAverageSpeed.speed -> speed: float Percentage of maximum speed
-BoidRuleAverageSpeed.wander -> wander: float How fast velocity's direction is randomized
-BoidRuleAvoid.fear_factor -> fear_factor: float Avoid object if danger from it is above this threshold
-BoidRuleAvoid.object -> object: pointer Object to avoid
-BoidRuleAvoidCollision.look_ahead -> look_ahead: float Time to look ahead in seconds
-BoidRuleFight.distance -> distance: float Attack boids at max this distance
-BoidRuleFight.flee_distance -> flee_distance: float Flee to this distance
-BoidRuleFollowLeader.distance -> distance: float Distance behind leader to follow
-BoidRuleFollowLeader.object -> object: pointer Follow this object instead of a boid
-BoidRuleFollowLeader.queue_size -> queue_size: int How many boids in a line
-BoidRuleGoal.object -> object: pointer Goal object
-BoidSettings.accuracy -> accuracy: float Accuracy of attack
-BoidSettings.active_boid_state -> active_boid_state: pointer, (read-only)
-BoidSettings.active_boid_state_index -> active_boid_state_index: int
-BoidSettings.aggression -> aggression: float Boid will fight this times stronger enemy
-BoidSettings.air_max_acc -> air_acc_max: float Maximum acceleration in air (relative to maximum speed)
-BoidSettings.air_max_ave -> air_ave_max: float Maximum angular velocity in air (relative to 180 degrees)
-BoidSettings.air_max_speed -> air_speed_max: float Maximum speed in air
-BoidSettings.air_min_speed -> air_speed_min: float Minimum speed in air (relative to maximum speed)
-BoidSettings.air_personal_space -> air_personal_space: float Radius of boids personal space in air (% of particle size)
-BoidSettings.banking -> bank: float Amount of rotation around velocity vector on turns
-BoidSettings.health -> health: float Initial boid health when born
-BoidSettings.height -> height: float Boid height relative to particle size
-BoidSettings.land_jump_speed -> land_jump_speed: float Maximum speed for jumping
-BoidSettings.land_max_acc -> land_acc_max: float Maximum acceleration on land (relative to maximum speed)
-BoidSettings.land_max_ave -> land_ave_max: float Maximum angular velocity on land (relative to 180 degrees)
-BoidSettings.land_max_speed -> land_speed_max: float Maximum speed on land
-BoidSettings.land_personal_space -> land_personal_space: float Radius of boids personal space on land (% of particle size)
-BoidSettings.land_stick_force -> land_stick_force: float How strong a force must be to start effecting a boid on land
-BoidSettings.landing_smoothness -> land_smooth: float How smoothly the boids land
-BoidSettings.range -> range: float The maximum distance from which a boid can attack
-BoidSettings.states -> states: collection, (read-only)
-BoidSettings.strength -> strength: float Maximum caused damage on attack per second
-BoidState.active_boid_rule -> active_boid_rule: pointer, (read-only)
-BoidState.active_boid_rule_index -> active_boid_rule_index: int
-BoidState.falloff -> falloff: float
-BoidState.name -> name: string Boid state name
-BoidState.rule_fuzziness -> rule_fuzzy: float
-BoidState.rules -> rules: collection, (read-only)
-BoidState.ruleset_type -> ruleset_type: enum How the rules in the list are evaluated
-BoidState.volume -> volume: float
-Bone.bbone_in -> bbone_in: float Length of first Bezier Handle (for B-Bones only)
-Bone.bbone_out -> bbone_out: float Length of second Bezier Handle (for B-Bones only)
-Bone.bbone_segments -> bbone_segments: int Number of subdivisions of bone (for B-Bones only)
-Bone.children -> children: collection, (read-only) Bones which are children of this bone
-Bone.envelope_distance -> envelope_distance: float Bone deformation distance (for Envelope deform only)
-Bone.envelope_weight -> envelope_weight: float Bone deformation weight (for Envelope deform only)
-Bone.head -> head: float Location of head end of the bone relative to its parent
-Bone.head_local -> head_local: float Location of head end of the bone relative to armature
-Bone.head_radius -> head_radius: float Radius of head of bone (for Envelope deform only)
-Bone.matrix -> matrix: float 3x3 bone matrix
-Bone.matrix_local -> matrix_local: float 4x4 bone matrix relative to armature
-Bone.name -> name: string
-Bone.parent -> parent: pointer, (read-only) Parent bone (in same Armature)
-Bone.tail -> tail: float Location of tail end of the bone
-Bone.tail_local -> tail_local: float Location of tail end of the bone relative to armature
-Bone.tail_radius -> tail_radius: float Radius of tail of bone (for Envelope deform only)
-BoneGroup.color_set -> color_set: enum Custom color set to use
-BoneGroup.colors -> colors: pointer, (read-only) Copy of the colors associated with the group's color set
-BoneGroup.name -> name: string
-BooleanModifier.object -> object: pointer Mesh object to use for Boolean operation
-BooleanModifier.operation -> operation: enum
-BooleanProperty.array_length -> array_length: int, (read-only) Maximum length of the array, 0 means unlimited
-Brush.blend -> blend: enum Brush blending mode
-Brush.clone_alpha -> clone_alpha: float Opacity of clone image display
-Brush.clone_image -> clone_image: pointer Image for clone tool
-Brush.clone_offset -> clone_offset: float
-Brush.color -> color: float
-Brush.curve -> curve: pointer, (read-only) Editable falloff curve
-Brush.direction -> direction: enum Mapping type to use for this image in the game engine
-Brush.imagepaint_tool -> imagepaint_tool: enum
-Brush.jitter -> jitter: float Jitter the position of the brush while painting
-Brush.rate -> rate: float Interval between paints for Airbrush
-Brush.sculpt_tool -> sculpt_tool: enum
-Brush.size -> size: int Diameter of the brush
-Brush.smooth_stroke_factor -> smooth_stroke_factor: float Higher values give a smoother stroke
-Brush.smooth_stroke_radius -> smooth_stroke_radius: int Minimum distance from last point before stroke continues
-Brush.spacing -> spacing: float Spacing between brush stamps
-Brush.strength -> strength: float The amount of pressure on the brush
-Brush.texture -> texture: pointer
-Brush.texture_slot -> texture_slot: pointer, (read-only)
-Brush.vertexpaint_tool -> vertexpaint_tool: enum
-BrushTextureSlot.angle -> angle: float Defines brush texture rotation
-BrushTextureSlot.map_mode -> map_mode: enum
-BuildModifier.frame_start -> frame_start: float Specify the start frame of the effect
-BuildModifier.length -> length: float Specify the total time the build effect requires
-BuildModifier.seed -> seed: int Specify the seed for random if used
-Camera.angle -> angle: float Perspective Camera lens field of view in degrees
-Camera.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Camera.clip_end -> clip_end: float Camera far clipping distance
-Camera.clip_start -> clip_start: float Camera near clipping distance
-Camera.dof_distance -> dof_distance: float Distance to the focus point for depth of field
-Camera.dof_object -> dof_object: pointer Use this object to define the depth of field focal point
-Camera.draw_size -> draw_size: float Apparent size of the Camera object in the 3D View
-Camera.lens -> lens: float Perspective Camera lens value in millimeters
-Camera.lens_unit -> lens_unit: enum Unit to edit lens in for the user interface
-Camera.ortho_scale -> ortho_scale: float Orthographic Camera scale (similar to zoom)
-Camera.passepartout_alpha -> passepartout_alpha: float Opacity (alpha) of the darkened overlay in Camera view
-Camera.shift_x -> shift_x: float Perspective Camera horizontal shift
-Camera.shift_y -> shift_y: float Perspective Camera vertical shift
-Camera.type -> type: enum Camera types
-CameraActuator.axis -> axis: enum Specify the axis the Camera will try to get behind
-CameraActuator.height -> height: float
-CameraActuator.max -> max: float
-CameraActuator.min -> min: float
-CameraActuator.object -> object: pointer Look at this Object
-CastModifier.cast_type -> cast_type: enum
-CastModifier.factor -> factor: float
-CastModifier.object -> object: pointer Control object: if available, its location determines the center of the effect
-CastModifier.radius -> radius: float Only deform vertices within this distance from the center of the effect (leave as 0 for infinite.)
-CastModifier.size -> size: float Size of projection shape (leave as 0 for auto.)
-CastModifier.vertex_group -> vertex_group: string Vertex group name
-ChildOfConstraint.subtarget -> subtarget: string
-ChildOfConstraint.target -> target: pointer Target Object
-ClampToConstraint.main_axis -> main_axis: enum Main axis of movement
-ClampToConstraint.target -> target: pointer Target Object
-ClothCollisionSettings.collision_quality -> collision_quality: int How many collision iterations should be done. (higher is better quality but slower)
-ClothCollisionSettings.friction -> friction: float Friction force if a collision happened. (higher = less movement)
-ClothCollisionSettings.group -> group: pointer Limit colliders to this Group
-ClothCollisionSettings.min_distance -> distance_min: float Minimum distance between collision objects before collision response takes in
-ClothCollisionSettings.self_collision_quality -> self_collision_quality: int How many self collision iterations should be done. (higher is better quality but slower)
-ClothCollisionSettings.self_friction -> self_friction: float Friction/damping with self contact
-ClothCollisionSettings.self_min_distance -> self_distance_min: float 0.5 means no distance at all, 1.0 is maximum distance
-ClothModifier.collision_settings -> collision_settings: pointer, (read-only)
-ClothModifier.point_cache -> point_cache: pointer, (read-only)
-ClothModifier.settings -> settings: pointer, (read-only)
-ClothSettings.air_damping -> air_damping: float Air has normally some thickness which slows falling things down
-ClothSettings.bending_stiffness -> bending_stiffness: float Wrinkle coefficient. (higher = less smaller but more big wrinkles)
-ClothSettings.bending_stiffness_max -> bending_stiffness_max: float Maximum bending stiffness value
-ClothSettings.bending_vertex_group -> bending_vertex_group: string Vertex group for fine control over bending stiffness
-ClothSettings.collider_friction -> collider_friction: float
-ClothSettings.effector_weights -> effector_weights: pointer, (read-only)
-ClothSettings.goal_default -> goal_default: float Default Goal (vertex target position) value, when no Vertex Group used
-ClothSettings.goal_friction -> goal_friction: float Goal (vertex target position) friction
-ClothSettings.goal_max -> goal_max: float Goal maximum, vertex group weights are scaled to match this range
-ClothSettings.goal_min -> goal_min: float Goal minimum, vertex group weights are scaled to match this range
-ClothSettings.goal_spring -> goal_spring: float Goal (vertex target position) spring stiffness
-ClothSettings.gravity -> gravity: float Gravity or external force vector
-ClothSettings.internal_friction -> internal_friction: float
-ClothSettings.mass -> mass: float Mass of cloth material
-ClothSettings.mass_vertex_group -> mass_vertex_group: string Vertex Group for pinning of vertices
-ClothSettings.pin_stiffness -> pin_stiffness: float Pin (vertex target position) spring stiffness
-ClothSettings.pre_roll -> pre_roll: int Simulation starts on this frame
-ClothSettings.quality -> quality: int Quality of the simulation in steps per frame. (higher is better quality but slower)
-ClothSettings.rest_shape_key -> rest_shape_key: pointer Shape key to use the rest spring lengths from
-ClothSettings.spring_damping -> spring_damping: float Damping of cloth velocity. (higher = more smooth, less jiggling)
-ClothSettings.structural_stiffness -> structural_stiffness: float Overall stiffness of structure
-ClothSettings.structural_stiffness_max -> structural_stiffness_max: float Maximum structural stiffness value
-ClothSettings.structural_stiffness_vertex_group -> structural_stiffness_vertex_group: string Vertex group for fine control over structural stiffness
-CloudsTexture.nabla -> nabla: float Size of derivative offset used for calculating normal
-CloudsTexture.noise_basis -> noise_basis: enum Sets the noise basis used for turbulence
-CloudsTexture.noise_depth -> noise_depth: int Sets the depth of the cloud calculation
-CloudsTexture.noise_size -> noise_size: float Sets scaling for noise input
-CloudsTexture.noise_type -> noise_type: enum
-CloudsTexture.stype -> stype: enum
-CollectionProperty.fixed_type -> fixed_type: pointer, (read-only) Fixed pointer type, empty if variable type
-CollisionModifier.settings -> settings: pointer, (read-only)
-CollisionSensor.material -> material: string Only look for Objects with this material
-CollisionSensor.property -> property: string Only look for Objects with this property
-CollisionSettings.absorption -> absorption: float How much of effector force gets lost during collision with this object (in percent)
-CollisionSettings.damping -> damping: float Amount of damping during collision
-CollisionSettings.damping_factor -> damping_factor: float Amount of damping during particle collision
-CollisionSettings.friction_factor -> friction_factor: float Amount of friction during particle collision
-CollisionSettings.inner_thickness -> inner_thickness: float Inner face thickness
-CollisionSettings.outer_thickness -> outer_thickness: float Outer face thickness
-CollisionSettings.permeability -> permeability: float Chance that the particle will pass through the mesh
-CollisionSettings.random_damping -> random_damping: float Random variation of damping
-CollisionSettings.random_friction -> random_friction: float Random variation of friction
-CollisionSettings.stickness -> stickness: float Amount of stickness to surface collision
-ColorRamp.elements -> elements: collection, (read-only)
-ColorRamp.interpolation -> interpolation: enum
-ColorRampElement.color -> color: float
-ColorRampElement.position -> position: float
-ColorSequence.color -> color: float
-CompositorNode.type -> type: enum, (read-only)
-CompositorNodeAlphaOver.premul -> premul: float Mix Factor
-CompositorNodeBilateralblur.iterations -> iterations: int
-CompositorNodeBilateralblur.sigma_color -> sigma_color: float
-CompositorNodeBilateralblur.sigma_space -> sigma_space: float
-CompositorNodeBlur.factor -> factor: float
-CompositorNodeBlur.factor_x -> factor_x: float
-CompositorNodeBlur.factor_y -> factor_y: float
-CompositorNodeBlur.filter_type -> filter_type: enum
-CompositorNodeBlur.sizex -> size_x: int
-CompositorNodeBlur.sizey -> size_y: int
-CompositorNodeChannelMatte.algorithm -> algorithm: enum Algorithm to use to limit channel
-CompositorNodeChannelMatte.channel -> channel: enum Channel used to determine matte
-CompositorNodeChannelMatte.color_space -> color_space: enum
-CompositorNodeChannelMatte.high -> high: float Values higher than this setting are 100% opaque
-CompositorNodeChannelMatte.limit_channel -> limit_channel: enum Limit by this channels value
-CompositorNodeChannelMatte.low -> low: float Values lower than this setting are 100% keyed
-CompositorNodeChromaMatte.acceptance -> acceptance: float Tolerance for a color to be considered a keying color
-CompositorNodeChromaMatte.cutoff -> cutoff: float Tolerance below which colors will be considered as exact matches
-CompositorNodeChromaMatte.gain -> gain: float Alpha gain
-CompositorNodeChromaMatte.lift -> lift: float Alpha lift
-CompositorNodeChromaMatte.shadow_adjust -> shadow_adjust: float Adjusts the brightness of any shadows captured
-CompositorNodeColorBalance.correction_formula -> correction_formula: enum
-CompositorNodeColorBalance.gain -> gain: float Correction for Highlights
-CompositorNodeColorBalance.gamma -> gamma: float Correction for Midtones
-CompositorNodeColorBalance.lift -> lift: float Correction for Shadows
-CompositorNodeColorBalance.offset -> offset: float Correction for Shadows
-CompositorNodeColorBalance.power -> power: float Correction for Midtones
-CompositorNodeColorBalance.slope -> slope: float Correction for Highlights
-CompositorNodeColorMatte.h -> h: float Hue tolerance for colors to be considered a keying color
-CompositorNodeColorMatte.s -> s: float Saturation Tolerance for the color
-CompositorNodeColorMatte.v -> v: float Value Tolerance for the color
-CompositorNodeColorSpill.algorithm -> algorithm: enum
-CompositorNodeColorSpill.channel -> channel: enum
-CompositorNodeColorSpill.limit_channel -> limit_channel: enum
-CompositorNodeColorSpill.ratio -> ratio: float Scale limit by value
-CompositorNodeColorSpill.unspill_blue -> unspill_blue: float Blue spillmap scale
-CompositorNodeColorSpill.unspill_green -> unspill_green: float Green spillmap scale
-CompositorNodeColorSpill.unspill_red -> unspill_red: float Red spillmap scale
-CompositorNodeCrop.x1 -> x1: int
-CompositorNodeCrop.x2 -> x2: int
-CompositorNodeCrop.y1 -> y1: int
-CompositorNodeCrop.y2 -> y2: int
-CompositorNodeCurveRGB.mapping -> mapping: pointer, (read-only)
-CompositorNodeCurveVec.mapping -> mapping: pointer, (read-only)
-CompositorNodeDBlur.angle -> angle: float
-CompositorNodeDBlur.center_x -> center_x: float
-CompositorNodeDBlur.center_y -> center_y: float
-CompositorNodeDBlur.distance -> distance: float
-CompositorNodeDBlur.iterations -> iterations: int
-CompositorNodeDBlur.spin -> spin: float
-CompositorNodeDBlur.zoom -> zoom: float
-CompositorNodeDefocus.angle -> angle: int Bokeh shape rotation offset in degrees
-CompositorNodeDefocus.bokeh -> bokeh: enum
-CompositorNodeDefocus.f_stop -> f_stop: float Amount of focal blur, 128=infinity=perfect focus, half the value doubles the blur radius
-CompositorNodeDefocus.max_blur -> blur_max: float blur limit, maximum CoC radius, 0=no limit
-CompositorNodeDefocus.samples -> samples: int Number of samples (16=grainy, higher=less noise)
-CompositorNodeDefocus.threshold -> threshold: float CoC radius threshold, prevents background bleed on in-focus midground, 0=off
-CompositorNodeDefocus.z_scale -> z_scale: float Scales the Z input when not using a zbuffer, controls maximum blur designated by the color white or input value 1
-CompositorNodeDiffMatte.falloff -> falloff: float Color distances below this additional threshold are partially keyed
-CompositorNodeDiffMatte.tolerance -> tolerance: float Color distances below this threshold are keyed
-CompositorNodeDilateErode.distance -> distance: int Distance to grow/shrink (number of iterations)
-CompositorNodeDistanceMatte.falloff -> falloff: float Color distances below this additional threshold are partially keyed
-CompositorNodeDistanceMatte.tolerance -> tolerance: float Color distances below this threshold are keyed
-CompositorNodeFilter.filter_type -> filter_type: enum
-CompositorNodeFlip.axis -> axis: enum
-CompositorNodeGlare.angle_offset -> angle_offset: float Streak angle offset in degrees
-CompositorNodeGlare.color_modulation -> color_modulation: float Amount of Color Modulation, modulates colors of streaks and ghosts for a spectral dispersion effect
-CompositorNodeGlare.fade -> fade: float Streak fade-out factor
-CompositorNodeGlare.glare_type -> glare_type: enum
-CompositorNodeGlare.iterations -> iterations: int
-CompositorNodeGlare.mix -> mix: float -1 is original image only, 0 is exact 50/50 mix, 1 is processed image only
-CompositorNodeGlare.quality -> quality: enum If not set to high quality, the effect will be applied to a low-res copy of the source image
-CompositorNodeGlare.size -> size: int Glow/glare size (not actual size; relative to initial size of bright area of pixels)
-CompositorNodeGlare.streaks -> streaks: int Total number of streaks
-CompositorNodeGlare.threshold -> threshold: float The glare filter will only be applied to pixels brighter than this value
-CompositorNodeHueCorrect.mapping -> mapping: pointer, (read-only)
-CompositorNodeHueSat.hue -> hue: float
-CompositorNodeHueSat.sat -> sat: float
-CompositorNodeHueSat.val -> val: float
-CompositorNodeIDMask.index -> index: int Pass index number to convert to alpha
-CompositorNodeImage.frames -> frames: int Number of images used in animation
-CompositorNodeImage.image -> image: pointer
-CompositorNodeImage.layer -> layer: enum
-CompositorNodeImage.offset -> offset: int Offsets the number of the frame to use in the animation
-CompositorNodeImage.start -> start: int
-CompositorNodeLevels.channel -> channel: enum
-CompositorNodeLumaMatte.high -> high: float Values higher than this setting are 100% opaque
-CompositorNodeLumaMatte.low -> low: float Values lower than this setting are 100% keyed
-CompositorNodeMapUV.alpha -> alpha: int
-CompositorNodeMapValue.max -> max: float
-CompositorNodeMapValue.min -> min: float
-CompositorNodeMapValue.offset -> offset: float
-CompositorNodeMapValue.size -> size: float
-CompositorNodeMath.operation -> operation: enum
-CompositorNodeMixRGB.blend_type -> blend_type: enum
-CompositorNodeOutputFile.exr_codec -> exr_codec: enum
-CompositorNodeOutputFile.filepath -> filepath: string Output path for the image, same functionality as render output.
-CompositorNodeOutputFile.frame_end -> frame_end: int
-CompositorNodeOutputFile.frame_start -> frame_start: int
-CompositorNodeOutputFile.image_type -> image_type: enum
-CompositorNodeOutputFile.quality -> quality: int
-CompositorNodePremulKey.mapping -> mapping: enum Conversion between premultiplied alpha and key alpha
-CompositorNodeRLayers.layer -> layer: enum
-CompositorNodeRLayers.scene -> scene: pointer
-CompositorNodeRotate.filter -> filter: enum Method to use to filter rotation
-CompositorNodeScale.space -> space: enum Coordinate space to scale relative to
-CompositorNodeSplitViewer.axis -> axis: enum
-CompositorNodeSplitViewer.factor -> factor: int
-CompositorNodeTexture.node_output -> node_output: int For node-based textures, which output node to use
-CompositorNodeTexture.texture -> texture: pointer
-CompositorNodeTime.curve -> curve: pointer, (read-only)
-CompositorNodeTime.end -> end: int
-CompositorNodeTime.start -> start: int
-CompositorNodeTonemap.adaptation -> adaptation: float If 0, global; if 1, based on pixel intensity
-CompositorNodeTonemap.contrast -> contrast: float Set to 0 to use estimate from input image
-CompositorNodeTonemap.correction -> correction: float If 0, same for all channels; if 1, each independent
-CompositorNodeTonemap.gamma -> gamma: float If not used, set to 1
-CompositorNodeTonemap.intensity -> intensity: float If less than zero, darkens image; otherwise, makes it brighter
-CompositorNodeTonemap.key -> key: float The value the average luminance is mapped to
-CompositorNodeTonemap.offset -> offset: float Normally always 1, but can be used as an extra control to alter the brightness curve
-CompositorNodeTonemap.tonemap_type -> tonemap_type: enum
-CompositorNodeValToRGB.color_ramp -> color_ramp: pointer, (read-only)
-CompositorNodeVecBlur.factor -> factor: float Scaling factor for motion vectors; actually 'shutter speed' in frames
-CompositorNodeVecBlur.max_speed -> speed_max: int Maximum speed, or zero for none
-CompositorNodeVecBlur.min_speed -> speed_min: int Minimum speed for a pixel to be blurred; used to separate background from foreground
-CompositorNodeVecBlur.samples -> samples: int
-ConsoleLine.current_character -> current_character: int
-ConsoleLine.line -> line: string Text in the line
-Constraint.influence -> influence: float Amount of influence constraint will have on the final solution
-Constraint.lin_error -> lin_error: float, (read-only) Amount of residual error in Blender space unit for constraints that work on position
-Constraint.name -> name: string Constraint name
-Constraint.owner_space -> owner_space: enum Space that owner is evaluated in
-Constraint.rot_error -> rot_error: float, (read-only) Amount of residual error in radiant for constraints that work on orientation
-Constraint.target_space -> target_space: enum Space that target is evaluated in
-Constraint.type -> type: enum, (read-only)
-ConstraintActuator.damping -> damping: int Damping factor: time constant (in frame) of low pass filter
-ConstraintActuator.damping_rotation -> damping_rotation: int Use a different damping for orientation
-ConstraintActuator.direction -> direction: enum Set the direction of the ray
-ConstraintActuator.direction_axis -> direction_axis: enum Select the axis to be aligned along the reference direction
-ConstraintActuator.distance -> distance: float Set the maximum length of ray
-ConstraintActuator.fh_damping -> fh_damping: float Damping factor of the Fh spring force
-ConstraintActuator.fh_height -> fh_height: float Height of the Fh area
-ConstraintActuator.limit -> limit: enum
-ConstraintActuator.limit_max -> limit_max: float
-ConstraintActuator.limit_min -> limit_min: float
-ConstraintActuator.material -> material: string Ray detects only Objects with this material
-ConstraintActuator.max_angle -> angle_max: float Maximum angle (in degree) allowed with target direction. No correction is done if angle with target direction is between min and max
-ConstraintActuator.max_rotation -> rotation_max: float Reference Direction
-ConstraintActuator.min_angle -> angle_min: float Minimum angle (in degree) to maintain with target direction. No correction is done if angle with target direction is between min and max
-ConstraintActuator.mode -> mode: enum The type of the constraint
-ConstraintActuator.property -> property: string Ray detect only Objects with this property
-ConstraintActuator.range -> range: float Set the maximum length of ray
-ConstraintActuator.spring -> spring: float Spring force within the Fh area
-ConstraintActuator.time -> time: int Maximum activation time in frame, 0 for unlimited
-ConstraintTarget.subtarget -> subtarget: string
-ConstraintTarget.target -> target: pointer Target Object
-Context.area -> area: pointer, (read-only)
-Context.main -> main: pointer, (read-only)
-Context.manager -> manager: pointer, (read-only)
-Context.mode -> mode: enum, (read-only)
-Context.region -> region: pointer, (read-only)
-Context.scene -> scene: pointer, (read-only)
-Context.screen -> screen: pointer, (read-only)
-Context.space_data -> space_data: pointer, (read-only)
-Context.tool_settings -> tool_settings: pointer, (read-only)
-Context.user_preferences -> user_preferences: pointer, (read-only)
-Context.window -> window: pointer, (read-only)
-ControlFluidSettings.attraction_radius -> attraction_radius: float Specifies the force field radius around the control object
-ControlFluidSettings.attraction_strength -> attraction_strength: float Force strength for directional attraction towards the control object
-ControlFluidSettings.end_time -> end_time: float Specifies time when the control particles are deactivated
-ControlFluidSettings.quality -> quality: float Specifies the quality which is used for object sampling. (higher = better but slower)
-ControlFluidSettings.start_time -> start_time: float Specifies time when the control particles are activated
-ControlFluidSettings.velocity_radius -> velocity_radius: float Specifies the force field radius around the control object
-ControlFluidSettings.velocity_strength -> velocity_strength: float Force strength of how much of the control object's velocity is influencing the fluid velocity
-Controller.name -> name: string
-Controller.state_number -> state_number: int Set Controller state index (1 to 30)
-Controller.type -> type: enum
-CopyLocationConstraint.head_tail -> head_tail: float Target along length of bone: Head=0, Tail=1
-CopyLocationConstraint.subtarget -> subtarget: string
-CopyLocationConstraint.target -> target: pointer Target Object
-CopyRotationConstraint.subtarget -> subtarget: string
-CopyRotationConstraint.target -> target: pointer Target Object
-CopyScaleConstraint.subtarget -> subtarget: string
-CopyScaleConstraint.target -> target: pointer Target Object
-CopyTransformsConstraint.head_tail -> head_tail: float Target along length of bone: Head=0, Tail=1
-CopyTransformsConstraint.subtarget -> subtarget: string
-CopyTransformsConstraint.target -> target: pointer Target Object
-Curve.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Curve.bevel_depth -> bevel_depth: float Bevel depth when not using a bevel object
-Curve.bevel_object -> bevel_object: pointer Curve object name that defines the bevel shape
-Curve.bevel_resolution -> bevel_resolution: int Bevel resolution when depth is non-zero and no specific bevel object has been defined
-Curve.dimensions -> dimensions: enum Select 2D or 3D curve type
-Curve.eval_time -> eval_time: float Parametric position along the length of the curve that Objects 'following' it should be at. Position is evaluated by dividing by the 'Path Length' value
-Curve.extrude -> extrude: float Amount of curve extrusion when not using a bevel object
-Curve.materials -> materials: collection, (read-only)
-Curve.path_length -> path_length: int The number of frames that are needed to traverse the path, defining the maximum value for the 'Evaluation Time' setting
-Curve.render_resolution_u -> render_resolution_u: int Surface resolution in U direction used while rendering. Zero skips this property
-Curve.render_resolution_v -> render_resolution_v: int Surface resolution in V direction used while rendering. Zero skips this property
-Curve.resolution_u -> resolution_u: int Surface resolution in U direction
-Curve.resolution_v -> resolution_v: int Surface resolution in V direction
-Curve.shape_keys -> shape_keys: pointer, (read-only)
-Curve.splines -> splines: collection, (read-only) Collection of splines in this curve data object
-Curve.taper_object -> taper_object: pointer Curve object name that defines the taper (width)
-Curve.texspace_loc -> texspace_loc: float Texture space location
-Curve.texspace_size -> texspace_size: float Texture space size
-Curve.twist_mode -> twist_mode: enum The type of tilt calculation for 3D Curves
-Curve.twist_smooth -> twist_smooth: float Smoothing iteration for tangents
-Curve.width -> width: float Scale the original width (1.0) based on given factor
-CurveMap.extend -> extend: enum, (read-only) Extrapolate the curve or extend it horizontally
-CurveMap.points -> points: collection, (read-only)
-CurveMapPoint.handle_type -> handle_type: enum, (read-only) Curve interpolation at this point: bezier or vector
-CurveMapPoint.location -> location: float, (read-only) X/Y coordinates of the curve point
-CurveMapping.black_level -> black_level: float For RGB curves, the color that black is mapped to
-CurveMapping.clip_max_x -> clip_max_x: float
-CurveMapping.clip_max_y -> clip_max_y: float
-CurveMapping.clip_min_x -> clip_min_x: float
-CurveMapping.clip_min_y -> clip_min_y: float
-CurveMapping.curves -> curves: collection, (read-only)
-CurveMapping.white_level -> white_level: float For RGB curves, the color that white is mapped to
-CurveModifier.deform_axis -> deform_axis: enum The axis that the curve deforms along
-CurveModifier.object -> object: pointer Curve object to deform with
-CurveModifier.vertex_group -> vertex_group: string Vertex group name
-CurveSplines.active -> active: pointer Active curve spline
-DampedTrackConstraint.subtarget -> subtarget: string
-DampedTrackConstraint.target -> target: pointer Target Object
-DampedTrackConstraint.track -> track: enum Axis that points to the target object
-DecimateModifier.face_count -> face_count: int, (read-only) The current number of faces in the decimated mesh
-DecimateModifier.ratio -> ratio: float Defines the ratio of triangles to reduce to
-DelaySensor.delay -> delay: int Delay in number of logic tics before the positive trigger (default 60 per second)
-DelaySensor.duration -> duration: int If >0, delay in number of logic tics before the negative trigger following the positive trigger
-DisplaceModifier.direction -> direction: enum
-DisplaceModifier.midlevel -> midlevel: float Material value that gives no displacement
-DisplaceModifier.strength -> strength: float
-DisplaceModifier.texture -> texture: pointer
-DisplaceModifier.texture_coordinate_object -> texture_coordinate_object: pointer
-DisplaceModifier.texture_coordinates -> texture_coordinates: enum
-DisplaceModifier.uv_layer -> uv_layer: string UV layer name
-DisplaceModifier.vertex_group -> vertex_group: string Vertex group name
-DistortedNoiseTexture.distortion -> distortion: float
-DistortedNoiseTexture.nabla -> nabla: float Size of derivative offset used for calculating normal
-DistortedNoiseTexture.noise_basis -> noise_basis: enum Sets the noise basis used for turbulence
-DistortedNoiseTexture.noise_distortion -> noise_distortion: enum Sets the noise basis for the distortion
-DistortedNoiseTexture.noise_size -> noise_size: float Sets scaling for noise input
-DomainFluidSettings.compressibility -> compressibility: float Allowed compressibility due to gravitational force for standing fluid. (directly affects simulation step size)
-DomainFluidSettings.end_time -> end_time: float Simulation time of the last blender frame
-DomainFluidSettings.generate_particles -> generate_particles: float Amount of particles to generate (0=off, 1=normal, >1=more)
-DomainFluidSettings.gravity -> gravity: float Gravity in X, Y and Z direction
-DomainFluidSettings.grid_levels -> grid_levels: int Number of coarsened grids to use (-1 for automatic)
-DomainFluidSettings.memory_estimate -> memory_estimate: string, (read-only) Estimated amount of memory needed for baking the domain
-DomainFluidSettings.partial_slip_factor -> partial_slip_factor: float Amount of mixing between no- and free-slip, 0 is no slip and 1 is free slip
-DomainFluidSettings.path -> path: string Directory (and/or filename prefix) to store baked fluid simulation files in
-DomainFluidSettings.preview_resolution -> preview_resolution: int Preview resolution in X,Y and Z direction
-DomainFluidSettings.real_world_size -> real_world_size: float Size of the simulation domain in metres
-DomainFluidSettings.render_display_mode -> render_display_mode: enum How to display the mesh for rendering
-DomainFluidSettings.resolution -> resolution: int Domain resolution in X,Y and Z direction
-DomainFluidSettings.slip_type -> slip_type: enum
-DomainFluidSettings.start_time -> start_time: float Simulation time of the first blender frame
-DomainFluidSettings.surface_smoothing -> surface_smooth: float Amount of surface smoothing. A value of 0 is off, 1 is normal smoothing and more than 1 is extra smoothing
-DomainFluidSettings.surface_subdivisions -> surface_subdivisions: int Number of isosurface subdivisions. This is necessary for the inclusion of particles into the surface generation. Warning - can lead to longer computation times!
-DomainFluidSettings.tracer_particles -> tracer_particles: int Number of tracer particles to generate
-DomainFluidSettings.viewport_display_mode -> viewport_display_mode: enum How to display the mesh in the viewport
-DomainFluidSettings.viscosity_base -> viscosity_base: float Viscosity setting: value that is multiplied by 10 to the power of (exponent*-1)
-DomainFluidSettings.viscosity_exponent -> viscosity_exponent: int Negative exponent for the viscosity value (to simplify entering small values e.g. 5*10^-6.)
-DomainFluidSettings.viscosity_preset -> viscosity_preset: enum Set viscosity of the fluid to a preset value, or use manual input
-DopeSheet.filtering_group -> filtering_group: pointer Group that included Object should be a member of
-DopeSheet.source -> source: pointer, (read-only) ID-Block representing source data, currently ID_SCE (for Dopesheet), and ID_SC (for Grease Pencil)
-Driver.expression -> expression: string Expression to use for Scripted Expression
-Driver.type -> type: enum Driver type
-Driver.variables -> variables: collection, (read-only) Properties acting as inputs for this driver
-DriverTarget.bone_target -> bone_target: string Name of PoseBone to use as target
-DriverTarget.data_path -> data_path: string RNA Path (from ID-block) to property used
-DriverTarget.id -> id: pointer ID-block that the specific property used can be found from (id_type property must be set first)
-DriverTarget.id_type -> id_type: enum Type of ID-block that can be used
-DriverTarget.transform_type -> transform_type: enum Driver variable type
-DriverVariable.name -> name: string Name to use in scripted expressions/functions. (No spaces or dots are allowed. Also, must not start with a symbol or digit)
-DriverVariable.targets -> targets: collection, (read-only) Sources of input data for evaluating this variable
-DriverVariable.type -> type: enum Driver variable type
-DupliObject.matrix -> matrix: float Object duplicate transformation matrix
-DupliObject.object -> object: pointer, (read-only) Object being duplicated
-DupliObject.object_matrix -> object_matrix: float Duplicated object transformation matrix
-EdgeSplitModifier.split_angle -> split_angle: float Angle above which to split edges
-EditBone.bbone_in -> bbone_in: float Length of first Bezier Handle (for B-Bones only)
-EditBone.bbone_out -> bbone_out: float Length of second Bezier Handle (for B-Bones only)
-EditBone.bbone_segments -> bbone_segments: int Number of subdivisions of bone (for B-Bones only)
-EditBone.envelope_distance -> envelope_distance: float Bone deformation distance (for Envelope deform only)
-EditBone.envelope_weight -> envelope_weight: float Bone deformation weight (for Envelope deform only)
-EditBone.head -> head: float Location of head end of the bone
-EditBone.head_radius -> head_radius: float Radius of head of bone (for Envelope deform only)
-EditBone.matrix -> matrix: float, (read-only) Read-only matrix calculated from the roll (armature space)
-EditBone.name -> name: string
-EditBone.parent -> parent: pointer Parent edit bone (in same Armature)
-EditBone.roll -> roll: float Bone rotation around head-tail axis
-EditBone.tail -> tail: float Location of tail end of the bone
-EditBone.tail_radius -> tail_radius: float Radius of tail of bone (for Envelope deform only)
-EditObjectActuator.angular_velocity -> angular_velocity: float Angular velocity upon creation
-EditObjectActuator.dynamic_operation -> dynamic_operation: enum
-EditObjectActuator.linear_velocity -> linear_velocity: float Velocity upon creation
-EditObjectActuator.mass -> mass: float The mass of the object
-EditObjectActuator.mesh -> mesh: pointer Replace the existing, when left blank 'Phys' will remake the existing physics mesh
-EditObjectActuator.mode -> mode: enum The mode of the actuator
-EditObjectActuator.object -> object: pointer Add this Object and all its children (cant be on an visible layer)
-EditObjectActuator.time -> time: int Duration the new Object lives or the track takes
-EditObjectActuator.track_object -> track_object: pointer Track to this Object
-EffectSequence.color_balance -> color_balance: pointer, (read-only)
-EffectSequence.crop -> crop: pointer, (read-only)
-EffectSequence.multiply_colors -> color_multiply: float
-EffectSequence.proxy -> proxy: pointer, (read-only)
-EffectSequence.strobe -> strobe: float Only display every nth frame
-EffectSequence.transform -> transform: pointer, (read-only)
-EffectorWeights.all -> all: float All effector's weight
-EffectorWeights.boid -> boid: float Boid effector weight
-EffectorWeights.charge -> charge: float Charge effector weight
-EffectorWeights.curveguide -> curveguide: float Curve guide effector weight
-EffectorWeights.drag -> drag: float Drag effector weight
-EffectorWeights.force -> force: float Force effector weight
-EffectorWeights.gravity -> gravity: float Global gravity weight
-EffectorWeights.group -> group: pointer Limit effectors to this Group
-EffectorWeights.harmonic -> harmonic: float Harmonic effector weight
-EffectorWeights.lennardjones -> lennardjones: float Lennard-Jones effector weight
-EffectorWeights.magnetic -> magnetic: float Magnetic effector weight
-EffectorWeights.texture -> texture: float Texture effector weight
-EffectorWeights.turbulence -> turbulence: float Turbulence effector weight
-EffectorWeights.vortex -> vortex: float Vortex effector weight
-EffectorWeights.wind -> wind: float Wind effector weight
-EnumProperty.default -> default: enum, (read-only) Default value for this enum
-EnumProperty.items -> items: collection, (read-only) Possible values for the property
-EnumPropertyItem.description -> description: string, (read-only) Description of the item's purpose
-EnumPropertyItem.identifier -> identifier: string, (read-only) Unique name used in the code and scripting
-EnumPropertyItem.name -> name: string, (read-only) Human readable name
-EnumPropertyItem.value -> value: int, (read-only) Value of the item
-EnvironmentMap.clip_end -> clip_end: float Objects further than this are not visible to map
-EnvironmentMap.clip_start -> clip_start: float Objects nearer than this are not visible to map
-EnvironmentMap.depth -> depth: int Number of times a map will be rendered recursively (mirror effects.)
-EnvironmentMap.mapping -> mapping: enum
-EnvironmentMap.resolution -> resolution: int Pixel resolution of the rendered environment map
-EnvironmentMap.source -> source: enum
-EnvironmentMap.viewpoint_object -> viewpoint_object: pointer Object to use as the environment map's viewpoint location
-EnvironmentMap.zoom -> zoom: float
-EnvironmentMapTexture.environment_map -> environment_map: pointer, (read-only) Gets the environment map associated with this texture
-EnvironmentMapTexture.filter -> filter: enum Texture filter to use for sampling image
-EnvironmentMapTexture.filter_eccentricity -> filter_eccentricity: int Maximum eccentricity. Higher gives less blur at distant/oblique angles, but is also slower
-EnvironmentMapTexture.filter_probes -> filter_probes: int Maximum number of samples. Higher gives less blur at distant/oblique angles, but is also slower
-EnvironmentMapTexture.filter_size -> filter_size: float Multiplies the filter size used by MIP Map and Interpolation
-EnvironmentMapTexture.image -> image: pointer Source image file to read the environment map from
-EnvironmentMapTexture.image_user -> image_user: pointer, (read-only) Parameters defining which layer, pass and frame of the image is displayed
-Event.ascii -> ascii: string, (read-only) Single ASCII character for this event
-Event.mouse_prev_x -> mouse_prev_x: int, (read-only) The window relative vertical location of the mouse
-Event.mouse_prev_y -> mouse_prev_y: int, (read-only) The window relative horizontal location of the mouse
-Event.mouse_region_x -> mouse_region_x: int, (read-only) The region relative vertical location of the mouse
-Event.mouse_region_y -> mouse_region_y: int, (read-only) The region relative horizontal location of the mouse
-Event.mouse_x -> mouse_x: int, (read-only) The window relative vertical location of the mouse
-Event.mouse_y -> mouse_y: int, (read-only) The window relative horizontal location of the mouse
-Event.type -> type: enum, (read-only)
-Event.value -> value: enum, (read-only) The type of event, only applies to some
-ExplodeModifier.protect -> protect: float Clean vertex group edges
-ExplodeModifier.vertex_group -> vertex_group: string
-ExpressionController.expression -> expression: string
-FCurve.array_index -> array_index: int Index to the specific property affected by F-Curve if applicable
-FCurve.color -> color: float Color of the F-Curve in the Graph Editor
-FCurve.color_mode -> color_mode: enum Method used to determine color of F-Curve in Graph Editor
-FCurve.data_path -> data_path: string RNA Path to property affected by F-Curve
-FCurve.driver -> driver: pointer, (read-only) Channel Driver (only set for Driver F-Curves)
-FCurve.extrapolation -> extrapolation: enum
-FCurve.group -> group: pointer Action Group that this F-Curve belongs to
-FCurve.keyframe_points -> keyframe_points: collection, (read-only) User-editable keyframes
-FCurve.modifiers -> modifiers: collection, (read-only) Modifiers affecting the shape of the F-Curve
-FCurve.sampled_points -> sampled_points: collection, (read-only) Sampled animation data
-FCurveModifiers.active -> active: pointer Active F-Curve Modifier
-FCurveSample.co -> co: float Point coordinates
-FModifier.type -> type: enum, (read-only) F-Curve Modifier Type
-FModifierCycles.after_cycles -> after_cycles: float Maximum number of cycles to allow after last keyframe. (0 = infinite)
-FModifierCycles.after_mode -> after_mode: enum Cycling mode to use after last keyframe
-FModifierCycles.before_cycles -> before_cycles: float Maximum number of cycles to allow before first keyframe. (0 = infinite)
-FModifierCycles.before_mode -> before_mode: enum Cycling mode to use before first keyframe
-FModifierEnvelope.control_points -> control_points: collection, (read-only) Control points defining the shape of the envelope
-FModifierEnvelope.default_maximum -> default_max: float Upper distance from Reference Value for 1:1 default influence
-FModifierEnvelope.default_minimum -> default_min: float Lower distance from Reference Value for 1:1 default influence
-FModifierEnvelope.reference_value -> reference_value: float Value that envelope's influence is centered around / based on
-FModifierEnvelopeControlPoint.frame -> frame: float Frame this control-point occurs on
-FModifierEnvelopeControlPoint.maximum -> max: float Upper bound of envelope at this control-point
-FModifierEnvelopeControlPoint.minimum -> min: float Lower bound of envelope at this control-point
-FModifierFunctionGenerator.amplitude -> amplitude: float Scale factor determining the maximum/minimum values
-FModifierFunctionGenerator.function_type -> function_type: enum Type of built-in function to use
-FModifierFunctionGenerator.phase_multiplier -> phase_multiplier: float Scale factor determining the 'speed' of the function
-FModifierFunctionGenerator.phase_offset -> phase_offset: float Constant factor to offset time by for function
-FModifierFunctionGenerator.value_offset -> value_offset: float Constant factor to offset values by
-FModifierGenerator.coefficients -> coefficients: float Coefficients for 'x' (starting from lowest power of x^0)
-FModifierGenerator.mode -> mode: enum Type of generator to use
-FModifierGenerator.poly_order -> poly_order: int The highest power of 'x' for this polynomial. (number of coefficients - 1)
-FModifierLimits.maximum_x -> max_x: float Highest X value to allow
-FModifierLimits.maximum_y -> max_y: float Highest Y value to allow
-FModifierLimits.minimum_x -> min_x: float Lowest X value to allow
-FModifierLimits.minimum_y -> min_y: float Lowest Y value to allow
-FModifierNoise.depth -> depth: int Amount of fine level detail present in the noise
-FModifierNoise.modification -> modification: enum Method of modifying the existing F-Curve
-FModifierNoise.phase -> phase: float A random seed for the noise effect
-FModifierNoise.size -> size: float Scaling (in time) of the noise
-FModifierNoise.strength -> strength: float Amplitude of the noise - the amount that it modifies the underlying curve
-FModifierStepped.frame_end -> frame_end: float Frame that modifier's influence ends (if applicable)
-FModifierStepped.frame_start -> frame_start: float Frame that modifier's influence starts (if applicable)
-FModifierStepped.offset -> offset: float Reference number of frames before frames get held. Use to get hold for '1-3' vs '5-7' holding patterns
-FModifierStepped.step_size -> step_size: float Number of frames to hold each value
-FcurveActuator.frame_end -> frame_end: int
-FcurveActuator.frame_property -> frame_property: string Assign the action's current frame number to this property
-FcurveActuator.frame_start -> frame_start: int
-FcurveActuator.play_type -> play_type: enum Specify the way you want to play the animation
-FcurveActuator.property -> property: string Use this property to define the F-Curve position
-FieldSettings.falloff_power -> falloff_power: float Falloff power (real gravitational falloff = 2)
-FieldSettings.falloff_type -> falloff_type: enum Fall-off shape
-FieldSettings.flow -> flow: float Convert effector force into air flow velocity
-FieldSettings.guide_clump_amount -> guide_clump_amount: float Amount of clumping
-FieldSettings.guide_clump_shape -> guide_clump_shape: float Shape of clumping
-FieldSettings.guide_free -> guide_free: float Guide-free time from particle life's end
-FieldSettings.guide_kink_amplitude -> guide_kink_amplitude: float The amplitude of the offset
-FieldSettings.guide_kink_axis -> guide_kink_axis: enum Which axis to use for offset
-FieldSettings.guide_kink_frequency -> guide_kink_frequency: float The frequency of the offset (1/total length)
-FieldSettings.guide_kink_shape -> guide_kink_shape: float Adjust the offset to the beginning/end
-FieldSettings.guide_kink_type -> guide_kink_type: enum Type of periodic offset on the curve
-FieldSettings.guide_minimum -> guide_minimum: float The distance from which particles are affected fully
-FieldSettings.harmonic_damping -> harmonic_damping: float Damping of the harmonic force
-FieldSettings.inflow -> inflow: float Inwards component of the vortex force
-FieldSettings.linear_drag -> linear_drag: float Drag component proportional to velocity
-FieldSettings.maximum_distance -> distance_max: float Maximum distance for the field to work
-FieldSettings.minimum_distance -> distance_min: float Minimum distance for the field's fall-off
-FieldSettings.noise -> noise: float Noise of the force
-FieldSettings.quadratic_drag -> quadratic_drag: float Drag component proportional to the square of velocity
-FieldSettings.radial_falloff -> radial_falloff: float Radial falloff power (real gravitational falloff = 2)
-FieldSettings.radial_maximum -> radial_max: float Maximum radial distance for the field to work
-FieldSettings.radial_minimum -> radial_min: float Minimum radial distance for the field's fall-off
-FieldSettings.rest_length -> rest_length: float Rest length of the harmonic force
-FieldSettings.seed -> seed: int Seed of the noise
-FieldSettings.shape -> shape: enum Which direction is used to calculate the effector force
-FieldSettings.size -> size: float Size of the noise
-FieldSettings.strength -> strength: float Strength of force field
-FieldSettings.texture -> texture: pointer Texture to use as force
-FieldSettings.texture_mode -> texture_mode: enum How the texture effect is calculated (RGB & Curl need a RGB texture else Gradient will be used instead)
-FieldSettings.texture_nabla -> texture_nabla: float Defines size of derivative offset used for calculating gradient and curl
-FieldSettings.type -> type: enum Type of field
-FieldSettings.z_direction -> z_direction: enum Effect in full or only positive/negative Z direction
-FileSelectParams.directory -> directory: string Directory displayed in the file browser
-FileSelectParams.display -> display: enum Display mode for the file list
-FileSelectParams.file -> file: string Active file in the file browser
-FileSelectParams.sort -> sort: enum
-FileSelectParams.title -> title: string, (read-only) Title for the file browser
-Filter2DActuator.filter_pass -> filter_pass: int Set filter order
-Filter2DActuator.glsl_shader -> glsl_shader: pointer
-Filter2DActuator.mode -> mode: enum
-Filter2DActuator.motion_blur_value -> motion_blur_value: float Set motion blur value
-FloatProperty.array_length -> array_length: int, (read-only) Maximum length of the array, 0 means unlimited
-FloatProperty.default -> default: float, (read-only) Default value for this number
-FloatProperty.default_array -> default_array: float, (read-only) Default value for this array
-FloatProperty.hard_max -> hard_max: float, (read-only) Maximum value used by buttons
-FloatProperty.hard_min -> hard_min: float, (read-only) Minimum value used by buttons
-FloatProperty.precision -> precision: int, (read-only) Number of digits after the dot used by buttons
-FloatProperty.soft_max -> soft_max: float, (read-only) Maximum value used by buttons
-FloatProperty.soft_min -> soft_min: float, (read-only) Minimum value used by buttons
-FloatProperty.step -> step: float, (read-only) Step size used by number buttons, for floats 1/100th of the step size
-FloorConstraint.floor_location -> floor_location: enum Location of target that object will not pass through
-FloorConstraint.offset -> offset: float Offset of floor from object origin
-FloorConstraint.subtarget -> subtarget: string
-FloorConstraint.target -> target: pointer Target Object
-FluidFluidSettings.initial_velocity -> initial_velocity: float Initial velocity of fluid
-FluidFluidSettings.volume_initialization -> volume_initialization: enum Volume initialization type
-FluidSettings.type -> type: enum Type of participation in the fluid simulation
-FluidSimulationModifier.settings -> settings: pointer, (read-only) Settings for how this object is used in the fluid simulation
-FollowPathConstraint.forward -> forward: enum Axis that points forward along the path
-FollowPathConstraint.offset -> offset: int Offset from the position corresponding to the time frame
-FollowPathConstraint.offset_factor -> offset_factor: float Percentage value defining target position along length of bone
-FollowPathConstraint.target -> target: pointer Target Object
-FollowPathConstraint.up -> up: enum Axis that points upward
-Function.description -> description: string, (read-only) Description of the Function's purpose
-Function.identifier -> identifier: string, (read-only) Unique name used in the code and scripting
-Function.parameters -> parameters: collection, (read-only) Parameters for the function
-GPencilFrame.frame_number -> frame_number: int The frame on which this sketch appears
-GPencilFrame.strokes -> strokes: collection, (read-only) Freehand curves defining the sketch on this frame
-GPencilLayer.active_frame -> active_frame: pointer, (read-only) Frame currently being displayed for this layer
-GPencilLayer.color -> color: float Color for all strokes in this layer
-GPencilLayer.frames -> frames: collection, (read-only) Sketches for this layer on different frames
-GPencilLayer.info -> info: string Layer name
-GPencilLayer.line_thickness -> line_width: int Thickness of strokes (in pixels)
-GPencilLayer.max_ghost_range -> ghost_range_max: int Maximum number of frames on either side of the active frame to show (0 = show the 'first' available sketch on either side)
-GPencilLayer.opacity -> opacity: float Layer Opacity
-GPencilStroke.points -> points: collection, (read-only) Stroke data points
-GPencilStrokePoint.co -> co: float
-GPencilStrokePoint.pressure -> pressure: float Pressure of tablet at point when drawing it
-GameActuator.filename -> filename: string Load this blend file, use the "//" prefix for a path relative to the current blend file
-GameActuator.mode -> mode: enum
-GameFloatProperty.value -> value: float Property value
-GameIntProperty.value -> value: int Property value
-GameObjectSettings.actuators -> actuators: collection, (read-only) Game engine actuators to act on events
-GameObjectSettings.collision_bounds -> collision_bounds: enum Selects the collision type
-GameObjectSettings.collision_margin -> collision_margin: float Extra margin around object for collision detection, small amount required for stability
-GameObjectSettings.controllers -> controllers: collection, (read-only) Game engine controllers to process events, connecting sensor to actuators
-GameObjectSettings.damping -> damping: float General movement damping
-GameObjectSettings.form_factor -> form_factor: float Form factor scales the inertia tensor
-GameObjectSettings.friction_coefficients -> friction_coefficients: float Relative friction coefficient in the in the X, Y and Z directions, when anisotropic friction is enabled
-GameObjectSettings.mass -> mass: float Mass of the object
-GameObjectSettings.maximum_velocity -> velocity_max: float Clamp velocity to this maximum speed
-GameObjectSettings.minimum_velocity -> velocity_min: float Clamp velocity to this minimum speed (except when totally still)
-GameObjectSettings.physics_type -> physics_type: enum Selects the type of physical representation
-GameObjectSettings.properties -> properties: collection, (read-only) Game engine properties
-GameObjectSettings.radius -> radius: float Radius of bounding sphere and material physics
-GameObjectSettings.rotation_damping -> rotation_damping: float General rotation damping
-GameObjectSettings.sensors -> sensors: collection, (read-only) Game engine sensor to detect events
-GameObjectSettings.soft_body -> soft_body: pointer, (read-only) Settings for Bullet soft body simulation
-GameProperty.name -> name: string Available as GameObject attributes in the game engine's python API
-GameProperty.type -> type: enum
-GameSoftBodySettings.cluster_iterations -> cluster_iterations: int Specify the number of cluster iterations
-GameSoftBodySettings.dynamic_friction -> dynamic_friction: float Dynamic Friction
-GameSoftBodySettings.linstiff -> linear_stiffness: float Linear stiffness of the soft body links
-GameSoftBodySettings.margin -> margin: float Collision margin for soft body. Small value makes the algorithm unstable
-GameSoftBodySettings.position_iterations -> position_iterations: int Position solver iterations
-GameSoftBodySettings.threshold -> threshold: float Shape matching threshold
-GameSoftBodySettings.welding -> weld_threshold: float Welding threshold: distance between nearby vertices to be considered equal => set to 0.0 to disable welding test and speed up scene loading (ok if the mesh has no duplicates)
-GameStringProperty.value -> value: string Property value
-GameTimerProperty.value -> value: float Property value
-GlowSequence.blur_distance -> blur_distance: float Radius of glow effect
-GlowSequence.boost_factor -> boost_factor: float Brightness multiplier
-GlowSequence.clamp -> clamp: float rightness limit of intensity
-GlowSequence.quality -> quality: int Accuracy of the blur effect
-GlowSequence.threshold -> threshold: float Minimum intensity to trigger a glow
-GreasePencil.draw_mode -> draw_mode: enum
-GreasePencil.layers -> layers: collection, (read-only)
-Group.dupli_offset -> dupli_offset: float Offset from the origin to use when instancing as DupliGroup
-Group.objects -> objects: collection, (read-only) A collection of this groups objects
-Header.bl_idname -> bl_idname: string
-Header.bl_space_type -> bl_space_type: enum
-Header.layout -> layout: pointer, (read-only)
-Histogram.mode -> mode: enum Channels to display when drawing the histogram
-HookModifier.falloff -> falloff: float If not zero, the distance from the hook where influence ends
-HookModifier.force -> force: float Relative force of the hook
-HookModifier.object -> object: pointer Parent Object for hook, also recalculates and clears offset
-HookModifier.subtarget -> subtarget: string Name of Parent Bone for hook (if applicable), also recalculates and clears offset
-HookModifier.vertex_group -> vertex_group: string Vertex group name
-ID.library -> library: pointer, (read-only) Library file the datablock is linked from
-ID.name -> name: string Unique datablock ID name
-ID.users -> users: int, (read-only) Number of times this datablock is referenced
-IDProperty.collection -> collection: collection, (read-only)
-IDProperty.double -> double: float
-IDProperty.double_array -> double_array: float
-IDProperty.float -> float: float
-IDProperty.float_array -> float_array: float
-IDProperty.group -> group: pointer, (read-only)
-IDProperty.int -> int: int
-IDProperty.int_array -> int_array: int
-IDProperty.string -> string: string
-IDPropertyGroup.name -> name: string Unique name used in the code and scripting
-IKParam.ik_solver -> ik_solver: enum, (read-only) IK solver for which these parameters are defined, 0 for Legacy, 1 for iTaSC
-Image.animation_end -> animation_end: int End frame of an animated texture
-Image.animation_speed -> animation_speed: int Speed of the animation in frames per second
-Image.animation_start -> animation_start: int Start frame of an animated texture
-Image.bindcode -> bindcode: int, (read-only) OpenGL bindcode
-Image.depth -> depth: int, (read-only) Image bit depth
-Image.display_aspect -> display_aspect: float Display Aspect for this image, does not affect rendering
-Image.field_order -> field_order: enum Order of video fields. Select which lines are displayed first
-Image.file_format -> file_format: enum Format used for re-saving this file
-Image.filepath -> filepath: string Image/Movie file name
-Image.filepath_raw -> filepath_raw: string Image/Movie file name (without data refreshing)
-Image.generated_height -> generated_height: int Generated image height
-Image.generated_type -> generated_type: enum Generated image type
-Image.generated_width -> generated_width: int Generated image width
-Image.mapping -> mapping: enum Mapping type to use for this image in the game engine
-Image.packed_file -> packed_file: pointer, (read-only)
-Image.size -> size: int, (read-only) Width and height in pixels, zero when image data cant be loaded
-Image.source -> source: enum Where the image comes from
-Image.tiles_x -> tiles_x: int Degree of repetition in the X direction
-Image.tiles_y -> tiles_y: int Degree of repetition in the Y direction
-Image.type -> type: enum, (read-only) How to generate the image
-ImagePaint.normal_angle -> normal_angle: int Paint most on faces pointing towards the view according to this angle
-ImagePaint.screen_grab_size -> screen_grab_size: int Size to capture the image for re-projecting
-ImagePaint.seam_bleed -> seam_bleed: int Extend paint beyond the faces UVs to reduce seams (in pixels, slower)
-ImageSequence.animation_end_offset -> animation_end_offset: int Animation end offset (trim end)
-ImageSequence.animation_start_offset -> animation_start_offset: int Animation start offset (trim start)
-ImageSequence.color_balance -> color_balance: pointer, (read-only)
-ImageSequence.crop -> crop: pointer, (read-only)
-ImageSequence.directory -> directory: string
-ImageSequence.elements -> elements: collection, (read-only)
-ImageSequence.multiply_colors -> multiply_colors: float
-ImageSequence.proxy -> proxy: pointer, (read-only)
-ImageSequence.strobe -> strobe: float Only display every nth frame
-ImageSequence.transform -> transform: pointer, (read-only)
-ImageTexture.checker_distance -> checker_distance: float Sets distance between checker tiles
-ImageTexture.crop_max_x -> crop_max_x: float Sets maximum X value to crop the image
-ImageTexture.crop_max_y -> crop_max_y: float Sets maximum Y value to crop the image
-ImageTexture.crop_min_x -> crop_min_x: float Sets minimum X value to crop the image
-ImageTexture.crop_min_y -> crop_min_y: float Sets minimum Y value to crop the image
-ImageTexture.extension -> extension: enum Sets how the image is extrapolated past its original bounds
-ImageTexture.filter -> filter: enum Texture filter to use for sampling image
-ImageTexture.filter_eccentricity -> filter_eccentricity: int Maximum eccentricity. Higher gives less blur at distant/oblique angles, but is also slower
-ImageTexture.filter_probes -> filter_probes: int Maximum number of samples. Higher gives less blur at distant/oblique angles, but is also slower
-ImageTexture.filter_size -> filter_size: float Multiplies the filter size used by MIP Map and Interpolation
-ImageTexture.image -> image: pointer
-ImageTexture.image_user -> image_user: pointer, (read-only) Parameters defining which layer, pass and frame of the image is displayed
-ImageTexture.normal_space -> normal_space: enum Sets space of normal map image
-ImageTexture.repeat_x -> repeat_x: int Sets a repetition multiplier in the X direction
-ImageTexture.repeat_y -> repeat_y: int Sets a repetition multiplier in the Y direction
-ImageUser.fields_per_frame -> fields_per_frame: int The number of fields per rendered frame (2 fields is 1 image)
-ImageUser.frame_start -> frame_start: int Sets the global starting frame of the movie
-ImageUser.frames -> frames: int Sets the number of images of a movie to use
-ImageUser.multilayer_layer -> multilayer_layer: int, (read-only) Layer in multilayer image
-ImageUser.multilayer_pass -> multilayer_pass: int, (read-only) Pass in multilayer image
-ImageUser.offset -> offset: int Offsets the number of the frame to use in the animation
-InflowFluidSettings.inflow_velocity -> inflow_velocity: float Initial velocity of fluid
-InflowFluidSettings.volume_initialization -> volume_initialization: enum Volume initialization type
-IntProperty.array_length -> array_length: int, (read-only) Maximum length of the array, 0 means unlimited
-IntProperty.default -> default: int, (read-only) Default value for this number
-IntProperty.default_array -> default_array: int, (read-only) Default value for this array
-IntProperty.hard_max -> hard_max: int, (read-only) Maximum value used by buttons
-IntProperty.hard_min -> hard_min: int, (read-only) Minimum value used by buttons
-IntProperty.soft_max -> soft_max: int, (read-only) Maximum value used by buttons
-IntProperty.soft_min -> soft_min: int, (read-only) Minimum value used by buttons
-IntProperty.step -> step: int, (read-only) Step size used by number buttons, for floats 1/100th of the step size
-Itasc.dampeps -> dampeps: float Singular value under which damping is progressively applied. Higher values=more stability, less reactivity. Default=0.1
-Itasc.dampmax -> dampmax: float Maximum damping coefficient when singular value is nearly 0. Higher values=more stability, less reactivity. Default=0.5
-Itasc.feedback -> feedback: float Feedback coefficient for error correction. Average response time=1/feedback. Default=20
-Itasc.max_step -> step_max: float Higher bound for timestep in second in case of automatic substeps
-Itasc.max_velocity -> velocity_max: float Maximum joint velocity in rad/s. Default=50
-Itasc.min_step -> step_min: float Lower bound for timestep in second in case of automatic substeps
-Itasc.mode -> mode: enum
-Itasc.num_iter -> num_iter: int Maximum number of iterations for convergence in case of reiteration
-Itasc.num_step -> num_step: int Divides the frame interval into this many steps
-Itasc.precision -> precision: float Precision of convergence in case of reiteration
-Itasc.reiteration -> reiteration: enum Defines if the solver is allowed to reiterate (converges until precision is met) on none, first or all frames
-Itasc.solver -> solver: enum Solving method selection: Automatic damping or manual damping
-JoystickSensor.axis_direction -> axis_direction: enum The direction of the axis
-JoystickSensor.axis_number -> axis_number: int Specify which axis pair to use, 1 is usually the main direction input
-JoystickSensor.axis_threshold -> axis_threshold: int Specify the precision of the axis
-JoystickSensor.button_number -> button_number: int Specify which button to use
-JoystickSensor.event_type -> event_type: enum The type of event this joystick sensor is triggered on
-JoystickSensor.hat_direction -> hat_direction: enum Specify hat direction
-JoystickSensor.hat_number -> hat_number: int Specify which hat to use
-JoystickSensor.joystick_index -> joystick_index: int Specify which joystick to use
-JoystickSensor.single_axis_number -> single_axis_number: int Specify a single axis (verticle/horizontal/other) to detect
-Key.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Key.keys -> keys: collection, (read-only) Shape keys
-Key.reference_key -> reference_key: pointer, (read-only)
-Key.slurph -> slurph: int Creates a delay in amount of frames in applying keypositions, first vertex goes first
-Key.user -> user: pointer, (read-only) Datablock using these shape keys
-KeyConfig.keymaps -> keymaps: collection, (read-only) Key maps configured as part of this configuration
-KeyConfig.name -> name: string Name of the key configuration
-KeyMap.items -> items: collection, (read-only) Items in the keymap, linking an operator to an input event
-KeyMap.name -> name: string, (read-only) Name of the key map
-KeyMap.region_type -> region_type: enum, (read-only) Optional region type keymap is associated with
-KeyMap.space_type -> space_type: enum, (read-only) Optional space type keymap is associated with
-KeyMapItem.id -> id: int, (read-only) ID of the item
-KeyMapItem.idname -> idname: string Identifier of operator to call on input event
-KeyMapItem.key_modifier -> key_modifier: enum Regular key pressed as a modifier
-KeyMapItem.map_type -> map_type: enum Type of event mapping
-KeyMapItem.name -> name: string, (read-only) Name of operator to call on input event
-KeyMapItem.properties -> properties: pointer, (read-only) Properties to set when the operator is called
-KeyMapItem.propvalue -> propvalue: enum The value this event translates to in a modal keymap
-KeyMapItem.type -> type: enum Type of event
-KeyMapItem.value -> value: enum
-KeyboardSensor.key -> key: enum
-KeyboardSensor.log -> log: string Property that receive the keystrokes in case a string is logged
-KeyboardSensor.modifier_key -> modifier_key: enum Modifier key code
-KeyboardSensor.second_modifier_key -> second_modifier_key: enum Modifier key code
-KeyboardSensor.target -> target: string Property that indicates whether to log keystrokes as a string
-Keyframe.co -> co: float Coordinates of the control point
-Keyframe.handle1 -> handle_left: float Coordinates of the first handle
-Keyframe.handle1_type -> handle_left_type: enum Handle types
-Keyframe.handle2 -> handle_right: float Coordinates of the second handle
-Keyframe.handle2_type -> handle_right_type: enum Handle types
-Keyframe.interpolation -> interpolation: enum Interpolation method to use for segment of the curve from this Keyframe until the next Keyframe
-Keyframe.type -> type: enum The type of keyframe
-KeyingSet.active_path -> active_path: pointer Active Keying Set used to insert/delete keyframes
-KeyingSet.active_path_index -> active_path_index: int Current Keying Set index
-KeyingSet.name -> name: string
-KeyingSet.paths -> paths: collection, (read-only) Keying Set Paths to define settings that get keyframed together
-KeyingSet.type_info -> type_info: pointer, (read-only) Callback function defines for built-in Keying Sets
-KeyingSetInfo.bl_idname -> bl_idname: string
-KeyingSetInfo.bl_label -> bl_label: string
-KeyingSetPath.array_index -> array_index: int Index to the specific setting if applicable
-KeyingSetPath.data_path -> data_path: string Path to property setting
-KeyingSetPath.group -> group: string Name of Action Group to assign setting(s) for this path to
-KeyingSetPath.grouping -> group_method: enum Method used to define which Group-name to use
-KeyingSetPath.id -> id: pointer ID-Block that keyframes for Keying Set should be added to (for Absolute Keying Sets only)
-KeyingSetPath.id_type -> id_type: enum Type of ID-block that can be used
-KinematicConstraint.axis_reference -> axis_reference: enum Constraint axis Lock options relative to Bone or Target reference
-KinematicConstraint.chain_length -> chain_length: int How many bones are included in the IK effect - 0 uses all bones
-KinematicConstraint.distance -> distance: float Radius of limiting sphere
-KinematicConstraint.ik_type -> ik_type: enum
-KinematicConstraint.iterations -> iterations: int Maximum number of solving iterations
-KinematicConstraint.limit_mode -> limit_mode: enum Distances in relation to sphere of influence to allow
-KinematicConstraint.orient_weight -> orient_weight: float For Tree-IK: Weight of orientation control for this target
-KinematicConstraint.pole_angle -> pole_angle: float Pole rotation offset
-KinematicConstraint.pole_subtarget -> pole_subtarget: string
-KinematicConstraint.pole_target -> pole_target: pointer Object for pole rotation
-KinematicConstraint.subtarget -> subtarget: string
-KinematicConstraint.target -> target: pointer Target Object
-KinematicConstraint.weight -> weight: float For Tree-IK: Weight of position control for this target
-Lamp.active_texture -> active_texture: pointer Active texture slot being displayed
-Lamp.active_texture_index -> active_texture_index: int Index of active texture slot
-Lamp.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Lamp.color -> color: float Light color
-Lamp.distance -> distance: float Falloff distance - the light is at half the original intensity at this point
-Lamp.energy -> energy: float Amount of light that the lamp emits
-Lamp.texture_slots -> texture_slots: collection, (read-only) Texture slots defining the mapping and influence of textures
-Lamp.type -> type: enum Type of Lamp
-LampSkySettings.atmosphere_distance_factor -> atmosphere_distance_factor: float Multiplier to convert blender units to physical distance
-LampSkySettings.atmosphere_extinction -> atmosphere_extinction: float Extinction scattering contribution factor
-LampSkySettings.atmosphere_inscattering -> atmosphere_inscattering: float Scatter contribution factor
-LampSkySettings.atmosphere_turbidity -> atmosphere_turbidity: float Sky turbidity
-LampSkySettings.backscattered_light -> backscattered_light: float Backscattered light
-LampSkySettings.horizon_brightness -> horizon_intensity: float Horizon brightness
-LampSkySettings.sky_blend -> sky_blend: float Blend factor with sky
-LampSkySettings.sky_blend_type -> sky_blend_type: enum Blend mode for combining sun sky with world sky
-LampSkySettings.sky_color_space -> sky_color_space: enum Color space to use for internal XYZ->RGB color conversion
-LampSkySettings.sky_exposure -> sky_exposure: float Strength of sky shading exponential exposure correction
-LampSkySettings.spread -> spread: float Horizon Spread
-LampSkySettings.sun_brightness -> sun_intensity: float Sun brightness
-LampSkySettings.sun_intensity -> sun_intensity: float Sun intensity
-LampSkySettings.sun_size -> sun_size: float Sun size
-LampTextureSlot.color_factor -> color_factor: float Amount texture affects color values
-LampTextureSlot.object -> object: pointer Object to use for mapping with Object texture coordinates
-LampTextureSlot.shadow_factor -> shadow_factor: float Amount texture affects shadow
-LampTextureSlot.texture_coordinates -> texture_coordinates: enum
-Lattice.interpolation_type_u -> interpolation_type_u: enum
-Lattice.interpolation_type_v -> interpolation_type_v: enum
-Lattice.interpolation_type_w -> interpolation_type_w: enum
-Lattice.points -> points: collection, (read-only) Points of the lattice
-Lattice.points_u -> points_u: int Points in U direction
-Lattice.points_v -> points_v: int Points in V direction
-Lattice.points_w -> points_w: int Points in W direction
-Lattice.shape_keys -> shape_keys: pointer, (read-only)
-Lattice.vertex_group -> vertex_group: string Vertex group to apply the influence of the lattice
-LatticeModifier.object -> object: pointer Lattice object to deform with
-LatticeModifier.vertex_group -> vertex_group: string Vertex group name
-LatticePoint.co -> co: float, (read-only)
-LatticePoint.deformed_co -> deformed_co: float
-LatticePoint.groups -> groups: collection, (read-only) Weights for the vertex groups this point is member of
-Library.filepath -> filepath: string Path to the library .blend file
-Library.parent -> parent: pointer, (read-only)
-LimitDistanceConstraint.distance -> distance: float Radius of limiting sphere
-LimitDistanceConstraint.limit_mode -> limit_mode: enum Distances in relation to sphere of influence to allow
-LimitDistanceConstraint.subtarget -> subtarget: string
-LimitDistanceConstraint.target -> target: pointer Target Object
-LimitLocationConstraint.maximum_x -> max_x: float Highest X value to allow
-LimitLocationConstraint.maximum_y -> max_y: float Highest Y value to allow
-LimitLocationConstraint.maximum_z -> max_z: float Highest Z value to allow
-LimitLocationConstraint.minimum_x -> min_x: float Lowest X value to allow
-LimitLocationConstraint.minimum_y -> min_y: float Lowest Y value to allow
-LimitLocationConstraint.minimum_z -> min_z: float Lowest Z value to allow
-LimitRotationConstraint.maximum_x -> max_x: float Highest X value to allow
-LimitRotationConstraint.maximum_y -> max_y: float Highest Y value to allow
-LimitRotationConstraint.maximum_z -> max_z: float Highest Z value to allow
-LimitRotationConstraint.minimum_x -> min_x: float Lowest X value to allow
-LimitRotationConstraint.minimum_y -> min_y: float Lowest Y value to allow
-LimitRotationConstraint.minimum_z -> min_z: float Lowest Z value to allow
-LimitScaleConstraint.maximum_x -> max_x: float Highest X value to allow
-LimitScaleConstraint.maximum_y -> max_y: float Highest Y value to allow
-LimitScaleConstraint.maximum_z -> max_z: float Highest Z value to allow
-LimitScaleConstraint.minimum_x -> min_x: float Lowest X value to allow
-LimitScaleConstraint.minimum_y -> min_y: float Lowest Y value to allow
-LimitScaleConstraint.minimum_z -> min_z: float Lowest Z value to allow
-LockedTrackConstraint.locked -> locked: enum Axis that points upward
-LockedTrackConstraint.subtarget -> subtarget: string
-LockedTrackConstraint.target -> target: pointer Target Object
-LockedTrackConstraint.track -> track: enum Axis that points to the target object
-Macro.bl_description -> bl_description: string
-Macro.bl_idname -> bl_idname: string
-Macro.bl_label -> bl_label: string
-Macro.bl_options -> bl_options: enum Options for this operator type
-Macro.name -> name: string, (read-only)
-Macro.properties -> properties: pointer, (read-only)
-MagicTexture.noise_depth -> noise_depth: int Sets the depth of the cloud calculation
-MagicTexture.turbulence -> turbulence: float Sets the turbulence of the bandnoise and ringnoise types
-Main.actions -> actions: collection, (read-only) Action datablocks.
-Main.armatures -> armatures: collection, (read-only) Armature datablocks.
-Main.brushes -> brushes: collection, (read-only) Brush datablocks.
-Main.cameras -> cameras: collection, (read-only) Camera datablocks.
-Main.curves -> curves: collection, (read-only) Curve datablocks.
-Main.filepath -> filepath: string, (read-only) Path to the .blend file
-Main.fonts -> fonts: collection, (read-only) Vector font datablocks.
-Main.gpencil -> gpencil: collection, (read-only) Grease Pencil datablocks.
-Main.groups -> groups: collection, (read-only) Group datablocks.
-Main.images -> images: collection, (read-only) Image datablocks.
-Main.lamps -> lamps: collection, (read-only) Lamp datablocks.
-Main.lattices -> lattices: collection, (read-only) Lattice datablocks.
-Main.libraries -> libraries: collection, (read-only) Library datablocks.
-Main.materials -> materials: collection, (read-only) Material datablocks.
-Main.meshes -> meshes: collection, (read-only) Mesh datablocks.
-Main.metaballs -> metaballs: collection, (read-only) Metaball datablocks.
-Main.node_groups -> node_groups: collection, (read-only) Node group datablocks.
-Main.objects -> objects: collection, (read-only) Object datablocks.
-Main.particles -> particles: collection, (read-only) Particle datablocks.
-Main.scenes -> scenes: collection, (read-only) Scene datablocks.
-Main.screens -> screens: collection, (read-only) Screen datablocks.
-Main.scripts -> scripts: collection, (read-only) Script datablocks (DEPRECATED).
-Main.sounds -> sounds: collection, (read-only) Sound datablocks.
-Main.texts -> texts: collection, (read-only) Text datablocks.
-Main.textures -> textures: collection, (read-only) Texture datablocks.
-Main.window_managers -> window_managers: collection, (read-only) Window manager datablocks.
-Main.worlds -> worlds: collection, (read-only) World datablocks.
-MaintainVolumeConstraint.axis -> axis: enum The free scaling axis of the object
-MaintainVolumeConstraint.volume -> volume: float Volume of the bone at rest
-MarbleTexture.nabla -> nabla: float Size of derivative offset used for calculating normal
-MarbleTexture.noise_basis -> noise_basis: enum Sets the noise basis used for turbulence
-MarbleTexture.noise_depth -> noise_depth: int Sets the depth of the cloud calculation
-MarbleTexture.noise_size -> noise_size: float Sets scaling for noise input
-MarbleTexture.noise_type -> noise_type: enum
-MarbleTexture.noisebasis2 -> noisebasis2: enum
-MarbleTexture.stype -> stype: enum
-MarbleTexture.turbulence -> turbulence: float Sets the turbulence of the bandnoise and ringnoise types
-MaskModifier.armature -> armature: pointer Armature to use as source of bones to mask
-MaskModifier.mode -> mode: enum
-MaskModifier.vertex_group -> vertex_group: string Vertex group name
-Material.active_node_material -> active_node_material: pointer Active node material
-Material.active_texture -> active_texture: pointer Active texture slot being displayed
-Material.active_texture_index -> active_texture_index: int Index of active texture slot
-Material.alpha -> alpha: float Alpha transparency of the material
-Material.ambient -> ambient: float Amount of global ambient color the material receives
-Material.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Material.darkness -> darkness: float Minnaert darkness
-Material.diffuse_color -> diffuse_color: float
-Material.diffuse_fresnel -> diffuse_fresnel: float Power of Fresnel
-Material.diffuse_fresnel_factor -> diffuse_fresnel_factor: float Blending factor of Fresnel
-Material.diffuse_intensity -> diffuse_intensity: float Amount of diffuse reflection
-Material.diffuse_ramp -> diffuse_ramp: pointer, (read-only) Color ramp used to affect diffuse shading
-Material.diffuse_ramp_blend -> diffuse_ramp_blend: enum
-Material.diffuse_ramp_factor -> diffuse_ramp_factor: float Blending factor (also uses alpha in Colorband)
-Material.diffuse_ramp_input -> diffuse_ramp_input: enum
-Material.diffuse_shader -> diffuse_shader: enum
-Material.diffuse_toon_size -> diffuse_toon_size: float Size of diffuse toon area
-Material.diffuse_toon_smooth -> diffuse_toon_smooth: float Smoothness of diffuse toon area
-Material.emit -> emit: float Amount of light to emit
-Material.halo -> halo: pointer, (read-only) Halo settings for the material
-Material.light_group -> light_group: pointer Limit lighting to lamps in this Group
-Material.mirror_color -> mirror_color: float Mirror color of the material
-Material.node_tree -> node_tree: pointer, (read-only) Node tree for node based materials
-Material.physics -> physics: pointer, (read-only) Game physics settings
-Material.preview_render_type -> preview_render_type: enum Type of preview render
-Material.raytrace_mirror -> raytrace_mirror: pointer, (read-only) Raytraced reflection settings for the material
-Material.raytrace_transparency -> raytrace_transparency: pointer, (read-only) Raytraced transparency settings for the material
-Material.roughness -> rough: float Oren-Nayar Roughness
-Material.shadow_buffer_bias -> shadow_buffer_bias: float Factor to multiply shadow buffer bias with (0 is ignore.)
-Material.shadow_casting_alpha -> shadow_cast_alpha: float Shadow casting alpha, in use for Irregular and Deep shadow buffer
-Material.shadow_ray_bias -> shadow_ray_bias: float Shadow raytracing bias to prevent terminator problems on shadow boundary
-Material.specular_alpha -> specular_alpha: float Alpha transparency for specular areas
-Material.specular_color -> specular_color: float Specular color of the material
-Material.specular_hardness -> specular_hard: int
-Material.specular_intensity -> specular_intensity: float
-Material.specular_ior -> specular_ior: float
-Material.specular_ramp -> specular_ramp: pointer, (read-only) Color ramp used to affect specular shading
-Material.specular_ramp_blend -> specular_ramp_blend: enum
-Material.specular_ramp_factor -> specular_ramp_factor: float Blending factor (also uses alpha in Colorband)
-Material.specular_ramp_input -> specular_ramp_input: enum
-Material.specular_shader -> specular_shader: enum
-Material.specular_slope -> specular_slope: float The standard deviation of surface slope
-Material.specular_toon_size -> specular_toon_size: float Size of specular toon area
-Material.specular_toon_smooth -> specular_toon_smooth: float Smoothness of specular toon area
-Material.strand -> strand: pointer, (read-only) Strand settings for the material
-Material.subsurface_scattering -> subsurface_scattering: pointer, (read-only) Subsurface scattering settings for the material
-Material.texture_slots -> texture_slots: collection, (read-only) Texture slots defining the mapping and influence of textures
-Material.translucency -> translucency: float Amount of diffuse shading on the back side
-Material.transparency_method -> transparency_method: enum Method to use for rendering transparency
-Material.type -> type: enum Material type defining how the object is rendered
-Material.volume -> volume: pointer, (read-only) Volume settings for the material
-Material.z_offset -> z_offset: float Gives faces an artificial offset in the Z buffer for Z transparency
-MaterialHalo.add -> add: float Sets the strength of the add effect
-MaterialHalo.flare_boost -> flare_boost: float Gives the flare extra strength
-MaterialHalo.flare_seed -> flare_seed: int Specifies an offset in the flare seed table
-MaterialHalo.flare_size -> flare_size: float Sets the factor by which the flare is larger than the halo
-MaterialHalo.flare_subsize -> flare_subsize: float Sets the dimension of the subflares, dots and circles
-MaterialHalo.flares_sub -> flares_sub: int Sets the number of subflares
-MaterialHalo.hardness -> hard: int Sets the hardness of the halo
-MaterialHalo.line_number -> line_number: int Sets the number of star shaped lines rendered over the halo
-MaterialHalo.rings -> rings: int Sets the number of rings rendered over the halo
-MaterialHalo.seed -> seed: int Randomizes ring dimension and line location
-MaterialHalo.size -> size: float Sets the dimension of the halo
-MaterialHalo.star_tips -> star_tips: int Sets the number of points on the star shaped halo
-MaterialPhysics.damp -> damp: float Damping of the spring force, when inside the physics distance area
-MaterialPhysics.distance -> distance: float Distance of the physics area
-MaterialPhysics.elasticity -> elasticity: float Elasticity of collisions
-MaterialPhysics.force -> force: float Upward spring force, when inside the physics distance area
-MaterialPhysics.friction -> friction: float Coulomb friction coefficient, when inside the physics distance area
-MaterialRaytraceMirror.depth -> depth: int Maximum allowed number of light inter-reflections
-MaterialRaytraceMirror.distance -> distance: float Maximum distance of reflected rays. Reflections further than this range fade to sky color or material color
-MaterialRaytraceMirror.fade_to -> fade_to: enum The color that rays with no intersection within the Max Distance take. Material color can be best for indoor scenes, sky color for outdoor
-MaterialRaytraceMirror.fresnel -> fresnel: float Power of Fresnel for mirror reflection
-MaterialRaytraceMirror.fresnel_factor -> fresnel_factor: float Blending factor for Fresnel
-MaterialRaytraceMirror.gloss_anisotropic -> gloss_anisotropic: float The shape of the reflection, from 0.0 (circular) to 1.0 (fully stretched along the tangent
-MaterialRaytraceMirror.gloss_factor -> gloss_factor: float The shininess of the reflection. Values < 1.0 give diffuse, blurry reflections
-MaterialRaytraceMirror.gloss_samples -> gloss_samples: int Number of cone samples averaged for blurry reflections
-MaterialRaytraceMirror.gloss_threshold -> gloss_threshold: float Threshold for adaptive sampling. If a sample contributes less than this amount (as a percentage), sampling is stopped
-MaterialRaytraceMirror.reflect_factor -> reflect_factor: float Sets the amount mirror reflection for raytrace
-MaterialRaytraceTransparency.depth -> depth: int Maximum allowed number of light inter-refractions
-MaterialRaytraceTransparency.falloff -> falloff: float Falloff power for transmissivity filter effect (1.0 is linear)
-MaterialRaytraceTransparency.filter -> filter: float Amount to blend in the material's diffuse color in raytraced transparency (simulating absorption)
-MaterialRaytraceTransparency.fresnel -> fresnel: float Power of Fresnel for transparency (Ray or ZTransp)
-MaterialRaytraceTransparency.fresnel_factor -> fresnel_factor: float Blending factor for Fresnel
-MaterialRaytraceTransparency.gloss_factor -> gloss_factor: float The clarity of the refraction. Values < 1.0 give diffuse, blurry refractions
-MaterialRaytraceTransparency.gloss_samples -> gloss_samples: int Number of cone samples averaged for blurry refractions
-MaterialRaytraceTransparency.gloss_threshold -> gloss_threshold: float Threshold for adaptive sampling. If a sample contributes less than this amount (as a percentage), sampling is stopped
-MaterialRaytraceTransparency.ior -> ior: float Sets angular index of refraction for raytraced refraction
-MaterialRaytraceTransparency.limit -> limit: float Maximum depth for light to travel through the transparent material before becoming fully filtered (0.0 is disabled)
-MaterialSlot.link -> link: enum Link material to object or the object's data
-MaterialSlot.material -> material: pointer Material datablock used by this material slot
-MaterialSlot.name -> name: string, (read-only) Material slot name
-MaterialStrand.blend_distance -> blend_distance: float Worldspace distance over which to blend in the surface normal
-MaterialStrand.min_size -> size_min: float Minimum size of strands in pixels
-MaterialStrand.root_size -> root_size: float Start size of strands in pixels or Blender units
-MaterialStrand.shape -> shape: float Positive values make strands rounder, negative makes strands spiky
-MaterialStrand.tip_size -> tip_size: float End size of strands in pixels or Blender units
-MaterialStrand.uv_layer -> uv_layer: string Name of UV layer to override
-MaterialStrand.width_fade -> width_fade: float Transparency along the width of the strand
-MaterialSubsurfaceScattering.back -> back: float Back scattering weight
-MaterialSubsurfaceScattering.color -> color: float Scattering color
-MaterialSubsurfaceScattering.color_factor -> color_factor: float Blend factor for SSS colors
-MaterialSubsurfaceScattering.error_tolerance -> error_tolerance: float Error tolerance (low values are slower and higher quality)
-MaterialSubsurfaceScattering.front -> front: float Front scattering weight
-MaterialSubsurfaceScattering.ior -> ior: float Index of refraction (higher values are denser)
-MaterialSubsurfaceScattering.radius -> radius: float Mean red/green/blue scattering path length
-MaterialSubsurfaceScattering.scale -> scale: float Object scale factor
-MaterialSubsurfaceScattering.texture_factor -> texture_factor: float Texture scatting blend factor
-MaterialTextureSlot.alpha_factor -> alpha_factor: float Amount texture affects alpha
-MaterialTextureSlot.ambient_factor -> ambient_factor: float Amount texture affects ambient
-MaterialTextureSlot.colordiff_factor -> colordiff_factor: float Amount texture affects diffuse color
-MaterialTextureSlot.coloremission_factor -> coloremission_factor: float Amount texture affects emission color
-MaterialTextureSlot.colorreflection_factor -> colorreflection_factor: float Amount texture affects color of out-scattered light
-MaterialTextureSlot.colorspec_factor -> colorspec_factor: float Amount texture affects specular color
-MaterialTextureSlot.colortransmission_factor -> colortransmission_factor: float Amount texture affects result color after light has been scattered/absorbed
-MaterialTextureSlot.density_factor -> density_factor: float Amount texture affects density
-MaterialTextureSlot.diffuse_factor -> diffuse_factor: float Amount texture affects diffuse reflectivity
-MaterialTextureSlot.displacement_factor -> displacement_factor: float Amount texture displaces the surface
-MaterialTextureSlot.emission_factor -> emission_factor: float Amount texture affects emission
-MaterialTextureSlot.emit_factor -> emit_factor: float Amount texture affects emission
-MaterialTextureSlot.hardness_factor -> hard_factor: float Amount texture affects hardness
-MaterialTextureSlot.mapping -> mapping: enum
-MaterialTextureSlot.mirror_factor -> mirror_factor: float Amount texture affects mirror color
-MaterialTextureSlot.normal_factor -> normal_factor: float Amount texture affects normal values
-MaterialTextureSlot.normal_map_space -> normal_map_space: enum
-MaterialTextureSlot.object -> object: pointer Object to use for mapping with Object texture coordinates
-MaterialTextureSlot.raymir_factor -> raymir_factor: float Amount texture affects ray mirror
-MaterialTextureSlot.reflection_factor -> reflection_factor: float Amount texture affects brightness of out-scattered light
-MaterialTextureSlot.scattering_factor -> scattering_factor: float Amount texture affects scattering
-MaterialTextureSlot.specular_factor -> specular_factor: float Amount texture affects specular reflectivity
-MaterialTextureSlot.texture_coordinates -> texture_coordinates: enum
-MaterialTextureSlot.translucency_factor -> translucency_factor: float Amount texture affects translucency
-MaterialTextureSlot.uv_layer -> uv_layer: string UV layer to use for mapping with UV texture coordinates
-MaterialTextureSlot.warp_factor -> warp_factor: float Amount texture affects texture coordinates of next channels
-MaterialTextureSlot.x_mapping -> x_mapping: enum
-MaterialTextureSlot.y_mapping -> y_mapping: enum
-MaterialTextureSlot.z_mapping -> z_mapping: enum
-MaterialVolume.asymmetry -> asymmetry: float Back scattering (-1.0) to Forward scattering (1.0) and the range in between
-MaterialVolume.cache_resolution -> cache_resolution: int Resolution of the voxel grid, low resolutions are faster, high resolutions use more memory
-MaterialVolume.density -> density: float The base density of the volume
-MaterialVolume.density_scale -> density_scale: float Multiplier for the material's density
-MaterialVolume.depth_cutoff -> depth_cutoff: float Stop ray marching early if transmission drops below this luminance - higher values give speedups in dense volumes at the expense of accuracy
-MaterialVolume.emission -> emission: float Amount of light that gets emitted by the volume
-MaterialVolume.emission_color -> emission_color: float
-MaterialVolume.lighting_mode -> light_mode: enum Method of shading, attenuating, and scattering light through the volume
-MaterialVolume.ms_diffusion -> ms_diffusion: float Diffusion factor, the strength of the blurring effect
-MaterialVolume.ms_intensity -> ms_intensity: float Multiplier for multiple scattered light energy
-MaterialVolume.ms_spread -> ms_spread: float Proportional distance over which the light is diffused
-MaterialVolume.reflection -> reflection: float Multiplier to make out-scattered light brighter or darker (non-physically correct)
-MaterialVolume.reflection_color -> reflection_color: float Colour of light scattered out of the volume (does not affect transmission)
-MaterialVolume.scattering -> scattering: float Amount of light that gets scattered out by the volume - the more out-scattering, the shallower the light will penetrate
-MaterialVolume.step_calculation -> step_calculation: enum Method of calculating the steps through the volume
-MaterialVolume.step_size -> step_size: float Distance between subsequent volume depth samples
-MaterialVolume.transmission_color -> transmission_color: float Result color of the volume, after other light has been scattered/absorbed
-Menu.bl_idname -> bl_idname: string
-Menu.bl_label -> bl_label: string
-Menu.layout -> layout: pointer, (read-only)
-Mesh.active_uv_texture -> active_uv_texture: pointer Active UV texture
-Mesh.active_uv_texture_index -> active_uv_texture_index: int Active UV texture index
-Mesh.active_vertex_color -> active_vertex_color: pointer Active vertex color layer
-Mesh.active_vertex_color_index -> active_vertex_color_index: int Active vertex color index
-Mesh.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Mesh.autosmooth_angle -> autosmooth_angle: int Defines maximum angle between face normals that 'Auto Smooth' will operate on
-Mesh.edges -> edges: collection, (read-only) Edges of the mesh
-Mesh.faces -> faces: collection, (read-only) Faces of the mesh
-Mesh.float_layers -> float_layers: collection, (read-only)
-Mesh.int_layers -> int_layers: collection, (read-only)
-Mesh.materials -> materials: collection, (read-only)
-Mesh.shape_keys -> shape_keys: pointer, (read-only)
-Mesh.sticky -> sticky: collection, (read-only) Sticky texture coordinates
-Mesh.string_layers -> string_layers: collection, (read-only)
-Mesh.texco_mesh -> texco_mesh: pointer Derive texture coordinates from another mesh
-Mesh.texspace_loc -> texspace_loc: float Texture space location
-Mesh.texspace_size -> texspace_size: float Texture space size
-Mesh.texture_mesh -> texture_mesh: pointer Use another mesh for texture indices (vertex indices must be aligned)
-Mesh.total_edge_sel -> total_edge_sel: int, (read-only) Selected edge count in editmode
-Mesh.total_face_sel -> total_face_sel: int, (read-only) Selected face count in editmode
-Mesh.total_vert_sel -> total_vert_sel: int, (read-only) Selected vertex count in editmode
-Mesh.uv_texture_clone -> uv_texture_clone: pointer UV texture to be used as cloning source
-Mesh.uv_texture_clone_index -> uv_texture_clone_index: int Clone UV texture index
-Mesh.uv_texture_stencil -> uv_texture_stencil: pointer UV texture to mask the painted area
-Mesh.uv_texture_stencil_index -> uv_texture_stencil_index: int Mask UV texture index
-Mesh.uv_textures -> uv_textures: collection, (read-only)
-Mesh.vertex_colors -> vertex_colors: collection, (read-only)
-Mesh.verts -> verts: collection, (read-only) Vertices of the mesh
-MeshColor.color1 -> color1: float
-MeshColor.color2 -> color2: float
-MeshColor.color3 -> color3: float
-MeshColor.color4 -> color4: float
-MeshColorLayer.data -> data: collection, (read-only)
-MeshColorLayer.name -> name: string
-MeshDeformModifier.object -> object: pointer Mesh object to deform with
-MeshDeformModifier.precision -> precision: int The grid size for binding
-MeshDeformModifier.vertex_group -> vertex_group: string Vertex group name
-MeshEdge.bevel_weight -> bevel_weight: float Weight used by the Bevel modifier
-MeshEdge.crease -> crease: float Weight used by the Subsurf modifier for creasing
-MeshEdge.index -> index: int, (read-only) Index number of the vertex
-MeshEdge.verts -> verts: int Vertex indices
-MeshFace.area -> area: float, (read-only) read only area of the face
-MeshFace.index -> index: int, (read-only) Index number of the vertex
-MeshFace.material_index -> material_index: int
-MeshFace.normal -> normal: float, (read-only) local space unit length normal vector for this face
-MeshFace.verts -> verts: int Vertex indices
-MeshFace.verts_raw -> verts_raw: int Fixed size vertex indices array
-MeshFaces.active -> active: int The active face for this mesh
-MeshFaces.active_tface -> active_tface: pointer, (read-only) Active Texture Face
-MeshFloatProperty.value -> value: float
-MeshFloatPropertyLayer.data -> data: collection, (read-only)
-MeshFloatPropertyLayer.name -> name: string
-MeshIntProperty.value -> value: int
-MeshIntPropertyLayer.data -> data: collection, (read-only)
-MeshIntPropertyLayer.name -> name: string
-MeshSticky.co -> co: float Sticky texture coordinate location
-MeshStringProperty.value -> value: string
-MeshStringPropertyLayer.data -> data: collection, (read-only)
-MeshStringPropertyLayer.name -> name: string
-MeshTextureFace.image -> image: pointer
-MeshTextureFace.transp -> transp: enum Transparency blending mode
-MeshTextureFace.uv -> uv: float
-MeshTextureFace.uv1 -> uv1: float
-MeshTextureFace.uv2 -> uv2: float
-MeshTextureFace.uv3 -> uv3: float
-MeshTextureFace.uv4 -> uv4: float
-MeshTextureFace.uv_raw -> uv_raw: float Fixed size UV coordinates array
-MeshTextureFaceLayer.data -> data: collection, (read-only)
-MeshTextureFaceLayer.name -> name: string
-MeshVertex.bevel_weight -> bevel_weight: float Weight used by the Bevel modifier 'Only Vertices' option
-MeshVertex.co -> co: float
-MeshVertex.groups -> groups: collection, (read-only) Weights for the vertex groups this vertex is member of
-MeshVertex.index -> index: int, (read-only) Index number of the vertex
-MeshVertex.normal -> normal: float Vertex Normal
-MessageActuator.body_message -> body_message: string Optional message body Text
-MessageActuator.body_property -> body_property: string The message body will be set by the Property Value
-MessageActuator.body_type -> body_type: enum Toggle message type: either Text or a PropertyName
-MessageActuator.subject -> subject: string Optional message subject. This is what can be filtered on
-MessageActuator.to_property -> to_property: string Optional send message to objects with this name only, or empty to broadcast
-MessageSensor.subject -> subject: string Optional subject filter: only accept messages with this subject, or empty for all
-MetaBall.active_element -> active_element: pointer, (read-only) Last selected element
-MetaBall.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-MetaBall.elements -> elements: collection, (read-only) Meta elements
-MetaBall.flag -> flag: enum Metaball edit update behavior
-MetaBall.materials -> materials: collection, (read-only)
-MetaBall.render_size -> render_size: float Polygonization resolution in rendering
-MetaBall.texspace_loc -> texspace_loc: float Texture space location
-MetaBall.texspace_size -> texspace_size: float Texture space size
-MetaBall.threshold -> threshold: float Influence of meta elements
-MetaBall.wire_size -> wire_size: float Polygonization resolution in the 3D viewport
-MetaElement.location -> location: float
-MetaElement.radius -> radius: float
-MetaElement.rotation -> rotation: float
-MetaElement.size_x -> size_x: float Size of element, use of components depends on element type
-MetaElement.size_y -> size_y: float Size of element, use of components depends on element type
-MetaElement.size_z -> size_z: float Size of element, use of components depends on element type
-MetaElement.stiffness -> stiffness: float Stiffness defines how much of the element to fill
-MetaElement.type -> type: enum Metaball types
-MetaSequence.animation_end_offset -> animation_end_offset: int Animation end offset (trim end)
-MetaSequence.animation_start_offset -> animation_start_offset: int Animation start offset (trim start)
-MetaSequence.color_balance -> color_balance: pointer, (read-only)
-MetaSequence.crop -> crop: pointer, (read-only)
-MetaSequence.multiply_colors -> multiply_colors: float
-MetaSequence.proxy -> proxy: pointer, (read-only)
-MetaSequence.sequences -> sequences: collection, (read-only)
-MetaSequence.strobe -> strobe: float Only display every nth frame
-MetaSequence.transform -> transform: pointer, (read-only)
-MirrorModifier.merge_limit -> merge_limit: float Distance from axis within which mirrored vertices are merged
-MirrorModifier.mirror_object -> mirror_object: pointer Object to use as mirror
-Modifier.name -> name: string Modifier name
-Modifier.type -> type: enum, (read-only)
-MotionPath.frame_end -> frame_end: int, (read-only) End frame of the stored range
-MotionPath.frame_start -> frame_start: int, (read-only) Starting frame of the stored range
-MotionPath.length -> length: int, (read-only) Number of frames cached
-MotionPath.points -> points: collection, (read-only) Cached positions per frame
-MotionPathVert.co -> co: float
-MouseSensor.mouse_event -> mouse_event: enum Specify the type of event this mouse sensor should trigger on
-MovieSequence.animation_end_offset -> animation_end_offset: int Animation end offset (trim end)
-MovieSequence.animation_start_offset -> animation_start_offset: int Animation start offset (trim start)
-MovieSequence.color_balance -> color_balance: pointer, (read-only)
-MovieSequence.crop -> crop: pointer, (read-only)
-MovieSequence.filepath -> filepath: string
-MovieSequence.mpeg_preseek -> mpeg_preseek: int For MPEG movies, preseek this many frames
-MovieSequence.multiply_colors -> multiply_colors: float
-MovieSequence.proxy -> proxy: pointer, (read-only)
-MovieSequence.strobe -> strobe: float Only display every nth frame
-MovieSequence.transform -> transform: pointer, (read-only)
-MulticamSequence.animation_end_offset -> animation_end_offset: int Animation end offset (trim end)
-MulticamSequence.animation_start_offset -> animation_start_offset: int Animation start offset (trim start)
-MulticamSequence.color_balance -> color_balance: pointer, (read-only)
-MulticamSequence.crop -> crop: pointer, (read-only)
-MulticamSequence.multicam_source -> multicam_source: int
-MulticamSequence.multiply_colors -> multiply_colors: float
-MulticamSequence.proxy -> proxy: pointer, (read-only)
-MulticamSequence.strobe -> strobe: float Only display every nth frame
-MulticamSequence.transform -> transform: pointer, (read-only)
-MultiresModifier.filepath -> filepath: string Path to external displacements file
-MultiresModifier.levels -> levels: int Number of subdivisions to use in the viewport
-MultiresModifier.render_levels -> render_levels: int
-MultiresModifier.sculpt_levels -> sculpt_levels: int Number of subdivisions to use in sculpt mode
-MultiresModifier.subdivision_type -> subdivision_type: enum Selects type of subdivision algorithm
-MultiresModifier.total_levels -> total_levels: int, (read-only) Number of subdivisions for which displacements are stored
-MusgraveTexture.gain -> gain: float The gain multiplier
-MusgraveTexture.highest_dimension -> highest_dimension: float Highest fractal dimension
-MusgraveTexture.lacunarity -> lacunarity: float Gap between successive frequencies
-MusgraveTexture.musgrave_type -> musgrave_type: enum
-MusgraveTexture.nabla -> nabla: float Size of derivative offset used for calculating normal
-MusgraveTexture.noise_basis -> noise_basis: enum Sets the noise basis used for turbulence
-MusgraveTexture.noise_intensity -> noise_intensity: float
-MusgraveTexture.noise_size -> noise_size: float Sets scaling for noise input
-MusgraveTexture.octaves -> octaves: float Number of frequencies used
-MusgraveTexture.offset -> offset: float The fractal offset
-NearSensor.distance -> distance: float Trigger distance
-NearSensor.property -> property: string Only look for objects with this property
-NearSensor.reset_distance -> reset_distance: float
-NetRenderJob.name -> name: string
-NetRenderSettings.active_blacklisted_slave_index -> active_blacklisted_slave_index: int
-NetRenderSettings.active_job_index -> active_job_index: int
-NetRenderSettings.active_slave_index -> active_slave_index: int
-NetRenderSettings.chunks -> chunks: int Number of frame to dispatch to each slave in one chunk
-NetRenderSettings.job_category -> job_category: string Category of the job
-NetRenderSettings.job_id -> job_id: string id of the last sent render job
-NetRenderSettings.job_name -> job_name: string Name of the job
-NetRenderSettings.jobs -> jobs: collection, (read-only)
-NetRenderSettings.mode -> mode: enum Mode of operation of this instance
-NetRenderSettings.path -> path: string Path for temporary files
-NetRenderSettings.priority -> priority: int Priority of the job
-NetRenderSettings.server_address -> server_address: string IP or name of the master render server
-NetRenderSettings.server_port -> server_port: int port of the master render server
-NetRenderSettings.slaves -> slaves: collection, (read-only)
-NetRenderSettings.slaves_blacklist -> slaves_blacklist: collection, (read-only)
-NetRenderSlave.name -> name: string
-NlaStrip.action -> action: pointer Action referenced by this strip
-NlaStrip.action_frame_end -> action_frame_end: float
-NlaStrip.action_frame_start -> action_frame_start: float
-NlaStrip.blend_in -> blend_in: float Number of frames at start of strip to fade in influence
-NlaStrip.blend_out -> blend_out: float
-NlaStrip.blending -> blend_type: enum Method used for combining strip's result with accumulated result
-NlaStrip.extrapolation -> extrapolation: enum Action to take for gaps past the strip extents
-NlaStrip.fcurves -> fcurves: collection, (read-only) F-Curves for controlling the strip's influence and timing
-NlaStrip.frame_end -> frame_end: float
-NlaStrip.frame_start -> frame_start: float
-NlaStrip.influence -> influence: float Amount the strip contributes to the current result
-NlaStrip.modifiers -> modifiers: collection, (read-only) Modifiers affecting all the F-Curves in the referenced Action
-NlaStrip.name -> name: string
-NlaStrip.repeat -> repeat: float Number of times to repeat the action range
-NlaStrip.scale -> scale: float Scaling factor for action
-NlaStrip.strip_time -> strip_time: float Frame of referenced Action to evaluate
-NlaStrip.strips -> strips: collection, (read-only) NLA Strips that this strip acts as a container for (if it is of type Meta)
-NlaStrip.type -> type: enum, (read-only) Type of NLA Strip
-NlaTrack.name -> name: string
-NlaTrack.strips -> strips: collection, (read-only) NLA Strips on this NLA-track
-Node.inputs -> inputs: collection, (read-only)
-Node.location -> location: float
-Node.name -> name: string Node name
-Node.outputs -> outputs: collection, (read-only)
-NodeGroup.nodetree -> nodetree: pointer
-NodeTree.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-NodeTree.grease_pencil -> grease_pencil: pointer Grease Pencil datablock
-NodeTree.nodes -> nodes: collection, (read-only)
-Object.active_material -> active_material: pointer Active material being displayed
-Object.active_material_index -> active_material_index: int Index of active material slot
-Object.active_particle_system -> active_particle_system: pointer, (read-only) Active particle system being displayed
-Object.active_particle_system_index -> active_particle_system_index: int Index of active particle system slot
-Object.active_shape_key -> active_shape_key: pointer, (read-only) Current shape key
-Object.active_shape_key_index -> active_shape_key_index: int Current shape key index
-Object.active_vertex_group -> active_vertex_group: pointer, (read-only) Vertex groups of the object
-Object.active_vertex_group_index -> active_vertex_group_index: int Active index in vertex group array
-Object.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Object.animation_visualisation -> animation_visualisation: pointer, (read-only) Animation data for this datablock
-Object.bound_box -> bound_box: float, (read-only) Objects bound box in object-space coordinates
-Object.collision -> collision: pointer, (read-only) Settings for using the objects as a collider in physics simulation
-Object.color -> color: float Object color and alpha, used when faces have the ObColor mode enabled
-Object.constraints -> constraints: collection, (read-only) Constraints affecting the transformation of the object
-Object.data -> data: pointer Object data
-Object.delta_location -> delta_location: float Extra translation added to the location of the object
-Object.delta_rotation_euler -> delta_rotation_euler: float Extra rotation added to the rotation of the object (when using Euler rotations)
-Object.delta_rotation_quaternion -> delta_rotation_quaternion: float Extra rotation added to the rotation of the object (when using Quaternion rotations)
-Object.delta_scale -> delta_scale: float Extra scaling added to the scale of the object
-Object.dimensions -> dimensions: float Absolute bounding box dimensions of the object
-Object.draw_bounds_type -> draw_bounds_type: enum Object boundary display type
-Object.dupli_faces_scale -> dupli_faces_scale: float Scale the DupliFace objects
-Object.dupli_frames_end -> dupli_frames_end: int End frame for DupliFrames
-Object.dupli_frames_off -> dupli_frames_off: int Recurring frames to exclude from the Dupliframes
-Object.dupli_frames_on -> dupli_frames_on: int Number of frames to use between DupOff frames
-Object.dupli_frames_start -> dupli_frames_start: int Start frame for DupliFrames
-Object.dupli_group -> dupli_group: pointer Instance an existing group
-Object.dupli_list -> dupli_list: collection, (read-only) Object duplis
-Object.dupli_type -> dupli_type: enum If not None, object duplication method to use
-Object.empty_draw_size -> empty_draw_size: float Size of display for empties in the viewport
-Object.empty_draw_type -> empty_draw_type: enum Viewport display style for empties
-Object.field -> field: pointer, (read-only) Settings for using the objects as a field in physics simulation
-Object.game -> game: pointer, (read-only) Game engine related settings for the object
-Object.grease_pencil -> grease_pencil: pointer Grease Pencil datablock
-Object.location -> location: float Location of the object
-Object.material_slots -> material_slots: collection, (read-only) Material slots in the object
-Object.matrix_local -> matrix_local: float Parent relative transformation matrix
-Object.matrix_world -> matrix_world: float Worldspace transformation matrix
-Object.max_draw_type -> draw_type: enum Maximum draw type to display object with in viewport
-Object.mode -> mode: enum, (read-only) Object interaction mode
-Object.modifiers -> modifiers: collection, (read-only) Modifiers affecting the geometric data of the object
-Object.motion_path -> motion_path: pointer, (read-only) Motion Path for this element
-Object.parent -> parent: pointer Parent Object
-Object.parent_bone -> parent_bone: string Name of parent bone in case of a bone parenting relation
-Object.parent_type -> parent_type: enum Type of parent relation
-Object.parent_vertices -> parent_vertices: int, (read-only) Indices of vertices in cases of a vertex parenting relation
-Object.particle_systems -> particle_systems: collection, (read-only) Particle systems emitted from the object
-Object.pass_index -> pass_index: int Index # for the IndexOB render pass
-Object.pose -> pose: pointer, (read-only) Current pose for armatures
-Object.pose_library -> pose_library: pointer, (read-only) Action used as a pose library for armatures
-Object.proxy -> proxy: pointer, (read-only) Library object this proxy object controls
-Object.proxy_group -> proxy_group: pointer, (read-only) Library group duplicator object this proxy object controls
-Object.rotation_axis_angle -> rotation_axis_angle: float Angle of Rotation for Axis-Angle rotation representation
-Object.rotation_euler -> rotation_euler: float Rotation in Eulers
-Object.rotation_mode -> rotation_mode: enum
-Object.rotation_quaternion -> rotation_quaternion: float Rotation in Quaternions
-Object.scale -> scale: float Scaling of the object
-Object.soft_body -> soft_body: pointer, (read-only) Settings for soft body simulation
-Object.time_offset -> time_offset: float Animation offset in frames for F-Curve and dupligroup instances
-Object.track_axis -> track_axis: enum Axis that points in 'forward' direction
-Object.type -> type: enum, (read-only) Type of Object
-Object.up_axis -> up_axis: enum Axis that points in the upward direction
-Object.vertex_groups -> vertex_groups: collection, (read-only) Vertex groups of the object
-ObjectActuator.angular_velocity -> angular_velocity: float Sets the angular velocity
-ObjectActuator.damping -> damping: int Number of frames to reach the target velocity
-ObjectActuator.derivate_coefficient -> derivate_coefficient: float Not required, high values can cause instability
-ObjectActuator.force -> force: float Sets the force
-ObjectActuator.force_max_x -> force_max_x: float Set the upper limit for force
-ObjectActuator.force_max_y -> force_max_y: float Set the upper limit for force
-ObjectActuator.force_max_z -> force_max_z: float Set the upper limit for force
-ObjectActuator.force_min_x -> force_min_x: float Set the lower limit for force
-ObjectActuator.force_min_y -> force_min_y: float Set the lower limit for force
-ObjectActuator.force_min_z -> force_min_z: float Set the lower limit for force
-ObjectActuator.integral_coefficient -> integral_coefficient: float Low value (0.01) for slow response, high value (0.5) for fast response
-ObjectActuator.linear_velocity -> linear_velocity: float Sets the linear velocity (in Servo mode it sets the target relative linear velocity, it will be achieved by automatic application of force. Null velocity is a valid target)
-ObjectActuator.loc -> loc: float Sets the location
-ObjectActuator.mode -> mode: enum Specify the motion system
-ObjectActuator.proportional_coefficient -> proportional_coefficient: float Typical value is 60x integral coefficient
-ObjectActuator.reference_object -> reference_object: pointer Reference object for velocity calculation, leave empty for world reference
-ObjectActuator.rot -> rot: float Sets the rotation
-ObjectActuator.torque -> torque: float Sets the torque
-ObjectBase.object -> object: pointer, (read-only) Object this base links to
-ObjectConstraints.active -> active: pointer Active Object constraint
-ObstacleFluidSettings.impact_factor -> impact_factor: float This is an unphysical value for moving objects - it controls the impact an obstacle has on the fluid, =0 behaves a bit like outflow (deleting fluid), =1 is default, while >1 results in high forces. Can be used to tweak total mass
-ObstacleFluidSettings.partial_slip_factor -> partial_slip_factor: float Amount of mixing between no- and free-slip, 0 is no slip and 1 is free slip
-ObstacleFluidSettings.slip_type -> slip_type: enum
-ObstacleFluidSettings.volume_initialization -> volume_initialization: enum Volume initialization type
-Operator.bl_description -> bl_description: string
-Operator.bl_idname -> bl_idname: string
-Operator.bl_label -> bl_label: string
-Operator.bl_options -> bl_options: enum Options for this operator type
-Operator.layout -> layout: pointer, (read-only)
-Operator.name -> name: string, (read-only)
-Operator.properties -> properties: pointer, (read-only)
-OperatorFileListElement.name -> name: string the name of a file or directory within a file list
-OperatorMousePath.loc -> loc: float Mouse location
-OperatorMousePath.time -> time: float Time of mouse location
-OperatorStrokeElement.location -> location: float
-OperatorStrokeElement.mouse -> mouse: float
-OperatorStrokeElement.pressure -> pressure: float Tablet pressure
-OperatorStrokeElement.time -> time: float
-OperatorTypeMacro.properties -> properties: pointer, (read-only)
-OutflowFluidSettings.volume_initialization -> volume_initialization: enum Volume initialization type
-PackedFile.size -> size: int, (read-only) Size of packed file in bytes
-Paint.active_brush_index -> active_brush_index: int
-Paint.active_brush_name -> active_brush_name: string
-Paint.brush -> brush: pointer Active paint brush
-Paint.brushes -> brushes: collection, (read-only) Brushes selected for this paint mode
-Panel.bl_context -> bl_context: string
-Panel.bl_idname -> bl_idname: string
-Panel.bl_label -> bl_label: string
-Panel.bl_region_type -> bl_region_type: enum
-Panel.bl_space_type -> bl_space_type: enum
-Panel.layout -> layout: pointer, (read-only)
-Panel.text -> text: string
-ParentActuator.mode -> mode: enum
-ParentActuator.object -> object: pointer Set this object as parent
-Particle.alive_state -> alive_state: enum
-Particle.angular_velocity -> angular_velocity: float
-Particle.birthtime -> birthtime: float
-Particle.die_time -> die_time: float
-Particle.hair -> hair: collection, (read-only)
-Particle.keys -> keys: collection, (read-only)
-Particle.lifetime -> lifetime: float
-Particle.location -> location: float
-Particle.prev_angular_velocity -> prev_angular_velocity: float
-Particle.prev_location -> prev_location: float
-Particle.prev_rotation -> prev_rotation: float
-Particle.prev_velocity -> prev_velocity: float
-Particle.rotation -> rotation: float
-Particle.size -> size: float
-Particle.velocity -> velocity: float
-ParticleBrush.count -> count: int Particle count
-ParticleBrush.curve -> curve: pointer, (read-only)
-ParticleBrush.length_mode -> length_mode: enum
-ParticleBrush.puff_mode -> puff_mode: enum
-ParticleBrush.size -> size: int Brush size
-ParticleBrush.steps -> steps: int Brush steps
-ParticleBrush.strength -> strength: float Brush strength
-ParticleDupliWeight.count -> count: int The number of times this object is repeated with respect to other objects
-ParticleDupliWeight.name -> name: string, (read-only) Particle dupliobject name
-ParticleEdit.add_keys -> add_keys: int How many keys to make new particles with
-ParticleEdit.brush -> brush: pointer, (read-only)
-ParticleEdit.draw_step -> draw_step: int How many steps to draw the path with
-ParticleEdit.emitter_distance -> emitter_distance: float Distance to keep particles away from the emitter
-ParticleEdit.fade_frames -> fade_frames: int How many frames to fade
-ParticleEdit.object -> object: pointer, (read-only) The edited object
-ParticleEdit.selection_mode -> selection_mode: enum Particle select and display mode
-ParticleEdit.tool -> tool: enum
-ParticleEdit.type -> type: enum
-ParticleFluidSettings.alpha_influence -> alpha_influence: float Amount of particle alpha change, inverse of size influence: 0=off (all same alpha), 1=full. (large particles get lower alphas, smaller ones higher values)
-ParticleFluidSettings.particle_influence -> particle_influence: float Amount of particle size scaling: 0=off (all same size), 1=full (range 0.2-2.0), >1=stronger
-ParticleFluidSettings.path -> path: string Directory (and/or filename prefix) to store and load particles from
-ParticleHairKey.location -> location: float Location of the hair key in object space
-ParticleHairKey.location_hairspace -> location_hairspace: float Location of the hair key in its internal coordinate system, relative to the emitting face
-ParticleHairKey.time -> time: float Relative time of key over hair length
-ParticleHairKey.weight -> weight: float Weight for cloth simulation
-ParticleInstanceModifier.axis -> axis: enum Pole axis for rotation
-ParticleInstanceModifier.object -> object: pointer Object that has the particle system
-ParticleInstanceModifier.particle_system_number -> particle_system_number: int
-ParticleInstanceModifier.position -> position: float Position along path
-ParticleInstanceModifier.random_position -> random_position: float Randomize position along path
-ParticleKey.angular_velocity -> angular_velocity: float Key angular velocity
-ParticleKey.location -> location: float Key location
-ParticleKey.rotation -> rotation: float Key rotation quaterion
-ParticleKey.time -> time: float Time of key over the simulation
-ParticleKey.velocity -> velocity: float Key velocity
-ParticleSettings.active_dupliweight -> active_dupliweight: pointer, (read-only)
-ParticleSettings.active_dupliweight_index -> active_dupliweight_index: int
-ParticleSettings.adaptive_angle -> adaptive_angle: int How many degrees path has to curve to make another render segment
-ParticleSettings.adaptive_pix -> adaptive_pix: int How many pixels path has to cover to make another render segment
-ParticleSettings.amount -> amount: int Total number of particles
-ParticleSettings.angular_velocity_factor -> angular_velocity_factor: float Angular velocity amount
-ParticleSettings.angular_velocity_mode -> angular_velocity_mode: enum Particle angular velocity mode
-ParticleSettings.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-ParticleSettings.billboard_align -> billboard_align: enum In respect to what the billboards are aligned
-ParticleSettings.billboard_animation -> billboard_animation: enum How to animate billboard textures
-ParticleSettings.billboard_object -> billboard_object: pointer Billboards face this object (default is active camera)
-ParticleSettings.billboard_offset -> billboard_offset: float
-ParticleSettings.billboard_random_tilt -> billboard_random_tilt: float Random tilt of the billboards
-ParticleSettings.billboard_split_offset -> billboard_split_offset: enum How to offset billboard textures
-ParticleSettings.billboard_tilt -> billboard_tilt: float Tilt of the billboards
-ParticleSettings.billboard_uv_split -> billboard_uv_split: int Amount of rows/columns to split UV coordinates for billboards
-ParticleSettings.boids -> boids: pointer, (read-only)
-ParticleSettings.branch_threshold -> branch_threshold: float Threshold of branching
-ParticleSettings.brownian_factor -> brownian_factor: float Specify the amount of Brownian motion
-ParticleSettings.child_length -> child_length: float Length of child paths
-ParticleSettings.child_length_thres -> child_length_thres: float Amount of particles left untouched by child path length
-ParticleSettings.child_nbr -> child_nbr: int Amount of children/parent
-ParticleSettings.child_radius -> child_radius: float Radius of children around parent
-ParticleSettings.child_random_size -> child_random_size: float Random variation to the size of the child particles
-ParticleSettings.child_roundness -> child_roundness: float Roundness of children around parent
-ParticleSettings.child_size -> child_size: float A multiplier for the child particle size
-ParticleSettings.child_type -> child_type: enum Create child particles
-ParticleSettings.clump_factor -> clump_factor: float Amount of clumping
-ParticleSettings.clumppow -> clumppow: float Shape of clumping
-ParticleSettings.damp_factor -> damp_factor: float Specify the amount of damping
-ParticleSettings.display -> display: int Percentage of particles to display in 3D view
-ParticleSettings.distribution -> distribution: enum How to distribute particles on selected element
-ParticleSettings.drag_factor -> drag_factor: float Specify the amount of air-drag
-ParticleSettings.draw_as -> draw_as: enum How particles are drawn in viewport
-ParticleSettings.draw_size -> draw_size: int Size of particles on viewport in pixels (0=default)
-ParticleSettings.draw_step -> draw_step: int How many steps paths are drawn with (power of 2)
-ParticleSettings.dupli_group -> dupli_group: pointer Show Objects in this Group in place of particles
-ParticleSettings.dupli_object -> dupli_object: pointer Show this Object in place of particles
-ParticleSettings.dupliweights -> dupliweights: collection, (read-only) Weights for all of the objects in the dupli group
-ParticleSettings.effect_hair -> effect_hair: float Hair stiffness for effectors
-ParticleSettings.effector_weights -> effector_weights: pointer, (read-only)
-ParticleSettings.emit_from -> emit_from: enum Where to emit particles from
-ParticleSettings.fluid -> fluid: pointer, (read-only)
-ParticleSettings.force_field_1 -> force_field_1: pointer, (read-only)
-ParticleSettings.force_field_2 -> force_field_2: pointer, (read-only)
-ParticleSettings.frame_end -> frame_end: float Frame # to stop emitting particles
-ParticleSettings.frame_start -> frame_start: float Frame # to start emitting particles
-ParticleSettings.grid_resolution -> grid_resolution: int The resolution of the particle grid
-ParticleSettings.hair_step -> hair_step: int Number of hair segments
-ParticleSettings.integrator -> integrator: enum Select physics integrator type
-ParticleSettings.jitter_factor -> jitter_factor: float Amount of jitter applied to the sampling
-ParticleSettings.keyed_loops -> keyed_loops: int Number of times the keys are looped
-ParticleSettings.keys_step -> keys_step: int
-ParticleSettings.kink -> kink: enum Type of periodic offset on the path
-ParticleSettings.kink_amplitude -> kink_amplitude: float The amplitude of the offset
-ParticleSettings.kink_axis -> kink_axis: enum Which axis to use for offset
-ParticleSettings.kink_frequency -> kink_frequency: float The frequency of the offset (1/total length)
-ParticleSettings.kink_shape -> kink_shape: float Adjust the offset to the beginning/end
-ParticleSettings.lifetime -> lifetime: float Specify the life span of the particles
-ParticleSettings.line_length_head -> line_length_head: float Length of the line's head
-ParticleSettings.line_length_tail -> line_length_tail: float Length of the line's tail
-ParticleSettings.mass -> mass: float Specify the mass of the particles
-ParticleSettings.material -> material: int Specify material used for the particles
-ParticleSettings.normal_factor -> normal_factor: float Let the surface normal give the particle a starting speed
-ParticleSettings.object_aligned_factor -> object_aligned_factor: float Let the emitter object orientation give the particle a starting speed
-ParticleSettings.object_factor -> object_factor: float Let the object give the particle a starting speed
-ParticleSettings.particle_factor -> particle_factor: float Let the target particle give the particle a starting speed
-ParticleSettings.particle_size -> particle_size: float The size of the particles
-ParticleSettings.path_end -> path_end: float End time of drawn path
-ParticleSettings.path_start -> path_start: float Starting time of drawn path
-ParticleSettings.phase_factor -> phase_factor: float Initial rotation phase
-ParticleSettings.physics_type -> physics_type: enum Particle physics type
-ParticleSettings.random_factor -> random_factor: float Give the starting speed a random variation
-ParticleSettings.random_length -> random_length: float Give path length a random variation
-ParticleSettings.random_lifetime -> random_lifetime: float Give the particle life a random variation
-ParticleSettings.random_phase_factor -> random_phase_factor: float Randomize rotation phase
-ParticleSettings.random_rotation_factor -> random_rotation_factor: float Randomize rotation
-ParticleSettings.random_size -> random_size: float Give the particle size a random variation
-ParticleSettings.react_event -> react_event: enum The event of target particles to react on
-ParticleSettings.reaction_shape -> reaction_shape: float Power of reaction strength dependence on distance to target
-ParticleSettings.reactor_factor -> reactor_factor: float Let the vector away from the target particles location give the particle a starting speed
-ParticleSettings.ren_as -> ren_as: enum How particles are rendered
-ParticleSettings.render_step -> render_step: int How many steps paths are rendered with (power of 2)
-ParticleSettings.rendered_child_nbr -> rendered_child_nbr: int Amount of children/parent for rendering
-ParticleSettings.rotate_from -> rotate_from: enum
-ParticleSettings.rotation_mode -> rotation_mode: enum Particles initial rotation
-ParticleSettings.rough1 -> rough1: float Amount of location dependent rough
-ParticleSettings.rough1_size -> rough1_size: float Size of location dependent rough
-ParticleSettings.rough2 -> rough2: float Amount of random rough
-ParticleSettings.rough2_size -> rough2_size: float Size of random rough
-ParticleSettings.rough2_thres -> rough2_thres: float Amount of particles left untouched by random rough
-ParticleSettings.rough_end_shape -> rough_end_shape: float Shape of end point rough
-ParticleSettings.rough_endpoint -> rough_endpoint: float Amount of end point rough
-ParticleSettings.simplify_rate -> simplify_rate: float Speed of simplification
-ParticleSettings.simplify_refsize -> simplify_refsize: int Reference size in pixels, after which simplification begins
-ParticleSettings.simplify_transition -> simplify_transition: float Transition period for fading out strands
-ParticleSettings.simplify_viewport -> simplify_viewport: float Speed of Simplification
-ParticleSettings.subframes -> subframes: int Subframes to simulate for improved stability and finer granularity simulations
-ParticleSettings.tangent_factor -> tangent_factor: float Let the surface tangent give the particle a starting speed
-ParticleSettings.tangent_phase -> tangent_phase: float Rotate the surface tangent
-ParticleSettings.time_tweak -> time_tweak: float A multiplier for physics timestep (1.0 means one frame = 1/25 seconds)
-ParticleSettings.trail_count -> trail_count: int Number of trail particles
-ParticleSettings.type -> type: enum
-ParticleSettings.userjit -> userjit: int Emission locations / face (0 = automatic)
-ParticleSettings.virtual_parents -> virtual_parents: float Relative amount of virtual parents
-ParticleSystem.active_particle_target -> active_particle_target: pointer, (read-only)
-ParticleSystem.active_particle_target_index -> active_particle_target_index: int
-ParticleSystem.billboard_normal_uv -> billboard_normal_uv: string UV Layer to control billboard normals
-ParticleSystem.billboard_split_uv -> billboard_split_uv: string UV Layer to control billboard splitting
-ParticleSystem.billboard_time_index_uv -> billboard_time_index_uv: string UV Layer to control billboard time index (X-Y)
-ParticleSystem.child_particles -> child_particles: collection, (read-only) Child particles generated by the particle system
-ParticleSystem.cloth -> cloth: pointer, (read-only) Cloth dynamics for hair
-ParticleSystem.name -> name: string Particle system name
-ParticleSystem.parent -> parent: pointer Use this object's coordinate system instead of global coordinate system
-ParticleSystem.particles -> particles: collection, (read-only) Particles generated by the particle system
-ParticleSystem.point_cache -> point_cache: pointer, (read-only)
-ParticleSystem.reactor_target_object -> reactor_target_object: pointer For reactor systems, the object that has the target particle system (empty if same object)
-ParticleSystem.reactor_target_particle_system -> reactor_target_particle_system: int For reactor systems, index of particle system on the target object
-ParticleSystem.seed -> seed: int Offset in the random number table, to get a different randomized result
-ParticleSystem.settings -> settings: pointer Particle system settings
-ParticleSystem.targets -> targets: collection, (read-only) Target particle systems
-ParticleSystem.vertex_group_clump -> vertex_group_clump: string Vertex group to control clump
-ParticleSystem.vertex_group_density -> vertex_group_density: string Vertex group to control density
-ParticleSystem.vertex_group_field -> vertex_group_field: string Vertex group to control field
-ParticleSystem.vertex_group_kink -> vertex_group_kink: string Vertex group to control kink
-ParticleSystem.vertex_group_length -> vertex_group_length: string Vertex group to control length
-ParticleSystem.vertex_group_rotation -> vertex_group_rotation: string Vertex group to control rotation
-ParticleSystem.vertex_group_roughness1 -> vertex_group_rough1: string Vertex group to control roughness 1
-ParticleSystem.vertex_group_roughness2 -> vertex_group_rough2: string Vertex group to control roughness 2
-ParticleSystem.vertex_group_roughness_end -> vertex_group_rough_end: string Vertex group to control roughness end
-ParticleSystem.vertex_group_size -> vertex_group_size: string Vertex group to control size
-ParticleSystem.vertex_group_tangent -> vertex_group_tangent: string Vertex group to control tangent
-ParticleSystem.vertex_group_velocity -> vertex_group_velocity: string Vertex group to control velocity
-ParticleSystemModifier.particle_system -> particle_system: pointer, (read-only) Particle System that this modifier controls
-ParticleTarget.duration -> duration: float
-ParticleTarget.mode -> mode: enum
-ParticleTarget.name -> name: string, (read-only) Particle target name
-ParticleTarget.object -> object: pointer The object that has the target particle system (empty if same object)
-ParticleTarget.system -> system: int The index of particle system on the target object
-ParticleTarget.time -> time: float
-PivotConstraint.enabled_rotation_range -> enabled_rotation_range: enum Rotation range on which pivoting should occur
-PivotConstraint.head_tail -> head_tail: float Target along length of bone: Head=0, Tail=1
-PivotConstraint.offset -> offset: float Offset of pivot from target (when set), or from owner's location (when Fixed Position is off), or the absolute pivot point
-PivotConstraint.subtarget -> subtarget: string
-PivotConstraint.target -> target: pointer Target Object, defining the position of the pivot when defined
-PluginSequence.filename -> filename: string, (read-only)
-PointCache.active_point_cache_index -> active_point_cache_index: int
-PointCache.filepath -> filepath: string Cache file path
-PointCache.frame_end -> frame_end: int Frame on which the simulation stops
-PointCache.frame_start -> frame_start: int Frame on which the simulation starts
-PointCache.index -> index: int Index number of cache files
-PointCache.info -> info: string, (read-only) Info on current cache status
-PointCache.name -> name: string Cache name
-PointCache.point_cache_list -> point_cache_list: collection, (read-only) Point cache list
-PointCache.step -> step: int Number of frames between cached frames
-PointDensity.color_ramp -> color_ramp: pointer, (read-only)
-PointDensity.color_source -> color_source: enum Data to derive color results from
-PointDensity.falloff -> falloff: enum Method of attenuating density by distance from the point
-PointDensity.falloff_softness -> falloff_soft: float Softness of the 'soft' falloff option
-PointDensity.noise_basis -> noise_basis: enum Noise formula used for turbulence
-PointDensity.object -> object: pointer Object to take point data from
-PointDensity.particle_cache -> particle_cache: enum Co-ordinate system to cache particles in
-PointDensity.particle_system -> particle_system: pointer Particle System to render as points
-PointDensity.point_source -> point_source: enum Point data to use as renderable point density
-PointDensity.radius -> radius: float Radius from the shaded sample to look for points within
-PointDensity.speed_scale -> speed_scale: float Multiplier to bring particle speed within an acceptable range
-PointDensity.turbulence_depth -> turbulence_depth: int Level of detail in the added turbulent noise
-PointDensity.turbulence_influence -> turbulence_influence: enum Method for driving added turbulent noise
-PointDensity.turbulence_size -> turbulence_size: float Scale of the added turbulent noise
-PointDensity.turbulence_strength -> turbulence_strength: float
-PointDensity.vertices_cache -> vertices_cache: enum Co-ordinate system to cache vertices in
-PointDensityTexture.pointdensity -> pointdensity: pointer, (read-only) The point density settings associated with this texture
-PointLamp.falloff_curve -> falloff_curve: pointer, (read-only) Custom Lamp Falloff Curve
-PointLamp.falloff_type -> falloff_type: enum Intensity Decay with distance
-PointLamp.linear_attenuation -> linear_attenuation: float Linear distance attenuation
-PointLamp.quadratic_attenuation -> quadratic_attenuation: float Quadratic distance attenuation
-PointLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float Threshold for Adaptive Sampling (Raytraced shadows)
-PointLamp.shadow_color -> shadow_color: float Color of shadows cast by the lamp
-PointLamp.shadow_method -> shadow_method: enum Method to compute lamp shadow with
-PointLamp.shadow_ray_samples -> shadow_ray_samples: int Amount of samples taken extra (samples x samples)
-PointLamp.shadow_ray_sampling_method -> shadow_ray_sample_method: enum Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower
-PointLamp.shadow_soft_size -> shadow_soft_size: float Light size for ray shadow sampling (Raytraced shadows)
-PointerProperty.fixed_type -> fixed_type: pointer, (read-only) Fixed pointer type, empty if variable type
-Pose.active_bone_group -> active_bone_group: pointer Active bone group for this pose
-Pose.active_bone_group_index -> active_bone_group_index: int Active index in bone groups array
-Pose.animation_visualisation -> animation_visualisation: pointer, (read-only) Animation data for this datablock
-Pose.bone_groups -> bone_groups: collection, (read-only) Groups of the bones
-Pose.bones -> bones: collection, (read-only) Individual pose bones for the armature
-Pose.ik_param -> ik_param: pointer, (read-only) Parameters for IK solver
-Pose.ik_solver -> ik_solver: enum Selection of IK solver for IK chain, current choice is 0 for Legacy, 1 for iTaSC
-PoseBone.bone -> bone: pointer, (read-only) Bone associated with this PoseBone
-PoseBone.bone_group -> bone_group: pointer Bone Group this pose channel belongs to
-PoseBone.bone_group_index -> bone_group_index: int Bone Group this pose channel belongs to (0=no group)
-PoseBone.child -> child: pointer, (read-only) Child of this pose bone
-PoseBone.constraints -> constraints: collection, (read-only) Constraints that act on this PoseChannel
-PoseBone.custom_shape -> custom_shape: pointer Object that defines custom draw type for this bone
-PoseBone.custom_shape_transform -> custom_shape_transform: pointer Bone that defines the display transform of this custom shape
-PoseBone.head -> head: float, (read-only) Location of head of the channel's bone
-PoseBone.ik_lin_weight -> ik_lin_weight: float Weight of scale constraint for IK
-PoseBone.ik_max_x -> ik_max_x: float Maximum angles for IK Limit
-PoseBone.ik_max_y -> ik_max_y: float Maximum angles for IK Limit
-PoseBone.ik_max_z -> ik_max_z: float Maximum angles for IK Limit
-PoseBone.ik_min_x -> ik_min_x: float Minimum angles for IK Limit
-PoseBone.ik_min_y -> ik_min_y: float Minimum angles for IK Limit
-PoseBone.ik_min_z -> ik_min_z: float Minimum angles for IK Limit
-PoseBone.ik_rot_weight -> ik_rot_weight: float Weight of rotation constraint for IK
-PoseBone.ik_stiffness_x -> ik_stiffness_x: float IK stiffness around the X axis
-PoseBone.ik_stiffness_y -> ik_stiffness_y: float IK stiffness around the Y axis
-PoseBone.ik_stiffness_z -> ik_stiffness_z: float IK stiffness around the Z axis
-PoseBone.ik_stretch -> ik_stretch: float Allow scaling of the bone for IK
-PoseBone.location -> location: float
-PoseBone.matrix -> matrix: float, (read-only) Final 4x4 matrix for this channel
-PoseBone.matrix_channel -> matrix_channel: float, (read-only) 4x4 matrix, before constraints
-PoseBone.matrix_local -> matrix_local: float Matrix representing the parent relative location, scale and rotation. Provides an alternative access to these properties.
-PoseBone.motion_path -> motion_path: pointer, (read-only) Motion Path for this element
-PoseBone.name -> name: string
-PoseBone.parent -> parent: pointer, (read-only) Parent of this pose bone
-PoseBone.rotation_axis_angle -> rotation_axis_angle: float Angle of Rotation for Axis-Angle rotation representation
-PoseBone.rotation_euler -> rotation_euler: float Rotation in Eulers
-PoseBone.rotation_mode -> rotation_mode: enum
-PoseBone.rotation_quaternion -> rotation_quaternion: float Rotation in Quaternions
-PoseBone.scale -> scale: float
-PoseBone.tail -> tail: float, (read-only) Location of tail of the channel's bone
-PoseBoneConstraints.active -> active: pointer Active PoseChannel constraint
-PoseTemplate.name -> name: string
-PoseTemplateSettings.active_template_index -> active_template_index: int
-PoseTemplateSettings.templates -> templates: collection, (read-only)
-Property.description -> description: string, (read-only) Description of the property for tooltips
-Property.identifier -> identifier: string, (read-only) Unique name used in the code and scripting
-Property.name -> name: string, (read-only) Human readable name
-Property.srna -> srna: pointer, (read-only) Struct definition used for properties assigned to this item
-Property.subtype -> subtype: enum, (read-only) Semantic interpretation of the property
-Property.type -> type: enum, (read-only) Data type of the property
-Property.unit -> unit: enum, (read-only) Type of units for this property
-PropertyActuator.mode -> mode: enum
-PropertyActuator.object -> object: pointer Copy from this Object
-PropertyActuator.object_property -> object_property: string Copy this property
-PropertyActuator.property -> property: string The name of the property
-PropertyActuator.value -> value: string The value to use, use "" around strings
-PropertySensor.evaluation_type -> evaluation_type: enum Type of property evaluation
-PropertySensor.max_value -> value_max: string Specify maximum value in Interval type
-PropertySensor.min_value -> value_min: string Specify minimum value in Interval type
-PropertySensor.property -> property: string
-PropertySensor.value -> value: string Check for this value in types in Equal or Not Equal types
-PythonConstraint.number_of_targets -> number_of_targets: int Usually only 1-3 are needed
-PythonConstraint.targets -> targets: collection, (read-only) Target Objects
-PythonConstraint.text -> text: pointer The text object that contains the Python script
-PythonController.mode -> mode: enum Python script type (textblock or module - faster)
-PythonController.module -> module: string Module name and function to run e.g. "someModule.main". Internal texts and external python files can be used
-PythonController.text -> text: pointer Text datablock with the python script
-RGBANodeSocket.default_value -> default_value: float Default value of the socket when no link is attached
-RGBANodeSocket.name -> name: string, (read-only) Socket name
-RadarSensor.angle -> angle: float Opening angle of the radar cone
-RadarSensor.axis -> axis: enum Specify along which axis the radar cone is cast
-RadarSensor.distance -> distance: float Depth of the radar cone
-RadarSensor.property -> property: string Only look for Objects with this property
-RandomActuator.chance -> chance: float Pick a number between 0 and 1. Success if you stay below this value
-RandomActuator.distribution -> distribution: enum Choose the type of distribution
-RandomActuator.float_max -> float_max: float Choose a number from a range. Upper boundary of the range
-RandomActuator.float_mean -> float_mean: float A normal distribution. Mean of the distribution
-RandomActuator.float_min -> float_min: float Choose a number from a range. Lower boundary of the range
-RandomActuator.float_value -> float_value: float Always return this number
-RandomActuator.half_life_time -> half_life_time: float Negative exponential dropoff
-RandomActuator.int_max -> int_max: int Choose a number from a range. Upper boundary of the range
-RandomActuator.int_mean -> int_mean: float Expected mean value of the distribution
-RandomActuator.int_min -> int_min: int Choose a number from a range. Lower boundary of the range
-RandomActuator.int_value -> int_value: int Always return this number
-RandomActuator.property -> property: string Assign the random value to this property
-RandomActuator.seed -> seed: int Initial seed of the random generator. Use Python for more freedom (choose 0 for not random)
-RandomActuator.standard_derivation -> standard_derivation: float A normal distribution. Standard deviation of the distribution
-RandomSensor.seed -> seed: int Initial seed of the generator. (Choose 0 for not random)
-RaySensor.axis -> axis: enum Specify along which axis the ray is cast
-RaySensor.material -> material: string Only look for Objects with this material
-RaySensor.property -> property: string Only look for Objects with this property
-RaySensor.range -> range: float Sense objects no farther than this distance
-RaySensor.ray_type -> ray_type: enum Toggle collision on material or property
-Region.height -> height: int, (read-only) Region height
-Region.id -> id: int, (read-only) Unique ID for this region
-Region.type -> type: enum, (read-only) Type of this region
-Region.width -> width: int, (read-only) Region width
-RegionView3D.perspective_matrix -> perspective_matrix: float, (read-only) Current perspective matrix of the 3D region
-RegionView3D.view_distance -> view_distance: float Distance to the view location
-RegionView3D.view_location -> view_location: float View pivot location
-RegionView3D.view_matrix -> view_matrix: float, (read-only) Current view matrix of the 3D region
-RegionView3D.view_perspective -> view_perspective: enum View Perspective
-RegionView3D.view_rotation -> view_rotation: float Rotation in quaternions (keep normalized)
-RenderEngine.bl_idname -> bl_idname: string
-RenderEngine.bl_label -> bl_label: string
-RenderLayer.light_override -> light_override: pointer, (read-only) Group to override all other lights in this render layer
-RenderLayer.material_override -> material_override: pointer, (read-only) Material to override all other materials in this render layer
-RenderLayer.name -> name: string, (read-only) Render layer name
-RenderLayer.passes -> passes: collection, (read-only)
-RenderLayer.rect -> rect: float
-RenderPass.channel_id -> channel_id: string, (read-only)
-RenderPass.channels -> channels: int, (read-only)
-RenderPass.name -> name: string, (read-only)
-RenderPass.rect -> rect: float
-RenderPass.type -> type: enum, (read-only)
-RenderResult.layers -> layers: collection, (read-only)
-RenderResult.resolution_x -> resolution_x: int, (read-only)
-RenderResult.resolution_y -> resolution_y: int, (read-only)
-RenderSettings.active_layer_index -> active_layer_index: int Active index in render layer array
-RenderSettings.alpha_mode -> alpha_mode: enum Representation of alpha information in the RGBA pixels
-RenderSettings.antialiasing_samples -> antialiasing_samples: enum Amount of anti-aliasing samples per pixel
-RenderSettings.bake_aa_mode -> bake_aa_mode: enum
-RenderSettings.bake_bias -> bake_bias: float Bias towards faces further away from the object (in blender units)
-RenderSettings.bake_distance -> bake_distance: float Maximum distance from active object to other object (in blender units
-RenderSettings.bake_margin -> bake_margin: int Amount of pixels to extend the baked result with, as post process filter
-RenderSettings.bake_normal_space -> bake_normal_space: enum Choose normal space for baking
-RenderSettings.bake_quad_split -> bake_quad_split: enum Choose the method used to split a quad into 2 triangles for baking
-RenderSettings.bake_type -> bake_type: enum Choose shading information to bake into the image
-RenderSettings.border_max_x -> border_max_x: float Sets maximum X value for the render border
-RenderSettings.border_max_y -> border_max_y: float Sets maximum Y value for the render border
-RenderSettings.border_min_x -> border_min_x: float Sets minimum X value to for the render border
-RenderSettings.border_min_y -> border_min_y: float Sets minimum Y value for the render border
-RenderSettings.cineon_black -> cineon_black: int Log conversion reference blackpoint
-RenderSettings.cineon_gamma -> cineon_gamma: float Log conversion gamma
-RenderSettings.cineon_white -> cineon_white: int Log conversion reference whitepoint
-RenderSettings.color_mode -> color_mode: enum Choose BW for saving greyscale images, RGB for saving red, green and blue channels, AND RGBA for saving red, green, blue + alpha channels
-RenderSettings.display_mode -> display_mode: enum Select where rendered images will be displayed
-RenderSettings.dither_intensity -> dither_intensity: float Amount of dithering noise added to the rendered image to break up banding
-RenderSettings.edge_color -> edge_color: float
-RenderSettings.edge_threshold -> edge_threshold: int Threshold for drawing outlines on geometry edges
-RenderSettings.engine -> engine: enum Engine to use for rendering
-RenderSettings.field_order -> field_order: enum Order of video fields. Select which lines get rendered first, to create smooth motion for TV output
-RenderSettings.file_extension -> file_extension: string, (read-only) The file extension used for saving renders
-RenderSettings.file_format -> file_format: enum File format to save the rendered images as
-RenderSettings.file_quality -> file_quality: int Quality of JPEG images, AVI Jpeg and SGI movies
-RenderSettings.filter_size -> filter_size: float Pixel width over which the reconstruction filter combines samples
-RenderSettings.fps -> fps: int Framerate, expressed in frames per second
-RenderSettings.fps_base -> fps_base: float Framerate base
-RenderSettings.layers -> layers: collection, (read-only)
-RenderSettings.motion_blur_samples -> motion_blur_samples: int Number of scene samples to take with motion blur
-RenderSettings.motion_blur_shutter -> motion_blur_shutter: float Time taken in frames between shutter open and close
-RenderSettings.octree_resolution -> octree_resolution: enum Resolution of raytrace accelerator. Use higher resolutions for larger scenes
-RenderSettings.output_path -> output_path: string Directory/name to save animations, # characters defines the position and length of frame numbers
-RenderSettings.parts_x -> parts_x: int Number of horizontal tiles to use while rendering
-RenderSettings.parts_y -> parts_y: int Number of vertical tiles to use while rendering
-RenderSettings.pixel_aspect_x -> pixel_aspect_x: float Horizontal aspect ratio - for anamorphic or non-square pixel output
-RenderSettings.pixel_aspect_y -> pixel_aspect_y: float Vertical aspect ratio - for anamorphic or non-square pixel output
-RenderSettings.pixel_filter -> pixel_filter: enum Reconstruction filter used for combining anti-aliasing samples
-RenderSettings.raytrace_structure -> raytrace_structure: enum Type of raytrace accelerator structure
-RenderSettings.resolution_percentage -> resolution_percentage: int Percentage scale for render resolution
-RenderSettings.resolution_x -> resolution_x: int Number of horizontal pixels in the rendered image
-RenderSettings.resolution_y -> resolution_y: int Number of vertical pixels in the rendered image
-RenderSettings.sequencer_gl_preview -> sequencer_gl_preview: enum Method to draw in the sequencer view
-RenderSettings.sequencer_gl_render -> sequencer_gl_render: enum Method to draw in the sequencer view
-RenderSettings.simplify_ao_sss -> simplify_ao_sss: float Global approximate AA and SSS quality factor
-RenderSettings.simplify_child_particles -> simplify_child_particles: float Global child particles percentage
-RenderSettings.simplify_shadow_samples -> simplify_shadow_samples: int Global maximum shadow samples
-RenderSettings.simplify_subdivision -> simplify_subdivision: int Global maximum subdivision level
-RenderSettings.stamp_background -> stamp_background: float Color to use behind stamp text
-RenderSettings.stamp_font_size -> stamp_font_size: int Size of the font used when rendering stamp text
-RenderSettings.stamp_foreground -> stamp_foreground: float Color to use for stamp text
-RenderSettings.stamp_note_text -> stamp_note_text: string Custom text to appear in the stamp note
-RenderSettings.threads -> threads: int Number of CPU threads to use simultaneously while rendering (for multi-core/CPU systems)
-RenderSettings.threads_mode -> threads_mode: enum Determine the amount of render threads used
-RigidBodyJointConstraint.axis_x -> axis_x: float Rotate pivot on X axis in degrees
-RigidBodyJointConstraint.axis_y -> axis_y: float Rotate pivot on Y axis in degrees
-RigidBodyJointConstraint.axis_z -> axis_z: float Rotate pivot on Z axis in degrees
-RigidBodyJointConstraint.child -> child: pointer Child object
-RigidBodyJointConstraint.pivot_type -> pivot_type: enum
-RigidBodyJointConstraint.pivot_x -> pivot_x: float Offset pivot on X
-RigidBodyJointConstraint.pivot_y -> pivot_y: float Offset pivot on Y
-RigidBodyJointConstraint.pivot_z -> pivot_z: float Offset pivot on Z
-RigidBodyJointConstraint.target -> target: pointer Target Object
-SPHFluidSettings.buoyancy -> buoyancy: float
-SPHFluidSettings.fluid_radius -> fluid_radius: float Fluid interaction Radius
-SPHFluidSettings.rest_density -> rest_density: float Density
-SPHFluidSettings.rest_length -> rest_length: float The Spring Rest Length (factor of interaction radius)
-SPHFluidSettings.spring_k -> spring_k: float Spring force constant
-SPHFluidSettings.stiffness_k -> stiffness_k: float Constant K - Stiffness
-SPHFluidSettings.stiffness_knear -> stiffness_knear: float Repulsion factor: stiffness_knear
-SPHFluidSettings.viscosity_beta -> viscosity_beta: float Square viscosity factor
-SPHFluidSettings.viscosity_omega -> viscosity_omega: float Linear viscosity
-Scene.active_keying_set -> active_keying_set: pointer Active Keying Set used to insert/delete keyframes
-Scene.active_keying_set_index -> active_keying_set_index: int Current Keying Set index (negative for 'builtin' and positive for 'absolute')
-Scene.all_keying_sets -> all_keying_sets: collection, (read-only) All Keying Sets available for use (builtins and Absolute Keying Sets for this Scene)
-Scene.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Scene.bases -> bases: collection, (read-only)
-Scene.camera -> camera: pointer Active camera used for rendering the scene
-Scene.cursor_location -> cursor_location: float 3D cursor location
-Scene.distance_model -> distance_model: enum Distance model for distance attenuation calculation
-Scene.doppler_factor -> doppler_factor: float Pitch factor for Doppler effect calculation
-Scene.frame_current -> frame_current: int
-Scene.frame_end -> frame_end: int Final frame of the playback/rendering range
-Scene.frame_start -> frame_start: int First frame of the playback/rendering range
-Scene.frame_step -> frame_step: int Number of frames to skip forward while rendering/playing back each frame
-Scene.game_data -> game_data: pointer, (read-only)
-Scene.gravity -> gravity: float Constant acceleration in a given direction
-Scene.grease_pencil -> grease_pencil: pointer Grease Pencil datablock
-Scene.keying_sets -> keying_sets: collection, (read-only) Absolute Keying Sets for this Scene
-Scene.network_render -> network_render: pointer, (read-only) Network Render Settings
-Scene.nodetree -> nodetree: pointer, (read-only) Compositing node tree
-Scene.objects -> objects: collection, (read-only)
-Scene.orientations -> orientations: collection, (read-only)
-Scene.pose_templates -> pose_templates: pointer, (read-only) Pose Template Settings
-Scene.pov_radio_adc_bailout -> pov_radio_adc_bailout: float The adc_bailout for radiosity rays. Use adc_bailout = 0.01 / brightest_ambient_object for good results
-Scene.pov_radio_brightness -> pov_radio_intensity: float Amount objects are brightened before being returned upwards to the rest of the system
-Scene.pov_radio_count -> pov_radio_count: int Number of rays that are sent out whenever a new radiosity value has to be calculated
-Scene.pov_radio_error_bound -> pov_radio_error_bound: float One of the two main speed/quality tuning values, lower values are more accurate
-Scene.pov_radio_gray_threshold -> pov_radio_gray_threshold: float One of the two main speed/quality tuning values, lower values are more accurate
-Scene.pov_radio_low_error_factor -> pov_radio_low_error_factor: float If you calculate just enough samples, but no more, you will get an image which has slightly blotchy lighting
-Scene.pov_radio_minimum_reuse -> pov_radio_minimum_reuse: float Fraction of the screen width which sets the minimum radius of reuse for each sample point (At values higher than 2% expect errors)
-Scene.pov_radio_nearest_count -> pov_radio_nearest_count: int Number of old ambient values blended together to create a new interpolated value
-Scene.pov_radio_recursion_limit -> pov_radio_recursion_limit: int how many recursion levels are used to calculate the diffuse inter-reflection
-Scene.preview_range_frame_end -> preview_range_frame_end: int Alternative end frame for UI playback
-Scene.preview_range_frame_start -> preview_range_frame_start: int Alternative start frame for UI playback
-Scene.render -> render: pointer, (read-only)
-Scene.sequence_editor -> sequence_editor: pointer, (read-only)
-Scene.set -> set: pointer Background set scene
-Scene.speed_of_sound -> speed_of_sound: float Speed of sound for Doppler effect calculation
-Scene.stamp_note -> stamp_note: string User define note for the render stamping
-Scene.sync_mode -> sync_mode: enum How to sync playback
-Scene.timeline_markers -> timeline_markers: collection, (read-only) Markers used in all timelines for the current scene
-Scene.tool_settings -> tool_settings: pointer, (read-only)
-Scene.unit_settings -> unit_settings: pointer, (read-only) Unit editing settings
-Scene.world -> world: pointer World used for rendering the scene
-SceneActuator.camera -> camera: pointer Set this Camera. Leave empty to refer to self object
-SceneActuator.mode -> mode: enum
-SceneActuator.scene -> scene: pointer Set the Scene to be added/removed/paused/resumed
-SceneBases.active -> active: pointer Active object base in the scene
-SceneGameData.activity_culling_box_radius -> activity_culling_box_radius: float Radius of the activity bubble, in Manhattan length. Objects outside the box are activity-culled
-SceneGameData.depth -> depth: int Displays bit depth of full screen display
-SceneGameData.dome_angle -> dome_angle: int Field of View of the Dome - it only works in mode Fisheye and Truncated
-SceneGameData.dome_buffer_resolution -> dome_buffer_resolution: float Buffer Resolution - decrease it to increase speed
-SceneGameData.dome_mode -> dome_mode: enum Dome physical configurations
-SceneGameData.dome_tesselation -> dome_tesselation: int Tessellation level - check the generated mesh in wireframe mode
-SceneGameData.dome_text -> dome_text: pointer Custom Warp Mesh data file
-SceneGameData.dome_tilt -> dome_tilt: int Camera rotation in horizontal axis
-SceneGameData.eye_separation -> eye_separation: float Set the distance between the eyes - the camera focal length/30 should be fine
-SceneGameData.fps -> fps: int The nominal number of game frames per second. Physics fixed timestep = 1/fps, independently of actual frame rate
-SceneGameData.framing_color -> frame_color: float Set colour of the bars
-SceneGameData.framing_type -> frame_type: enum Select the type of Framing you want
-SceneGameData.frequency -> frequency: int Displays clock frequency of fullscreen display
-SceneGameData.logic_step_max -> logic_step_max: int Sets the maximum number of logic frame per game frame if graphics slows down the game, higher value allows better synchronization with physics
-SceneGameData.material_mode -> material_mode: enum Material mode to use for rendering
-SceneGameData.occlusion_culling_resolution -> occlusion_culling_resolution: float The size of the occlusion buffer in pixel, use higher value for better precision (slower)
-SceneGameData.physics_engine -> physics_engine: enum Physics engine used for physics simulation in the game engine
-SceneGameData.physics_gravity -> physics_gravity: float Gravitational constant used for physics simulation in the game engine
-SceneGameData.physics_step_max -> physics_step_max: int Sets the maximum number of physics step per game frame if graphics slows down the game, higher value allows physics to keep up with realtime
-SceneGameData.physics_step_sub -> physics_step_sub: int Sets the number of simulation substep per physic timestep, higher value give better physics precision
-SceneGameData.resolution_x -> resolution_x: int Number of horizontal pixels in the screen
-SceneGameData.resolution_y -> resolution_y: int Number of vertical pixels in the screen
-SceneGameData.stereo -> stereo: enum
-SceneGameData.stereo_mode -> stereo_mode: enum Stereographic techniques
-SceneObjects.active -> active: pointer Active object for this scene
-SceneRenderLayer.light_override -> light_override: pointer Group to override all other lights in this render layer
-SceneRenderLayer.material_override -> material_override: pointer Material to override all other materials in this render layer
-SceneRenderLayer.name -> name: string Render layer name
-SceneSequence.animation_end_offset -> animation_end_offset: int Animation end offset (trim end)
-SceneSequence.animation_start_offset -> animation_start_offset: int Animation start offset (trim start)
-SceneSequence.color_balance -> color_balance: pointer, (read-only)
-SceneSequence.crop -> crop: pointer, (read-only)
-SceneSequence.multiply_colors -> multiply_colors: float
-SceneSequence.proxy -> proxy: pointer, (read-only)
-SceneSequence.scene -> scene: pointer Scene that this sequence uses
-SceneSequence.scene_camera -> scene_camera: pointer Override the scenes active camera
-SceneSequence.strobe -> strobe: float Only display every nth frame
-SceneSequence.transform -> transform: pointer, (read-only)
-Scopes.accuracy -> accuracy: float Proportion of original image source pixel lines to sample
-Scopes.histogram -> histogram: pointer, (read-only) Histogram for viewing image statistics
-Scopes.vectorscope_alpha -> vectorscope_alpha: float Opacity of the points
-Scopes.waveform_alpha -> waveform_alpha: float Opacity of the points
-Scopes.waveform_mode -> waveform_mode: enum
-Screen.areas -> areas: collection, (read-only) Areas the screen is subdivided into
-Screen.scene -> scene: pointer Active scene to be edited in the screen
-ScrewModifier.angle -> angle: float Angle of revolution
-ScrewModifier.axis -> axis: enum Screw axis
-ScrewModifier.iterations -> iterations: int Number of times to apply the screw operation
-ScrewModifier.object -> object: pointer Object to define the screw axis
-ScrewModifier.render_steps -> render_steps: int Number of steps in the revolution
-ScrewModifier.screw_offset -> screw_offset: float Offset the revolution along its axis
-ScrewModifier.steps -> steps: int Number of steps in the revolution
-Sensor.frequency -> frequency: int Delay between repeated pulses(in logic tics, 0=no delay)
-Sensor.name -> name: string Sensor name
-Sensor.type -> type: enum
-Sequence.blend_mode -> blend_type: enum
-Sequence.blend_opacity -> blend_opacity: float
-Sequence.channel -> channel: int Y position of the sequence strip
-Sequence.effect_fader -> effect_fader: float
-Sequence.frame_final_end -> frame_final_end: int End frame displayed in the sequence editor after offsets are applied
-Sequence.frame_final_length -> frame_final_length: int The length of the contents of this strip before the handles are applied
-Sequence.frame_final_start -> frame_final_start: int Start frame displayed in the sequence editor after offsets are applied, setting this is equivalent to moving the handle, not the actual start frame
-Sequence.frame_length -> frame_length: int, (read-only) The length of the contents of this strip before the handles are applied
-Sequence.frame_offset_end -> frame_offset_end: int, (read-only)
-Sequence.frame_offset_start -> frame_offset_start: int, (read-only)
-Sequence.frame_start -> frame_start: int
-Sequence.frame_still_end -> frame_still_end: int, (read-only)
-Sequence.frame_still_start -> frame_still_start: int, (read-only)
-Sequence.name -> name: string
-Sequence.speed_fader -> speed_fader: float
-Sequence.type -> type: enum, (read-only)
-SequenceColorBalance.gain -> gain: float Color balance gain (highlights)
-SequenceColorBalance.gamma -> gamma: float Color balance gamma (midtones)
-SequenceColorBalance.lift -> lift: float Color balance lift (shadows)
-SequenceCrop.bottom -> bottom: int
-SequenceCrop.left -> left: int
-SequenceCrop.right -> right: int
-SequenceCrop.top -> top: int
-SequenceEditor.active_strip -> active_strip: pointer
-SequenceEditor.meta_stack -> meta_stack: collection, (read-only) Meta strip stack, last is currently edited meta strip
-SequenceEditor.overlay_frame -> overlay_frame: int Sequencers active strip
-SequenceEditor.sequences -> sequences: collection, (read-only)
-SequenceEditor.sequences_all -> sequences_all: collection, (read-only)
-SequenceElement.filename -> filename: string
-SequenceProxy.directory -> directory: string Location to store the proxy files
-SequenceProxy.filepath -> filepath: string Location of custom proxy file
-SequenceTransform.offset_x -> offset_x: int
-SequenceTransform.offset_y -> offset_y: int
-ShaderNode.type -> type: enum, (read-only)
-ShaderNodeExtendedMaterial.material -> material: pointer
-ShaderNodeGeometry.color_layer -> color_layer: string
-ShaderNodeGeometry.uv_layer -> uv_layer: string
-ShaderNodeMapping.location -> location: float Location offset for the input coordinate
-ShaderNodeMapping.maximum -> max: float Maximum value to clamp coordinate to
-ShaderNodeMapping.minimum -> min: float Minimum value to clamp coordinate to
-ShaderNodeMapping.rotation -> rotation: float Rotation offset for the input coordinate
-ShaderNodeMapping.scale -> scale: float Scale adjustment for the input coordinate
-ShaderNodeMaterial.material -> material: pointer
-ShaderNodeMath.operation -> operation: enum
-ShaderNodeMixRGB.blend_type -> blend_type: enum
-ShaderNodeRGBCurve.mapping -> mapping: pointer, (read-only)
-ShaderNodeTexture.node_output -> node_output: int For node-based textures, which output node to use
-ShaderNodeTexture.texture -> texture: pointer
-ShaderNodeValToRGB.color_ramp -> color_ramp: pointer, (read-only)
-ShaderNodeVectorCurve.mapping -> mapping: pointer, (read-only)
-ShaderNodeVectorMath.operation -> operation: enum
-ShapeActionActuator.action -> action: pointer
-ShapeActionActuator.blendin -> blendin: int Number of frames of motion blending
-ShapeActionActuator.frame_end -> frame_end: int
-ShapeActionActuator.frame_property -> frame_property: string Assign the action's current frame number to this property
-ShapeActionActuator.frame_start -> frame_start: int
-ShapeActionActuator.mode -> mode: enum Action playback type
-ShapeActionActuator.priority -> priority: int Execution priority - lower numbers will override actions with higher numbers. With 2 or more actions at once, the overriding channels must be lower in the stack
-ShapeActionActuator.property -> property: string Use this property to define the Action position
-ShapeKey.data -> data: collection, (read-only)
-ShapeKey.frame -> frame: float, (read-only) Frame for absolute keys
-ShapeKey.interpolation -> interpolation: enum Interpolation type
-ShapeKey.name -> name: string
-ShapeKey.relative_key -> relative_key: pointer Shape used as a relative key
-ShapeKey.slider_max -> slider_max: float Maximum for slider
-ShapeKey.slider_min -> slider_min: float Minimum for slider
-ShapeKey.value -> value: float Value of shape key at the current frame
-ShapeKey.vertex_group -> vertex_group: string Vertex weight group, to blend with basis shape
-ShapeKeyBezierPoint.co -> co: float
-ShapeKeyBezierPoint.handle_1_co -> handle_1_co: float
-ShapeKeyBezierPoint.handle_2_co -> handle_2_co: float
-ShapeKeyCurvePoint.co -> co: float
-ShapeKeyCurvePoint.tilt -> tilt: float
-ShapeKeyPoint.co -> co: float
-ShrinkwrapConstraint.distance -> distance: float Distance to Target
-ShrinkwrapConstraint.shrinkwrap_type -> shrinkwrap_type: enum Selects type of shrinkwrap algorithm for target position
-ShrinkwrapConstraint.target -> target: pointer Target Object
-ShrinkwrapModifier.auxiliary_target -> auxiliary_target: pointer Additional mesh target to shrink to
-ShrinkwrapModifier.mode -> mode: enum
-ShrinkwrapModifier.offset -> offset: float Distance to keep from the target
-ShrinkwrapModifier.subsurf_levels -> subsurf_levels: int Number of subdivisions that must be performed before extracting vertices' positions and normals
-ShrinkwrapModifier.target -> target: pointer Mesh target to shrink to
-ShrinkwrapModifier.vertex_group -> vertex_group: string Vertex group name
-SimpleDeformModifier.factor -> factor: float
-SimpleDeformModifier.limits -> limits: float Lower/Upper limits for deform
-SimpleDeformModifier.mode -> mode: enum
-SimpleDeformModifier.origin -> origin: pointer Origin of modifier space coordinates
-SimpleDeformModifier.vertex_group -> vertex_group: string Vertex group name
-SmokeDomainSettings.alpha -> alpha: float Higher value results in sinking smoke
-SmokeDomainSettings.amplify -> amplify: int Enhance the resolution of smoke by this factor using noise
-SmokeDomainSettings.beta -> beta: float Higher value results in faster rising smoke
-SmokeDomainSettings.coll_group -> coll_group: pointer Limit collisions to this group
-SmokeDomainSettings.dissolve_speed -> dissolve_speed: int Dissolve Speed
-SmokeDomainSettings.eff_group -> eff_group: pointer Limit effectors to this group
-SmokeDomainSettings.effector_weights -> effector_weights: pointer, (read-only)
-SmokeDomainSettings.fluid_group -> fluid_group: pointer Limit fluid objects to this group
-SmokeDomainSettings.maxres -> maxres: int Maximal resolution used in the fluid domain
-SmokeDomainSettings.noise_type -> noise_type: enum Noise method which is used for creating the high resolution
-SmokeDomainSettings.point_cache_high -> point_cache_high: pointer, (read-only)
-SmokeDomainSettings.point_cache_low -> point_cache_low: pointer, (read-only)
-SmokeDomainSettings.smoke_cache_comp -> smoke_cache_comp: enum Compression method to be used
-SmokeDomainSettings.smoke_cache_high_comp -> smoke_cache_high_comp: enum Compression method to be used
-SmokeDomainSettings.strength -> strength: float Strength of wavelet noise
-SmokeFlowSettings.density -> density: float
-SmokeFlowSettings.psys -> psys: pointer Particle systems emitted from the object
-SmokeFlowSettings.temperature -> temperature: float Temperature difference to ambient temperature
-SmokeModifier.coll_settings -> coll_settings: pointer, (read-only)
-SmokeModifier.domain_settings -> domain_settings: pointer, (read-only)
-SmokeModifier.flow_settings -> flow_settings: pointer, (read-only)
-SmokeModifier.smoke_type -> smoke_type: enum
-SmoothModifier.factor -> factor: float
-SmoothModifier.repeat -> repeat: int
-SmoothModifier.vertex_group -> vertex_group: string Vertex group name
-SoftBodyModifier.point_cache -> point_cache: pointer, (read-only)
-SoftBodyModifier.settings -> settings: pointer, (read-only)
-SoftBodySettings.aero -> aero: float Make edges 'sail'
-SoftBodySettings.aerodynamics_type -> aerodynamics_type: enum Method of calculating aerodynamic interaction
-SoftBodySettings.ball_damp -> ball_damp: float Blending to inelastic collision
-SoftBodySettings.ball_size -> ball_size: float Absolute ball size or factor if not manual adjusted
-SoftBodySettings.ball_stiff -> ball_stiff: float Ball inflating pressure
-SoftBodySettings.bending -> bend: float Bending Stiffness
-SoftBodySettings.choke -> choke: int 'Viscosity' inside collision target
-SoftBodySettings.collision_type -> collision_type: enum Choose Collision Type
-SoftBodySettings.damp -> damp: float Edge spring friction
-SoftBodySettings.effector_weights -> effector_weights: pointer, (read-only)
-SoftBodySettings.error_limit -> error_limit: float The Runge-Kutta ODE solver error limit, low value gives more precision, high values speed
-SoftBodySettings.friction -> friction: float General media friction for point movements
-SoftBodySettings.fuzzy -> fuzzy: int Fuzziness while on collision, high values make collsion handling faster but less stable
-SoftBodySettings.goal_default -> goal_default: float Default Goal (vertex target position) value, when no Vertex Group used
-SoftBodySettings.goal_friction -> goal_friction: float Goal (vertex target position) friction
-SoftBodySettings.goal_max -> goal_max: float Goal maximum, vertex weights are scaled to match this range
-SoftBodySettings.goal_min -> goal_min: float Goal minimum, vertex weights are scaled to match this range
-SoftBodySettings.goal_spring -> goal_spring: float Goal (vertex target position) spring stiffness
-SoftBodySettings.goal_vertex_group -> goal_vertex_group: string Control point weight values
-SoftBodySettings.gravity -> gravity: float Apply gravitation to point movement
-SoftBodySettings.lcom -> lcom: float Location of Center of mass
-SoftBodySettings.lrot -> lrot: float Estimated rotation matrix
-SoftBodySettings.lscale -> lscale: float Estimated scale matrix
-SoftBodySettings.mass -> mass: float General Mass value
-SoftBodySettings.mass_vertex_group -> mass_vertex_group: string Control point mass values
-SoftBodySettings.maxstep -> step_max: int Maximal # solver steps/frame
-SoftBodySettings.minstep -> step_min: int Minimal # solver steps/frame
-SoftBodySettings.plastic -> plastic: float Permanent deform
-SoftBodySettings.pull -> pull: float Edge spring stiffness when longer than rest length
-SoftBodySettings.push -> push: float Edge spring stiffness when shorter than rest length
-SoftBodySettings.shear -> shear: float Shear Stiffness
-SoftBodySettings.speed -> speed: float Tweak timing for physics to control frequency and speed
-SoftBodySettings.spring_length -> spring_length: float Alter spring length to shrink/blow up (unit %) 0 to disable
-SoftBodySettings.spring_vertex_group -> spring_vertex_group: string Control point spring strength values
-SolidifyModifier.edge_crease_inner -> edge_crease_inner: float Assign a crease to inner edges
-SolidifyModifier.edge_crease_outer -> edge_crease_outer: float Assign a crease to outer edges
-SolidifyModifier.edge_crease_rim -> edge_crease_rim: float Assign a crease to the edges making up the rim
-SolidifyModifier.offset -> offset: float
-SolidifyModifier.thickness -> thickness: float Thickness of the shell
-SolidifyModifier.vertex_group -> vertex_group: string Vertex group name
-Sound.filepath -> filepath: string Sound sample file used by this Sound datablock
-Sound.packed_file -> packed_file: pointer, (read-only)
-SoundActuator.cone_inner_angle_3d -> cone_inner_angle_3d: float The angle of the inner cone
-SoundActuator.cone_outer_angle_3d -> cone_outer_angle_3d: float The angle of the outer cone
-SoundActuator.cone_outer_gain_3d -> cone_outer_gain_3d: float The gain outside the outer cone. The gain in the outer cone will be interpolated between this value and the normal gain in the inner cone
-SoundActuator.max_distance_3d -> distance_3d_max: float The maximum distance at which you can hear the sound
-SoundActuator.maximum_gain_3d -> gain_3d_max: float The maximum gain of the sound, no matter how near it is
-SoundActuator.minimum_gain_3d -> gain_3d_min: float The minimum gain of the sound, no matter how far it is away
-SoundActuator.mode -> mode: enum
-SoundActuator.pitch -> pitch: float Sets the pitch of the sound
-SoundActuator.reference_distance_3d -> reference_distance_3d: float The distance where the sound has a gain of 1.0
-SoundActuator.rolloff_factor_3d -> rolloff_factor_3d: float The influence factor on volume depending on distance
-SoundActuator.sound -> sound: pointer
-SoundActuator.volume -> volume: float Sets the initial volume of the sound
-SoundSequence.animation_end_offset -> animation_end_offset: int Animation end offset (trim end)
-SoundSequence.animation_start_offset -> animation_start_offset: int Animation start offset (trim start)
-SoundSequence.attenuation -> attenuation: float Attenuation in dezibel
-SoundSequence.filepath -> filepath: string
-SoundSequence.sound -> sound: pointer, (read-only) Sound datablock used by this sequence
-SoundSequence.volume -> volume: float Playback volume of the sound
-Space.type -> type: enum, (read-only) Space data type
-SpaceConsole.console_type -> console_type: enum Console type
-SpaceConsole.font_size -> font_size: int Font size to use for displaying the text
-SpaceConsole.history -> history: collection, (read-only) Command history
-SpaceConsole.language -> language: string Command line prompt language
-SpaceConsole.prompt -> prompt: string Command line prompt
-SpaceConsole.scrollback -> scrollback: collection, (read-only) Command output
-SpaceConsole.selection_end -> selection_end: int
-SpaceConsole.selection_start -> selection_start: int
-SpaceDopeSheetEditor.action -> action: pointer Action displayed and edited in this space
-SpaceDopeSheetEditor.autosnap -> autosnap: enum Automatic time snapping settings for transformations
-SpaceDopeSheetEditor.dopesheet -> dopesheet: pointer, (read-only) Settings for filtering animation data
-SpaceDopeSheetEditor.mode -> mode: enum Editing context being displayed
-SpaceFileBrowser.params -> params: pointer, (read-only) Parameters and Settings for the Filebrowser
-SpaceGraphEditor.autosnap -> autosnap: enum Automatic time snapping settings for transformations
-SpaceGraphEditor.cursor_value -> cursor_value: float Graph Editor 2D-Value cursor - Y-Value component
-SpaceGraphEditor.dopesheet -> dopesheet: pointer, (read-only) Settings for filtering animation data
-SpaceGraphEditor.mode -> mode: enum Editing context being displayed
-SpaceGraphEditor.pivot_point -> pivot_point: enum Pivot center for rotation/scaling
-SpaceImageEditor.curves -> curves: pointer, (read-only) Color curve mapping to use for displaying the image
-SpaceImageEditor.draw_channels -> draw_channels: enum Channels of the image to draw
-SpaceImageEditor.grease_pencil -> grease_pencil: pointer Grease pencil data for this space
-SpaceImageEditor.image -> image: pointer Image displayed and edited in this space
-SpaceImageEditor.image_user -> image_user: pointer, (read-only) Parameters defining which layer, pass and frame of the image is displayed
-SpaceImageEditor.sample_histogram -> sample_histogram: pointer, (read-only) Sampled colors along line
-SpaceImageEditor.scopes -> scopes: pointer, (read-only) Scopes to visualize image statistics.
-SpaceImageEditor.uv_editor -> uv_editor: pointer, (read-only) UV editor settings
-SpaceNLA.autosnap -> autosnap: enum Automatic time snapping settings for transformations
-SpaceNLA.dopesheet -> dopesheet: pointer, (read-only) Settings for filtering animation data
-SpaceNodeEditor.id -> id: pointer, (read-only) Datablock whose nodes are being edited
-SpaceNodeEditor.id_from -> id_from: pointer, (read-only) Datablock from which the edited datablock is linked
-SpaceNodeEditor.nodetree -> nodetree: pointer, (read-only) Node tree being displayed and edited
-SpaceNodeEditor.texture_type -> texture_type: enum Type of data to take texture from
-SpaceNodeEditor.tree_type -> tree_type: enum Node tree type to display and edit
-SpaceOutliner.display_filter -> display_filter: string Live search filtering string
-SpaceOutliner.display_mode -> display_mode: enum Type of information to display
-SpaceProperties.align -> align: enum Arrangement of the panels
-SpaceProperties.context -> context: enum Type of active data to display and edit
-SpaceProperties.pin_id -> pin_id: pointer
-SpaceSequenceEditor.display_channel -> display_channel: int The channel number shown in the image preview. 0 is the result of all strips combined
-SpaceSequenceEditor.display_mode -> display_mode: enum The view mode to use for displaying sequencer output
-SpaceSequenceEditor.draw_overexposed -> draw_overexposed: int Show overexposed areas with zebra stripes
-SpaceSequenceEditor.grease_pencil -> grease_pencil: pointer, (read-only) Grease pencil data for this space
-SpaceSequenceEditor.offset_x -> offset_x: float Offsets image horizontally from the view center
-SpaceSequenceEditor.offset_y -> offset_y: float Offsets image horizontally from the view center
-SpaceSequenceEditor.proxy_render_size -> proxy_render_size: enum Draw preview using full resolution or different proxy resolutions
-SpaceSequenceEditor.view_type -> view_type: enum The type of the Sequencer view (sequencer, preview or both)
-SpaceSequenceEditor.zoom -> zoom: float Display zoom level
-SpaceTextEditor.find_text -> find_text: string Text to search for with the find tool
-SpaceTextEditor.font_size -> font_size: int Font size to use for displaying the text
-SpaceTextEditor.replace_text -> replace_text: string Text to replace selected text with using the replace tool
-SpaceTextEditor.tab_width -> tab_width: int Number of spaces to display tabs with
-SpaceTextEditor.text -> text: pointer Text displayed and edited in this space
-SpaceUVEditor.cursor_location -> cursor_location: float 2D cursor location for this view
-SpaceUVEditor.draw_stretch_type -> draw_stretch_type: enum Type of stretch to draw
-SpaceUVEditor.edge_draw_type -> edge_draw_type: enum Draw type for drawing UV edges
-SpaceUVEditor.pivot -> pivot: enum Rotation/Scaling Pivot
-SpaceUVEditor.sticky_selection_mode -> sticky_selection_mode: enum Automatically select also UVs sharing the same vertex as the ones being selected
-SpaceUserPreferences.filter -> filter: string Search term for filtering in the UI
-SpaceView3D.background_images -> background_images: collection, (read-only) List of background images
-SpaceView3D.camera -> camera: pointer Active camera used in this view (when unlocked from the scene's active camera)
-SpaceView3D.clip_end -> clip_end: float 3D View far clipping distance
-SpaceView3D.clip_start -> clip_start: float 3D View near clipping distance
-SpaceView3D.current_orientation -> current_orientation: pointer, (read-only) Current Transformation orientation
-SpaceView3D.cursor_location -> cursor_location: float 3D cursor location for this view (dependent on local view setting)
-SpaceView3D.grid_lines -> grid_lines: int The number of grid lines to display in perspective view
-SpaceView3D.grid_spacing -> grid_spacing: float The distance between 3D View grid lines
-SpaceView3D.grid_subdivisions -> grid_subdivisions: int The number of subdivisions between grid lines
-SpaceView3D.lens -> lens: float Lens angle (mm) in perspective view
-SpaceView3D.local_view -> local_view: pointer, (read-only) Display an isolated sub-set of objects, apart from the scene visibility
-SpaceView3D.lock_bone -> lock_bone: string 3D View center is locked to this bone's position
-SpaceView3D.lock_object -> lock_object: pointer 3D View center is locked to this object's position
-SpaceView3D.pivot_point -> pivot_point: enum Pivot center for rotation/scaling
-SpaceView3D.region_3d -> region_3d: pointer, (read-only) 3D region in this space, in case of quad view the camera region
-SpaceView3D.region_quadview -> region_quadview: pointer, (read-only) 3D region that defines the quad view settings
-SpaceView3D.transform_orientation -> transform_orientation: enum Transformation orientation
-SpaceView3D.viewport_shading -> viewport_shade: enum Method to display/shade objects in the 3D View
-SpeedControlSequence.global_speed -> global_speed: float
-Spline.bezier_points -> bezier_points: collection, (read-only) Collection of points for bezier curves only
-Spline.character_index -> character_index: int, (read-only) Location of this character in the text data (only for text curves)
-Spline.material_index -> material_index: int
-Spline.order_u -> order_u: int Nurbs order in the U direction (For splines and surfaces), Higher values let points influence a greater area
-Spline.order_v -> order_v: int Nurbs order in the V direction (For surfaces only), Higher values let points influence a greater area
-Spline.point_count_u -> point_count_u: int, (read-only) Total number points for the curve or surface in the U direction
-Spline.point_count_v -> point_count_v: int, (read-only) Total number points for the surface on the V direction
-Spline.points -> points: collection, (read-only) Collection of points that make up this poly or nurbs spline
-Spline.radius_interpolation -> radius_interpolation: enum The type of radius interpolation for Bezier curves
-Spline.resolution_u -> resolution_u: int Curve or Surface subdivisions per segment
-Spline.resolution_v -> resolution_v: int Surface subdivisions per segment
-Spline.tilt_interpolation -> tilt_interpolation: enum The type of tilt interpolation for 3D, Bezier curves
-Spline.type -> type: enum The interpolation type for this curve element
-SplineIKConstraint.chain_length -> chain_length: int How many bones are included in the chain
-SplineIKConstraint.joint_bindings -> joint_bindings: float (EXPERIENCED USERS ONLY) The relative positions of the joints along the chain as percentages
-SplineIKConstraint.target -> target: pointer Curve that controls this relationship
-SplineIKConstraint.xz_scaling_mode -> xz_scale_mode: enum Method used for determining the scaling of the X and Z axes of the bones
-SplinePoint.co -> co: float Point coordinates
-SplinePoint.radius -> radius: float, (read-only) Radius for bevelling
-SplinePoint.tilt -> tilt: float Tilt in 3D View
-SplinePoint.weight -> weight: float Nurbs weight
-SplinePoint.weight_softbody -> weight_softbody: float Softbody goal weight
-SpotLamp.compression_threshold -> compression_threshold: float Deep shadow map compression threshold
-SpotLamp.falloff_curve -> falloff_curve: pointer, (read-only) Custom Lamp Falloff Curve
-SpotLamp.falloff_type -> falloff_type: enum Intensity Decay with distance
-SpotLamp.halo_intensity -> halo_intensity: float Brightness of the spotlight's halo cone (Buffer Shadows)
-SpotLamp.halo_step -> halo_step: int Volumetric halo sampling frequency
-SpotLamp.linear_attenuation -> linear_attenuation: float Linear distance attenuation
-SpotLamp.quadratic_attenuation -> quadratic_attenuation: float Quadratic distance attenuation
-SpotLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float Threshold for Adaptive Sampling (Raytraced shadows)
-SpotLamp.shadow_buffer_bias -> shadow_buffer_bias: float Shadow buffer sampling bias
-SpotLamp.shadow_buffer_clip_end -> shadow_buffer_clip_end: float Shadow map clip end beyond which objects will not generate shadows
-SpotLamp.shadow_buffer_clip_start -> shadow_buffer_clip_start: float Shadow map clip start: objects closer will not generate shadows
-SpotLamp.shadow_buffer_samples -> shadow_buffer_samples: int Number of shadow buffer samples
-SpotLamp.shadow_buffer_size -> shadow_buffer_size: int Resolution of the shadow buffer, higher values give crisper shadows but use more memory
-SpotLamp.shadow_buffer_soft -> shadow_buffer_soft: float Size of shadow buffer sampling area
-SpotLamp.shadow_buffer_type -> shadow_buffer_type: enum Type of shadow buffer
-SpotLamp.shadow_color -> shadow_color: float Color of shadows cast by the lamp
-SpotLamp.shadow_filter_type -> shadow_filter_type: enum Type of shadow filter (Buffer Shadows)
-SpotLamp.shadow_method -> shadow_method: enum Method to compute lamp shadow with
-SpotLamp.shadow_ray_samples -> shadow_ray_samples: int Amount of samples taken extra (samples x samples)
-SpotLamp.shadow_ray_sampling_method -> shadow_ray_sample_method: enum Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower
-SpotLamp.shadow_sample_buffers -> shadow_sample_buffers: enum Number of shadow buffers to render for better AA, this increases memory usage
-SpotLamp.shadow_soft_size -> shadow_soft_size: float Light size for ray shadow sampling (Raytraced shadows)
-SpotLamp.spot_blend -> spot_blend: float The softness of the spotlight edge
-SpotLamp.spot_size -> spot_size: float Angle of the spotlight beam in degrees
-StateActuator.operation -> operation: enum Select the bit operation on object state mask
-StretchToConstraint.bulge -> bulge: float Factor between volume variation and stretching
-StretchToConstraint.head_tail -> head_tail: float Target along length of bone: Head=0, Tail=1
-StretchToConstraint.keep_axis -> keep_axis: enum Axis to maintain during stretch
-StretchToConstraint.original_length -> original_length: float Length at rest position
-StretchToConstraint.subtarget -> subtarget: string
-StretchToConstraint.target -> target: pointer Target Object
-StretchToConstraint.volume -> volume: enum Maintain the object's volume as it stretches
-StringProperty.default -> default: string, (read-only) string default value
-StringProperty.max_length -> length_max: int, (read-only) Maximum length of the string, 0 means unlimited
-Struct.base -> base: pointer, (read-only) Struct definition this is derived from
-Struct.description -> description: string, (read-only) Description of the Struct's purpose
-Struct.functions -> functions: collection, (read-only)
-Struct.identifier -> identifier: string, (read-only) Unique name used in the code and scripting
-Struct.name -> name: string, (read-only) Human readable name
-Struct.name_property -> name_property: pointer, (read-only) Property that gives the name of the struct
-Struct.nested -> nested: pointer, (read-only) Struct in which this struct is always nested, and to which it logically belongs
-Struct.properties -> properties: collection, (read-only) Properties in the struct
-StucciTexture.noise_basis -> noise_basis: enum Sets the noise basis used for turbulence
-StucciTexture.noise_size -> noise_size: float Sets scaling for noise input
-StucciTexture.noise_type -> noise_type: enum
-StucciTexture.stype -> stype: enum
-StucciTexture.turbulence -> turbulence: float Sets the turbulence of the bandnoise and ringnoise types
-SubsurfModifier.levels -> levels: int Number of subdivisions to perform
-SubsurfModifier.render_levels -> render_levels: int Number of subdivisions to perform when rendering
-SubsurfModifier.subdivision_type -> subdivision_type: enum Selects type of subdivision algorithm
-SunLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float Threshold for Adaptive Sampling (Raytraced shadows)
-SunLamp.shadow_color -> shadow_color: float Color of shadows cast by the lamp
-SunLamp.shadow_method -> shadow_method: enum Method to compute lamp shadow with
-SunLamp.shadow_ray_samples -> shadow_ray_samples: int Amount of samples taken extra (samples x samples)
-SunLamp.shadow_ray_sampling_method -> shadow_ray_sampling_method: enum Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower
-SunLamp.shadow_soft_size -> shadow_soft_size: float Light size for ray shadow sampling (Raytraced shadows)
-SunLamp.sky -> sky: pointer, (read-only) Sky related settings for sun lamps
-TexMapping.location -> location: float
-TexMapping.maximum -> max: float Maximum value for clipping
-TexMapping.minimum -> min: float Minimum value for clipping
-TexMapping.rotation -> rotation: float
-TexMapping.scale -> scale: float
-Text.current_character -> current_character: int, (read-only) Index of current character in current line, and also start index of character in selection if one exists
-Text.current_line -> current_line: pointer, (read-only) Current line, and start line of selection if one exists
-Text.filepath -> filepath: string Filename of the text file
-Text.lines -> lines: collection, (read-only) Lines of text
-Text.markers -> markers: collection, (read-only) Text markers highlighting part of the text
-Text.selection_end_character -> selection_end_character: int, (read-only) Index of character after end of selection in the selection end line
-Text.selection_end_line -> selection_end_line: pointer, (read-only) End line of selection
-TextBox.height -> height: float
-TextBox.width -> width: float
-TextBox.x -> x: float
-TextBox.y -> y: float
-TextCurve.active_textbox -> active_textbox: int
-TextCurve.body -> body: string contents of this text object
-TextCurve.edit_format -> edit_format: pointer, (read-only) Editing settings character formatting
-TextCurve.family -> family: string Use Blender Objects as font characters. Give font objects a common name followed by the character it represents, eg. familya, familyb etc, and turn on Verts Duplication
-TextCurve.font -> font: pointer
-TextCurve.line_dist -> line_distance: float
-TextCurve.offset_x -> offset_x: float Horizontal offset from the object origin
-TextCurve.offset_y -> offset_y: float Vertical offset from the object origin
-TextCurve.shear -> shear: float Italic angle of the characters
-TextCurve.spacemode -> spacemode: enum Text align from the object center
-TextCurve.spacing -> spacing: float
-TextCurve.text_on_curve -> text_on_curve: pointer Curve deforming text object
-TextCurve.text_size -> text_size: float
-TextCurve.textboxes -> textboxes: collection, (read-only)
-TextCurve.ul_height -> ul_height: float
-TextCurve.ul_position -> ul_position: float Vertical position of underline
-TextCurve.word_spacing -> word_spacing: float
-TextLine.line -> line: string Text in the line
-TextMarker.color -> color: float Color to display the marker with
-TextMarker.end -> end: int, (read-only) Start position of the marker in the line
-TextMarker.group -> group: int, (read-only)
-TextMarker.line -> line: int, (read-only) Line in which the marker is located
-TextMarker.start -> start: int, (read-only) Start position of the marker in the line
-Texture.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-Texture.brightness -> intensity: float
-Texture.color_ramp -> color_ramp: pointer, (read-only)
-Texture.contrast -> contrast: float
-Texture.factor_blue -> factor_blue: float
-Texture.factor_green -> factor_green: float
-Texture.factor_red -> factor_red: float
-Texture.node_tree -> node_tree: pointer, (read-only) Node tree for node-based textures
-Texture.saturation -> saturation: float
-Texture.type -> type: enum
-TextureNode.type -> type: enum, (read-only)
-TextureNodeBricks.offset -> offset: float
-TextureNodeBricks.offset_frequency -> offset_frequency: int Offset every N rows
-TextureNodeBricks.squash -> squash: float
-TextureNodeBricks.squash_frequency -> squash_frequency: int Squash every N rows
-TextureNodeCurveRGB.mapping -> mapping: pointer, (read-only)
-TextureNodeCurveTime.curve -> curve: pointer, (read-only)
-TextureNodeCurveTime.end -> end: int
-TextureNodeCurveTime.start -> start: int
-TextureNodeImage.image -> image: pointer
-TextureNodeMath.operation -> operation: enum
-TextureNodeMixRGB.blend_type -> blend_type: enum
-TextureNodeOutput.output_name -> output_name: string
-TextureNodeTexture.node_output -> node_output: int For node-based textures, which output node to use
-TextureNodeTexture.texture -> texture: pointer
-TextureNodeValToRGB.color_ramp -> color_ramp: pointer, (read-only)
-TextureSlot.blend_type -> blend_type: enum
-TextureSlot.color -> color: float The default color for textures that don't return RGB
-TextureSlot.default_value -> default_value: float Value to use for Ref, Spec, Amb, Emit, Alpha, RayMir, TransLu and Hard
-TextureSlot.name -> name: string, (read-only) Texture slot name
-TextureSlot.offset -> offset: float Fine tunes texture mapping X, Y and Z locations
-TextureSlot.output_node -> output_node: enum Which output node to use, for node-based textures
-TextureSlot.size -> size: float Sets scaling for the texture's X, Y and Z sizes
-TextureSlot.texture -> texture: pointer Texture datablock used by this texture slot
-Theme.bone_color_sets -> bone_color_sets: collection, (read-only)
-Theme.console -> console: pointer, (read-only)
-Theme.dopesheet_editor -> dopesheet_editor: pointer, (read-only)
-Theme.file_browser -> file_browser: pointer, (read-only)
-Theme.graph_editor -> graph_editor: pointer, (read-only)
-Theme.image_editor -> image_editor: pointer, (read-only)
-Theme.info -> info: pointer, (read-only)
-Theme.logic_editor -> logic_editor: pointer, (read-only)
-Theme.name -> name: string Name of the theme
-Theme.nla_editor -> nla_editor: pointer, (read-only)
-Theme.node_editor -> node_editor: pointer, (read-only)
-Theme.outliner -> outliner: pointer, (read-only)
-Theme.properties -> properties: pointer, (read-only)
-Theme.sequence_editor -> sequence_editor: pointer, (read-only)
-Theme.text_editor -> text_editor: pointer, (read-only)
-Theme.theme_area -> theme_area: enum
-Theme.timeline -> timeline: pointer, (read-only)
-Theme.user_interface -> user_interface: pointer, (read-only)
-Theme.user_preferences -> user_preferences: pointer, (read-only)
-Theme.view_3d -> view_3d: pointer, (read-only)
-ThemeAudioWindow.back -> back: float
-ThemeAudioWindow.button -> button: float
-ThemeAudioWindow.button_text -> button_text: float
-ThemeAudioWindow.button_text_hi -> button_text_hi: float
-ThemeAudioWindow.button_title -> button_title: float
-ThemeAudioWindow.frame_current -> frame_current: float
-ThemeAudioWindow.grid -> grid: float
-ThemeAudioWindow.header -> header: float
-ThemeAudioWindow.header_text -> header_text: float
-ThemeAudioWindow.header_text_hi -> header_text_hi: float
-ThemeAudioWindow.text -> text: float
-ThemeAudioWindow.text_hi -> text_hi: float
-ThemeAudioWindow.title -> title: float
-ThemeAudioWindow.window_sliders -> window_sliders: float
-ThemeBoneColorSet.active -> active: float Color used for active bones
-ThemeBoneColorSet.normal -> normal: float Color used for the surface of bones
-ThemeBoneColorSet.selected -> select: float Color used for selected bones
-ThemeConsole.back -> back: float
-ThemeConsole.button -> button: float
-ThemeConsole.button_text -> button_text: float
-ThemeConsole.button_text_hi -> button_text_hi: float
-ThemeConsole.button_title -> button_title: float
-ThemeConsole.cursor -> cursor: float
-ThemeConsole.header -> header: float
-ThemeConsole.header_text -> header_text: float
-ThemeConsole.header_text_hi -> header_text_hi: float
-ThemeConsole.line_error -> line_error: float
-ThemeConsole.line_info -> line_info: float
-ThemeConsole.line_input -> line_input: float
-ThemeConsole.line_output -> line_output: float
-ThemeConsole.text -> text: float
-ThemeConsole.text_hi -> text_hi: float
-ThemeConsole.title -> title: float
-ThemeDopeSheet.active_channels_group -> active_channels_group: float
-ThemeDopeSheet.back -> back: float
-ThemeDopeSheet.button -> button: float
-ThemeDopeSheet.button_text -> button_text: float
-ThemeDopeSheet.button_text_hi -> button_text_hi: float
-ThemeDopeSheet.button_title -> button_title: float
-ThemeDopeSheet.channel_group -> channel_group: float
-ThemeDopeSheet.channels -> channels: float
-ThemeDopeSheet.channels_selected -> channels_selected: float
-ThemeDopeSheet.dopesheet_channel -> dopesheet_channel: float
-ThemeDopeSheet.dopesheet_subchannel -> dopesheet_subchannel: float
-ThemeDopeSheet.frame_current -> frame_current: float
-ThemeDopeSheet.grid -> grid: float
-ThemeDopeSheet.header -> header: float
-ThemeDopeSheet.header_text -> header_text: float
-ThemeDopeSheet.header_text_hi -> header_text_hi: float
-ThemeDopeSheet.list -> list: float
-ThemeDopeSheet.list_text -> list_text: float
-ThemeDopeSheet.list_text_hi -> list_text_hi: float
-ThemeDopeSheet.list_title -> list_title: float
-ThemeDopeSheet.long_key -> long_key: float
-ThemeDopeSheet.long_key_selected -> long_key_selected: float
-ThemeDopeSheet.text -> text: float
-ThemeDopeSheet.text_hi -> text_hi: float
-ThemeDopeSheet.title -> title: float
-ThemeDopeSheet.value_sliders -> value_sliders: float
-ThemeDopeSheet.view_sliders -> view_sliders: float
-ThemeFileBrowser.active_file -> active_file: float
-ThemeFileBrowser.active_file_text -> active_file_text: float
-ThemeFileBrowser.back -> back: float
-ThemeFileBrowser.button -> button: float
-ThemeFileBrowser.button_text -> button_text: float
-ThemeFileBrowser.button_text_hi -> button_text_hi: float
-ThemeFileBrowser.button_title -> button_title: float
-ThemeFileBrowser.header -> header: float
-ThemeFileBrowser.header_text -> header_text: float
-ThemeFileBrowser.header_text_hi -> header_text_hi: float
-ThemeFileBrowser.list -> list: float
-ThemeFileBrowser.list_text -> list_text: float
-ThemeFileBrowser.list_text_hi -> list_text_hi: float
-ThemeFileBrowser.list_title -> list_title: float
-ThemeFileBrowser.scroll_handle -> scroll_handle: float
-ThemeFileBrowser.scrollbar -> scrollbar: float
-ThemeFileBrowser.selected_file -> selected_file: float
-ThemeFileBrowser.text -> text: float
-ThemeFileBrowser.text_hi -> text_hi: float
-ThemeFileBrowser.tiles -> tiles: float
-ThemeFileBrowser.title -> title: float
-ThemeFontStyle.font_kerning_style -> font_kerning_style: enum Which style to use for font kerning
-ThemeFontStyle.points -> points: int
-ThemeFontStyle.shadow -> shadow: int Shadow size in pixels (0, 3 and 5 supported)
-ThemeFontStyle.shadowalpha -> shadowalpha: float
-ThemeFontStyle.shadowcolor -> shadowcolor: float Shadow color in grey value
-ThemeFontStyle.shadx -> shadow_offset_x: int Shadow offset in pixels
-ThemeFontStyle.shady -> shadow_offset_y: int Shadow offset in pixels
-ThemeGraphEditor.active_channels_group -> active_channels_group: float
-ThemeGraphEditor.back -> back: float
-ThemeGraphEditor.button -> button: float
-ThemeGraphEditor.button_text -> button_text: float
-ThemeGraphEditor.button_text_hi -> button_text_hi: float
-ThemeGraphEditor.button_title -> button_title: float
-ThemeGraphEditor.channel_group -> channel_group: float
-ThemeGraphEditor.channels_region -> channels_region: float
-ThemeGraphEditor.dopesheet_channel -> dopesheet_channel: float
-ThemeGraphEditor.dopesheet_subchannel -> dopesheet_subchannel: float
-ThemeGraphEditor.frame_current -> frame_current: float
-ThemeGraphEditor.grid -> grid: float
-ThemeGraphEditor.handle_align -> handle_align: float
-ThemeGraphEditor.handle_auto -> handle_auto: float
-ThemeGraphEditor.handle_free -> handle_free: float
-ThemeGraphEditor.handle_sel_align -> handle_sel_align: float
-ThemeGraphEditor.handle_sel_auto -> handle_sel_auto: float
-ThemeGraphEditor.handle_sel_free -> handle_sel_free: float
-ThemeGraphEditor.handle_sel_vect -> handle_sel_vect: float
-ThemeGraphEditor.handle_vect -> handle_vect: float
-ThemeGraphEditor.handle_vertex -> handle_vertex: float
-ThemeGraphEditor.handle_vertex_select -> handle_vertex_select: float
-ThemeGraphEditor.handle_vertex_size -> handle_vertex_size: int
-ThemeGraphEditor.header -> header: float
-ThemeGraphEditor.header_text -> header_text: float
-ThemeGraphEditor.header_text_hi -> header_text_hi: float
-ThemeGraphEditor.lastsel_point -> lastsel_point: float
-ThemeGraphEditor.list -> list: float
-ThemeGraphEditor.list_text -> list_text: float
-ThemeGraphEditor.list_text_hi -> list_text_hi: float
-ThemeGraphEditor.list_title -> list_title: float
-ThemeGraphEditor.panel -> panel: float
-ThemeGraphEditor.text -> text: float
-ThemeGraphEditor.text_hi -> text_hi: float
-ThemeGraphEditor.title -> title: float
-ThemeGraphEditor.vertex -> vertex: float
-ThemeGraphEditor.vertex_select -> vertex_select: float
-ThemeGraphEditor.vertex_size -> vertex_size: int
-ThemeGraphEditor.window_sliders -> window_sliders: float
-ThemeImageEditor.back -> back: float
-ThemeImageEditor.button -> button: float
-ThemeImageEditor.button_text -> button_text: float
-ThemeImageEditor.button_text_hi -> button_text_hi: float
-ThemeImageEditor.button_title -> button_title: float
-ThemeImageEditor.editmesh_active -> editmesh_active: float
-ThemeImageEditor.face -> face: float
-ThemeImageEditor.face_dot -> face_dot: float
-ThemeImageEditor.face_select -> face_select: float
-ThemeImageEditor.facedot_size -> facedot_size: int
-ThemeImageEditor.header -> header: float
-ThemeImageEditor.header_text -> header_text: float
-ThemeImageEditor.header_text_hi -> header_text_hi: float
-ThemeImageEditor.scope_back -> scope_back: float
-ThemeImageEditor.text -> text: float
-ThemeImageEditor.text_hi -> text_hi: float
-ThemeImageEditor.title -> title: float
-ThemeImageEditor.vertex -> vertex: float
-ThemeImageEditor.vertex_select -> vertex_select: float
-ThemeImageEditor.vertex_size -> vertex_size: int
-ThemeInfo.back -> back: float
-ThemeInfo.button -> button: float
-ThemeInfo.button_text -> button_text: float
-ThemeInfo.button_text_hi -> button_text_hi: float
-ThemeInfo.button_title -> button_title: float
-ThemeInfo.header -> header: float
-ThemeInfo.header_text -> header_text: float
-ThemeInfo.header_text_hi -> header_text_hi: float
-ThemeInfo.text -> text: float
-ThemeInfo.text_hi -> text_hi: float
-ThemeInfo.title -> title: float
-ThemeLogicEditor.back -> back: float
-ThemeLogicEditor.button -> button: float
-ThemeLogicEditor.button_text -> button_text: float
-ThemeLogicEditor.button_text_hi -> button_text_hi: float
-ThemeLogicEditor.button_title -> button_title: float
-ThemeLogicEditor.header -> header: float
-ThemeLogicEditor.header_text -> header_text: float
-ThemeLogicEditor.header_text_hi -> header_text_hi: float
-ThemeLogicEditor.panel -> panel: float
-ThemeLogicEditor.text -> text: float
-ThemeLogicEditor.text_hi -> text_hi: float
-ThemeLogicEditor.title -> title: float
-ThemeNLAEditor.back -> back: float
-ThemeNLAEditor.bars -> bars: float
-ThemeNLAEditor.bars_selected -> bars_selected: float
-ThemeNLAEditor.button -> button: float
-ThemeNLAEditor.button_text -> button_text: float
-ThemeNLAEditor.button_text_hi -> button_text_hi: float
-ThemeNLAEditor.button_title -> button_title: float
-ThemeNLAEditor.frame_current -> frame_current: float
-ThemeNLAEditor.grid -> grid: float
-ThemeNLAEditor.header -> header: float
-ThemeNLAEditor.header_text -> header_text: float
-ThemeNLAEditor.header_text_hi -> header_text_hi: float
-ThemeNLAEditor.list -> list: float
-ThemeNLAEditor.list_text -> list_text: float
-ThemeNLAEditor.list_text_hi -> list_text_hi: float
-ThemeNLAEditor.list_title -> list_title: float
-ThemeNLAEditor.strips -> strips: float
-ThemeNLAEditor.strips_selected -> strips_selected: float
-ThemeNLAEditor.text -> text: float
-ThemeNLAEditor.text_hi -> text_hi: float
-ThemeNLAEditor.title -> title: float
-ThemeNLAEditor.view_sliders -> view_sliders: float
-ThemeNodeEditor.back -> back: float
-ThemeNodeEditor.button -> button: float
-ThemeNodeEditor.button_text -> button_text: float
-ThemeNodeEditor.button_text_hi -> button_text_hi: float
-ThemeNodeEditor.button_title -> button_title: float
-ThemeNodeEditor.converter_node -> converter_node: float
-ThemeNodeEditor.group_node -> group_node: float
-ThemeNodeEditor.header -> header: float
-ThemeNodeEditor.header_text -> header_text: float
-ThemeNodeEditor.header_text_hi -> header_text_hi: float
-ThemeNodeEditor.in_out_node -> in_out_node: float
-ThemeNodeEditor.list -> list: float
-ThemeNodeEditor.list_text -> list_text: float
-ThemeNodeEditor.list_text_hi -> list_text_hi: float
-ThemeNodeEditor.list_title -> list_title: float
-ThemeNodeEditor.node_backdrop -> node_backdrop: float
-ThemeNodeEditor.operator_node -> operator_node: float
-ThemeNodeEditor.selected_text -> selected_text: float
-ThemeNodeEditor.text -> text: float
-ThemeNodeEditor.text_hi -> text_hi: float
-ThemeNodeEditor.title -> title: float
-ThemeNodeEditor.wire_select -> wire_select: float
-ThemeNodeEditor.wires -> wires: float
-ThemeOutliner.back -> back: float
-ThemeOutliner.button -> button: float
-ThemeOutliner.button_text -> button_text: float
-ThemeOutliner.button_text_hi -> button_text_hi: float
-ThemeOutliner.button_title -> button_title: float
-ThemeOutliner.header -> header: float
-ThemeOutliner.header_text -> header_text: float
-ThemeOutliner.header_text_hi -> header_text_hi: float
-ThemeOutliner.text -> text: float
-ThemeOutliner.text_hi -> text_hi: float
-ThemeOutliner.title -> title: float
-ThemeProperties.back -> back: float
-ThemeProperties.button -> button: float
-ThemeProperties.button_text -> button_text: float
-ThemeProperties.button_text_hi -> button_text_hi: float
-ThemeProperties.button_title -> button_title: float
-ThemeProperties.header -> header: float
-ThemeProperties.header_text -> header_text: float
-ThemeProperties.header_text_hi -> header_text_hi: float
-ThemeProperties.panel -> panel: float
-ThemeProperties.text -> text: float
-ThemeProperties.text_hi -> text_hi: float
-ThemeProperties.title -> title: float
-ThemeSequenceEditor.audio_strip -> audio_strip: float
-ThemeSequenceEditor.back -> back: float
-ThemeSequenceEditor.button -> button: float
-ThemeSequenceEditor.button_text -> button_text: float
-ThemeSequenceEditor.button_text_hi -> button_text_hi: float
-ThemeSequenceEditor.button_title -> button_title: float
-ThemeSequenceEditor.draw_action -> draw_action: float
-ThemeSequenceEditor.effect_strip -> effect_strip: float
-ThemeSequenceEditor.frame_current -> frame_current: float
-ThemeSequenceEditor.grid -> grid: float
-ThemeSequenceEditor.header -> header: float
-ThemeSequenceEditor.header_text -> header_text: float
-ThemeSequenceEditor.header_text_hi -> header_text_hi: float
-ThemeSequenceEditor.image_strip -> image_strip: float
-ThemeSequenceEditor.keyframe -> keyframe: float
-ThemeSequenceEditor.meta_strip -> meta_strip: float
-ThemeSequenceEditor.movie_strip -> movie_strip: float
-ThemeSequenceEditor.plugin_strip -> plugin_strip: float
-ThemeSequenceEditor.scene_strip -> scene_strip: float
-ThemeSequenceEditor.text -> text: float
-ThemeSequenceEditor.text_hi -> text_hi: float
-ThemeSequenceEditor.title -> title: float
-ThemeSequenceEditor.transition_strip -> transition_strip: float
-ThemeSequenceEditor.window_sliders -> window_sliders: float
-ThemeStyle.grouplabel -> grouplabel: pointer, (read-only)
-ThemeStyle.paneltitle -> paneltitle: pointer, (read-only)
-ThemeStyle.panelzoom -> panelzoom: float Default zoom level for panel areas
-ThemeStyle.widget -> widget: pointer, (read-only)
-ThemeStyle.widgetlabel -> widgetlabel: pointer, (read-only)
-ThemeTextEditor.back -> back: float
-ThemeTextEditor.button -> button: float
-ThemeTextEditor.button_text -> button_text: float
-ThemeTextEditor.button_text_hi -> button_text_hi: float
-ThemeTextEditor.button_title -> button_title: float
-ThemeTextEditor.cursor -> cursor: float
-ThemeTextEditor.header -> header: float
-ThemeTextEditor.header_text -> header_text: float
-ThemeTextEditor.header_text_hi -> header_text_hi: float
-ThemeTextEditor.line_numbers_background -> line_numbers_background: float
-ThemeTextEditor.scroll_bar -> scroll_bar: float
-ThemeTextEditor.selected_text -> selected_text: float
-ThemeTextEditor.syntax_builtin -> syntax_builtin: float
-ThemeTextEditor.syntax_comment -> syntax_comment: float
-ThemeTextEditor.syntax_numbers -> syntax_numbers: float
-ThemeTextEditor.syntax_special -> syntax_special: float
-ThemeTextEditor.syntax_string -> syntax_string: float
-ThemeTextEditor.text -> text: float
-ThemeTextEditor.text_hi -> text_hi: float
-ThemeTextEditor.title -> title: float
-ThemeTimeline.back -> back: float
-ThemeTimeline.button -> button: float
-ThemeTimeline.button_text -> button_text: float
-ThemeTimeline.button_text_hi -> button_text_hi: float
-ThemeTimeline.button_title -> button_title: float
-ThemeTimeline.frame_current -> frame_current: float
-ThemeTimeline.grid -> grid: float
-ThemeTimeline.header -> header: float
-ThemeTimeline.header_text -> header_text: float
-ThemeTimeline.header_text_hi -> header_text_hi: float
-ThemeTimeline.text -> text: float
-ThemeTimeline.text_hi -> text_hi: float
-ThemeTimeline.title -> title: float
-ThemeUserInterface.icon_file -> icon_file: string
-ThemeUserInterface.wcol_box -> wcol_box: pointer, (read-only)
-ThemeUserInterface.wcol_list_item -> wcol_list_item: pointer, (read-only)
-ThemeUserInterface.wcol_menu -> wcol_menu: pointer, (read-only)
-ThemeUserInterface.wcol_menu_back -> wcol_menu_back: pointer, (read-only)
-ThemeUserInterface.wcol_menu_item -> wcol_menu_item: pointer, (read-only)
-ThemeUserInterface.wcol_num -> wcol_num: pointer, (read-only)
-ThemeUserInterface.wcol_numslider -> wcol_numslider: pointer, (read-only)
-ThemeUserInterface.wcol_option -> wcol_option: pointer, (read-only)
-ThemeUserInterface.wcol_progress -> wcol_progress: pointer, (read-only)
-ThemeUserInterface.wcol_pulldown -> wcol_pulldown: pointer, (read-only)
-ThemeUserInterface.wcol_radio -> wcol_radio: pointer, (read-only)
-ThemeUserInterface.wcol_regular -> wcol_regular: pointer, (read-only)
-ThemeUserInterface.wcol_scroll -> wcol_scroll: pointer, (read-only)
-ThemeUserInterface.wcol_state -> wcol_state: pointer, (read-only)
-ThemeUserInterface.wcol_text -> wcol_text: pointer, (read-only)
-ThemeUserInterface.wcol_toggle -> wcol_toggle: pointer, (read-only)
-ThemeUserInterface.wcol_tool -> wcol_tool: pointer, (read-only)
-ThemeUserPreferences.back -> back: float
-ThemeUserPreferences.button -> button: float
-ThemeUserPreferences.button_text -> button_text: float
-ThemeUserPreferences.button_text_hi -> button_text_hi: float
-ThemeUserPreferences.button_title -> button_title: float
-ThemeUserPreferences.header -> header: float
-ThemeUserPreferences.header_text -> header_text: float
-ThemeUserPreferences.header_text_hi -> header_text_hi: float
-ThemeUserPreferences.text -> text: float
-ThemeUserPreferences.text_hi -> text_hi: float
-ThemeUserPreferences.title -> title: float
-ThemeView3D.act_spline -> act_spline: float
-ThemeView3D.back -> back: float
-ThemeView3D.bone_pose -> bone_pose: float
-ThemeView3D.bone_solid -> bone_solid: float
-ThemeView3D.button -> button: float
-ThemeView3D.button_text -> button_text: float
-ThemeView3D.button_text_hi -> button_text_hi: float
-ThemeView3D.button_title -> button_title: float
-ThemeView3D.edge_crease -> edge_crease: float
-ThemeView3D.edge_facesel -> edge_facesel: float
-ThemeView3D.edge_seam -> edge_seam: float
-ThemeView3D.edge_select -> edge_select: float
-ThemeView3D.edge_sharp -> edge_sharp: float
-ThemeView3D.editmesh_active -> editmesh_active: float
-ThemeView3D.face -> face: float
-ThemeView3D.face_dot -> face_dot: float
-ThemeView3D.face_select -> face_select: float
-ThemeView3D.facedot_size -> facedot_size: int
-ThemeView3D.frame_current -> frame_current: float
-ThemeView3D.grid -> grid: float
-ThemeView3D.handle_align -> handle_align: float
-ThemeView3D.handle_auto -> handle_auto: float
-ThemeView3D.handle_free -> handle_free: float
-ThemeView3D.handle_sel_align -> handle_sel_align: float
-ThemeView3D.handle_sel_auto -> handle_sel_auto: float
-ThemeView3D.handle_sel_free -> handle_sel_free: float
-ThemeView3D.handle_sel_vect -> handle_sel_vect: float
-ThemeView3D.handle_vect -> handle_vect: float
-ThemeView3D.header -> header: float
-ThemeView3D.header_text -> header_text: float
-ThemeView3D.header_text_hi -> header_text_hi: float
-ThemeView3D.lamp -> lamp: float
-ThemeView3D.lastsel_point -> lastsel_point: float
-ThemeView3D.normal -> normal: float
-ThemeView3D.nurb_sel_uline -> nurb_sel_uline: float
-ThemeView3D.nurb_sel_vline -> nurb_sel_vline: float
-ThemeView3D.nurb_uline -> nurb_uline: float
-ThemeView3D.nurb_vline -> nurb_vline: float
-ThemeView3D.object_active -> object_active: float
-ThemeView3D.object_grouped -> object_grouped: float
-ThemeView3D.object_grouped_active -> object_grouped_active: float
-ThemeView3D.object_selected -> object_selected: float
-ThemeView3D.panel -> panel: float
-ThemeView3D.text -> text: float
-ThemeView3D.text_hi -> text_hi: float
-ThemeView3D.title -> title: float
-ThemeView3D.transform -> transform: float
-ThemeView3D.vertex -> vertex: float
-ThemeView3D.vertex_normal -> vertex_normal: float
-ThemeView3D.vertex_select -> vertex_select: float
-ThemeView3D.vertex_size -> vertex_size: int
-ThemeView3D.wire -> wire: float
-ThemeWidgetColors.inner -> inner: float
-ThemeWidgetColors.inner_sel -> inner_sel: float
-ThemeWidgetColors.item -> item: float
-ThemeWidgetColors.outline -> outline: float
-ThemeWidgetColors.shadedown -> shadedown: int
-ThemeWidgetColors.shadetop -> shadetop: int
-ThemeWidgetColors.text -> text: float
-ThemeWidgetColors.text_sel -> text_sel: float
-ThemeWidgetStateColors.blend -> blend: float
-ThemeWidgetStateColors.inner_anim -> inner_anim: float
-ThemeWidgetStateColors.inner_anim_sel -> inner_anim_sel: float
-ThemeWidgetStateColors.inner_driven -> inner_driven: float
-ThemeWidgetStateColors.inner_driven_sel -> inner_driven_sel: float
-ThemeWidgetStateColors.inner_key -> inner_key: float
-ThemeWidgetStateColors.inner_key_sel -> inner_key_sel: float
-TimelineMarker.camera -> camera: pointer Camera this timeline sets to active
-TimelineMarker.frame -> frame: int The frame on which the timeline marker appears
-TimelineMarker.name -> name: string
-ToolSettings.autokey_mode -> autokey_mode: enum Mode of automatic keyframe insertion for Objects and Bones
-ToolSettings.edge_path_mode -> edge_path_mode: enum The edge flag to tag when selecting the shortest path
-ToolSettings.etch_adaptive_limit -> etch_adaptive_limit: float Number of bones in the subdivided stroke
-ToolSettings.etch_convert_mode -> etch_convert_mode: enum Method used to convert stroke to bones
-ToolSettings.etch_length_limit -> etch_length_limit: float Number of bones in the subdivided stroke
-ToolSettings.etch_number -> etch_number: string DOC BROKEN
-ToolSettings.etch_roll_mode -> etch_roll_mode: enum Method used to adjust the roll of bones when retargeting
-ToolSettings.etch_side -> etch_side: string DOC BROKEN
-ToolSettings.etch_subdivision_number -> etch_subdivision_number: int Number of bones in the subdivided stroke
-ToolSettings.etch_template -> etch_template: pointer Template armature that will be retargeted to the stroke
-ToolSettings.image_paint -> image_paint: pointer, (read-only)
-ToolSettings.normal_size -> normal_size: float Display size for normals in the 3D view
-ToolSettings.particle_edit -> particle_edit: pointer, (read-only)
-ToolSettings.proportional_editing -> proportional_edit: enum Proportional editing mode
-ToolSettings.proportional_editing_falloff -> proportional_edit_falloff: enum Falloff type for proportional editing mode
-ToolSettings.sculpt -> sculpt: pointer, (read-only)
-ToolSettings.snap_element -> snap_element: enum Type of element to snap to
-ToolSettings.snap_target -> snap_target: enum Which part to snap onto the target
-ToolSettings.uv_selection_mode -> uv_selection_mode: enum UV selection and display mode
-ToolSettings.vertex_group_weight -> vertex_group_weight: float Weight to assign in vertex groups
-ToolSettings.vertex_paint -> vertex_paint: pointer, (read-only)
-ToolSettings.weight_paint -> weight_paint: pointer, (read-only)
-TouchSensor.material -> material: pointer Only look for objects with this material
-TrackToConstraint.head_tail -> head_tail: float Target along length of bone: Head=0, Tail=1
-TrackToConstraint.subtarget -> subtarget: string
-TrackToConstraint.target -> target: pointer Target Object
-TrackToConstraint.track -> track: enum Axis that points to the target object
-TrackToConstraint.up -> up: enum Axis that points upward
-TransformConstraint.from_max_x -> from_max_x: float Top range of X axis source motion
-TransformConstraint.from_max_y -> from_max_y: float Top range of Y axis source motion
-TransformConstraint.from_max_z -> from_max_z: float Top range of Z axis source motion
-TransformConstraint.from_min_x -> from_min_x: float Bottom range of X axis source motion
-TransformConstraint.from_min_y -> from_min_y: float Bottom range of Y axis source motion
-TransformConstraint.from_min_z -> from_min_z: float Bottom range of Z axis source motion
-TransformConstraint.map_from -> map_from: enum The transformation type to use from the target
-TransformConstraint.map_to -> map_to: enum The transformation type to affect of the constrained object
-TransformConstraint.map_to_x_from -> map_to_x_from: enum The source axis constrained object's X axis uses
-TransformConstraint.map_to_y_from -> map_to_y_from: enum The source axis constrained object's Y axis uses
-TransformConstraint.map_to_z_from -> map_to_z_from: enum The source axis constrained object's Z axis uses
-TransformConstraint.subtarget -> subtarget: string
-TransformConstraint.target -> target: pointer Target Object
-TransformConstraint.to_max_x -> to_max_x: float Top range of X axis destination motion
-TransformConstraint.to_max_y -> to_max_y: float Top range of Y axis destination motion
-TransformConstraint.to_max_z -> to_max_z: float Top range of Z axis destination motion
-TransformConstraint.to_min_x -> to_min_x: float Bottom range of X axis destination motion
-TransformConstraint.to_min_y -> to_min_y: float Bottom range of Y axis destination motion
-TransformConstraint.to_min_z -> to_min_z: float Bottom range of Z axis destination motion
-TransformOrientation.matrix -> matrix: float
-TransformOrientation.name -> name: string
-TransformSequence.interpolation -> interpolation: enum
-TransformSequence.rotation_start -> rotation_start: float
-TransformSequence.scale_start_x -> scale_start_x: float
-TransformSequence.scale_start_y -> scale_start_y: float
-TransformSequence.translate_start_x -> translate_start_x: float
-TransformSequence.translate_start_y -> translate_start_y: float
-TransformSequence.translation_unit -> translation_unit: enum
-UILayout.alignment -> alignment: enum
-UILayout.operator_context -> operator_context: enum
-UILayout.scale_x -> scale_x: float
-UILayout.scale_y -> scale_y: float
-UVProjectModifier.aspect_x -> aspect_x: float
-UVProjectModifier.aspect_y -> aspect_y: float
-UVProjectModifier.image -> image: pointer
-UVProjectModifier.num_projectors -> num_projectors: int Number of projectors to use
-UVProjectModifier.projectors -> projectors: collection, (read-only)
-UVProjectModifier.scale_x -> scale_x: float
-UVProjectModifier.scale_y -> scale_y: float
-UVProjectModifier.uv_layer -> uv_layer: string UV layer name
-UVProjector.object -> object: pointer Object to use as projector transform
-UnitSettings.rotation_units -> rotation_units: enum Unit to use for displaying/editing rotation values
-UnitSettings.scale_length -> scale_length: float Scale to use when converting between blender units and dimensions
-UnitSettings.system -> system: enum The unit system to use for button display
-UserPreferences.active_section -> active_section: enum Active section of the user preferences shown in the user interface
-UserPreferences.addons -> addons: collection, (read-only)
-UserPreferences.edit -> edit: pointer, (read-only) Settings for interacting with Blender data
-UserPreferences.filepaths -> filepaths: pointer, (read-only) Default paths for external files
-UserPreferences.inputs -> inputs: pointer, (read-only) Settings for input devices
-UserPreferences.system -> system: pointer, (read-only) Graphics driver and operating system settings
-UserPreferences.themes -> themes: collection, (read-only)
-UserPreferences.uistyles -> uistyles: collection, (read-only)
-UserPreferences.view -> view: pointer, (read-only) Preferences related to viewing data
-UserPreferencesEdit.auto_keying_mode -> auto_keying_mode: enum Mode of automatic keyframe insertion for Objects and Bones
-UserPreferencesEdit.grease_pencil_eraser_radius -> grease_pencil_eraser_radius: int Radius of eraser 'brush'
-UserPreferencesEdit.grease_pencil_euclidean_distance -> grease_pencil_euclidean_distance: int Distance moved by mouse when drawing stroke (in pixels) to include
-UserPreferencesEdit.grease_pencil_manhattan_distance -> grease_pencil_manhattan_distance: int Pixels moved by mouse per axis when drawing stroke
-UserPreferencesEdit.keyframe_new_handle_type -> keyframe_new_handle_type: enum
-UserPreferencesEdit.keyframe_new_interpolation_type -> keyframe_new_interpolation_type: enum
-UserPreferencesEdit.material_link -> material_link: enum Toggle whether the material is linked to object data or the object block
-UserPreferencesEdit.object_align -> object_align: enum When adding objects from a 3D View menu, either align them to that view's direction or the world coordinates
-UserPreferencesEdit.undo_memory_limit -> undo_memory_limit: int Maximum memory usage in megabytes (0 means unlimited)
-UserPreferencesEdit.undo_steps -> undo_steps: int Number of undo steps available (smaller values conserve memory)
-UserPreferencesFilePaths.animation_player -> animation_player: string Path to a custom animation/frame sequence player
-UserPreferencesFilePaths.animation_player_preset -> animation_player_preset: enum Preset configs for external animation players
-UserPreferencesFilePaths.auto_save_time -> auto_save_time: int The time (in minutes) to wait between automatic temporary saves
-UserPreferencesFilePaths.fonts_directory -> fonts_directory: string The default directory to search for loading fonts
-UserPreferencesFilePaths.image_editor -> image_editor: string Path to an image editor
-UserPreferencesFilePaths.python_scripts_directory -> python_scripts_directory: string The default directory to search for Python scripts (resets python module search path: sys.path)
-UserPreferencesFilePaths.recent_files -> recent_files: int Maximum number of recently opened files to remember
-UserPreferencesFilePaths.render_output_directory -> render_output_directory: string The default directory for rendering output
-UserPreferencesFilePaths.save_version -> save_version: int The number of old versions to maintain in the current directory, when manually saving
-UserPreferencesFilePaths.sequence_plugin_directory -> sequence_plugin_directory: string The default directory to search for sequence plugins
-UserPreferencesFilePaths.sounds_directory -> sounds_directory: string The default directory to search for sounds
-UserPreferencesFilePaths.temporary_directory -> temporary_directory: string The directory for storing temporary save files
-UserPreferencesFilePaths.texture_plugin_directory -> texture_plugin_directory: string The default directory to search for texture plugins
-UserPreferencesFilePaths.textures_directory -> textures_directory: string The default directory to search for textures
-UserPreferencesInput.double_click_time -> double_click_time: int The time (in ms) for a double click
-UserPreferencesInput.edited_keymaps -> edited_keymaps: collection, (read-only)
-UserPreferencesInput.ndof_pan_speed -> ndof_pan_speed: int The overall panning speed of an NDOF device, as percent of standard
-UserPreferencesInput.ndof_rotate_speed -> ndof_rotate_speed: int The overall rotation speed of an NDOF device, as percent of standard
-UserPreferencesInput.select_mouse -> select_mouse: enum The mouse button used for selection
-UserPreferencesInput.view_rotation -> view_rotation: enum Rotation style in the viewport
-UserPreferencesInput.zoom_axis -> zoom_axis: enum Axis of mouse movement to zoom in or out on
-UserPreferencesInput.zoom_style -> zoom_style: enum Which style to use for viewport scaling
-UserPreferencesSystem.audio_channels -> audio_channels: enum Sets the audio channel count
-UserPreferencesSystem.audio_device -> audio_device: enum Sets the audio output device
-UserPreferencesSystem.audio_mixing_buffer -> audio_mixing_buffer: enum Sets the number of samples used by the audio mixing buffer
-UserPreferencesSystem.audio_sample_format -> audio_sample_format: enum Sets the audio sample format
-UserPreferencesSystem.audio_sample_rate -> audio_sample_rate: enum Sets the audio sample rate
-UserPreferencesSystem.clip_alpha -> clip_alpha: float Clip alpha below this threshold in the 3D textured view
-UserPreferencesSystem.color_picker_type -> color_picker_type: enum Different styles of displaying the color picker widget
-UserPreferencesSystem.dpi -> dpi: int Font size and resolution for display
-UserPreferencesSystem.frame_server_port -> frame_server_port: int Frameserver Port for Frameserver Rendering
-UserPreferencesSystem.gl_texture_limit -> gl_texture_limit: enum Limit the texture size to save graphics memory
-UserPreferencesSystem.language -> language: enum Language use for translation
-UserPreferencesSystem.memory_cache_limit -> memory_cache_limit: int Memory cache limit in sequencer (megabytes)
-UserPreferencesSystem.prefetch_frames -> prefetch_frames: int Number of frames to render ahead during playback
-UserPreferencesSystem.screencast_fps -> screencast_fps: int Frame rate for the screencast to be played back
-UserPreferencesSystem.screencast_wait_time -> screencast_wait_time: int Time in milliseconds between each frame recorded for screencast
-UserPreferencesSystem.scrollback -> scrollback: int Maximum number of lines to store for the console buffer
-UserPreferencesSystem.solid_lights -> solid_lights: collection, (read-only) Lights user to display objects in solid draw mode
-UserPreferencesSystem.texture_collection_rate -> texture_collection_rate: int Number of seconds between each run of the GL texture garbage collector
-UserPreferencesSystem.texture_time_out -> texture_time_out: int Time since last access of a GL texture in seconds after which it is freed. (Set to 0 to keep textures allocated.)
-UserPreferencesSystem.weight_color_range -> weight_color_range: pointer, (read-only) Color range used for weight visualization in weight painting mode
-UserPreferencesSystem.window_draw_method -> window_draw_method: enum Drawing method used by the window manager
-UserPreferencesView.manipulator_handle_size -> manipulator_handle_size: int Size of widget handles as percentage of widget radius
-UserPreferencesView.manipulator_hotspot -> manipulator_hotspot: int Hotspot in pixels for clicking widget handles
-UserPreferencesView.manipulator_size -> manipulator_size: int Diameter of widget, in 10 pixel units
-UserPreferencesView.mini_axis_brightness -> mini_axis_brightness: int The brightness of the icon
-UserPreferencesView.mini_axis_size -> mini_axis_size: int The axis icon's size
-UserPreferencesView.object_origin_size -> object_origin_size: int Diameter in Pixels for Object/Lamp origin display
-UserPreferencesView.open_left_mouse_delay -> open_left_mouse_delay: int Time in 1/10 seconds to hold the Left Mouse Button before opening the toolbox
-UserPreferencesView.open_right_mouse_delay -> open_right_mouse_delay: int Time in 1/10 seconds to hold the Right Mouse Button before opening the toolbox
-UserPreferencesView.open_sublevel_delay -> open_sublevel_delay: int Time delay in 1/10 seconds before automatically opening sub level menus
-UserPreferencesView.open_toplevel_delay -> open_toplevel_delay: int Time delay in 1/10 seconds before automatically opening top level menus
-UserPreferencesView.properties_width_check -> properties_width_check: int Dual Column layout will change to single column layout when the width of the area gets below this value (needs restart to take effect)
-UserPreferencesView.rotation_angle -> rotation_angle: int The rotation step for numerical pad keys (2 4 6 8)
-UserPreferencesView.smooth_view -> smooth_view: int The time to animate the view in milliseconds, zero to disable
-UserPreferencesView.timecode_style -> timecode_style: enum Format of Time Codes displayed when not displaying timing in terms of frames
-UserPreferencesView.view2d_grid_minimum_spacing -> view2d_grid_spacing_min: int Minimum number of pixels between each gridline in 2D Viewports
-UserPreferencesView.wheel_scroll_lines -> wheel_scroll_lines: int The number of lines scrolled at a time with the mouse wheel
-UserSolidLight.diffuse_color -> diffuse_color: float The diffuse color of the OpenGL light
-UserSolidLight.direction -> direction: float The direction that the OpenGL light is shining
-UserSolidLight.specular_color -> specular_color: float The color of the lights specular highlight
-ValueNodeSocket.default_value -> default_value: float Default value of the socket when no link is attached
-ValueNodeSocket.name -> name: string, (read-only) Socket name
-VectorFont.filepath -> filepath: string, (read-only)
-VectorFont.packed_file -> packed_file: pointer, (read-only)
-VectorNodeSocket.default_value -> default_value: float Default value of the socket when no link is attached
-VectorNodeSocket.name -> name: string, (read-only) Socket name
-VertexGroup.index -> index: int, (read-only) Index number of the vertex group
-VertexGroup.name -> name: string Vertex group name
-VertexGroupElement.group -> group: int, (read-only)
-VertexGroupElement.weight -> weight: float Vertex Weight
-VoronoiTexture.coloring -> color_mode: enum
-VoronoiTexture.distance_metric -> distance_metric: enum
-VoronoiTexture.minkovsky_exponent -> minkovsky_exponent: float Minkovsky exponent
-VoronoiTexture.nabla -> nabla: float Size of derivative offset used for calculating normal
-VoronoiTexture.noise_intensity -> noise_intensity: float
-VoronoiTexture.noise_size -> noise_size: float Sets scaling for noise input
-VoronoiTexture.weight_1 -> weight_1: float Voronoi feature weight 1
-VoronoiTexture.weight_2 -> weight_2: float Voronoi feature weight 2
-VoronoiTexture.weight_3 -> weight_3: float Voronoi feature weight 3
-VoronoiTexture.weight_4 -> weight_4: float Voronoi feature weight 4
-VoxelData.domain_object -> domain_object: pointer Object used as the smoke simulation domain
-VoxelData.extension -> extension: enum Sets how the texture is extrapolated past its original bounds
-VoxelData.file_format -> file_format: enum Format of the source data set to render
-VoxelData.intensity -> intensity: float Multiplier for intensity values
-VoxelData.interpolation -> interpolation: enum Method to interpolate/smooth values between voxel cells
-VoxelData.resolution -> resolution: int Resolution of the voxel grid
-VoxelData.smoke_data_type -> smoke_data_type: enum Simulation value to be used as a texture
-VoxelData.source_path -> source_path: string The external source data file to use
-VoxelData.still_frame_number -> still_frame_number: int The frame number to always use
-VoxelDataTexture.image -> image: pointer
-VoxelDataTexture.image_user -> image_user: pointer, (read-only) Parameters defining which layer, pass and frame of the image is displayed
-VoxelDataTexture.voxeldata -> voxeldata: pointer, (read-only) The voxel data associated with this texture
-WaveModifier.damping_time -> damping_time: float
-WaveModifier.falloff_radius -> falloff_radius: float
-WaveModifier.height -> height: float
-WaveModifier.lifetime -> lifetime: float
-WaveModifier.narrowness -> narrowness: float
-WaveModifier.speed -> speed: float
-WaveModifier.start_position_object -> start_position_object: pointer
-WaveModifier.start_position_x -> start_position_x: float
-WaveModifier.start_position_y -> start_position_y: float
-WaveModifier.texture -> texture: pointer Texture for modulating the wave
-WaveModifier.texture_coordinates -> texture_coordinates: enum Texture coordinates used for modulating input
-WaveModifier.texture_coordinates_object -> texture_coordinates_object: pointer
-WaveModifier.time_offset -> time_offset: float Either the starting frame (for positive speed) or ending frame (for negative speed.)
-WaveModifier.uv_layer -> uv_layer: string UV layer name
-WaveModifier.vertex_group -> vertex_group: string Vertex group name for modulating the wave
-WaveModifier.width -> width: float
-Window.screen -> screen: pointer Active screen showing in the window
-WindowManager.active_keyconfig -> active_keyconfig: pointer
-WindowManager.default_keyconfig -> default_keyconfig: pointer, (read-only)
-WindowManager.keyconfigs -> keyconfigs: collection, (read-only) Registered key configurations
-WindowManager.operators -> operators: collection, (read-only) Operator registry
-WindowManager.windows -> windows: collection, (read-only) Open windows
-WipeSequence.angle -> angle: float Edge angle
-WipeSequence.blur_width -> blur_width: float Width of the blur edge, in percentage relative to the image size
-WipeSequence.direction -> direction: enum Wipe direction
-WipeSequence.transition_type -> transition_type: enum
-WoodTexture.nabla -> nabla: float Size of derivative offset used for calculating normal
-WoodTexture.noise_basis -> noise_basis: enum Sets the noise basis used for turbulence
-WoodTexture.noise_size -> noise_size: float Sets scaling for noise input
-WoodTexture.noise_type -> noise_type: enum
-WoodTexture.noisebasis2 -> noisebasis2: enum
-WoodTexture.stype -> stype: enum
-WoodTexture.turbulence -> turbulence: float Sets the turbulence of the bandnoise and ringnoise types
-World.active_texture -> active_texture: pointer Active texture slot being displayed
-World.active_texture_index -> active_texture_index: int Index of active texture slot
-World.ambient_color -> ambient_color: float
-World.animation_data -> animation_data: pointer, (read-only) Animation data for this datablock
-World.exposure -> exposure: float Amount of exponential color correction for light
-World.horizon_color -> horizon_color: float Color at the horizon
-World.lighting -> lighting: pointer, (read-only) World lighting settings
-World.mist -> mist: pointer, (read-only) World mist settings
-World.range -> range: float The color range that will be mapped to 0-1
-World.stars -> stars: pointer, (read-only) World stars settings
-World.texture_slots -> texture_slots: collection, (read-only) Texture slots defining the mapping and influence of textures
-World.zenith_color -> zenith_color: float Color at the zenith
-WorldLighting.adapt_to_speed -> adapt_to_speed: float Use the speed vector pass to reduce AO samples in fast moving pixels. Higher values result in more aggressive sample reduction. Requires Vec pass enabled (for Raytrace Adaptive QMC)
-WorldLighting.ao_blend_mode -> ao_blend_type: enum Defines how AO mixes with material shading
-WorldLighting.ao_factor -> ao_factor: float Factor for ambient occlusion blending
-WorldLighting.bias -> bias: float Bias (in radians) to prevent smoothed faces from showing banding (for Raytrace Constant Jittered)
-WorldLighting.correction -> correction: float Ad-hoc correction for over-occlusion due to the approximation (for Approximate)
-WorldLighting.distance -> distance: float Length of rays, defines how far away other faces give occlusion effect
-WorldLighting.environment_color -> environment_color: enum Defines where the color of the environment light comes from
-WorldLighting.environment_energy -> environment_energy: float Defines the strength of environment light
-WorldLighting.error_tolerance -> error_tolerance: float Low values are slower and higher quality (for Approximate)
-WorldLighting.falloff_strength -> falloff_strength: float Distance attenuation factor, the higher, the 'shorter' the shadows
-WorldLighting.gather_method -> gather_method: enum
-WorldLighting.indirect_bounces -> indirect_bounces: int Number of indirect diffuse light bounces to use for approximate ambient occlusion
-WorldLighting.indirect_factor -> indirect_factor: float Factor for how much surrounding objects contribute to light
-WorldLighting.passes -> passes: int Number of preprocessing passes to reduce overocclusion (for approximate ambient occlusion)
-WorldLighting.sample_method -> sample_method: enum Method for generating shadow samples (for Raytrace)
-WorldLighting.samples -> samples: int Amount of ray samples. Higher values give smoother results and longer rendering times
-WorldLighting.threshold -> threshold: float Samples below this threshold will be considered fully shadowed/unshadowed and skipped (for Raytrace Adaptive QMC)
-WorldMistSettings.depth -> depth: float The distance over which the mist effect fades in
-WorldMistSettings.falloff -> falloff: enum Type of transition used to fade mist
-WorldMistSettings.height -> height: float Control how much mist density decreases with height
-WorldMistSettings.intensity -> intensity: float Intensity of the mist effect
-WorldMistSettings.start -> start: float Starting distance of the mist, measured from the camera
-WorldStarsSettings.average_separation -> average_separation: float Average distance between any two stars
-WorldStarsSettings.color_randomization -> color_randomization: float Randomize star colors
-WorldStarsSettings.min_distance -> distance_min: float Minimum distance to the camera for stars
-WorldStarsSettings.size -> size: float Average screen dimension of stars
-WorldTextureSlot.blend_factor -> blend_factor: float Amount texture affects color progression of the background
-WorldTextureSlot.horizon_factor -> horizon_factor: float Amount texture affects color of the horizon
-WorldTextureSlot.object -> object: pointer Object to use for mapping with Object texture coordinates
-WorldTextureSlot.texture_coordinates -> texture_coordinates: enum Texture coordinates used to map the texture onto the background
-WorldTextureSlot.zenith_down_factor -> zenith_down_factor: float Amount texture affects color of the zenith below
-WorldTextureSlot.zenith_up_factor -> zenith_up_factor: float Amount texture affects color of the zenith above
+NOTE * CLASS.FROM -> TO: TYPE DESCRIPTION
++ * ActionGroup.channels -> channels: collection, "'(read-only) F-Curves in this group'"
++ * ActionGroup.custom_color -> custom_color: int "'Index of custom color set'"
++ * ActionGroup.expanded -> show_expanded: boolean "'Action Group is expanded'"
++ * ActionGroup.lock -> lock: boolean "'Action Group is locked'"
++ * ActionGroup.name -> name: string "'NO DESCRIPTION'"
++ * ActionGroup.select -> select: boolean "'Action Group is selected'"
++ * Actuator.expanded -> show_expanded: boolean "'Set actuator expanded in the user interface'"
++ * Actuator.name -> name: string "'NO DESCRIPTION'"
++ * Actuator.pinned -> pinned: boolean "'Display when not linked to a visible states controller'"
++ * Actuator.type -> type: enum "'NO DESCRIPTION'"
++ * Actuator|ActionActuator.action -> action: pointer "'NO DESCRIPTION'"
++ * Actuator|ActionActuator.blendin -> frame_blend_in: int "'Number of frames of motion blending'"
++ * Actuator|ActionActuator.continue_last_frame -> use_continue_last_frame: boolean "'Restore last frame when switching on/off, otherwise play from the start each time'"
++ * Actuator|ActionActuator.frame_end -> frame_end: int "'NO DESCRIPTION'"
++ * Actuator|ActionActuator.frame_property -> frame_property: string '"Assign the action\'s current frame number to this property"'
++ * Actuator|ActionActuator.frame_start -> frame_start: int "'NO DESCRIPTION'"
++ * Actuator|ActionActuator.mode -> play_mode: enum "'Action playback type'"
++ * Actuator|ActionActuator.priority -> priority: int "'Execution priority - lower numbers will override actions with higher numbers. With 2 or more actions at once, the overriding channels must be lower in the stack'"
++ * Actuator|ActionActuator.property -> property: string "'Use this property to define the Action position'"
++ * Actuator|ArmatureActuator.bone -> bone: string "'Bone on which the constraint is defined'"
++ * Actuator|ArmatureActuator.constraint -> constraint: string "'Name of the constraint you want to control'"
++ * Actuator|ArmatureActuator.mode -> mode: enum "'NO DESCRIPTION'"
++ * Actuator|ArmatureActuator.secondary_target -> secondary_target: pointer "'Set weight of this constraint'"
++ * Actuator|ArmatureActuator.target -> target: pointer "'Set this object as the target of the constraint'"
++ * Actuator|ArmatureActuator.weight -> weight: float "'Set weight of this constraint'"
++ * Actuator|CameraActuator.axis -> axis: enum "'Specify the axis the Camera will try to get behind'"
++ * Actuator|CameraActuator.height -> height: float "'NO DESCRIPTION'"
++ * Actuator|CameraActuator.max -> max: float "'NO DESCRIPTION'"
++ * Actuator|CameraActuator.min -> min: float "'NO DESCRIPTION'"
++ * Actuator|CameraActuator.object -> object: pointer "'Look at this Object'"
+Actuator|ConstraintActuator.damping -> damping: int "'Damping factor: time constant (in frame) of low pass filter'"
+Actuator|ConstraintActuator.damping_rotation -> damping_rotation: int "'Use a different damping for orientation'"
+Actuator|ConstraintActuator.detect_material -> use_material_detect: boolean "'Detect material instead of property'"
+Actuator|ConstraintActuator.direction -> direction: enum "'Set the direction of the ray'"
+Actuator|ConstraintActuator.direction_axis -> direction_axis: enum "'Select the axis to be aligned along the reference direction'"
+Actuator|ConstraintActuator.distance -> distance: float "'Set the maximum length of ray'"
+Actuator|ConstraintActuator.fh_damping -> fh_damping: float "'Damping factor of the Fh spring force'"
+Actuator|ConstraintActuator.fh_height -> fh_height: float "'Height of the Fh area'"
+Actuator|ConstraintActuator.fh_normal -> use_fh_normal: boolean "'Add a horizontal spring force on slopes'"
+Actuator|ConstraintActuator.fh_paralel_axis -> use_fh_paralel_axis: boolean "'Keep object axis parallel to normal'"
+Actuator|ConstraintActuator.force_distance -> use_force_distance: boolean "'Force distance of object to point of impact of ray'"
+Actuator|ConstraintActuator.limit -> limit: enum "'NO DESCRIPTION'"
+Actuator|ConstraintActuator.limit_max -> limit_max: float "'NO DESCRIPTION'"
+Actuator|ConstraintActuator.limit_min -> limit_min: float "'NO DESCRIPTION'"
+Actuator|ConstraintActuator.local -> use_local: boolean '"Set ray along object\'s axis or global axis"'
+Actuator|ConstraintActuator.material -> material: string "'Ray detects only Objects with this material'"
+Actuator|ConstraintActuator.max_angle -> angle_max: float "'Maximum angle (in degree) allowed with target direction. No correction is done if angle with target direction is between min and max'"
+Actuator|ConstraintActuator.max_rotation -> rotation_max: float "'Reference Direction'"
+Actuator|ConstraintActuator.min_angle -> angle_min: float "'Minimum angle (in degree) to maintain with target direction. No correction is done if angle with target direction is between min and max'"
+Actuator|ConstraintActuator.mode -> mode: enum "'The type of the constraint'"
+Actuator|ConstraintActuator.normal -> use_normal: boolean "'Set object axis along (local axis) or parallel (global axis) to the normal at hit position'"
+Actuator|ConstraintActuator.persistent -> use_persistent: boolean "'Persistent actuator: stays active even if ray does not reach target'"
+Actuator|ConstraintActuator.property -> property: string "'Ray detect only Objects with this property'"
+Actuator|ConstraintActuator.range -> range: float "'Set the maximum length of ray'"
+Actuator|ConstraintActuator.spring -> spring: float "'Spring force within the Fh area'"
+Actuator|ConstraintActuator.time -> time: int "'Maximum activation time in frame, 0 for unlimited'"
+Actuator|EditObjectActuator.angular_velocity -> angular_velocity: float "'Angular velocity upon creation'"
+Actuator|EditObjectActuator.dynamic_operation -> dynamic_operation: enum "'NO DESCRIPTION'"
+Actuator|EditObjectActuator.enable_3d_tracking -> use_3d_tracking: boolean "'Enable 3D tracking'"
+Actuator|EditObjectActuator.linear_velocity -> linear_velocity: float "'Velocity upon creation'"
+Actuator|EditObjectActuator.local_angular_velocity -> use_local_angular_velocity: boolean "'Apply the rotation locally'"
+Actuator|EditObjectActuator.local_linear_velocity -> use_local_linear_velocity: boolean "'Apply the transformation locally'"
+Actuator|EditObjectActuator.mass -> mass: float "'The mass of the object'"
+Actuator|EditObjectActuator.mesh -> mesh: pointer '"Replace the existing, when left blank \'Phys\' will remake the existing physics mesh"'
+Actuator|EditObjectActuator.mode -> mode: enum "'The mode of the actuator'"
+Actuator|EditObjectActuator.object -> object: pointer "'Add this Object and all its children (cant be on an visible layer)'"
+Actuator|EditObjectActuator.replace_display_mesh -> use_replace_display_mesh: boolean "'Replace the display mesh'"
+Actuator|EditObjectActuator.replace_physics_mesh -> use_replace_physics_mesh: boolean "'Replace the physics mesh (triangle bounds only - compound shapes not supported)'"
+Actuator|EditObjectActuator.time -> time: int "'Duration the new Object lives or the track takes'"
+Actuator|EditObjectActuator.track_object -> track_object: pointer "'Track to this Object'"
+Actuator|FcurveActuator.add -> use_add: boolean "'F-Curve is added to the current loc/rot/scale in global or local coordinate according to Local flag'"
+Actuator|FcurveActuator.child -> apply_to_children: boolean "'Update F-Curve on all children Objects as well'"
+Actuator|FcurveActuator.force -> use_force: boolean "'Apply F-Curve as a global or local force depending on the local option (dynamic objects only)'"
+Actuator|FcurveActuator.frame_end -> frame_end: int "'NO DESCRIPTION'"
+Actuator|FcurveActuator.frame_property -> frame_property: string '"Assign the action\'s current frame number to this property"'
+Actuator|FcurveActuator.frame_start -> frame_start: int "'NO DESCRIPTION'"
+Actuator|FcurveActuator.local -> use_local: boolean "'Let the F-Curve act in local coordinates, used in Force and Add mode'"
+Actuator|FcurveActuator.play_type -> play_type: enum "'Specify the way you want to play the animation'"
+Actuator|FcurveActuator.property -> property: string "'Use this property to define the F-Curve position'"
+Actuator|Filter2DActuator.enable_motion_blur -> use_motion_blur: boolean "'Enable/Disable Motion Blur'"
+Actuator|Filter2DActuator.filter_pass -> filter_pass: int "'Set filter order'"
+Actuator|Filter2DActuator.glsl_shader -> glsl_shader: pointer "'NO DESCRIPTION'"
+Actuator|Filter2DActuator.mode -> mode: enum "'NO DESCRIPTION'"
+Actuator|Filter2DActuator.motion_blur_factor -> motion_blur_factor: float "'Set motion blur factor'"
+Actuator|GameActuator.filename -> filename: string 'Load this blend file, use the "//" prefix for a path relative to the current blend file'
+Actuator|GameActuator.mode -> mode: enum "'NO DESCRIPTION'"
+Actuator|MessageActuator.body_message -> body_message: string "'Optional message body Text'"
+Actuator|MessageActuator.body_property -> body_property: string "'The message body will be set by the Property Value'"
+Actuator|MessageActuator.body_type -> body_type: enum "'Toggle message type: either Text or a PropertyName'"
+Actuator|MessageActuator.subject -> subject: string "'Optional message subject. This is what can be filtered on'"
+Actuator|MessageActuator.to_property -> to_property: string "'Optional send message to objects with this name only, or empty to broadcast'"
+Actuator|ObjectActuator.add_linear_velocity -> use_add_linear_velocity: boolean "'Toggles between ADD and SET linV'"
+Actuator|ObjectActuator.angular_velocity -> angular_velocity: float "'Sets the angular velocity'"
+Actuator|ObjectActuator.damping -> damping: int "'Number of frames to reach the target velocity'"
+Actuator|ObjectActuator.derivate_coefficient -> derivate_coefficient: float "'Not required, high values can cause instability'"
+Actuator|ObjectActuator.force -> force: float "'Sets the force'"
+Actuator|ObjectActuator.force_max_x -> force_max_x: float "'Set the upper limit for force'"
+Actuator|ObjectActuator.force_max_y -> force_max_y: float "'Set the upper limit for force'"
+Actuator|ObjectActuator.force_max_z -> force_max_z: float "'Set the upper limit for force'"
+Actuator|ObjectActuator.force_min_x -> force_min_x: float "'Set the lower limit for force'"
+Actuator|ObjectActuator.force_min_y -> force_min_y: float "'Set the lower limit for force'"
+Actuator|ObjectActuator.force_min_z -> force_min_z: float "'Set the lower limit for force'"
+Actuator|ObjectActuator.integral_coefficient -> integral_coefficient: float "'Low value (0.01) for slow response, high value (0.5) for fast response'"
+Actuator|ObjectActuator.linear_velocity -> linear_velocity: float "'Sets the linear velocity (in Servo mode it sets the target relative linear velocity, it will be achieved by automatic application of force. Null velocity is a valid target)'"
+Actuator|ObjectActuator.loc -> loc: float "'Sets the location'"
+Actuator|ObjectActuator.local_angular_velocity -> use_local_angular_velocity: boolean "'Angular velocity is defined in local coordinates'"
+Actuator|ObjectActuator.local_force -> use_local_force: boolean "'Force is defined in local coordinates'"
+Actuator|ObjectActuator.local_linear_velocity -> use_local_linear_velocity: boolean "'Velocity is defined in local coordinates'"
+Actuator|ObjectActuator.local_location -> use_local_location: boolean "'Location is defined in local coordinates'"
+Actuator|ObjectActuator.local_rotation -> use_local_rotation: boolean "'Rotation is defined in local coordinates'"
+Actuator|ObjectActuator.local_torque -> use_local_torque: boolean "'Torque is defined in local coordinates'"
+Actuator|ObjectActuator.mode -> mode: enum "'Specify the motion system'"
+Actuator|ObjectActuator.proportional_coefficient -> proportional_coefficient: float "'Typical value is 60x integral coefficient'"
+Actuator|ObjectActuator.reference_object -> reference_object: pointer "'Reference object for velocity calculation, leave empty for world reference'"
+Actuator|ObjectActuator.rot -> rot: float "'Sets the rotation'"
+Actuator|ObjectActuator.servo_limit_x -> use_servo_limit_x: boolean "'Set limit to force along the X axis'"
+Actuator|ObjectActuator.servo_limit_y -> use_servo_limit_y: boolean "'Set limit to force along the Y axis'"
+Actuator|ObjectActuator.servo_limit_z -> use_servo_limit_z: boolean "'Set limit to force along the Z axis'"
+Actuator|ObjectActuator.torque -> torque: float "'Sets the torque'"
+Actuator|ParentActuator.compound -> use_compound: boolean "'Add this object shape to the parent shape (only if the parent shape is already compound)'"
+Actuator|ParentActuator.ghost -> use_ghost: boolean "'Make this object ghost while parented (only if not compound)'"
+Actuator|ParentActuator.mode -> mode: enum "'NO DESCRIPTION'"
+Actuator|ParentActuator.object -> object: pointer "'Set this object as parent'"
+Actuator|PropertyActuator.mode -> mode: enum "'NO DESCRIPTION'"
+Actuator|PropertyActuator.object -> object: pointer "'Copy from this Object'"
+Actuator|PropertyActuator.object_property -> object_property: string "'Copy this property'"
+Actuator|PropertyActuator.property -> property: string "'The name of the property'"
+Actuator|PropertyActuator.value -> value: string 'The value to use, use "" around strings'
+Actuator|RandomActuator.always_true -> use_always_true: boolean "'Always false or always true'"
+Actuator|RandomActuator.chance -> chance: float "'Pick a number between 0 and 1. Success if you stay below this value'"
+Actuator|RandomActuator.distribution -> distribution: enum "'Choose the type of distribution'"
+Actuator|RandomActuator.float_max -> float_max: float "'Choose a number from a range. Upper boundary of the range'"
+Actuator|RandomActuator.float_mean -> float_mean: float "'A normal distribution. Mean of the distribution'"
+Actuator|RandomActuator.float_min -> float_min: float "'Choose a number from a range. Lower boundary of the range'"
+Actuator|RandomActuator.float_value -> float_value: float "'Always return this number'"
+Actuator|RandomActuator.half_life_time -> half_life_time: float "'Negative exponential dropoff'"
+Actuator|RandomActuator.int_max -> int_max: int "'Choose a number from a range. Upper boundary of the range'"
+Actuator|RandomActuator.int_mean -> int_mean: float "'Expected mean value of the distribution'"
+Actuator|RandomActuator.int_min -> int_min: int "'Choose a number from a range. Lower boundary of the range'"
+Actuator|RandomActuator.int_value -> int_value: int "'Always return this number'"
+Actuator|RandomActuator.property -> property: string "'Assign the random value to this property'"
+Actuator|RandomActuator.seed -> seed: int "'Initial seed of the random generator. Use Python for more freedom (choose 0 for not random)'"
+Actuator|RandomActuator.standard_derivation -> standard_derivation: float "'A normal distribution. Standard deviation of the distribution'"
+Actuator|SceneActuator.camera -> camera: pointer "'Set this Camera. Leave empty to refer to self object'"
+Actuator|SceneActuator.mode -> mode: enum "'NO DESCRIPTION'"
+Actuator|SceneActuator.scene -> scene: pointer "'Set the Scene to be added/removed/paused/resumed'"
+Actuator|ShapeActionActuator.action -> action: pointer "'NO DESCRIPTION'"
+Actuator|ShapeActionActuator.blendin -> blendin: int "'Number of frames of motion blending'"
+Actuator|ShapeActionActuator.continue_last_frame -> use_continue_last_frame: boolean "'Restore last frame when switching on/off, otherwise play from the start each time'"
+Actuator|ShapeActionActuator.frame_end -> frame_end: int "'NO DESCRIPTION'"
+Actuator|ShapeActionActuator.frame_property -> frame_property: string '"Assign the action\'s current frame number to this property"'
+Actuator|ShapeActionActuator.frame_start -> frame_start: int "'NO DESCRIPTION'"
+Actuator|ShapeActionActuator.mode -> mode: enum "'Action playback type'"
+Actuator|ShapeActionActuator.priority -> priority: int "'Execution priority - lower numbers will override actions with higher numbers. With 2 or more actions at once, the overriding channels must be lower in the stack'"
+Actuator|ShapeActionActuator.property -> property: string "'Use this property to define the Action position'"
+Actuator|SoundActuator.cone_inner_angle_3d -> cone_inner_angle_3d: float "'The angle of the inner cone'"
+Actuator|SoundActuator.cone_outer_angle_3d -> cone_outer_angle_3d: float "'The angle of the outer cone'"
+Actuator|SoundActuator.cone_outer_gain_3d -> cone_outer_gain_3d: float "'The gain outside the outer cone. The gain in the outer cone will be interpolated between this value and the normal gain in the inner cone'"
+Actuator|SoundActuator.enable_sound_3d -> use_3d_sound: boolean "'Enable/Disable 3D Sound'"
+Actuator|SoundActuator.max_distance_3d -> distance_3d_max: float "'The maximum distance at which you can hear the sound'"
+Actuator|SoundActuator.maximum_gain_3d -> gain_3d_max: float "'The maximum gain of the sound, no matter how near it is'"
+Actuator|SoundActuator.minimum_gain_3d -> gain_3d_min: float "'The minimum gain of the sound, no matter how far it is away'"
+Actuator|SoundActuator.mode -> mode: enum "'NO DESCRIPTION'"
+Actuator|SoundActuator.pitch -> pitch: float "'Sets the pitch of the sound'"
+Actuator|SoundActuator.reference_distance_3d -> reference_distance_3d: float "'The distance where the sound has a gain of 1.0'"
+Actuator|SoundActuator.rolloff_factor_3d -> rolloff_factor_3d: float "'The influence factor on volume depending on distance'"
+Actuator|SoundActuator.sound -> sound: pointer "'NO DESCRIPTION'"
+Actuator|SoundActuator.volume -> volume: float "'Sets the initial volume of the sound'"
+Actuator|StateActuator.operation -> operation: enum "'Select the bit operation on object state mask'"
+Actuator|StateActuator.state -> states: boolean "'NO DESCRIPTION'"
+Actuator|VisibilityActuator.children -> apply_to_children: boolean "'Set all the children of this object to the same visibility/occlusion recursively'"
+Actuator|VisibilityActuator.occlusion -> use_occlusion: boolean "'Set the object to occlude objects behind it. Initialized from the object type in physics button'"
+Actuator|VisibilityActuator.visible -> use_visible: boolean "'Set the objects visible. Initialized from the objects render restriction toggle (access in the outliner)'"
++ * Addon.module -> module: string "'Module name'"
++ * AnimData.action -> action: pointer "'Active Action for this datablock'"
++ * AnimData.action_blending -> action_blend_type: enum '"Method used for combining Active Action\'s result with result of NLA stack"'
++ * AnimData.action_extrapolation -> action_extrapolation: enum '"Action to take for gaps past the Active Action\'s range (when evaluating with NLA)"'
++ * AnimData.action_influence -> action_influence: float "'Amount the Active Action contributes to the result of the NLA stack'"
++ * AnimData.drivers -> drivers: collection, "'(read-only) The Drivers/Expressions for this datablock'"
++ * AnimData.nla_enabled -> use_nla: boolean "'NLA stack is evaluated when evaluating this block'"
++ * AnimData.nla_tracks -> nla_tracks: collection, "'(read-only) NLA Tracks (i.e. Animation Layers)'"
++ * AnimViz.motion_paths -> motion_path: pointer, "'(read-only) Motion Path settings for visualisation'"
++ * AnimViz.onion_skinning -> onion_skin_frames: pointer, "'(read-only) Onion Skinning (ghosting) settings for visualisation'"
++ * AnimVizMotionPaths.after_current -> frame_after: int '"Number of frames to show after the current frame (only for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizMotionPaths.bake_location -> bake_location: enum "'When calculating Bone Paths, use Head or Tips'"
++ * AnimVizMotionPaths.before_current -> frame_before: int '"Number of frames to show before the current frame (only for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizMotionPaths.frame_end -> frame_end: int '"End frame of range of paths to display/calculate (not for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizMotionPaths.frame_start -> frame_start: int '"Starting frame of range of paths to display/calculate (not for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizMotionPaths.frame_step -> frame_step: int '"Number of frames between paths shown (not for \'On Keyframes\' Onion-skinning method)"'
++ * AnimVizMotionPaths.highlight_keyframes -> show_keyframe_highlight: boolean "'Emphasize position of keyframes on Motion Paths'"
++ * AnimVizMotionPaths.search_all_action_keyframes -> show_keyframe_action_all: boolean "'For bone motion paths, search whole Action for keyframes instead of in group with matching name only (is slower)'"
++ * AnimVizMotionPaths.show_frame_numbers -> show_frame_numbers: boolean "'Show frame numbers on Motion Paths'"
++ * AnimVizMotionPaths.show_keyframe_numbers -> show_keyframe_numbers: boolean "'Show frame numbers of Keyframes on Motion Paths'"
++ * AnimVizMotionPaths.type -> type: enum "'Type of range to show for Motion Paths'"
++ * AnimVizOnionSkinning.after_current -> frame_after: int '"Number of frames to show after the current frame (only for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizOnionSkinning.before_current -> frame_before: int '"Number of frames to show before the current frame (only for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizOnionSkinning.frame_end -> frame_end: int '"End frame of range of Ghosts to display (not for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizOnionSkinning.frame_start -> frame_start: int '"Starting frame of range of Ghosts to display (not for \'Around Current Frame\' Onion-skinning method)"'
++ * AnimVizOnionSkinning.frame_step -> frame_step: int '"Number of frames between ghosts shown (not for \'On Keyframes\' Onion-skinning method)"'
++ * AnimVizOnionSkinning.only_selected -> show_only_selected: boolean "'For Pose-Mode drawing, only draw ghosts for selected bones'"
++ * AnimVizOnionSkinning.type -> type: enum "'Method used for determining what ghosts get drawn'"
+MAKE PROPERTY OF A COLLECTION * Area.active_space -> active_space: pointer, '(read-only) Space currently being displayed in this area'
++ * Area.regions -> regions: collection, "'(read-only) Regions this area is subdivided in'"
++ * Area.show_menus -> show_menus: boolean "'Show menus in the header'"
++ * Area.spaces -> spaces: collection, "'(read-only) Spaces contained in this area, the first space is active'"
++ * Area.type -> type: enum "'Space type'"
++ * ArmatureBones.active -> active: pointer "'Armatures active bone'"
++ * ArmatureEditBones.active -> active: pointer "'Armatures active edit bone'"
++ * BackgroundImage.image -> image: pointer "'Image displayed and edited in this space'"
++ * BackgroundImage.image_user -> image_user: pointer, "'(read-only) Parameters defining which layer, pass and frame of the image is displayed'"
++ * BackgroundImage.offset_x -> offset_x: float "'Offsets image horizontally from the world origin'"
++ * BackgroundImage.offset_y -> offset_y: float "'Offsets image vertically from the world origin'"
++ * BackgroundImage.show_expanded -> show_expanded: boolean "'Show the expanded in the user interface'"
++ * BackgroundImage.size -> size: float "'Scaling factor for the background image'"
++ * BackgroundImage.transparency -> transparency: float "'Amount to blend the image against the background color'"
++ * BackgroundImage.view_axis -> view_axis: enum "'The axis to display the image on'"
++ * BezierSplinePoint.co -> co: float "'Coordinates of the control point'"
++ * BezierSplinePoint.handle1 -> handle_left: float "'Coordinates of the first handle'"
++ * BezierSplinePoint.handle1_type -> handle_left_type: enum "'Handle types'"
++ * BezierSplinePoint.handle2 -> handle_right: float "'Coordinates of the second handle'"
++ * BezierSplinePoint.handle2_type -> handle_right_type: enum "'Handle types'"
++ * BezierSplinePoint.hide -> hide: boolean "'Visibility status'"
++ * BezierSplinePoint.radius -> radius: float, "'(read-only) Radius for bevelling'"
++ * BezierSplinePoint.select_control_point -> select_control_point: boolean "'Control point selection status'"
++ * BezierSplinePoint.select_left_handle -> select_left_handle: boolean "'Handle 1 selection status'"
++ * BezierSplinePoint.select_right_handle -> select_right_handle: boolean "'Handle 2 selection status'"
++ * BezierSplinePoint.tilt -> tilt: float "'Tilt in 3D View'"
++ * BezierSplinePoint.weight -> weight: float "'Softbody goal weight'"
++ * BlenderRNA.structs -> structs: collection, "'(read-only)'"
++ * BoidRule.in_air -> use_in_air: boolean "'Use rule when boid is flying'"
++ * BoidRule.name -> name: string "'Boid rule name'"
++ * BoidRule.on_land -> use_on_land: boolean "'Use rule when boid is on land'"
++ * BoidRule.type -> type: enum, "'(read-only)'"
++ * BoidRule|BoidRuleAverageSpeed.level -> level: float '"How much velocity\'s z-component is kept constant"'
++ * BoidRule|BoidRuleAverageSpeed.speed -> speed: float "'Percentage of maximum speed'"
++ * BoidRule|BoidRuleAverageSpeed.wander -> wander: float '"How fast velocity\'s direction is randomized"'
++ * BoidRule|BoidRuleAvoid.fear_factor -> fear_factor: float "'Avoid object if danger from it is above this threshold'"
++ * BoidRule|BoidRuleAvoid.object -> object: pointer "'Object to avoid'"
++ * BoidRule|BoidRuleAvoid.predict -> use_predict: boolean "'Predict target movement'"
++ * BoidRule|BoidRuleAvoidCollision.boids -> use_avoid: boolean "'Avoid collision with other boids'"
++ * BoidRule|BoidRuleAvoidCollision.deflectors -> use_avoid_collision: boolean "'Avoid collision with deflector objects'"
++ * BoidRule|BoidRuleAvoidCollision.look_ahead -> look_ahead: float "'Time to look ahead in seconds'"
++ * BoidRule|BoidRuleFight.distance -> distance: float "'Attack boids at max this distance'"
++ * BoidRule|BoidRuleFight.flee_distance -> flee_distance: float "'Flee to this distance'"
++ * BoidRule|BoidRuleFollowLeader.distance -> distance: float "'Distance behind leader to follow'"
++ * BoidRule|BoidRuleFollowLeader.line -> use_line: boolean "'Follow leader in a line'"
++ * BoidRule|BoidRuleFollowLeader.object -> object: pointer "'Follow this object instead of a boid'"
++ * BoidRule|BoidRuleFollowLeader.queue_size -> queue_count: int "'How many boids in a line'"
++ * BoidRule|BoidRuleGoal.object -> object: pointer "'Goal object'"
++ * BoidRule|BoidRuleGoal.predict -> use_predict: boolean "'Predict target movement'"
++ * BoidSettings.accuracy -> accuracy: float "'Accuracy of attack'"
++ * BoidSettings.active_boid_state -> active_boid_state: pointer, "'(read-only)'"
++ * BoidSettings.active_boid_state_index -> active_boid_state_index: int "'NO DESCRIPTION'"
++ * BoidSettings.aggression -> aggression: float "'Boid will fight this times stronger enemy'"
++ * BoidSettings.air_max_acc -> air_acc_max: float "'Maximum acceleration in air (relative to maximum speed)'"
++ * BoidSettings.air_max_ave -> air_ave_max: float "'Maximum angular velocity in air (relative to 180 degrees)'"
++ * BoidSettings.air_max_speed -> air_speed_max: float "'Maximum speed in air'"
++ * BoidSettings.air_min_speed -> air_speed_min: float "'Minimum speed in air (relative to maximum speed)'"
++ * BoidSettings.air_personal_space -> air_personal_space: float "'Radius of boids personal space in air (% of particle size)'"
++ * BoidSettings.allow_climb -> use_climb: boolean "'Allow boids to climb goal objects'"
++ * BoidSettings.allow_flight -> use_flight: boolean "'Allow boids to move in air'"
++ * BoidSettings.allow_land -> use_land: boolean "'Allow boids to move on land'"
++ * BoidSettings.banking -> bank: float "'Amount of rotation around velocity vector on turns'"
++ * BoidSettings.health -> health: float "'Initial boid health when born'"
++ * BoidSettings.height -> height: float "'Boid height relative to particle size'"
++ * BoidSettings.land_jump_speed -> land_jump_speed: float "'Maximum speed for jumping'"
++ * BoidSettings.land_max_acc -> land_acc_max: float "'Maximum acceleration on land (relative to maximum speed)'"
++ * BoidSettings.land_max_ave -> land_ave_max: float "'Maximum angular velocity on land (relative to 180 degrees)'"
++ * BoidSettings.land_max_speed -> land_speed_max: float "'Maximum speed on land'"
++ * BoidSettings.land_personal_space -> land_personal_space: float "'Radius of boids personal space on land (% of particle size)'"
++ * BoidSettings.land_stick_force -> land_stick_force: float "'How strong a force must be to start effecting a boid on land'"
++ * BoidSettings.landing_smoothness -> land_smooth: float "'How smoothly the boids land'"
++ * BoidSettings.range -> range: float "'The maximum distance from which a boid can attack'"
++ * BoidSettings.states -> states: collection, "'(read-only)'"
++ * BoidSettings.strength -> strength: float "'Maximum caused damage on attack per second'"
++ * BoidState.active_boid_rule -> active_boid_rule: pointer, "'(read-only)'"
++ * BoidState.active_boid_rule_index -> active_boid_rule_index: int "'NO DESCRIPTION'"
++ * BoidState.falloff -> falloff: float "'NO DESCRIPTION'"
++ * BoidState.name -> name: string "'Boid state name'"
++ * BoidState.rule_fuzziness -> rule_fuzzy: float "'NO DESCRIPTION'"
++ * BoidState.rules -> rules: collection, "'(read-only)'"
++ * BoidState.ruleset_type -> ruleset_type: enum "'How the rules in the list are evaluated'"
++ * BoidState.volume -> volume: float "'NO DESCRIPTION'"
++ * Bone.bbone_in -> bbone_in: float "'Length of first Bezier Handle (for B-Bones only)'"
++ * Bone.bbone_out -> bbone_out: float "'Length of second Bezier Handle (for B-Bones only)'"
++ * Bone.bbone_segments -> bbone_segments: int "'Number of subdivisions of bone (for B-Bones only)'"
++ * Bone.children -> children: collection, "'(read-only) Bones which are children of this bone'"
++ * Bone.connected -> use_connect: boolean, '"(read-only) When bone has a parent, bone\'s head is struck to the parent\'s tail"'
++ * Bone.cyclic_offset -> use_cyclic_offset: boolean '"When bone doesn\'t have a parent, it receives cyclic offset effects"'
++ * Bone.deform -> use_deform: boolean "'Bone does not deform any geometry'"
++ * Bone.draw_wire -> show_wire: boolean "'Bone is always drawn as Wireframe regardless of viewport draw mode. Useful for non-obstructive custom bone shapes'"
++ * Bone.envelope_distance -> envelope_distance: float "'Bone deformation distance (for Envelope deform only)'"
++ * Bone.envelope_weight -> envelope_weight: float "'Bone deformation weight (for Envelope deform only)'"
++ * Bone.head -> head: float "'Location of head end of the bone relative to its parent'"
++ * Bone.head_local -> head_local: float "'Location of head end of the bone relative to armature'"
++ * Bone.head_radius -> head_radius: float "'Radius of head of bone (for Envelope deform only)'"
++ * Bone.hide -> hide: boolean "'Bone is not visible when it is not in Edit Mode (i.e. in Object or Pose Modes)'"
++ * Bone.hide_select -> hide_select: boolean "'Bone is able to be selected'"
++ * Bone.hinge -> use_hinge: boolean "'Bone inherits rotation or scale from parent bone'"
++ * Bone.inherit_scale -> use_inherit_scale: boolean "'Bone inherits scaling from parent bone'"
++ * Bone.layer -> layers: boolean "'Layers bone exists in'"
++ * Bone.local_location -> use_local_location: boolean "'Bone location is set in local space'"
++ * Bone.matrix -> matrix: float "'3x3 bone matrix'"
++ * Bone.matrix_local -> matrix_local: float "'4x4 bone matrix relative to armature'"
++ * Bone.multiply_vertexgroup_with_envelope -> use_envelope_multiply: boolean "'When deforming bone, multiply effects of Vertex Group weights with Envelope influence'"
++ * Bone.name -> name: string "'NO DESCRIPTION'"
++ * Bone.parent -> parent: pointer, "'(read-only) Parent bone (in same Armature)'"
++ * Bone.select -> select: boolean "'NO DESCRIPTION'"
++ * Bone.tail -> tail: float "'Location of tail end of the bone'"
++ * Bone.tail_local -> tail_local: float "'Location of tail end of the bone relative to armature'"
++ * Bone.tail_radius -> tail_radius: float "'Radius of tail of bone (for Envelope deform only)'"
++ * BoneGroup.color_set -> color_set: enum "'Custom color set to use'"
++ * BoneGroup.colors -> colors: pointer, '"(read-only) Copy of the colors associated with the group\'s color set"'
++ * BoneGroup.name -> name: string "'NO DESCRIPTION'"
++ * ClothCollisionSettings.collision_quality -> collision_quality: int "'How many collision iterations should be done. (higher is better quality but slower)'"
++ * ClothCollisionSettings.enable_collision -> use_collision: boolean "'Enable collisions with other objects'"
++ * ClothCollisionSettings.enable_self_collision -> use_self_collision: boolean "'Enable self collisions'"
++ * ClothCollisionSettings.friction -> friction: float "'Friction force if a collision happened. (higher = less movement)'"
++ * ClothCollisionSettings.group -> group: pointer "'Limit colliders to this Group'"
++ * ClothCollisionSettings.min_distance -> distance_min: float "'Minimum distance between collision objects before collision response takes in'"
++ * ClothCollisionSettings.self_collision_quality -> self_collision_quality: int "'How many self collision iterations should be done. (higher is better quality but slower)'"
++ * ClothCollisionSettings.self_friction -> self_friction: float "'Friction/damping with self contact'"
++ * ClothCollisionSettings.self_min_distance -> self_distance_min: float "'0.5 means no distance at all, 1.0 is maximum distance'"
++ * ClothSettings.air_damping -> air_damping: float "'Air has normally some thickness which slows falling things down'"
++ * ClothSettings.bending_stiffness -> bending_stiffness: float "'Wrinkle coefficient. (higher = less smaller but more big wrinkles)'"
++ * ClothSettings.bending_stiffness_max -> bending_stiffness_max: float "'Maximum bending stiffness value'"
++ * ClothSettings.bending_vertex_group -> bending_vertex_group: string "'Vertex group for fine control over bending stiffness'"
++ * ClothSettings.collider_friction -> collider_friction: float "'NO DESCRIPTION'"
++ * ClothSettings.effector_weights -> effector_weights: pointer, "'(read-only)'"
++ * ClothSettings.goal_default -> goal_default: float "'Default Goal (vertex target position) value, when no Vertex Group used'"
++ * ClothSettings.goal_friction -> goal_friction: float "'Goal (vertex target position) friction'"
++ * ClothSettings.goal_max -> goal_max: float "'Goal maximum, vertex group weights are scaled to match this range'"
++ * ClothSettings.goal_min -> goal_min: float "'Goal minimum, vertex group weights are scaled to match this range'"
++ * ClothSettings.goal_spring -> goal_spring: float "'Goal (vertex target position) spring stiffness'"
++ * ClothSettings.gravity -> gravity: float "'Gravity or external force vector'"
++ * ClothSettings.internal_friction -> internal_friction: float "'NO DESCRIPTION'"
++ * ClothSettings.mass -> mass: float "'Mass of cloth material'"
++ * ClothSettings.mass_vertex_group -> mass_vertex_group: string "'Vertex Group for pinning of vertices'"
++ * ClothSettings.pin_cloth -> use_pin_cloth: boolean "'Enable pinning of cloth vertices to other objects/positions'"
++ * ClothSettings.pin_stiffness -> pin_stiffness: float "'Pin (vertex target position) spring stiffness'"
++ * ClothSettings.pre_roll -> pre_roll: int "'Simulation starts on this frame'"
++ * ClothSettings.quality -> quality: int "'Quality of the simulation in steps per frame. (higher is better quality but slower)'"
++ * ClothSettings.rest_shape_key -> rest_shape_key: pointer "'Shape key to use the rest spring lengths from'"
++ * ClothSettings.spring_damping -> spring_damping: float "'Damping of cloth velocity. (higher = more smooth, less jiggling)'"
++ * ClothSettings.stiffness_scaling -> use_stiffness_scale: boolean "'If enabled, stiffness can be scaled along a weight painted vertex group'"
++ * ClothSettings.structural_stiffness -> structural_stiffness: float "'Overall stiffness of structure'"
++ * ClothSettings.structural_stiffness_max -> structural_stiffness_max: float "'Maximum structural stiffness value'"
++ * ClothSettings.structural_stiffness_vertex_group -> structural_stiffness_vertex_group: string "'Vertex group for fine control over structural stiffness'"
++ * CollisionSettings.absorption -> absorption: float "'How much of effector force gets lost during collision with this object (in percent)'"
++ * CollisionSettings.damping -> damping: float "'Amount of damping during collision'"
++ * CollisionSettings.damping_factor -> damping_factor: float "'Amount of damping during particle collision'"
++ * CollisionSettings.enabled -> use: boolean "'Enable this objects as a collider for physics systems'"
++ * CollisionSettings.friction_factor -> friction_factor: float "'Amount of friction during particle collision'"
++ * CollisionSettings.inner_thickness -> thickness_inner: float "'Inner face thickness'"
++ * CollisionSettings.kill_particles -> use_particle_kill: boolean "'Kill colliding particles'"
++ * CollisionSettings.outer_thickness -> thickness_outer: float "'Outer face thickness'"
++ * CollisionSettings.permeability -> permeability: float "'Chance that the particle will pass through the mesh'"
++ * CollisionSettings.random_damping -> random_damping: float "'Random variation of damping'"
++ * CollisionSettings.random_friction -> random_friction: float "'Random variation of friction'"
++ * CollisionSettings.stickness -> stickness: float "'Amount of stickness to surface collision'"
++ * ColorRamp.elements -> elements: collection, "'(read-only)'"
++ * ColorRamp.interpolation -> interpolation: enum "'NO DESCRIPTION'"
++ * ColorRamp.total -> count: int, "'(read-only) Total number of elements'"
++ * ColorRampElement.color -> color: float "'NO DESCRIPTION'"
++ * ColorRampElement.position -> position: float "'NO DESCRIPTION'"
+ConsoleLine.current_character -> current_character: int "'NO DESCRIPTION'"
+ConsoleLine.line -> line: string "'Text in the line'"
+Constraint.active -> active: boolean "'Constraint is the one being edited'"
+Constraint.disabled -> is_valid: boolean, "'(read-only) Constraint has invalid settings and will not be evaluated'"
+Constraint.enabled -> enabled: boolean "'Enable/Disable Constraint'"
+Constraint.expanded -> show_expanded: boolean '"Constraint\'s panel is expanded in UI"'
+Constraint.influence -> influence: float "'Amount of influence constraint will have on the final solution'"
+Constraint.lin_error -> lin_error: float, "'(read-only) Amount of residual error in Blender space unit for constraints that work on position'"
+Constraint.name -> name: string "'Constraint name'"
+Constraint.owner_space -> owner_space: enum "'Space that owner is evaluated in'"
+Constraint.proxy_local -> is_proxy_local: boolean "'Constraint was added in this proxy instance (i.e. did not belong to source Armature)'"
+Constraint.rot_error -> rot_error: float, "'(read-only) Amount of residual error in radiant for constraints that work on orientation'"
+Constraint.target_space -> target_space: enum "'Space that target is evaluated in'"
+Constraint.type -> type: enum, "'(read-only)'"
+ConstraintTarget.subtarget -> subtarget: string "'NO DESCRIPTION'"
+ConstraintTarget.target -> target: pointer "'Target Object'"
++ * Constraint|ActionConstraint.action -> action: pointer "'NO DESCRIPTION'"
++ * Constraint|ActionConstraint.frame_end -> frame_end: int "'Last frame of the Action to use'"
++ * Constraint|ActionConstraint.frame_start -> frame_start: int "'First frame of the Action to use'"
++ * Constraint|ActionConstraint.maximum -> max: float "'Maximum value for target channel range'"
++ * Constraint|ActionConstraint.minimum -> min: float "'Minimum value for target channel range'"
++ * Constraint|ActionConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
++ * Constraint|ActionConstraint.target -> target: pointer "'Target Object'"
++ * Constraint|ActionConstraint.transform_channel -> transform_channel: enum "'Transformation channel from the target that is used to key the Action'"
++ * Constraint|ChildOfConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
++ * Constraint|ChildOfConstraint.target -> target: pointer "'Target Object'"
++ * Constraint|ChildOfConstraint.use_location_x -> use_location_x: boolean "'Use X Location of Parent'"
++ * Constraint|ChildOfConstraint.use_location_y -> use_location_y: boolean "'Use Y Location of Parent'"
++ * Constraint|ChildOfConstraint.use_location_z -> use_location_z: boolean "'Use Z Location of Parent'"
++ * Constraint|ChildOfConstraint.use_rotation_x -> use_rotation_x: boolean "'Use X Rotation of Parent'"
++ * Constraint|ChildOfConstraint.use_rotation_y -> use_rotation_y: boolean "'Use Y Rotation of Parent'"
++ * Constraint|ChildOfConstraint.use_rotation_z -> use_rotation_z: boolean "'Use Z Rotation of Parent'"
++ * Constraint|ChildOfConstraint.use_scale_x -> use_scale_x: boolean "'Use X Scale of Parent'"
++ * Constraint|ChildOfConstraint.use_scale_y -> use_scale_y: boolean "'Use Y Scale of Parent'"
++ * Constraint|ChildOfConstraint.use_scale_z -> use_scale_z: boolean "'Use Z Scale of Parent'"
++ * Constraint|ClampToConstraint.cyclic -> use_cyclic: boolean "'Treat curve as cyclic curve (no clamping to curve bounding box'"
++ * Constraint|ClampToConstraint.main_axis -> main_axis: enum "'Main axis of movement'"
++ * Constraint|ClampToConstraint.target -> target: pointer "'Target Object'"
+Constraint|CopyLocationConstraint.head_tail -> head_tail: float "'Target along length of bone: Head=0, Tail=1'"
+Constraint|CopyLocationConstraint.invert_x -> invert_x: boolean "'Invert the X location'"
+Constraint|CopyLocationConstraint.invert_y -> invert_y: boolean "'Invert the Y location'"
+Constraint|CopyLocationConstraint.invert_z -> invert_z: boolean "'Invert the Z location'"
+Constraint|CopyLocationConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|CopyLocationConstraint.target -> target: pointer "'Target Object'"
+Constraint|CopyLocationConstraint.use_offset -> use_offset: boolean "'Add original location into copied location'"
+Constraint|CopyLocationConstraint.use_x -> use_x: boolean '"Copy the target\'s X location"'
+Constraint|CopyLocationConstraint.use_y -> use_y: boolean '"Copy the target\'s Y location"'
+Constraint|CopyLocationConstraint.use_z -> use_z: boolean '"Copy the target\'s Z location"'
+Constraint|CopyRotationConstraint.invert_x -> invert_x: boolean "'Invert the X rotation'"
+Constraint|CopyRotationConstraint.invert_y -> invert_y: boolean "'Invert the Y rotation'"
+Constraint|CopyRotationConstraint.invert_z -> invert_z: boolean "'Invert the Z rotation'"
+Constraint|CopyRotationConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|CopyRotationConstraint.target -> target: pointer "'Target Object'"
+Constraint|CopyRotationConstraint.use_offset -> use_offset: boolean "'Add original rotation into copied rotation'"
+Constraint|CopyRotationConstraint.use_x -> use_x: boolean '"Copy the target\'s X rotation"'
+Constraint|CopyRotationConstraint.use_y -> use_y: boolean '"Copy the target\'s Y rotation"'
+Constraint|CopyRotationConstraint.use_z -> use_z: boolean '"Copy the target\'s Z rotation"'
+Constraint|CopyScaleConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|CopyScaleConstraint.target -> target: pointer "'Target Object'"
+Constraint|CopyScaleConstraint.use_offset -> use_offset: boolean "'Add original scale into copied scale'"
+Constraint|CopyScaleConstraint.use_x -> use_x: boolean '"Copy the target\'s X scale"'
+Constraint|CopyScaleConstraint.use_y -> use_y: boolean '"Copy the target\'s Y scale"'
+Constraint|CopyScaleConstraint.use_z -> use_z: boolean '"Copy the target\'s Z scale"'
+Constraint|CopyTransformsConstraint.head_tail -> head_tail: float "'Target along length of bone: Head=0, Tail=1'"
+Constraint|CopyTransformsConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|CopyTransformsConstraint.target -> target: pointer "'Target Object'"
+Constraint|DampedTrackConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|DampedTrackConstraint.target -> target: pointer "'Target Object'"
+Constraint|DampedTrackConstraint.track -> track: enum "'Axis that points to the target object'"
+Constraint|FloorConstraint.floor_location -> floor_location: enum "'Location of target that object will not pass through'"
+Constraint|FloorConstraint.offset -> offset: float "'Offset of floor from object origin'"
+Constraint|FloorConstraint.sticky -> use_sticky: boolean "'Immobilize object while constrained'"
+Constraint|FloorConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|FloorConstraint.target -> target: pointer "'Target Object'"
+Constraint|FloorConstraint.use_rotation -> use_rotation: boolean '"Use the target\'s rotation to determine floor"'
+Constraint|FollowPathConstraint.forward -> forward: enum "'Axis that points forward along the path'"
+Constraint|FollowPathConstraint.offset -> offset: int "'Offset from the position corresponding to the time frame'"
+Constraint|FollowPathConstraint.offset_factor -> offset_factor: float "'Percentage value defining target position along length of bone'"
+Constraint|FollowPathConstraint.target -> target: pointer "'Target Object'"
+Constraint|FollowPathConstraint.up -> up: enum "'Axis that points upward'"
+Constraint|FollowPathConstraint.use_curve_follow -> use_curve_follow: boolean "'Object will follow the heading and banking of the curve'"
+Constraint|FollowPathConstraint.use_curve_radius -> use_curve_radius: boolean "'Objects scale by the curve radius'"
+Constraint|FollowPathConstraint.use_fixed_position -> use_fixed_location: boolean "'Object will stay locked to a single point somewhere along the length of the curve regardless of time'"
+Constraint|KinematicConstraint.axis_reference -> axis_reference: enum "'Constraint axis Lock options relative to Bone or Target reference'"
+Constraint|KinematicConstraint.chain_length -> chain_length: int "'How many bones are included in the IK effect - 0 uses all bones'"
+Constraint|KinematicConstraint.distance -> distance: float "'Radius of limiting sphere'"
+Constraint|KinematicConstraint.ik_type -> ik_type: enum "'NO DESCRIPTION'"
+Constraint|KinematicConstraint.iterations -> iterations: int "'Maximum number of solving iterations'"
+Constraint|KinematicConstraint.limit_mode -> limit_mode: enum "'Distances in relation to sphere of influence to allow'"
+Constraint|KinematicConstraint.orient_weight -> orient_weight: float "'For Tree-IK: Weight of orientation control for this target'"
+Constraint|KinematicConstraint.pole_angle -> pole_angle: float "'Pole rotation offset'"
+Constraint|KinematicConstraint.pole_subtarget -> pole_subtarget: string "'NO DESCRIPTION'"
+Constraint|KinematicConstraint.pole_target -> pole_target: pointer "'Object for pole rotation'"
+Constraint|KinematicConstraint.pos_lock_x -> lock_location_x: boolean "'Constraint position along X axis'"
+Constraint|KinematicConstraint.pos_lock_y -> lock_location_y: boolean "'Constraint position along Y axis'"
+Constraint|KinematicConstraint.pos_lock_z -> lock_location_z: boolean "'Constraint position along Z axis'"
+Constraint|KinematicConstraint.rot_lock_x -> lock_rotation_x: boolean "'Constraint rotation along X axis'"
+Constraint|KinematicConstraint.rot_lock_y -> lock_rotation_y: boolean "'Constraint rotation along Y axis'"
+Constraint|KinematicConstraint.rot_lock_z -> lock_rotation_z: boolean "'Constraint rotation along Z axis'"
+Constraint|KinematicConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|KinematicConstraint.target -> target: pointer "'Target Object'"
+Constraint|KinematicConstraint.use_position -> use_location: boolean "'Chain follows position of target'"
+Constraint|KinematicConstraint.use_rotation -> use_rotation: boolean "'Chain follows rotation of target'"
+Constraint|KinematicConstraint.use_stretch -> use_stretch: boolean "'Enable IK Stretching'"
+Constraint|KinematicConstraint.use_tail -> use_tail: boolean '"Include bone\'s tail as last element in chain"'
+Constraint|KinematicConstraint.use_target -> use_target: boolean "'Disable for targetless IK'"
+Constraint|KinematicConstraint.weight -> weight: float "'For Tree-IK: Weight of position control for this target'"
+Constraint|LimitDistanceConstraint.distance -> distance: float "'Radius of limiting sphere'"
+Constraint|LimitDistanceConstraint.limit_mode -> limit_mode: enum "'Distances in relation to sphere of influence to allow'"
+Constraint|LimitDistanceConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|LimitDistanceConstraint.target -> target: pointer "'Target Object'"
+Constraint|LimitLocationConstraint.limit_transform -> limit_transform: boolean "'Transforms are affected by this constraint as well'"
+Constraint|LimitLocationConstraint.maximum_x -> max_x: float "'Highest X value to allow'"
+Constraint|LimitLocationConstraint.maximum_y -> max_y: float "'Highest Y value to allow'"
+Constraint|LimitLocationConstraint.maximum_z -> max_z: float "'Highest Z value to allow'"
+Constraint|LimitLocationConstraint.minimum_x -> min_x: float "'Lowest X value to allow'"
+Constraint|LimitLocationConstraint.minimum_y -> min_y: float "'Lowest Y value to allow'"
+Constraint|LimitLocationConstraint.minimum_z -> min_z: float "'Lowest Z value to allow'"
+Constraint|LimitLocationConstraint.use_maximum_x -> use_max_x: boolean "'Use the maximum X value'"
+Constraint|LimitLocationConstraint.use_maximum_y -> use_max_y: boolean "'Use the maximum Y value'"
+Constraint|LimitLocationConstraint.use_maximum_z -> use_max_z: boolean "'Use the maximum Z value'"
+Constraint|LimitLocationConstraint.use_minimum_x -> use_min_x: boolean "'Use the minimum X value'"
+Constraint|LimitLocationConstraint.use_minimum_y -> use_min_y: boolean "'Use the minimum Y value'"
+Constraint|LimitLocationConstraint.use_minimum_z -> use_min_z: boolean "'Use the minimum Z value'"
+Constraint|LimitRotationConstraint.limit_transform -> limit_transform: boolean "'Transforms are affected by this constraint as well'"
+Constraint|LimitRotationConstraint.maximum_x -> max_x: float "'Highest X value to allow'"
+Constraint|LimitRotationConstraint.maximum_y -> max_y: float "'Highest Y value to allow'"
+Constraint|LimitRotationConstraint.maximum_z -> max_z: float "'Highest Z value to allow'"
+Constraint|LimitRotationConstraint.minimum_x -> min_x: float "'Lowest X value to allow'"
+Constraint|LimitRotationConstraint.minimum_y -> min_y: float "'Lowest Y value to allow'"
+Constraint|LimitRotationConstraint.minimum_z -> min_z: float "'Lowest Z value to allow'"
+Constraint|LimitRotationConstraint.use_limit_x -> use_limit_x: boolean "'Use the minimum X value'"
+Constraint|LimitRotationConstraint.use_limit_y -> use_limit_y: boolean "'Use the minimum Y value'"
+Constraint|LimitRotationConstraint.use_limit_z -> use_limit_z: boolean "'Use the minimum Z value'"
+Constraint|LimitScaleConstraint.limit_transform -> limit_transform: boolean "'Transforms are affected by this constraint as well'"
+Constraint|LimitScaleConstraint.maximum_x -> max_x: float "'Highest X value to allow'"
+Constraint|LimitScaleConstraint.maximum_y -> max_y: float "'Highest Y value to allow'"
+Constraint|LimitScaleConstraint.maximum_z -> max_z: float "'Highest Z value to allow'"
+Constraint|LimitScaleConstraint.minimum_x -> min_x: float "'Lowest X value to allow'"
+Constraint|LimitScaleConstraint.minimum_y -> min_y: float "'Lowest Y value to allow'"
+Constraint|LimitScaleConstraint.minimum_z -> min_z: float "'Lowest Z value to allow'"
+Constraint|LimitScaleConstraint.use_maximum_x -> use_max_x: boolean "'Use the maximum X value'"
+Constraint|LimitScaleConstraint.use_maximum_y -> use_max_y: boolean "'Use the maximum Y value'"
+Constraint|LimitScaleConstraint.use_maximum_z -> use_max_z: boolean "'Use the maximum Z value'"
+Constraint|LimitScaleConstraint.use_minimum_x -> use_min_x: boolean "'Use the minimum X value'"
+Constraint|LimitScaleConstraint.use_minimum_y -> use_min_y: boolean "'Use the minimum Y value'"
+Constraint|LimitScaleConstraint.use_minimum_z -> use_min_z: boolean "'Use the minimum Z value'"
+Constraint|LockedTrackConstraint.lock -> lock: enum "'Axis that points upward'"
+Constraint|LockedTrackConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|LockedTrackConstraint.target -> target: pointer "'Target Object'"
+Constraint|LockedTrackConstraint.track -> track: enum "'Axis that points to the target object'"
+Constraint|MaintainVolumeConstraint.axis -> axis: enum "'The free scaling axis of the object'"
+Constraint|MaintainVolumeConstraint.volume -> volume: float "'Volume of the bone at rest'"
+Constraint|PivotConstraint.enabled_rotation_range -> enabled_rotation_range: enum "'Rotation range on which pivoting should occur'"
+Constraint|PivotConstraint.head_tail -> head_tail: float "'Target along length of bone: Head=0, Tail=1'"
+Constraint|PivotConstraint.offset -> offset: float '"Offset of pivot from target (when set), or from owner\'s location (when Fixed Position is off), or the absolute pivot point"'
+Constraint|PivotConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|PivotConstraint.target -> target: pointer "'Target Object, defining the position of the pivot when defined'"
+Constraint|PivotConstraint.use_relative_position -> use_relative_location: boolean "'Offset will be an absolute point in space instead of relative to the target'"
+Constraint|PythonConstraint.number_of_targets -> number_of_targets: int "'Usually only 1-3 are needed'"
+Constraint|PythonConstraint.script_error -> has_script_error: boolean, "'(read-only) The linked Python script has thrown an error'"
+Constraint|PythonConstraint.targets -> targets: collection, "'(read-only) Target Objects'"
+Constraint|PythonConstraint.text -> text: pointer "'The text object that contains the Python script'"
+Constraint|PythonConstraint.use_targets -> use_targets: boolean "'Use the targets indicated in the constraint panel'"
+Constraint|RigidBodyJointConstraint.axis_x -> axis_x: float "'Rotate pivot on X axis in degrees'"
+Constraint|RigidBodyJointConstraint.axis_y -> axis_y: float "'Rotate pivot on Y axis in degrees'"
+Constraint|RigidBodyJointConstraint.axis_z -> axis_z: float "'Rotate pivot on Z axis in degrees'"
+Constraint|RigidBodyJointConstraint.child -> child: pointer "'Child object'"
+NEGATE * Constraint|RigidBodyJointConstraint.disable_linked_collision -> use_linked_collision: boolean "'Disable collision between linked bodies'"
+Constraint|RigidBodyJointConstraint.draw_pivot -> show_pivot: boolean "'Display the pivot point and rotation in 3D view'"
+Constraint|RigidBodyJointConstraint.pivot_type -> pivot_type: enum "'NO DESCRIPTION'"
+Constraint|RigidBodyJointConstraint.pivot_x -> pivot_x: float "'Offset pivot on X'"
+Constraint|RigidBodyJointConstraint.pivot_y -> pivot_y: float "'Offset pivot on Y'"
+Constraint|RigidBodyJointConstraint.pivot_z -> pivot_z: float "'Offset pivot on Z'"
+Constraint|RigidBodyJointConstraint.target -> target: pointer "'Target Object'"
+Constraint|ShrinkwrapConstraint.distance -> distance: float "'Distance to Target'"
+Constraint|ShrinkwrapConstraint.shrinkwrap_type -> shrinkwrap_type: enum "'Selects type of shrinkwrap algorithm for target position'"
+Constraint|ShrinkwrapConstraint.target -> target: pointer "'Target Object'"
+Constraint|ShrinkwrapConstraint.use_x -> use_x: boolean "'Projection over X Axis'"
+Constraint|ShrinkwrapConstraint.use_y -> use_y: boolean "'Projection over Y Axis'"
+Constraint|ShrinkwrapConstraint.use_z -> use_z: boolean "'Projection over Z Axis'"
+Constraint|SplineIKConstraint.chain_length -> chain_length: int "'How many bones are included in the chain'"
+Constraint|SplineIKConstraint.chain_offset -> use_chain_offset: boolean "'Offset the entire chain relative to the root joint'"
+Constraint|SplineIKConstraint.even_divisions -> use_even_divisions: boolean "'Ignore the relative lengths of the bones when fitting to the curve'"
+Constraint|SplineIKConstraint.joint_bindings -> joint_bindings: float "'(EXPERIENCED USERS ONLY) The relative positions of the joints along the chain as percentages'"
+Constraint|SplineIKConstraint.target -> target: pointer "'Curve that controls this relationship'"
+Constraint|SplineIKConstraint.use_curve_radius -> use_curve_radius: boolean "'Average radius of the endpoints is used to tweak the X and Z Scaling of the bones, on top of XZ Scale mode'"
+Constraint|SplineIKConstraint.xz_scaling_mode -> xz_scale_mode: enum "'Method used for determining the scaling of the X and Z axes of the bones'"
+Constraint|SplineIKConstraint.y_stretch -> use_y_stretch: boolean "'Stretch the Y axis of the bones to fit the curve'"
+Constraint|StretchToConstraint.bulge -> bulge: float "'Factor between volume variation and stretching'"
+Constraint|StretchToConstraint.head_tail -> head_tail: float "'Target along length of bone: Head=0, Tail=1'"
+Constraint|StretchToConstraint.keep_axis -> keep_axis: enum "'Axis to maintain during stretch'"
+Constraint|StretchToConstraint.original_length -> original_length: float "'Length at rest position'"
+Constraint|StretchToConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|StretchToConstraint.target -> target: pointer "'Target Object'"
+Constraint|StretchToConstraint.volume -> volume: enum '"Maintain the object\'s volume as it stretches"'
+Constraint|TrackToConstraint.head_tail -> head_tail: float "'Target along length of bone: Head=0, Tail=1'"
+Constraint|TrackToConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|TrackToConstraint.target -> target: pointer "'Target Object'"
+Constraint|TrackToConstraint.target_z -> use_target_z: boolean '"Target\'s Z axis, not World Z axis, will constraint the Up direction"'
+Constraint|TrackToConstraint.track -> track: enum "'Axis that points to the target object'"
+Constraint|TrackToConstraint.up -> up: enum "'Axis that points upward'"
+Constraint|TransformConstraint.extrapolate_motion -> use_motion_extrapolate: boolean "'Extrapolate ranges'"
+Constraint|TransformConstraint.from_max_x -> from_max_x: float "'Top range of X axis source motion'"
+Constraint|TransformConstraint.from_max_y -> from_max_y: float "'Top range of Y axis source motion'"
+Constraint|TransformConstraint.from_max_z -> from_max_z: float "'Top range of Z axis source motion'"
+Constraint|TransformConstraint.from_min_x -> from_min_x: float "'Bottom range of X axis source motion'"
+Constraint|TransformConstraint.from_min_y -> from_min_y: float "'Bottom range of Y axis source motion'"
+Constraint|TransformConstraint.from_min_z -> from_min_z: float "'Bottom range of Z axis source motion'"
+Constraint|TransformConstraint.map_from -> map_from: enum "'The transformation type to use from the target'"
+Constraint|TransformConstraint.map_to -> map_to: enum "'The transformation type to affect of the constrained object'"
+Constraint|TransformConstraint.map_to_x_from -> map_to_x_from: enum '"The source axis constrained object\'s X axis uses"'
+Constraint|TransformConstraint.map_to_y_from -> map_to_y_from: enum '"The source axis constrained object\'s Y axis uses"'
+Constraint|TransformConstraint.map_to_z_from -> map_to_z_from: enum '"The source axis constrained object\'s Z axis uses"'
+Constraint|TransformConstraint.subtarget -> subtarget: string "'NO DESCRIPTION'"
+Constraint|TransformConstraint.target -> target: pointer "'Target Object'"
+Constraint|TransformConstraint.to_max_x -> to_max_x: float "'Top range of X axis destination motion'"
+Constraint|TransformConstraint.to_max_y -> to_max_y: float "'Top range of Y axis destination motion'"
+Constraint|TransformConstraint.to_max_z -> to_max_z: float "'Top range of Z axis destination motion'"
+Constraint|TransformConstraint.to_min_x -> to_min_x: float "'Bottom range of X axis destination motion'"
+Constraint|TransformConstraint.to_min_y -> to_min_y: float "'Bottom range of Y axis destination motion'"
+Constraint|TransformConstraint.to_min_z -> to_min_z: float "'Bottom range of Z axis destination motion'"
+Context.area -> area: pointer, "'(read-only)'"
+Context.main -> main: pointer, "'(read-only)'"
+Context.manager -> manager: pointer, "'(read-only)'"
+Context.mode -> mode: enum, "'(read-only)'"
+Context.region -> region: pointer, "'(read-only)'"
+Context.region_data -> region_data: pointer, "'(read-only)'"
+Context.scene -> scene: pointer, "'(read-only)'"
+Context.screen -> screen: pointer, "'(read-only)'"
+Context.space_data -> space_data: pointer, "'(read-only)'"
+Context.tool_settings -> tool_settings: pointer, "'(read-only)'"
+Context.user_preferences -> user_preferences: pointer, "'(read-only)'"
+Context.window -> window: pointer, "'(read-only)'"
+Controller.expanded -> show_expanded: boolean "'Set controller expanded in the user interface'"
+Controller.name -> name: string "'NO DESCRIPTION'"
+Controller.priority -> use_priority: boolean "'Mark controller for execution before all non-marked controllers (good for startup scripts)'"
+Controller.state -> states: boolean, "'(read-only) Set Controller state index (1 to 30)'"
+Controller.type -> type: enum "'NO DESCRIPTION'"
+Controller|ExpressionController.expression -> expression: string "'NO DESCRIPTION'"
+Controller|PythonController.debug -> use_debug: boolean "'Continuously reload the module from disk for editing external modules without restarting'"
+Controller|PythonController.mode -> mode: enum "'Python script type (textblock or module - faster)'"
+Controller|PythonController.module -> module: string 'Module name and function to run e.g. "someModule.main". Internal texts and external python files can be used'
+Controller|PythonController.text -> text: pointer "'Text datablock with the python script'"
+CurveMap.extend -> extend: enum, "'(read-only) Extrapolate the curve or extend it horizontally'"
+CurveMap.points -> points: collection, "'(read-only)'"
+CurveMapPoint.handle_type -> handle_type: enum, "'(read-only) Curve interpolation at this point: bezier or vector'"
+CurveMapPoint.location -> location: float, "'(read-only) X/Y coordinates of the curve point'"
+CurveMapPoint.select -> select: boolean "'Selection state of the curve point'"
+CurveMapping.black_level -> black_level: float "'For RGB curves, the color that black is mapped to'"
+CurveMapping.clip -> use_clip: boolean "'Force the curve view to fit a defined boundary'"
+CurveMapping.clip_max_x -> clip_max_x: float "'NO DESCRIPTION'"
+CurveMapping.clip_max_y -> clip_max_y: float "'NO DESCRIPTION'"
+CurveMapping.clip_min_x -> clip_min_x: float "'NO DESCRIPTION'"
+CurveMapping.clip_min_y -> clip_min_y: float "'NO DESCRIPTION'"
+CurveMapping.curves -> curves: collection, "'(read-only)'"
+CurveMapping.white_level -> white_level: float "'For RGB curves, the color that white is mapped to'"
+CurveSplines.active -> active: pointer "'Active curve spline'"
+NEGATE * DopeSheet.collapse_summary -> show_expanded_summary: boolean "'Collapse summary when shown, so all other channels get hidden. (DopeSheet Editors Only)'"
+DopeSheet.display_armature -> show_armatures: boolean "'Include visualization of Armature related Animation data'"
+DopeSheet.display_camera -> show_cameras: boolean "'Include visualization of Camera related Animation data'"
+DopeSheet.display_curve -> show_curves: boolean "'Include visualization of Curve related Animation data'"
+DopeSheet.display_hidden -> display_hidden: boolean '"Include channels from objects/bone that aren\'t visible"'
+DopeSheet.display_lamp -> show_lamps: boolean "'Include visualization of Lamp related Animation data'"
+DopeSheet.display_material -> show_materials: boolean "'Include visualization of Material related Animation data'"
+DopeSheet.display_mesh -> show_meshes: boolean "'Include visualization of Mesh related Animation data'"
+DopeSheet.display_metaball -> show_metaballs: boolean "'Include visualization of Metaball related Animation data'"
+DopeSheet.display_node -> show_nodes: boolean "'Include visualization of Node related Animation data'"
+DopeSheet.display_particle -> show_particles: boolean "'Include visualization of Particle related Animation data'"
+DopeSheet.display_scene -> show_scenes: boolean "'Include visualization of Scene related Animation data'"
+DopeSheet.display_shapekeys -> show_shapekeys: boolean "'Include visualization of ShapeKey related Animation data'"
+DopeSheet.display_summary -> show_summary: boolean '"Display an additional \'summary\' line. (DopeSheet Editors only)"'
+DopeSheet.display_texture -> show_textures: boolean "'Include visualization of Texture related Animation data'"
+DopeSheet.display_transforms -> show_transforms: boolean "'Include visualization of Object-level Animation data (mostly Transforms)'"
+DopeSheet.display_world -> show_worlds: boolean "'Include visualization of World related Animation data'"
+DopeSheet.filtering_group -> filtering_group: pointer "'Group that included Object should be a member of'"
+DopeSheet.include_missing_nla -> show_missing_nla: boolean "'Include Animation Data blocks with no NLA data. (NLA Editor only)'"
+DopeSheet.only_group_objects -> show_only_group_objects: boolean "'Only include channels from Objects in the specified Group'"
+DopeSheet.only_selected -> show_only_selected: boolean "'Only include channels relating to selected objects and data'"
+DopeSheet.source -> source: pointer, "'(read-only) ID-Block representing source data, currently ID_SCE (for Dopesheet), and ID_SC (for Grease Pencil)'"
+Driver.expression -> expression: string "'Expression to use for Scripted Expression'"
+Driver.invalid -> is_valid: boolean "'Driver could not be evaluated in past, so should be skipped'"
+Driver.show_debug_info -> show_debug_info: boolean "'Show intermediate values for the driver calculations to allow debugging of drivers'"
+Driver.type -> type: enum "'Driver type'"
+Driver.variables -> variables: collection, "'(read-only) Properties acting as inputs for this driver'"
+DriverTarget.bone_target -> bone_target: string "'Name of PoseBone to use as target'"
+DriverTarget.data_path -> data_path: string "'RNA Path (from ID-block) to property used'"
+DriverTarget.id -> id: pointer "'ID-block that the specific property used can be found from (id_type property must be set first)'"
+DriverTarget.id_type -> id_type: enum "'Type of ID-block that can be used'"
+DriverTarget.transform_type -> transform_type: enum "'Driver variable type'"
+DriverTarget.use_local_space_transforms -> use_local_space_transform: boolean "'Use transforms in Local Space (as opposed to the worldspace default)'"
+DriverVariable.name -> name: string "'Name to use in scripted expressions/functions. (No spaces or dots are allowed. Also, must not start with a symbol or digit)'"
+DriverVariable.targets -> targets: collection, "'(read-only) Sources of input data for evaluating this variable'"
+DriverVariable.type -> type: enum "'Driver variable type'"
+DupliObject.matrix -> matrix: float "'Object duplicate transformation matrix'"
+DupliObject.object -> object: pointer, "'(read-only) Object being duplicated'"
+DupliObject.object_matrix -> object_matrix: float "'Duplicated object transformation matrix'"
+EditBone.bbone_in -> bbone_in: float "'Length of first Bezier Handle (for B-Bones only)'"
+EditBone.bbone_out -> bbone_out: float "'Length of second Bezier Handle (for B-Bones only)'"
+EditBone.bbone_segments -> bbone_segments: int "'Number of subdivisions of bone (for B-Bones only)'"
+EditBone.connected -> use_connect: boolean '"When bone has a parent, bone\'s head is struck to the parent\'s tail"'
+EditBone.cyclic_offset -> use_cyclic_offset: boolean '"When bone doesn\'t have a parent, it receives cyclic offset effects"'
+EditBone.deform -> use_deform: boolean "'Bone does not deform any geometry'"
+EditBone.draw_wire -> show_wire: boolean "'Bone is always drawn as Wireframe regardless of viewport draw mode. Useful for non-obstructive custom bone shapes'"
+EditBone.envelope_distance -> envelope_distance: float "'Bone deformation distance (for Envelope deform only)'"
+EditBone.envelope_weight -> envelope_weight: float "'Bone deformation weight (for Envelope deform only)'"
+EditBone.head -> head: float "'Location of head end of the bone'"
+EditBone.head_radius -> head_radius: float "'Radius of head of bone (for Envelope deform only)'"
+EditBone.hide -> hide: boolean "'Bone is not visible when in Edit Mode'"
+EditBone.hide_select -> hide_select: boolean "'Bone is able to be selected'"
+EditBone.hinge -> use_hinge: boolean "'Bone inherits rotation or scale from parent bone'"
+EditBone.inherit_scale -> use_inherit_scale: boolean "'Bone inherits scaling from parent bone'"
+EditBone.layer -> layers: boolean "'Layers bone exists in'"
+EditBone.local_location -> use_local_location: boolean "'Bone location is set in local space'"
+EditBone.lock -> lock: boolean "'Bone is not able to be transformed when in Edit Mode'"
+EditBone.matrix -> matrix: float, "'(read-only) Read-only matrix calculated from the roll (armature space)'"
+EditBone.multiply_vertexgroup_with_envelope -> use_envelope_multiply: boolean "'When deforming bone, multiply effects of Vertex Group weights with Envelope influence'"
+EditBone.name -> name: string "'NO DESCRIPTION'"
+EditBone.parent -> parent: pointer "'Parent edit bone (in same Armature)'"
+EditBone.roll -> roll: float "'Bone rotation around head-tail axis'"
+EditBone.select -> select: boolean "'NO DESCRIPTION'"
+EditBone.select_head -> select_head: boolean "'NO DESCRIPTION'"
+EditBone.select_tail -> select_tail: boolean "'NO DESCRIPTION'"
+EditBone.tail -> tail: float "'Location of tail end of the bone'"
+EditBone.tail_radius -> tail_radius: float "'Radius of tail of bone (for Envelope deform only)'"
+EffectorWeights.all -> all: float '"All effector\'s weight"'
+EffectorWeights.boid -> boid: float "'Boid effector weight'"
+EffectorWeights.charge -> charge: float "'Charge effector weight'"
+EffectorWeights.curveguide -> curveguide: float "'Curve guide effector weight'"
+EffectorWeights.do_growing_hair -> apply_to_hair_growing: boolean "'Use force fields when growing hair'"
+EffectorWeights.drag -> drag: float "'Drag effector weight'"
+EffectorWeights.force -> force: float "'Force effector weight'"
+EffectorWeights.gravity -> gravity: float "'Global gravity weight'"
+EffectorWeights.group -> group: pointer "'Limit effectors to this Group'"
+EffectorWeights.harmonic -> harmonic: float "'Harmonic effector weight'"
+EffectorWeights.lennardjones -> lennardjones: float "'Lennard-Jones effector weight'"
+EffectorWeights.magnetic -> magnetic: float "'Magnetic effector weight'"
+EffectorWeights.texture -> texture: float "'Texture effector weight'"
+EffectorWeights.turbulence -> turbulence: float "'Turbulence effector weight'"
+EffectorWeights.vortex -> vortex: float "'Vortex effector weight'"
+EffectorWeights.wind -> wind: float "'Wind effector weight'"
+EnumPropertyItem.description -> description: string, '"(read-only) Description of the item\'s purpose"'
+EnumPropertyItem.identifier -> identifier: string, "'(read-only) Unique name used in the code and scripting'"
+EnumPropertyItem.name -> name: string, "'(read-only) Human readable name'"
+EnumPropertyItem.value -> value: int, "'(read-only) Value of the item'"
+EnvironmentMap.clip_end -> clip_end: float "'Objects further than this are not visible to map'"
+EnvironmentMap.clip_start -> clip_start: float "'Objects nearer than this are not visible to map'"
+EnvironmentMap.depth -> depth: int "'Number of times a map will be rendered recursively (mirror effects.)'"
+EnvironmentMap.ignore_layers -> layers_ignore: boolean "'Hide objects on these layers when generating the Environment Map'"
+EnvironmentMap.mapping -> mapping: enum "'NO DESCRIPTION'"
+EnvironmentMap.resolution -> resolution: int "'Pixel resolution of the rendered environment map'"
+EnvironmentMap.source -> source: enum "'NO DESCRIPTION'"
+EnvironmentMap.viewpoint_object -> viewpoint_object: pointer '"Object to use as the environment map\'s viewpoint location"'
+EnvironmentMap.zoom -> zoom: float "'NO DESCRIPTION'"
+Event.alt -> is_pressed_alt: boolean, "'(read-only) True when the Alt/Option key is held'"
+Event.ascii -> ascii: string, "'(read-only) Single ASCII character for this event'"
+Event.ctrl -> is_pressed_ctrl: boolean, "'(read-only) True when the Ctrl key is held'"
+Event.mouse_prev_x -> mouse_prev_x: int, "'(read-only) The window relative vertical location of the mouse'"
+Event.mouse_prev_y -> mouse_prev_y: int, "'(read-only) The window relative horizontal location of the mouse'"
+Event.mouse_region_x -> mouse_region_x: int, "'(read-only) The region relative vertical location of the mouse'"
+Event.mouse_region_y -> mouse_region_y: int, "'(read-only) The region relative horizontal location of the mouse'"
+Event.mouse_x -> mouse_x: int, "'(read-only) The window relative vertical location of the mouse'"
+Event.mouse_y -> mouse_y: int, "'(read-only) The window relative horizontal location of the mouse'"
+Event.oskey -> is_pressed_cmd: boolean, "'(read-only) True when the Cmd key is held'"
+Event.shift -> is_pressed_shift: boolean, "'(read-only) True when the Shift key is held'"
+Event.type -> type: enum, "'(read-only)'"
+Event.value -> value: enum, "'(read-only) The type of event, only applies to some'"
+FCurve.array_index -> array_index: int "'Index to the specific property affected by F-Curve if applicable'"
+FCurve.auto_clamped_handles -> use_auto_handle_clamp: boolean "'All auto-handles for F-Curve are clamped'"
+FCurve.color -> color: float "'Color of the F-Curve in the Graph Editor'"
+FCurve.color_mode -> color_mode: enum "'Method used to determine color of F-Curve in Graph Editor'"
+FCurve.data_path -> data_path: string "'RNA Path to property affected by F-Curve'"
+FCurve.driver -> driver: pointer, "'(read-only) Channel Driver (only set for Driver F-Curves)'"
+FCurve.enabled -> enabled: boolean "'False when F-Curve could not be evaluated in past, so should be skipped when evaluating'"
+FCurve.extrapolation -> extrapolation: enum "'NO DESCRIPTION'"
+FCurve.group -> group: pointer "'Action Group that this F-Curve belongs to'"
+FCurve.hide -> hide: boolean "'F-Curve and its keyframes are hidden in the Graph Editor graphs'"
+FCurve.keyframe_points -> keyframe_points: collection, "'(read-only) User-editable keyframes'"
+FCurve.lock -> lock: boolean '"F-Curve\'s settings cannot be edited"'
+FCurve.modifiers -> modifiers: collection, "'(read-only) Modifiers affecting the shape of the F-Curve'"
+FCurve.mute -> mute: boolean "'F-Curve is not evaluated'"
+FCurve.sampled_points -> sampled_points: collection, "'(read-only) Sampled animation data'"
+FCurve.select -> select: boolean "'F-Curve is selected for editing'"
+FCurveModifiers.active -> active: pointer "'Active F-Curve Modifier'"
+FCurveSample.co -> co: float "'Point coordinates'"
+FCurveSample.select -> select: boolean "'Selection status'"
+FModifier.active -> active: boolean "'F-Curve Modifier is the one being edited'"
+NEGATE * FModifier.disabled -> use: boolean, "'(read-only) F-Curve Modifier has invalid settings and will not be evaluated'"
+FModifier.expanded -> show_expanded: boolean '"F-Curve Modifier\'s panel is expanded in UI"'
+FModifier.mute -> mute: boolean "'F-Curve Modifier will not be evaluated'"
+FModifier.type -> type: enum, "'(read-only) F-Curve Modifier Type'"
+FModifierEnvelopeControlPoint.frame -> frame: float "'Frame this control-point occurs on'"
+FModifierEnvelopeControlPoint.maximum -> max: float "'Upper bound of envelope at this control-point'"
+FModifierEnvelopeControlPoint.minimum -> min: float "'Lower bound of envelope at this control-point'"
+FModifier|FModifierCycles.after_cycles -> after_cycles: float "'Maximum number of cycles to allow after last keyframe. (0 = infinite)'"
+FModifier|FModifierCycles.after_mode -> after_mode: enum "'Cycling mode to use after last keyframe'"
+FModifier|FModifierCycles.before_cycles -> before_cycles: float "'Maximum number of cycles to allow before first keyframe. (0 = infinite)'"
+FModifier|FModifierCycles.before_mode -> before_mode: enum "'Cycling mode to use before first keyframe'"
+FModifier|FModifierEnvelope.control_points -> control_points: collection, "'(read-only) Control points defining the shape of the envelope'"
+FModifier|FModifierEnvelope.default_maximum -> default_max: float "'Upper distance from Reference Value for 1:1 default influence'"
+FModifier|FModifierEnvelope.default_minimum -> default_min: float "'Lower distance from Reference Value for 1:1 default influence'"
+FModifier|FModifierEnvelope.reference_value -> reference_value: float '"Value that envelope\'s influence is centered around / based on"'
+FModifier|FModifierFunctionGenerator.additive -> use_additive: boolean "'Values generated by this modifier are applied on top of the existing values instead of overwriting them'"
+FModifier|FModifierFunctionGenerator.amplitude -> amplitude: float "'Scale factor determining the maximum/minimum values'"
+FModifier|FModifierFunctionGenerator.function_type -> function_type: enum "'Type of built-in function to use'"
+FModifier|FModifierFunctionGenerator.phase_multiplier -> phase_multiplier: float '"Scale factor determining the \'speed\' of the function"'
+FModifier|FModifierFunctionGenerator.phase_offset -> phase_offset: float "'Constant factor to offset time by for function'"
+FModifier|FModifierFunctionGenerator.value_offset -> value_offset: float "'Constant factor to offset values by'"
+FModifier|FModifierGenerator.additive -> use_additive: boolean "'Values generated by this modifier are applied on top of the existing values instead of overwriting them'"
+FModifier|FModifierGenerator.coefficients -> coefficients: float '"Coefficients for \'x\' (starting from lowest power of x^0)"'
+FModifier|FModifierGenerator.mode -> mode: enum "'Type of generator to use'"
+FModifier|FModifierGenerator.poly_order -> poly_order: int '"The highest power of \'x\' for this polynomial. (number of coefficients - 1)"'
+FModifier|FModifierLimits.maximum_x -> max_x: float "'Highest X value to allow'"
+FModifier|FModifierLimits.maximum_y -> max_y: float "'Highest Y value to allow'"
+FModifier|FModifierLimits.minimum_x -> min_x: float "'Lowest X value to allow'"
+FModifier|FModifierLimits.minimum_y -> min_y: float "'Lowest Y value to allow'"
+FModifier|FModifierLimits.use_maximum_x -> use_max_x: boolean "'Use the maximum X value'"
+FModifier|FModifierLimits.use_maximum_y -> use_max_y: boolean "'Use the maximum Y value'"
+FModifier|FModifierLimits.use_minimum_x -> use_min_x: boolean "'Use the minimum X value'"
+FModifier|FModifierLimits.use_minimum_y -> use_min_y: boolean "'Use the minimum Y value'"
+FModifier|FModifierNoise.depth -> depth: int "'Amount of fine level detail present in the noise'"
+FModifier|FModifierNoise.modification -> modification: enum "'Method of modifying the existing F-Curve'"
+FModifier|FModifierNoise.phase -> phase: float "'A random seed for the noise effect'"
+FModifier|FModifierNoise.size -> size: float "'Scaling (in time) of the noise'"
+FModifier|FModifierNoise.strength -> strength: float "'Amplitude of the noise - the amount that it modifies the underlying curve'"
+FModifier|FModifierStepped.frame_end -> frame_end: float '"Frame that modifier\'s influence ends (if applicable)"'
+FModifier|FModifierStepped.frame_start -> frame_start: float '"Frame that modifier\'s influence starts (if applicable)"'
+FModifier|FModifierStepped.offset -> offset: float '"Reference number of frames before frames get held. Use to get hold for \'1-3\' vs \'5-7\' holding patterns"'
+FModifier|FModifierStepped.step_size -> step_size: float "'Number of frames to hold each value'"
+FModifier|FModifierStepped.use_frame_end -> use_frame_end: boolean '"Restrict modifier to only act before its \'end\' frame"'
+FModifier|FModifierStepped.use_frame_start -> use_frame_start: boolean '"Restrict modifier to only act after its \'start\' frame"'
+FieldSettings.do_absorption -> use_absorption: boolean "'Force gets absorbed by collision objects'"
+FieldSettings.do_location -> apply_to_location: boolean '"Effect particles\' location"'
+FieldSettings.do_rotation -> apply_to_rotation: boolean '"Effect particles\' dynamic rotation"'
+FieldSettings.falloff_power -> falloff_power: float "'Falloff power (real gravitational falloff = 2)'"
+FieldSettings.falloff_type -> falloff_type: enum "'Fall-off shape'"
+FieldSettings.flow -> flow: float "'Convert effector force into air flow velocity'"
+FieldSettings.force_2d -> use_2d_force: boolean "'Apply force only in 2d'"
+FieldSettings.global_coordinates -> use_global_coordinates: boolean "'Use effector/global coordinates for turbulence'"
+FieldSettings.guide_clump_amount -> guide_clump_amount: float "'Amount of clumping'"
+FieldSettings.guide_clump_shape -> guide_clump_shape: float "'Shape of clumping'"
+FieldSettings.guide_free -> guide_free: float '"Guide-free time from particle life\'s end"'
+FieldSettings.guide_kink_amplitude -> guide_kink_amplitude: float "'The amplitude of the offset'"
+FieldSettings.guide_kink_axis -> guide_kink_axis: enum "'Which axis to use for offset'"
+FieldSettings.guide_kink_frequency -> guide_kink_frequency: float "'The frequency of the offset (1/total length)'"
+FieldSettings.guide_kink_shape -> guide_kink_shape: float "'Adjust the offset to the beginning/end'"
+FieldSettings.guide_kink_type -> guide_kink_type: enum "'Type of periodic offset on the curve'"
+FieldSettings.guide_minimum -> guide_minimum: float "'The distance from which particles are affected fully'"
+FieldSettings.guide_path_add -> use_guide_path_add: boolean "'Based on distance/falloff it adds a portion of the entire path'"
+FieldSettings.harmonic_damping -> harmonic_damping: float "'Damping of the harmonic force'"
+FieldSettings.inflow -> inflow: float "'Inwards component of the vortex force'"
+FieldSettings.linear_drag -> linear_drag: float "'Drag component proportional to velocity'"
+FieldSettings.maximum_distance -> distance_max: float "'Maximum distance for the field to work'"
+FieldSettings.minimum_distance -> distance_min: float '"Minimum distance for the field\'s fall-off"'
+FieldSettings.multiple_springs -> use_multiple_springs: boolean "'Every point is effected by multiple springs'"
+FieldSettings.noise -> noise: float "'Noise of the force'"
+FieldSettings.quadratic_drag -> quadratic_drag: float "'Drag component proportional to the square of velocity'"
+FieldSettings.radial_falloff -> radial_falloff: float "'Radial falloff power (real gravitational falloff = 2)'"
+FieldSettings.radial_maximum -> radial_max: float "'Maximum radial distance for the field to work'"
+FieldSettings.radial_minimum -> radial_min: float '"Minimum radial distance for the field\'s fall-off"'
+FieldSettings.rest_length -> rest_length: float "'Rest length of the harmonic force'"
+FieldSettings.root_coordinates -> use_root_coordinates: boolean "'Texture coordinates from root particle locations'"
+FieldSettings.seed -> seed: int "'Seed of the noise'"
+FieldSettings.shape -> shape: enum "'Which direction is used to calculate the effector force'"
+FieldSettings.size -> size: float "'Size of the noise'"
+FieldSettings.strength -> strength: float "'Strength of force field'"
+FieldSettings.texture -> texture: pointer "'Texture to use as force'"
+FieldSettings.texture_mode -> texture_mode: enum "'How the texture effect is calculated (RGB & Curl need a RGB texture else Gradient will be used instead)'"
+FieldSettings.texture_nabla -> texture_nabla: float "'Defines size of derivative offset used for calculating gradient and curl'"
+FieldSettings.type -> type: enum "'Type of field'"
+FieldSettings.use_coordinates -> use_object_coordinates: boolean "'Use object/global coordinates for texture'"
+FieldSettings.use_guide_path_weight -> use_guide_path_weight: boolean "'Use curve weights to influence the particle influence along the curve'"
+FieldSettings.use_max_distance -> use_max_distance: boolean "'Use a maximum distance for the field to work'"
+FieldSettings.use_min_distance -> use_min_distance: boolean '"Use a minimum distance for the field\'s fall-off"'
+FieldSettings.use_radial_max -> use_radial_max: boolean "'Use a maximum radial distance for the field to work'"
+FieldSettings.use_radial_min -> use_radial_min: boolean '"Use a minimum radial distance for the field\'s fall-off"'
+FieldSettings.z_direction -> z_direction: enum "'Effect in full or only positive/negative Z direction'"
+FileSelectParams.directory -> directory: string "'Directory displayed in the file browser'"
+FileSelectParams.display -> display: enum "'Display mode for the file list'"
+FileSelectParams.do_filter -> use_filter: boolean "'Enable filtering of files'"
+FileSelectParams.file -> file: string "'Active file in the file browser'"
+FileSelectParams.filter_blender -> use_filter_blender: boolean "'Show .blend files'"
+FileSelectParams.filter_folder -> use_filter_folder: boolean "'Show folders'"
+FileSelectParams.filter_font -> use_filter_font: boolean "'Show font files'"
+FileSelectParams.filter_image -> use_filter_image: boolean "'Show image files'"
+FileSelectParams.filter_movie -> use_filter_movie: boolean "'Show movie files'"
+FileSelectParams.filter_script -> use_filter_script: boolean "'Show script files'"
+FileSelectParams.filter_sound -> use_filter_sound: boolean "'Show sound files'"
+FileSelectParams.filter_text -> use_filter_text: boolean "'Show text files'"
+NEGATE * FileSelectParams.hide_dot -> show_hidden: boolean "'Hide hidden dot files'"
+FileSelectParams.sort -> sort: enum "'NO DESCRIPTION'"
+FileSelectParams.title -> title: string, "'(read-only) Title for the file browser'"
+FluidSettings.type -> type: enum "'Type of participation in the fluid simulation'"
+FluidSettings|ControlFluidSettings.active -> use: boolean "'Object contributes to the fluid simulation'"
+FluidSettings|ControlFluidSettings.attraction_radius -> attraction_radius: float "'Specifies the force field radius around the control object'"
+FluidSettings|ControlFluidSettings.attraction_strength -> attraction_strength: float "'Force strength for directional attraction towards the control object'"
+FluidSettings|ControlFluidSettings.end_time -> end_time: float "'Specifies time when the control particles are deactivated'"
+FluidSettings|ControlFluidSettings.quality -> quality: float "'Specifies the quality which is used for object sampling. (higher = better but slower)'"
+FluidSettings|ControlFluidSettings.reverse_frames -> use_reverse_frames: boolean "'Reverse control object movement'"
+FluidSettings|ControlFluidSettings.start_time -> start_time: float "'Specifies time when the control particles are activated'"
+FluidSettings|ControlFluidSettings.velocity_radius -> velocity_radius: float "'Specifies the force field radius around the control object'"
+FluidSettings|ControlFluidSettings.velocity_strength -> velocity_strength: float '"Force strength of how much of the control object\'s velocity is influencing the fluid velocity"'
+FluidSettings|DomainFluidSettings.compressibility -> compressibility: float "'Allowed compressibility due to gravitational force for standing fluid. (directly affects simulation step size)'"
+FluidSettings|DomainFluidSettings.end_time -> end_time: float "'Simulation time of the last blender frame'"
+FluidSettings|DomainFluidSettings.generate_particles -> generate_particles: float "'Amount of particles to generate (0=off, 1=normal, >1=more)'"
+FluidSettings|DomainFluidSettings.generate_speed_vectors -> use_speed_vectors: boolean "'Generate speed vectors for vector blur'"
+FluidSettings|DomainFluidSettings.gravity -> gravity: float "'Gravity in X, Y and Z direction'"
+FluidSettings|DomainFluidSettings.grid_levels -> grid_levels: int "'Number of coarsened grids to use (-1 for automatic)'"
+FluidSettings|DomainFluidSettings.memory_estimate -> memory_estimate: string, "'(read-only) Estimated amount of memory needed for baking the domain'"
+FluidSettings|DomainFluidSettings.override_time -> use_time_override: boolean '"Use a custom start and end time (in seconds) instead of the scene\'s timeline"'
+FluidSettings|DomainFluidSettings.partial_slip_factor -> partial_slip_factor: float "'Amount of mixing between no- and free-slip, 0 is no slip and 1 is free slip'"
+FluidSettings|DomainFluidSettings.path -> path: string "'Directory (and/or filename prefix) to store baked fluid simulation files in'"
+FluidSettings|DomainFluidSettings.preview_resolution -> preview_resolution: int "'Preview resolution in X,Y and Z direction'"
+FluidSettings|DomainFluidSettings.real_world_size -> real_world_size: float "'Size of the simulation domain in metres'"
+FluidSettings|DomainFluidSettings.render_display_mode -> render_display_mode: enum "'How to display the mesh for rendering'"
+FluidSettings|DomainFluidSettings.resolution -> resolution: int "'Domain resolution in X,Y and Z direction'"
+FluidSettings|DomainFluidSettings.reverse_frames -> use_reverse_frames: boolean "'Reverse fluid frames'"
+FluidSettings|DomainFluidSettings.slip_type -> slip_type: enum "'NO DESCRIPTION'"
+FluidSettings|DomainFluidSettings.start_time -> start_time: float "'Simulation time of the first blender frame'"
+FluidSettings|DomainFluidSettings.surface_smoothing -> surface_smooth: float "'Amount of surface smoothing. A value of 0 is off, 1 is normal smoothing and more than 1 is extra smoothing'"
+FluidSettings|DomainFluidSettings.surface_subdivisions -> surface_subdivisions: int "'Number of isosurface subdivisions. This is necessary for the inclusion of particles into the surface generation. Warning - can lead to longer computation times!'"
+FluidSettings|DomainFluidSettings.tracer_particles -> tracer_particles: int "'Number of tracer particles to generate'"
+FluidSettings|DomainFluidSettings.viewport_display_mode -> viewport_display_mode: enum "'How to display the mesh in the viewport'"
+FluidSettings|DomainFluidSettings.viscosity_base -> viscosity_base: float "'Viscosity setting: value that is multiplied by 10 to the power of (exponent*-1)'"
+FluidSettings|DomainFluidSettings.viscosity_exponent -> viscosity_exponent: int "'Negative exponent for the viscosity value (to simplify entering small values e.g. 5*10^-6.)'"
+FluidSettings|DomainFluidSettings.viscosity_preset -> viscosity_preset: enum "'Set viscosity of the fluid to a preset value, or use manual input'"
+FluidSettings|FluidFluidSettings.active -> use: boolean "'Object contributes to the fluid simulation'"
+FluidSettings|FluidFluidSettings.export_animated_mesh -> use_animated_mesh: boolean "'Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it'"
+FluidSettings|FluidFluidSettings.initial_velocity -> initial_velocity: float "'Initial velocity of fluid'"
+FluidSettings|FluidFluidSettings.volume_initialization -> volume_initialization: enum "'Volume initialization type'"
+FluidSettings|InflowFluidSettings.active -> use: boolean "'Object contributes to the fluid simulation'"
+FluidSettings|InflowFluidSettings.export_animated_mesh -> use_animated_mesh: boolean "'Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it'"
+FluidSettings|InflowFluidSettings.inflow_velocity -> inflow_velocity: float "'Initial velocity of fluid'"
+FluidSettings|InflowFluidSettings.local_coordinates -> use_local_coordinates: boolean "'Use local coordinates for inflow. (e.g. for rotating objects)'"
+FluidSettings|InflowFluidSettings.volume_initialization -> volume_initialization: enum "'Volume initialization type'"
+FluidSettings|ObstacleFluidSettings.active -> use: boolean "'Object contributes to the fluid simulation'"
+FluidSettings|ObstacleFluidSettings.export_animated_mesh -> use_animated_mesh: boolean "'Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it'"
+FluidSettings|ObstacleFluidSettings.impact_factor -> impact_factor: float "'This is an unphysical value for moving objects - it controls the impact an obstacle has on the fluid, =0 behaves a bit like outflow (deleting fluid), =1 is default, while >1 results in high forces. Can be used to tweak total mass'"
+FluidSettings|ObstacleFluidSettings.partial_slip_factor -> partial_slip_factor: float "'Amount of mixing between no- and free-slip, 0 is no slip and 1 is free slip'"
+FluidSettings|ObstacleFluidSettings.slip_type -> slip_type: enum "'NO DESCRIPTION'"
+FluidSettings|ObstacleFluidSettings.volume_initialization -> volume_initialization: enum "'Volume initialization type'"
+FluidSettings|OutflowFluidSettings.active -> use: boolean "'Object contributes to the fluid simulation'"
+FluidSettings|OutflowFluidSettings.export_animated_mesh -> use_animated_mesh: boolean "'Export this mesh as an animated one. Slower, only use if really necessary (e.g. armatures or parented objects), animated pos/rot/scale IPOs do not require it'"
+FluidSettings|OutflowFluidSettings.volume_initialization -> volume_initialization: enum "'Volume initialization type'"
+FluidSettings|ParticleFluidSettings.alpha_influence -> alpha_influence: float "'Amount of particle alpha change, inverse of size influence: 0=off (all same alpha), 1=full. (large particles get lower alphas, smaller ones higher values)'"
+FluidSettings|ParticleFluidSettings.drops -> use_drops: boolean "'Show drop particles'"
+FluidSettings|ParticleFluidSettings.floats -> use_floats: boolean "'Show floating foam particles'"
+FluidSettings|ParticleFluidSettings.particle_influence -> particle_influence: float "'Amount of particle size scaling: 0=off (all same size), 1=full (range 0.2-2.0), >1=stronger'"
+FluidSettings|ParticleFluidSettings.path -> path: string "'Directory (and/or filename prefix) to store and load particles from'"
+FluidSettings|ParticleFluidSettings.tracer -> use_tracer: boolean "'Show tracer particles'"
+Function.description -> description: string, '"(read-only) Description of the Function\'s purpose"'
+Function.identifier -> identifier: string, "'(read-only) Unique name used in the code and scripting'"
+Function.parameters -> parameters: collection, "'(read-only) Parameters for the function'"
+Function.registered -> is_registered: boolean, "'(read-only) Function is registered as callback as part of type registration'"
+Function.registered_optional -> is_registered_optional: boolean, "'(read-only) Function is optionally registered as callback part of type registration'"
+GPencilFrame.frame_number -> frame_number: int "'The frame on which this sketch appears'"
+GPencilFrame.paint_lock -> is_edited: boolean "'Frame is being edited (painted on)'"
+GPencilFrame.select -> select: boolean "'Frame is selected for editing in the DopeSheet'"
+GPencilFrame.strokes -> strokes: collection, "'(read-only) Freehand curves defining the sketch on this frame'"
+GPencilLayer.active -> active: boolean "'Set active layer for editing'"
+GPencilLayer.active_frame -> active_frame: pointer, "'(read-only) Frame currently being displayed for this layer'"
+GPencilLayer.color -> color: float "'Color for all strokes in this layer'"
+GPencilLayer.frame_lock -> lock_frame: boolean "'Lock current frame displayed by layer'"
+GPencilLayer.frames -> frames: collection, "'(read-only) Sketches for this layer on different frames'"
+GPencilLayer.hide -> hide: boolean "'Set layer Visibility'"
+GPencilLayer.info -> info: string "'Layer name'"
+GPencilLayer.line_thickness -> line_width: int "'Thickness of strokes (in pixels)'"
+GPencilLayer.lock -> lock: boolean "'Protect layer from further editing and/or frame changes'"
+GPencilLayer.max_ghost_range -> ghost_range_max: int '"Maximum number of frames on either side of the active frame to show (0 = show the \'first\' available sketch on either side)"'
+GPencilLayer.opacity -> opacity: float "'Layer Opacity'"
+GPencilLayer.select -> select: boolean "'Layer is selected for editing in the DopeSheet'"
+GPencilLayer.show_points -> show_points: boolean "'Draw the points which make up the strokes (for debugging purposes)'"
+GPencilLayer.use_onion_skinning -> use_onion_skinning: boolean "'Ghost frames on either side of frame'"
+GPencilStroke.points -> points: collection, "'(read-only) Stroke data points'"
+GPencilStrokePoint.co -> co: float "'NO DESCRIPTION'"
+GPencilStrokePoint.pressure -> pressure: float "'Pressure of tablet at point when drawing it'"
+GameObjectSettings.actor -> use_actor: boolean "'Object is detected by the Near and Radar sensor'"
+GameObjectSettings.actuators -> actuators: collection, "'(read-only) Game engine actuators to act on events'"
+GameObjectSettings.all_states -> use_all_states: boolean "'Set all state bits'"
+GameObjectSettings.anisotropic_friction -> use_anisotropic_friction: boolean "'Enable anisotropic friction'"
+GameObjectSettings.collision_bounds -> collision_bounds: enum "'Selects the collision type'"
+GameObjectSettings.collision_compound -> use_collision_compound: boolean "'Add children to form a compound collision object'"
+GameObjectSettings.collision_margin -> collision_margin: float "'Extra margin around object for collision detection, small amount required for stability'"
+GameObjectSettings.controllers -> controllers: collection, "'(read-only) Game engine controllers to process events, connecting sensor to actuators'"
+GameObjectSettings.damping -> damping: float "'General movement damping'"
+GameObjectSettings.debug_state -> show_debug_state: boolean "'Print state debug info in the game engine'"
+GameObjectSettings.form_factor -> form_factor: float "'Form factor scales the inertia tensor'"
+GameObjectSettings.friction_coefficients -> friction_coefficients: float "'Relative friction coefficient in the in the X, Y and Z directions, when anisotropic friction is enabled'"
+GameObjectSettings.ghost -> use_ghost: boolean "'Object does not restitute collisions, like a ghost'"
+GameObjectSettings.initial_state -> states_initial: boolean "'Initial state when the game starts'"
+GameObjectSettings.lock_x_axis -> lock_location_x: boolean "'Disable simulation of linear motion along the X axis'"
+GameObjectSettings.lock_x_rot_axis -> lock_rotation_x: boolean "'Disable simulation of angular motion along the X axis'"
+GameObjectSettings.lock_y_axis -> lock_location_y: boolean "'Disable simulation of linear motion along the Y axis'"
+GameObjectSettings.lock_y_rot_axis -> lock_rotation_y: boolean "'Disable simulation of angular motion along the Y axis'"
+GameObjectSettings.lock_z_axis -> lock_location_z: boolean "'Disable simulation of linear motion along the Z axis'"
+GameObjectSettings.lock_z_rot_axis -> lock_rotation_z: boolean "'Disable simulation of angular motion along the Z axis'"
+GameObjectSettings.mass -> mass: float "'Mass of the object'"
+GameObjectSettings.material_physics -> use_material_physics: boolean "'Use physics settings in materials'"
+GameObjectSettings.maximum_velocity -> velocity_max: float "'Clamp velocity to this maximum speed'"
+GameObjectSettings.minimum_velocity -> velocity_min: float "'Clamp velocity to this minimum speed (except when totally still)'"
+NEGATE * GameObjectSettings.no_sleeping -> use_sleep: boolean "'Disable auto (de)activation in physics simulation'"
+GameObjectSettings.physics_type -> physics_type: enum "'Selects the type of physical representation'"
+GameObjectSettings.properties -> properties: collection, "'(read-only) Game engine properties'"
+GameObjectSettings.radius -> radius: float "'Radius of bounding sphere and material physics'"
+GameObjectSettings.rotate_from_normal -> use_rotate_from_normal: boolean "'Use face normal to rotate object, so that it points away from the surface'"
+GameObjectSettings.rotation_damping -> rotation_damping: float "'General rotation damping'"
+GameObjectSettings.sensors -> sensors: collection, "'(read-only) Game engine sensor to detect events'"
+GameObjectSettings.show_actuators -> show_actuators: boolean "'Shows actuators for this object in the user interface'"
+GameObjectSettings.show_controllers -> show_controllers: boolean "'Shows controllers for this object in the user interface'"
+GameObjectSettings.show_sensors -> show_sensors: boolean "'Shows sensors for this object in the user interface'"
+GameObjectSettings.show_state_panel -> show_state_panel: boolean "'Show state panel'"
+GameObjectSettings.soft_body -> soft_body: pointer, "'(read-only) Settings for Bullet soft body simulation'"
+GameObjectSettings.use_activity_culling -> use_activity_culling: boolean "'Disable simulation of angular motion along the Z axis'"
+GameObjectSettings.use_collision_bounds -> use_collision_bounds: boolean "'Specify a collision bounds type other than the default'"
+GameObjectSettings.used_state -> states_used: boolean, "'(read-only) States which are being used by controllers'"
+GameObjectSettings.visible_state -> states_visible: boolean "'State determining which controllers are displayed'"
+GameProperty.debug -> show_debug: boolean "'Print debug information for this property'"
+GameProperty.name -> name: string '"Available as GameObject attributes in the game engine\'s python API"'
+GameProperty.type -> type: enum "'NO DESCRIPTION'"
+GameProperty|GameBooleanProperty.value -> value: boolean "'Property value'"
+GameProperty|GameFloatProperty.value -> value: float "'Property value'"
+GameProperty|GameIntProperty.value -> value: int "'Property value'"
+GameProperty|GameStringProperty.value -> value: string "'Property value'"
+GameProperty|GameTimerProperty.value -> value: float "'Property value'"
+GameSoftBodySettings.bending_const -> use_bending_constraints: boolean "'Enable bending constraints'"
+GameSoftBodySettings.cluster_iterations -> cluster_iterations: int "'Specify the number of cluster iterations'"
+GameSoftBodySettings.cluster_rigid_to_softbody -> use_cluster_rigid_to_softbody: boolean "'Enable cluster collision between soft and rigid body'"
+GameSoftBodySettings.cluster_soft_to_softbody -> use_cluster_soft_to_softbody: boolean "'Enable cluster collision between soft and soft body'"
+GameSoftBodySettings.dynamic_friction -> dynamic_friction: float "'Dynamic Friction'"
+GameSoftBodySettings.linstiff -> linear_stiffness: float "'Linear stiffness of the soft body links'"
+GameSoftBodySettings.margin -> margin: float "'Collision margin for soft body. Small value makes the algorithm unstable'"
+GameSoftBodySettings.position_iterations -> position_iterations: int "'Position solver iterations'"
+GameSoftBodySettings.shape_match -> use_shape_match: boolean "'Enable soft body shape matching goal'"
+GameSoftBodySettings.threshold -> threshold: float "'Shape matching threshold'"
+GameSoftBodySettings.welding -> weld_threshold: float "'Welding threshold: distance between nearby vertices to be considered equal => set to 0.0 to disable welding test and speed up scene loading (ok if the mesh has no duplicates)'"
+Header.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+Header.bl_space_type -> bl_space_type: enum "'NO DESCRIPTION'"
+Header.layout -> layout: pointer, "'(read-only)'"
+Histogram.mode -> mode: enum "'Channels to display when drawing the histogram'"
+ID.fake_user -> use_fake_user: boolean "'Saves this datablock even if it has no users'"
+ID.library -> library: pointer, "'(read-only) Library file the datablock is linked from'"
+ID.name -> name: string "'Unique datablock ID name'"
+ID.tag -> tag: boolean "'Tools can use this to tag data, (initial state is undefined)'"
+ID.users -> users: int, "'(read-only) Number of times this datablock is referenced'"
+IDProperty.collection -> collection: collection, "'(read-only)'"
+IDProperty.double -> double: float "'NO DESCRIPTION'"
+IDProperty.double_array -> double_array: float "'NO DESCRIPTION'"
+IDProperty.float -> float: float "'NO DESCRIPTION'"
+IDProperty.float_array -> float_array: float "'NO DESCRIPTION'"
+IDProperty.group -> group: pointer, "'(read-only)'"
+IDProperty.int -> int: int "'NO DESCRIPTION'"
+IDProperty.int_array -> int_array: int "'NO DESCRIPTION'"
+IDProperty.string -> string: string "'NO DESCRIPTION'"
+IDPropertyGroup.name -> name: string "'Unique name used in the code and scripting'"
+IDPropertyGroup|NetRenderJob.name -> name: string "'NO DESCRIPTION'"
+IDPropertyGroup|NetRenderSettings.active_blacklisted_slave_index -> active_blacklisted_slave_index: int "'NO DESCRIPTION'"
+IDPropertyGroup|NetRenderSettings.active_job_index -> active_job_index: int "'NO DESCRIPTION'"
+IDPropertyGroup|NetRenderSettings.active_slave_index -> active_slave_index: int "'NO DESCRIPTION'"
+IDPropertyGroup|NetRenderSettings.chunks -> chunks: int "'Number of frame to dispatch to each slave in one chunk'"
+IDPropertyGroup|NetRenderSettings.job_category -> job_category: string "'Category of the job'"
+IDPropertyGroup|NetRenderSettings.job_id -> job_id: string "'id of the last sent render job'"
+IDPropertyGroup|NetRenderSettings.job_name -> job_name: string "'Name of the job'"
+IDPropertyGroup|NetRenderSettings.jobs -> jobs: collection, "'(read-only)'"
+IDPropertyGroup|NetRenderSettings.master_broadcast -> use_master_broadcast: boolean "'broadcast master server address on local network'"
+IDPropertyGroup|NetRenderSettings.master_clear -> use_master_clear: boolean "'delete saved files on exit'"
+IDPropertyGroup|NetRenderSettings.mode -> mode: enum "'Mode of operation of this instance'"
+IDPropertyGroup|NetRenderSettings.path -> path: string "'Path for temporary files'"
+IDPropertyGroup|NetRenderSettings.priority -> priority: int "'Priority of the job'"
+IDPropertyGroup|NetRenderSettings.server_address -> server_address: string "'IP or name of the master render server'"
+IDPropertyGroup|NetRenderSettings.server_port -> server_port: int "'port of the master render server'"
+IDPropertyGroup|NetRenderSettings.slave_clear -> use_slave_clear: boolean "'delete downloaded files on exit'"
+IDPropertyGroup|NetRenderSettings.slave_outputlog -> use_slave_output_log: boolean "'Output render text log to console as well as sending it to the master'"
+IDPropertyGroup|NetRenderSettings.slave_thumb -> use_slave_thumb: boolean "'Generate thumbnails on slaves instead of master'"
+IDPropertyGroup|NetRenderSettings.slaves -> slaves: collection, "'(read-only)'"
+IDPropertyGroup|NetRenderSettings.slaves_blacklist -> slaves_blacklist: collection, "'(read-only)'"
+IDPropertyGroup|NetRenderSlave.name -> name: string "'NO DESCRIPTION'"
+IDPropertyGroup|OperatorFileListElement.name -> name: string "'the name of a file or directory within a file list'"
+IDPropertyGroup|OperatorMousePath.loc -> loc: float "'Mouse location'"
+IDPropertyGroup|OperatorMousePath.time -> time: float "'Time of mouse location'"
+IDPropertyGroup|OperatorStrokeElement.location -> location: float "'NO DESCRIPTION'"
+IDPropertyGroup|OperatorStrokeElement.mouse -> mouse: float "'NO DESCRIPTION'"
+IDPropertyGroup|OperatorStrokeElement.pen_flip -> pen_flip: boolean "'NO DESCRIPTION'"
+IDPropertyGroup|OperatorStrokeElement.pressure -> pressure: float "'Tablet pressure'"
+IDPropertyGroup|OperatorStrokeElement.time -> time: float "'NO DESCRIPTION'"
+IDPropertyGroup|PoseTemplate.name -> name: string "'NO DESCRIPTION'"
+IDPropertyGroup|PoseTemplateSettings.active_template_index -> active_template_index: int "'NO DESCRIPTION'"
+IDPropertyGroup|PoseTemplateSettings.generate_def_rig -> use_generate_deform_rig: boolean "'Create a copy of the metarig, constrainted by the generated rig'"
+IDPropertyGroup|PoseTemplateSettings.templates -> templates: collection, "'(read-only)'"
++ * ID|Action.fcurves -> fcurves: collection, "'(read-only) The individual F-Curves that make up the Action'"
++ * ID|Action.groups -> groups: collection, "'(read-only) Convenient groupings of F-Curves'"
++ * ID|Action.pose_markers -> pose_markers: collection, "'(read-only) Markers specific to this Action, for labeling poses'"
++ * ID|Armature.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
++ * ID|Armature.auto_ik -> use_auto_ik: boolean "'Add temporaral IK constraints while grabbing bones in Pose Mode'"
++ * ID|Armature.bones -> bones: collection, "'(read-only)'"
++ * ID|Armature.deform_envelope -> use_deform_envelopes: boolean "'Enable Bone Envelopes when defining deform'"
++ * ID|Armature.deform_quaternion -> use_deform_preserve_volume: boolean "'Deform rotation interpolation with quaternions'"
++ * ID|Armature.deform_vertexgroups -> use_deform_vertex_groups: boolean "'Enable Vertex Groups when defining deform'"
++ * ID|Armature.delay_deform -> use_deform_delay: boolean '"Don\'t deform children when manipulating bones in Pose Mode"'
++ * ID|Armature.draw_axes -> show_axes: boolean "'Draw bone axes'"
++ * ID|Armature.draw_custom_bone_shapes -> show_bone_custom_shapes: boolean "'Draw bones with their custom shapes'"
++ * ID|Armature.draw_group_colors -> show_group_colors: boolean "'Draw bone group colors'"
++ * ID|Armature.draw_names -> show_names: boolean "'Draw bone names'"
++ * ID|Armature.drawtype -> draw_type: enum "'NO DESCRIPTION'"
++ * ID|Armature.edit_bones -> edit_bones: collection, "'(read-only)'"
++ * ID|Armature.ghost_frame_end -> ghost_frame_end: int '"End frame of range of Ghosts to display (not for \'Around Current Frame\' Onion-skinning method)"'
++ * ID|Armature.ghost_frame_start -> ghost_frame_start: int '"Starting frame of range of Ghosts to display (not for \'Around Current Frame\' Onion-skinning method)"'
++ * ID|Armature.ghost_only_selected -> show_only_ghost_selected: boolean "'NO DESCRIPTION'"
++ * ID|Armature.ghost_size -> ghost_size: int '"Frame step for Ghosts (not for \'On Keyframes\' Onion-skinning method)"'
++ * ID|Armature.ghost_step -> ghost_step: int '"Number of frame steps on either side of current frame to show as ghosts (only for \'Around Current Frame\' Onion-skinning method)"'
++ * ID|Armature.ghost_type -> ghost_type: enum "'Method of Onion-skinning for active Action'"
++ * ID|Armature.layer -> layers: boolean "'Armature layer visibility'"
++ * ID|Armature.layer_protection -> layers_protected: boolean "'Protected layers in Proxy Instances are restored to Proxy settings on file reload and undo'"
++ * ID|Armature.pose_position -> pose_position: enum "'Show armature in binding pose or final posed state'"
++ * ID|Armature.x_axis_mirror -> use_mirror_x: boolean "'Apply changes to matching bone on opposite side of X-Axis'"
++ * ID|Brush.add_col -> cursor_color_add: float "'Color of cursor when adding'"
++ * ID|Brush.autosmooth_factor -> autosmooth_factor: float "'Amount of smoothing to automatically apply to each stroke'"
++ * ID|Brush.blend -> blend: enum "'Brush blending mode'"
++ * ID|Brush.clone_alpha -> clone_alpha: float "'Opacity of clone image display'"
++ * ID|Brush.clone_image -> clone_image: pointer "'Image for clone tool'"
++ * ID|Brush.clone_offset -> clone_offset: float "'NO DESCRIPTION'"
++ * ID|Brush.color -> color: float "'NO DESCRIPTION'"
++ * ID|Brush.crease_pinch_factor -> crease_pinch_factor: float "'How much the crease brush pinches'"
++ * ID|Brush.curve -> curve: pointer, "'(read-only) Editable falloff curve'"
++ * ID|Brush.direction -> direction: enum "'Mapping type to use for this image in the game engine'"
++ * ID|Brush.edge_to_edge -> use_edge_to_edge: boolean "'Drag anchor brush from edge-to-edge'"
++ * ID|Brush.icon_filepath -> icon_filepath: string "'File path to brush icon'"
++ * ID|Brush.imagepaint_tool -> imagepaint_tool: enum "'NO DESCRIPTION'"
++ * ID|Brush.jitter -> jitter: float "'Jitter the position of the brush while painting'"
++ * ID|Brush.normal_weight -> normal_weight: float "'How much grab will pull vertexes out of surface during a grab'"
++ * ID|Brush.plane_offset -> plane_offset: float "'Adjusts plane on which the brush acts towards or away from the object surface'"
++ * ID|Brush.plane_trim -> plane_trim: float "'If a vertex is further from offset plane than this then it is not affected'"
++ * ID|Brush.rate -> rate: float "'Interval between paints for Airbrush'"
++ * ID|Brush.restore_mesh -> use_restore_mesh: boolean "'Allows a single dot to be carefully positioned'"
++ * ID|Brush.sculpt_plane -> sculpt_plane: enum "'NO DESCRIPTION'"
++ * ID|Brush.sculpt_tool -> sculpt_tool: enum "'NO DESCRIPTION'"
++ * ID|Brush.size -> size: int "'Diameter of the brush'"
++ * ID|Brush.smooth_stroke_factor -> smooth_stroke_factor: float "'Higher values give a smoother stroke'"
++ * ID|Brush.smooth_stroke_radius -> smooth_stroke_radius: int "'Minimum distance from last point before stroke continues'"
++ * ID|Brush.spacing -> spacing: float "'Spacing between brush stamps'"
++ * ID|Brush.strength -> strength: float "'The amount of pressure on the brush'"
++ * ID|Brush.stroke_method -> stroke_method: enum "'NO DESCRIPTION'"
++ * ID|Brush.sub_col -> cursor_color_subtract: float "'Color of cursor when subtracting'"
++ * ID|Brush.texture -> texture: pointer "'NO DESCRIPTION'"
++ * ID|Brush.texture_angle_source -> texture_angle_source: enum "'NO DESCRIPTION'"
+ODD NAME CHANGE IT? * ID|Brush.texture_angle_source_no_random -> texture_angle_source_no_random: enum 'NO DESCRIPTION'
++ * ID|Brush.texture_overlay_alpha -> texture_overlay_alpha: int "'NO DESCRIPTION'"
++ * ID|Brush.texture_sample_bias -> texture_sample_bias: float "'Value added to texture samples'"
++ * ID|Brush.texture_slot -> texture_slot: pointer, "'(read-only)'"
++ * ID|Brush.unprojected_radius -> unprojected_radius: float "'Radius of brush in Blender units'"
++ * ID|Brush.use_accumulate -> use_accumulate: boolean "'Accumulate stroke dabs on top of each other'"
++ * ID|Brush.use_adaptive_space -> use_adaptive_space: boolean "'Space daubs according to surface orientation instead of screen space'"
++ * ID|Brush.use_airbrush -> use_airbrush: boolean "'Keep applying paint effect while holding mouse (spray)'"
++ * ID|Brush.use_alpha -> use_alpha: boolean "'When this is disabled, lock alpha while painting'"
++ * ID|Brush.use_anchor -> use_anchor: boolean "'Keep the brush anchored to the initial location'"
++ * ID|Brush.use_custom_icon -> use_custom_icon: boolean "'Set the brush icon from an image file'"
++ * ID|Brush.use_frontface -> use_frontface: boolean "'Brush only affects vertexes that face the viewer'"
++ * ID|Brush.use_inverse_smooth_pressure -> use_inverse_smooth_pressure: boolean "'Lighter pressure causes more smoothing to be applied'"
++ * ID|Brush.use_jitter_pressure -> use_pressure_jitter: boolean "'Enable tablet pressure sensitivity for jitter'"
++ * ID|Brush.use_locked_size -> use_locked_size: boolean "'When locked brush stays same size relative to object; when unlocked brush size is given in pixels'"
++ * ID|Brush.use_offset_pressure -> use_offset_pressure: boolean "'Enable tablet pressure sensitivity for offset'"
++ * ID|Brush.use_original_normal -> use_original_normal: boolean "'When locked keep using normal of surface where stroke was initiated'"
++ * ID|Brush.use_paint_sculpt -> use_paint_sculpt: boolean "'Use this brush in sculpt mode'"
++ * ID|Brush.use_paint_texture -> use_paint_texture: boolean "'Use this brush in texture paint mode'"
++ * ID|Brush.use_paint_vertex -> use_paint_vertex: boolean "'Use this brush in vertex paint mode'"
++ * ID|Brush.use_paint_weight -> use_paint_weight: boolean "'Use this brush in weight paint mode'"
++ * ID|Brush.use_persistent -> use_persistent: boolean "'Sculpts on a persistent layer of the mesh'"
++ * ID|Brush.use_plane_trim -> use_plane_trim: boolean "'Enable Plane Trim'"
++ * ID|Brush.use_rake -> use_rake: boolean "'Rotate the brush texture to match the stroke direction'"
++ * ID|Brush.use_random_rotation -> use_random_rotation: boolean "'Rotate the brush texture at random'"
++ * ID|Brush.use_size_pressure -> use_pressure_size: boolean "'Enable tablet pressure sensitivity for size'"
++ * ID|Brush.use_smooth_stroke -> use_smooth_stroke: boolean "'Brush lags behind mouse and follows a smoother path'"
++ * ID|Brush.use_space -> use_space: boolean "'Limit brush application to the distance specified by spacing'"
++ * ID|Brush.use_space_atten -> use_space_atten: boolean "'Automatically adjusts strength to give consistent results for different spacings'"
++ * ID|Brush.use_spacing_pressure -> use_pressure_spacing: boolean "'Enable tablet pressure sensitivity for spacing'"
++ * ID|Brush.use_strength_pressure -> use_pressure_strength: boolean "'Enable tablet pressure sensitivity for strength'"
++ * ID|Brush.use_texture_overlay -> use_texture_overlay: boolean "'Show texture in viewport'"
++ * ID|Brush.use_wrap -> use_wrap: boolean "'Enable torus wrapping while painting'"
++ * ID|Brush.vertexpaint_tool -> vertexpaint_tool: enum "'NO DESCRIPTION'"
++ * ID|Camera.angle -> angle: float "'Perspective Camera lens field of view in degrees'"
++ * ID|Camera.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
++ * ID|Camera.clip_end -> clip_end: float "'Camera far clipping distance'"
++ * ID|Camera.clip_start -> clip_start: float "'Camera near clipping distance'"
++ * ID|Camera.dof_distance -> dof_distance: float "'Distance to the focus point for depth of field'"
++ * ID|Camera.dof_object -> dof_object: pointer "'Use this object to define the depth of field focal point'"
++ * ID|Camera.draw_size -> draw_size: float "'Apparent size of the Camera object in the 3D View'"
++ * ID|Camera.lens -> lens: float "'Perspective Camera lens value in millimeters'"
++ * ID|Camera.lens_unit -> lens_unit: enum "'Unit to edit lens in for the user interface'"
++ * ID|Camera.ortho_scale -> ortho_scale: float "'Orthographic Camera scale (similar to zoom)'"
++ * ID|Camera.panorama -> use_panorama: boolean "'Render the scene with a cylindrical camera for pseudo-fisheye lens effects'"
++ * ID|Camera.passepartout_alpha -> passepartout_alpha: float "'Opacity (alpha) of the darkened overlay in Camera view'"
++ * ID|Camera.shift_x -> shift_x: float "'Perspective Camera horizontal shift'"
++ * ID|Camera.shift_y -> shift_y: float "'Perspective Camera vertical shift'"
++ * ID|Camera.show_limits -> show_limits: boolean "'Draw the clipping range and focus point on the camera'"
++ * ID|Camera.show_mist -> show_mist: boolean "'Draw a line from the Camera to indicate the mist area'"
++ * ID|Camera.show_name -> show_name: boolean '"Show the active Camera\'s name in Camera view"'
++ * ID|Camera.show_passepartout -> show_passepartout: boolean "'Show a darkened overlay outside the image area in Camera view'"
++ * ID|Camera.show_title_safe -> show_title_safe: boolean "'Show indicators for the title safe zone in Camera view'"
++ * ID|Camera.type -> type: enum "'Camera types'"
+ID|Curve.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Curve.auto_texspace -> use_auto_texspace: boolean '"Adjusts active object\'s texture space automatically when transforming object"'
+ID|Curve.back -> use_fill_back: boolean "'Draw filled back for extruded/beveled curves'"
+ID|Curve.bevel_depth -> bevel_depth: float "'Bevel depth when not using a bevel object'"
+ID|Curve.bevel_object -> bevel_object: pointer "'Curve object name that defines the bevel shape'"
+ID|Curve.bevel_resolution -> bevel_resolution: int "'Bevel resolution when depth is non-zero and no specific bevel object has been defined'"
+ID|Curve.dimensions -> dimensions: enum "'Select 2D or 3D curve type'"
+ID|Curve.draw_handles -> show_handles: boolean "'Display bezier handles in editmode'"
+ID|Curve.draw_normals -> show_normals: boolean "'Display 3D curve normals in editmode'"
+ID|Curve.eval_time -> eval_time: float '"Parametric position along the length of the curve that Objects \'following\' it should be at. Position is evaluated by dividing by the \'Path Length\' value"'
+ID|Curve.extrude -> extrude: float "'Amount of curve extrusion when not using a bevel object'"
+ID|Curve.front -> use_fill_front: boolean "'Draw filled front for extruded/beveled curves'"
+ID|Curve.map_along_length -> use_map_along_length: boolean "'Generate texture mapping coordinates following the curve direction, rather than the local bounding box'"
+ID|Curve.materials -> materials: collection, "'(read-only)'"
+ID|Curve.path_length -> path_length: int '"The number of frames that are needed to traverse the path, defining the maximum value for the \'Evaluation Time\' setting"'
+ID|Curve.render_resolution_u -> render_resolution_u: int "'Surface resolution in U direction used while rendering. Zero skips this property'"
+ID|Curve.render_resolution_v -> render_resolution_v: int "'Surface resolution in V direction used while rendering. Zero skips this property'"
+ID|Curve.resolution_u -> resolution_u: int "'Surface resolution in U direction'"
+ID|Curve.resolution_v -> resolution_v: int "'Surface resolution in V direction'"
+ID|Curve.shape_keys -> shape_keys: pointer, "'(read-only)'"
+ID|Curve.splines -> splines: collection, "'(read-only) Collection of splines in this curve data object'"
+ID|Curve.taper_object -> taper_object: pointer "'Curve object name that defines the taper (width)'"
+ID|Curve.texspace_loc -> texspace_loc: float "'Texture space location'"
+ID|Curve.texspace_size -> texspace_size: float "'Texture space size'"
+ID|Curve.twist_mode -> twist_mode: enum "'The type of tilt calculation for 3D Curves'"
+ID|Curve.twist_smooth -> twist_smooth: float "'Smoothing iteration for tangents'"
+ID|Curve.use_deform_bounds -> use_deform_bounds: boolean "'Use the mesh bounds to clamp the deformation'"
+ID|Curve.use_deform_fill -> use_fill_deform: boolean "'Fill curve after applying deformation'"
+ID|Curve.use_path -> use_path: boolean "'Enable the curve to become a translation path'"
+ID|Curve.use_path_follow -> use_path_follow: boolean "'Make curve path children to rotate along the path'"
+ID|Curve.use_radius -> use_radius: boolean "'Option for paths: apply the curve radius with path following it and deforming'"
+ID|Curve.use_stretch -> use_stretch: boolean "'Option for curve-deform: makes deformed child to stretch along entire path'"
+ID|Curve.use_time_offset -> use_time_offset: boolean "'Children will use Time Offset value as path distance offset'"
+ID|Curve.width -> width: float "'Scale the original width (1.0) based on given factor'"
+ID|Curve|SurfaceCurve.map_along_length -> use_map_along_length: boolean "'Generate texture mapping coordinates following the curve direction, rather than the local bounding box'"
+ID|Curve|TextCurve.active_textbox -> active_textbox: int "'NO DESCRIPTION'"
+ID|Curve|TextCurve.body -> body: string "'contents of this text object'"
+ID|Curve|TextCurve.body_format -> body_format: collection, "'(read-only) Stores the style of each character'"
+ID|Curve|TextCurve.edit_format -> edit_format: pointer, "'(read-only) Editing settings character formatting'"
+ID|Curve|TextCurve.family -> family: string "'Use Blender Objects as font characters. Give font objects a common name followed by the character it represents, eg. familya, familyb etc, and turn on Verts Duplication'"
+ID|Curve|TextCurve.fast -> use_fast_editing: boolean '"Don\'t fill polygons while editing"'
+ID|Curve|TextCurve.font -> font: pointer "'NO DESCRIPTION'"
+ID|Curve|TextCurve.line_dist -> line_distance: float "'NO DESCRIPTION'"
+ID|Curve|TextCurve.map_along_length -> use_map_along_length: boolean "'Generate texture mapping coordinates following the curve direction, rather than the local bounding box'"
+ID|Curve|TextCurve.offset_x -> offset_x: float "'Horizontal offset from the object origin'"
+ID|Curve|TextCurve.offset_y -> offset_y: float "'Vertical offset from the object origin'"
+ID|Curve|TextCurve.shear -> shear: float "'Italic angle of the characters'"
+ID|Curve|TextCurve.small_caps_scale -> small_caps_scale: float "'Scale of small capitals'"
+ID|Curve|TextCurve.spacemode -> spacemode: enum "'Text align from the object center'"
+ID|Curve|TextCurve.spacing -> spacing: float "'NO DESCRIPTION'"
+ID|Curve|TextCurve.text_on_curve -> text_on_curve: pointer "'Curve deforming text object'"
+ID|Curve|TextCurve.text_size -> text_size: float "'NO DESCRIPTION'"
+ID|Curve|TextCurve.textboxes -> textboxes: collection, "'(read-only)'"
+ID|Curve|TextCurve.ul_height -> ul_height: float "'NO DESCRIPTION'"
+ID|Curve|TextCurve.ul_position -> ul_position: float "'Vertical position of underline'"
+ID|Curve|TextCurve.word_spacing -> word_spacing: float "'NO DESCRIPTION'"
+ID|GreasePencil.draw_mode -> draw_mode: enum "'NO DESCRIPTION'"
+ID|GreasePencil.layers -> layers: collection, "'(read-only)'"
+ID|GreasePencil.use_stroke_endpoints -> use_stroke_endpoints: boolean "'Only use the first and last parts of the stroke for snapping'"
+ID|Group.dupli_offset -> dupli_offset: float "'Offset from the origin to use when instancing as DupliGroup'"
+ID|Group.layer -> layers: boolean "'Layers visible when this groups is instanced as a dupli'"
+ID|Group.objects -> objects: collection, "'(read-only) A collection of this groups objects'"
+ID|Image.animated -> use_animation: boolean "'Use as animated texture in the game engine'"
+ID|Image.animation_end -> animation_end: int "'End frame of an animated texture'"
+ID|Image.animation_speed -> animation_speed: int "'Speed of the animation in frames per second'"
+ID|Image.animation_start -> animation_start: int "'Start frame of an animated texture'"
+ID|Image.bindcode -> bindcode: int, "'(read-only) OpenGL bindcode'"
+ID|Image.clamp_x -> use_clamp_x: boolean "'Disable texture repeating horizontally'"
+ID|Image.clamp_y -> use_clamp_y: boolean "'Disable texture repeating vertically'"
+ID|Image.depth -> depth: int, "'(read-only) Image bit depth'"
+ID|Image.dirty -> is_dirty: boolean, "'(read-only) Image has changed and is not saved'"
+ID|Image.display_aspect -> display_aspect: float "'Display Aspect for this image, does not affect rendering'"
+ID|Image.field_order -> field_order: enum "'Order of video fields. Select which lines are displayed first'"
+ID|Image.fields -> use_fields: boolean "'Use fields of the image'"
+ID|Image.file_format -> file_format: enum "'Format used for re-saving this file'"
+ID|Image.filepath -> filepath: string "'Image/Movie file name'"
+ID|Image.filepath_raw -> filepath_raw: string "'Image/Movie file name (without data refreshing)'"
+ID|Image.generated_height -> generated_height: int "'Generated image height'"
+ID|Image.generated_type -> generated_type: enum "'Generated image type'"
+ID|Image.generated_width -> generated_width: int "'Generated image width'"
+ID|Image.has_data -> has_data: boolean, "'(read-only) True if this image has data'"
+ID|Image.mapping -> mapping: enum "'Mapping type to use for this image in the game engine'"
+ID|Image.packed_file -> packed_file: pointer, "'(read-only)'"
+ID|Image.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+ID|Image.size -> size: int, "'(read-only) Width and height in pixels, zero when image data cant be loaded'"
+ID|Image.source -> source: enum "'Where the image comes from'"
+ID|Image.tiles -> use_tiles: boolean "'Use of tilemode for faces (default shift-LMB to pick the tile for selected faces)'"
+ID|Image.tiles_x -> tiles_x: int "'Degree of repetition in the X direction'"
+ID|Image.tiles_y -> tiles_y: int "'Degree of repetition in the Y direction'"
+ID|Image.type -> type: enum, "'(read-only) How to generate the image'"
+ID|Key.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Key.keys -> keys: collection, "'(read-only) Shape keys'"
+ID|Key.reference_key -> reference_key: pointer, "'(read-only)'"
+ID|Key.relative -> use_relative: boolean "'Makes shape keys relative'"
+ID|Key.slurph -> slurph: int "'Creates a delay in amount of frames in applying keypositions, first vertex goes first'"
+ID|Key.user -> user: pointer, "'(read-only) Datablock using these shape keys'"
+ID|Lamp.active_texture -> active_texture: pointer "'Active texture slot being displayed'"
+ID|Lamp.active_texture_index -> active_texture_index: int "'Index of active texture slot'"
+ID|Lamp.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Lamp.color -> color: float "'Light color'"
+ID|Lamp.diffuse -> use_diffuse: boolean "'Lamp does diffuse shading'"
+ID|Lamp.distance -> distance: float "'Falloff distance - the light is at half the original intensity at this point'"
+ID|Lamp.energy -> energy: float "'Amount of light that the lamp emits'"
+ID|Lamp.layer -> use_own_layer: boolean "'Illuminates objects only on the same layer the lamp is on'"
+ID|Lamp.negative -> use_negative: boolean "'Lamp casts negative light'"
+ID|Lamp.specular -> use_specular: boolean "'Lamp creates specular highlights'"
+ID|Lamp.texture_slots -> texture_slots: collection, "'(read-only) Texture slots defining the mapping and influence of textures'"
+ID|Lamp.type -> type: enum "'Type of Lamp'"
++ * ID|Lamp|AreaLamp.dither -> use_dither: boolean "'Use 2x2 dithering for sampling (Constant Jittered sampling)'"
++ * ID|Lamp|AreaLamp.gamma -> gamma: float "'Light gamma correction value'"
++ * ID|Lamp|AreaLamp.jitter -> use_jitter: boolean "'Use noise for sampling (Constant Jittered sampling)'"
++ * ID|Lamp|AreaLamp.only_shadow -> use_only_shadow: boolean "'Causes light to cast shadows only without illuminating objects'"
++ * ID|Lamp|AreaLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float "'Threshold for Adaptive Sampling (Raytraced shadows)'"
++ * ID|Lamp|AreaLamp.shadow_color -> shadow_color: float "'Color of shadows cast by the lamp'"
++ * ID|Lamp|AreaLamp.shadow_layer -> use_shadow_layer: boolean "'Causes only objects on the same layer to cast shadows'"
++ * ID|Lamp|AreaLamp.shadow_method -> shadow_method: enum "'Method to compute lamp shadow with'"
++ * ID|Lamp|AreaLamp.shadow_ray_samples_x -> shadow_ray_samples_x: int "'Amount of samples taken extra (samples x samples)'"
++ * ID|Lamp|AreaLamp.shadow_ray_samples_y -> shadow_ray_samples_y: int "'Amount of samples taken extra (samples x samples)'"
++ * ID|Lamp|AreaLamp.shadow_ray_sampling_method -> shadow_ray_sample_method: enum "'Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower'"
++ * ID|Lamp|AreaLamp.shadow_soft_size -> shadow_soft_size: float "'Light size for ray shadow sampling (Raytraced shadows)'"
++ * ID|Lamp|AreaLamp.shape -> shape: enum "'Shape of the area lamp'"
++ * ID|Lamp|AreaLamp.size -> size: float "'Size of the area of the area Lamp, X direction size for Rectangle shapes'"
++ * ID|Lamp|AreaLamp.size_y -> size_y: float "'Size of the area of the area Lamp in the Y direction for Rectangle shapes'"
++ * ID|Lamp|AreaLamp.umbra -> use_umbra: boolean "'Emphasize parts that are fully shadowed (Constant Jittered sampling)'"
+ID|Lamp|PointLamp.falloff_curve -> falloff_curve: pointer, "'(read-only) Custom Lamp Falloff Curve'"
+ID|Lamp|PointLamp.falloff_type -> falloff_type: enum "'Intensity Decay with distance'"
+ID|Lamp|PointLamp.linear_attenuation -> linear_attenuation: float "'Linear distance attenuation'"
+ID|Lamp|PointLamp.only_shadow -> use_only_shadow: boolean "'Causes light to cast shadows only without illuminating objects'"
+ID|Lamp|PointLamp.quadratic_attenuation -> quadratic_attenuation: float "'Quadratic distance attenuation'"
+ID|Lamp|PointLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float "'Threshold for Adaptive Sampling (Raytraced shadows)'"
+ID|Lamp|PointLamp.shadow_color -> shadow_color: float "'Color of shadows cast by the lamp'"
+ID|Lamp|PointLamp.shadow_layer -> use_shadow_layer: boolean "'Causes only objects on the same layer to cast shadows'"
+ID|Lamp|PointLamp.shadow_method -> shadow_method: enum "'Method to compute lamp shadow with'"
+ID|Lamp|PointLamp.shadow_ray_samples -> shadow_ray_samples: int "'Amount of samples taken extra (samples x samples)'"
+ID|Lamp|PointLamp.shadow_ray_sampling_method -> shadow_ray_sample_method: enum "'Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower'"
+ID|Lamp|PointLamp.shadow_soft_size -> shadow_soft_size: float "'Light size for ray shadow sampling (Raytraced shadows)'"
+ID|Lamp|PointLamp.sphere -> use_sphere: boolean "'Sets light intensity to zero beyond lamp distance'"
+ID|Lamp|SpotLamp.auto_clip_end -> use_auto_clip_end: boolean "'Automatic calculation of clipping-end, based on visible vertices'"
+ID|Lamp|SpotLamp.auto_clip_start -> use_auto_clip_start: boolean "'Automatic calculation of clipping-start, based on visible vertices'"
+ID|Lamp|SpotLamp.compression_threshold -> compression_threshold: float "'Deep shadow map compression threshold'"
+ID|Lamp|SpotLamp.falloff_curve -> falloff_curve: pointer, "'(read-only) Custom Lamp Falloff Curve'"
+ID|Lamp|SpotLamp.falloff_type -> falloff_type: enum "'Intensity Decay with distance'"
+ID|Lamp|SpotLamp.halo -> use_halo: boolean "'Renders spotlight with a volumetric halo (Buffer Shadows)'"
+ID|Lamp|SpotLamp.halo_intensity -> halo_intensity: float '"Brightness of the spotlight\'s halo cone (Buffer Shadows)"'
+ID|Lamp|SpotLamp.halo_step -> halo_step: int "'Volumetric halo sampling frequency'"
+ID|Lamp|SpotLamp.linear_attenuation -> linear_attenuation: float "'Linear distance attenuation'"
+ID|Lamp|SpotLamp.only_shadow -> use_only_shadow: boolean "'Causes light to cast shadows only without illuminating objects'"
+ID|Lamp|SpotLamp.quadratic_attenuation -> quadratic_attenuation: float "'Quadratic distance attenuation'"
+ID|Lamp|SpotLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float "'Threshold for Adaptive Sampling (Raytraced shadows)'"
+ID|Lamp|SpotLamp.shadow_buffer_bias -> shadow_buffer_bias: float "'Shadow buffer sampling bias'"
+ID|Lamp|SpotLamp.shadow_buffer_clip_end -> shadow_buffer_clip_end: float "'Shadow map clip end beyond which objects will not generate shadows'"
+ID|Lamp|SpotLamp.shadow_buffer_clip_start -> shadow_buffer_clip_start: float "'Shadow map clip start: objects closer will not generate shadows'"
+ID|Lamp|SpotLamp.shadow_buffer_samples -> shadow_buffer_samples: int "'Number of shadow buffer samples'"
+ID|Lamp|SpotLamp.shadow_buffer_size -> shadow_buffer_size: int "'Resolution of the shadow buffer, higher values give crisper shadows but use more memory'"
+ID|Lamp|SpotLamp.shadow_buffer_soft -> shadow_buffer_soft: float "'Size of shadow buffer sampling area'"
+ID|Lamp|SpotLamp.shadow_buffer_type -> shadow_buffer_type: enum "'Type of shadow buffer'"
+ID|Lamp|SpotLamp.shadow_color -> shadow_color: float "'Color of shadows cast by the lamp'"
+ID|Lamp|SpotLamp.shadow_filter_type -> shadow_filter_type: enum "'Type of shadow filter (Buffer Shadows)'"
+ID|Lamp|SpotLamp.shadow_layer -> use_shadow_layer: boolean "'Causes only objects on the same layer to cast shadows'"
+ID|Lamp|SpotLamp.shadow_method -> shadow_method: enum "'Method to compute lamp shadow with'"
+ID|Lamp|SpotLamp.shadow_ray_samples -> shadow_ray_samples: int "'Amount of samples taken extra (samples x samples)'"
+ID|Lamp|SpotLamp.shadow_ray_sampling_method -> shadow_ray_sample_method: enum "'Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower'"
+ID|Lamp|SpotLamp.shadow_sample_buffers -> shadow_sample_buffers: enum "'Number of shadow buffers to render for better AA, this increases memory usage'"
+ID|Lamp|SpotLamp.shadow_soft_size -> shadow_soft_size: float "'Light size for ray shadow sampling (Raytraced shadows)'"
+ID|Lamp|SpotLamp.show_cone -> show_cone: boolean "'Draw transparent cone in 3D view to visualize which objects are contained in it'"
+ID|Lamp|SpotLamp.sphere -> use_sphere: boolean "'Sets light intensity to zero beyond lamp distance'"
+ID|Lamp|SpotLamp.spot_blend -> spot_blend: float "'The softness of the spotlight edge'"
+ID|Lamp|SpotLamp.spot_size -> spot_size: float "'Angle of the spotlight beam in degrees'"
+ID|Lamp|SpotLamp.square -> use_square: boolean "'Casts a square spot light shape'"
+ID|Lamp|SunLamp.only_shadow -> use_only_shadow: boolean "'Causes light to cast shadows only without illuminating objects'"
+ID|Lamp|SunLamp.shadow_adaptive_threshold -> shadow_adaptive_threshold: float "'Threshold for Adaptive Sampling (Raytraced shadows)'"
+ID|Lamp|SunLamp.shadow_color -> shadow_color: float "'Color of shadows cast by the lamp'"
+ID|Lamp|SunLamp.shadow_layer -> use_shadow_layer: boolean "'Causes only objects on the same layer to cast shadows'"
+ID|Lamp|SunLamp.shadow_method -> shadow_method: enum "'Method to compute lamp shadow with'"
+ID|Lamp|SunLamp.shadow_ray_samples -> shadow_ray_samples: int "'Amount of samples taken extra (samples x samples)'"
+ID|Lamp|SunLamp.shadow_ray_sampling_method -> shadow_ray_sampling_method: enum "'Method for generating shadow samples: Adaptive QMC is fastest, Constant QMC is less noisy but slower'"
+ID|Lamp|SunLamp.shadow_soft_size -> shadow_soft_size: float "'Light size for ray shadow sampling (Raytraced shadows)'"
+ID|Lamp|SunLamp.sky -> sky: pointer, "'(read-only) Sky related settings for sun lamps'"
+ID|Lattice.interpolation_type_u -> interpolation_type_u: enum "'NO DESCRIPTION'"
+ID|Lattice.interpolation_type_v -> interpolation_type_v: enum "'NO DESCRIPTION'"
+ID|Lattice.interpolation_type_w -> interpolation_type_w: enum "'NO DESCRIPTION'"
+ID|Lattice.outside -> use_outside: boolean "'Only draw, and take into account, the outer vertices'"
+ID|Lattice.points -> points: collection, "'(read-only) Points of the lattice'"
+ID|Lattice.points_u -> points_u: int "'Points in U direction'"
+ID|Lattice.points_v -> points_v: int "'Points in V direction'"
+ID|Lattice.points_w -> points_w: int "'Points in W direction'"
+ID|Lattice.shape_keys -> shape_keys: pointer, "'(read-only)'"
+ID|Lattice.vertex_group -> vertex_group: string "'Vertex group to apply the influence of the lattice'"
+ID|Library.filepath -> filepath: string "'Path to the library .blend file'"
+ID|Library.parent -> parent: pointer, "'(read-only)'"
+ID|Material.active_node_material -> active_node_material: pointer "'Active node material'"
+ID|Material.active_texture -> active_texture: pointer "'Active texture slot being displayed'"
+ID|Material.active_texture_index -> active_texture_index: int "'Index of active texture slot'"
+ID|Material.alpha -> alpha: float "'Alpha transparency of the material'"
+ID|Material.ambient -> ambient: float "'Amount of global ambient color the material receives'"
+ID|Material.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Material.cast_approximate -> use_cast_approximate: boolean "'Allow this material to cast shadows when using approximate ambient occlusion.'"
+ID|Material.cast_buffer_shadows -> use_cast_buffer_shadows: boolean "'Allow this material to cast shadows from shadow buffer lamps'"
+ID|Material.cast_shadows_only -> use_cast_shadows_only: boolean "'Makes objects with this material appear invisible, only casting shadows (not rendered)'"
+ID|Material.cubic -> use_cubic: boolean "'Use cubic interpolation for diffuse values, for smoother transitions'"
+ID|Material.darkness -> darkness: float "'Minnaert darkness'"
+ID|Material.diffuse_color -> diffuse_color: float "'NO DESCRIPTION'"
+ID|Material.diffuse_fresnel -> diffuse_fresnel: float "'Power of Fresnel'"
+ID|Material.diffuse_fresnel_factor -> diffuse_fresnel_factor: float "'Blending factor of Fresnel'"
+ID|Material.diffuse_intensity -> diffuse_intensity: float "'Amount of diffuse reflection'"
+ID|Material.diffuse_ramp -> diffuse_ramp: pointer, "'(read-only) Color ramp used to affect diffuse shading'"
+ID|Material.diffuse_ramp_blend -> diffuse_ramp_blend: enum "'NO DESCRIPTION'"
+ID|Material.diffuse_ramp_factor -> diffuse_ramp_factor: float "'Blending factor (also uses alpha in Colorband)'"
+ID|Material.diffuse_ramp_input -> diffuse_ramp_input: enum "'NO DESCRIPTION'"
+ID|Material.diffuse_shader -> diffuse_shader: enum "'NO DESCRIPTION'"
+ID|Material.diffuse_toon_size -> diffuse_toon_size: float "'Size of diffuse toon area'"
+ID|Material.diffuse_toon_smooth -> diffuse_toon_smooth: float "'Smoothness of diffuse toon area'"
+ID|Material.emit -> emit: float "'Amount of light to emit'"
+NEGATE * ID|Material.exclude_mist -> use_mist: boolean "'Excludes this material from mist effects (in world settings)'"
+ID|Material.face_texture -> use_face_texture: boolean '"Replaces the object\'s base color with color from face assigned image textures"'
+ID|Material.face_texture_alpha -> use_face_texture_alpha: boolean '"Replaces the object\'s base alpha value with alpha from face assigned image textures"'
+ID|Material.full_oversampling -> use_full_oversampling: boolean "'Force this material to render full shading/textures for all anti-aliasing samples'"
+ID|Material.halo -> halo: pointer, "'(read-only) Halo settings for the material'"
+ID|Material.invert_z -> invert_z: boolean '"Renders material\'s faces with an inverted Z buffer (scanline only)"'
+ID|Material.light_group -> light_group: pointer "'Limit lighting to lamps in this Group'"
+ID|Material.light_group_exclusive -> use_light_group_exclusive: boolean "'Material uses the light group exclusively - these lamps are excluded from other scene lighting'"
+ID|Material.mirror_color -> mirror_color: float "'Mirror color of the material'"
+ID|Material.node_tree -> node_tree: pointer, "'(read-only) Node tree for node based materials'"
+ID|Material.object_color -> use_object_color: boolean "'Modulate the result with a per-object color'"
+ID|Material.only_shadow -> use_only_shadow: boolean '"Renders shadows as the material\'s alpha value, making materials transparent except for shadowed areas"'
+ID|Material.physics -> physics: pointer, "'(read-only) Game physics settings'"
+ID|Material.preview_render_type -> preview_render_type: enum "'Type of preview render'"
+ID|Material.ray_shadow_bias -> use_ray_shadow_bias: boolean "'Prevents raytraced shadow errors on surfaces with smooth shaded normals (terminator problem)'"
+ID|Material.raytrace_mirror -> raytrace_mirror: pointer, "'(read-only) Raytraced reflection settings for the material'"
+ID|Material.raytrace_transparency -> raytrace_transparency: pointer, "'(read-only) Raytraced transparency settings for the material'"
+ID|Material.receive_transparent_shadows -> use_transparent_shadows: boolean "'Allow this object to receive transparent shadows casted through other objects'"
+ID|Material.roughness -> rough: float "'Oren-Nayar Roughness'"
+ID|Material.shadeless -> use_shadeless: boolean "'Makes this material insensitive to light or shadow'"
+ID|Material.shadow_buffer_bias -> shadow_buffer_bias: float "'Factor to multiply shadow buffer bias with (0 is ignore.)'"
+ID|Material.shadow_casting_alpha -> shadow_cast_alpha: float "'Shadow casting alpha, in use for Irregular and Deep shadow buffer'"
+ID|Material.shadow_ray_bias -> shadow_ray_bias: float "'Shadow raytracing bias to prevent terminator problems on shadow boundary'"
+ID|Material.shadows -> use_shadows: boolean "'Allows this material to receive shadows'"
+ID|Material.specular_alpha -> specular_alpha: float "'Alpha transparency for specular areas'"
+ID|Material.specular_color -> specular_color: float "'Specular color of the material'"
+ID|Material.specular_hardness -> specular_hard: int "'NO DESCRIPTION'"
+ID|Material.specular_intensity -> specular_intensity: float "'NO DESCRIPTION'"
+ID|Material.specular_ior -> specular_ior: float "'NO DESCRIPTION'"
+ID|Material.specular_ramp -> specular_ramp: pointer, "'(read-only) Color ramp used to affect specular shading'"
+ID|Material.specular_ramp_blend -> specular_ramp_blend: enum "'NO DESCRIPTION'"
+ID|Material.specular_ramp_factor -> specular_ramp_factor: float "'Blending factor (also uses alpha in Colorband)'"
+ID|Material.specular_ramp_input -> specular_ramp_input: enum "'NO DESCRIPTION'"
+ID|Material.specular_shader -> specular_shader: enum "'NO DESCRIPTION'"
+ID|Material.specular_slope -> specular_slope: float "'The standard deviation of surface slope'"
+ID|Material.specular_toon_size -> specular_toon_size: float "'Size of specular toon area'"
+ID|Material.specular_toon_smooth -> specular_toon_smooth: float "'Smoothness of specular toon area'"
+ID|Material.strand -> strand: pointer, "'(read-only) Strand settings for the material'"
+ID|Material.subsurface_scattering -> subsurface_scattering: pointer, "'(read-only) Subsurface scattering settings for the material'"
+ID|Material.tangent_shading -> use_tangent_shading: boolean '"Use the material\'s tangent vector instead of the normal for shading - for anisotropic shading effects"'
+ID|Material.texture_slots -> texture_slots: collection, "'(read-only) Texture slots defining the mapping and influence of textures'"
+ID|Material.traceable -> use_traceable: boolean "'Include this material and geometry that uses it in ray tracing calculations'"
+ID|Material.translucency -> translucency: float "'Amount of diffuse shading on the back side'"
+ID|Material.transparency -> use_transparency: boolean "'Render material as transparent'"
+ID|Material.transparency_method -> transparency_method: enum "'Method to use for rendering transparency'"
+ID|Material.type -> type: enum "'Material type defining how the object is rendered'"
+ID|Material.use_diffuse_ramp -> use_diffuse_ramp: boolean "'Toggle diffuse ramp operations'"
+ID|Material.use_nodes -> use_nodes: boolean "'Use shader nodes to render the material'"
+ID|Material.use_sky -> use_sky: boolean "'Renders this material with zero alpha, with sky background in place (scanline only)'"
+ID|Material.use_specular_ramp -> use_specular_ramp: boolean "'Toggle specular ramp operations'"
+ID|Material.use_textures -> use_textures: boolean "'Enable/Disable each texture'"
+ID|Material.vertex_color_light -> use_vertex_color_light: boolean "'Add vertex colors as additional lighting'"
+ID|Material.vertex_color_paint -> use_vertex_color_paint: boolean '"Replaces object base color with vertex colors (multiplies with \'texture face\' face assigned textures)"'
+ID|Material.volume -> volume: pointer, "'(read-only) Volume settings for the material'"
+ID|Material.z_offset -> z_offset: float "'Gives faces an artificial offset in the Z buffer for Z transparency'"
+ID|Mesh.active_uv_texture -> active_uv_texture: pointer "'Active UV texture'"
+ID|Mesh.active_uv_texture_index -> active_uv_texture_index: int "'Active UV texture index'"
+ID|Mesh.active_vertex_color -> active_vertex_color: pointer "'Active vertex color layer'"
+ID|Mesh.active_vertex_color_index -> active_vertex_color_index: int "'Active vertex color index'"
+ID|Mesh.all_edges -> show_all_edges: boolean "'Displays all edges for wireframe in all view modes in the 3D view'"
+ID|Mesh.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Mesh.auto_texspace -> use_auto_texspace: boolean '"Adjusts active object\'s texture space automatically when transforming object"'
+ID|Mesh.autosmooth -> use_autosmooth: boolean '"Treats all set-smoothed faces with angles less than the specified angle as \'smooth\' during render"'
+ID|Mesh.autosmooth_angle -> autosmooth_angle: int '"Defines maximum angle between face normals that \'Auto Smooth\' will operate on"'
+ID|Mesh.double_sided -> show_double_sided: boolean "'Render/display the mesh with double or single sided lighting'"
+ID|Mesh.draw_bevel_weights -> show_bevel_weights: boolean "'Displays weights created for the Bevel modifier'"
+ID|Mesh.draw_creases -> show_creases: boolean "'Displays creases created for subsurf weighting'"
+ID|Mesh.draw_edge_angle -> show_edge_angle: boolean "'Displays the angles in the selected edges in degrees'"
+ID|Mesh.draw_edge_length -> show_edge_length: boolean "'Displays selected edge lengths, Using global values when set in the transform panel'"
+ID|Mesh.draw_edges -> show_edges: boolean "'Displays selected edges using highlights in the 3D view and UV editor'"
+ID|Mesh.draw_face_area -> show_face_area: boolean "'Displays the area of selected faces'"
+ID|Mesh.draw_faces -> show_faces: boolean "'Displays all faces as shades in the 3D view and UV editor'"
+ID|Mesh.draw_normals -> show_normals: boolean "'Displays face normals as lines'"
+ID|Mesh.draw_seams -> show_seams: boolean "'Displays UV unwrapping seams'"
+ID|Mesh.draw_sharp -> show_sharp: boolean "'Displays sharp edges, used with the EdgeSplit modifier'"
+ID|Mesh.draw_vertex_normals -> show_vertex_normals: boolean "'Displays vertex normals as lines'"
+ID|Mesh.edges -> edges: collection, "'(read-only) Edges of the mesh'"
+ID|Mesh.faces -> faces: collection, "'(read-only) Faces of the mesh'"
+ID|Mesh.float_layers -> float_layers: collection, "'(read-only)'"
+ID|Mesh.int_layers -> int_layers: collection, "'(read-only)'"
+ID|Mesh.materials -> materials: collection, "'(read-only)'"
+ID|Mesh.shape_keys -> shape_keys: pointer, "'(read-only)'"
+ID|Mesh.sticky -> sticky: collection, "'(read-only) Sticky texture coordinates'"
+ID|Mesh.string_layers -> string_layers: collection, "'(read-only)'"
+ID|Mesh.texco_mesh -> texco_mesh: pointer "'Derive texture coordinates from another mesh'"
+ID|Mesh.texspace_loc -> texspace_loc: float "'Texture space location'"
+ID|Mesh.texspace_size -> texspace_size: float "'Texture space size'"
+ID|Mesh.texture_mesh -> texture_mesh: pointer "'Use another mesh for texture indices (vertex indices must be aligned)'"
+ID|Mesh.total_edge_sel -> total_edge_sel: int, "'(read-only) Selected edge count in editmode'"
+ID|Mesh.total_face_sel -> total_face_sel: int, "'(read-only) Selected face count in editmode'"
+ID|Mesh.total_vert_sel -> total_vert_sel: int, "'(read-only) Selected vertex count in editmode'"
+ID|Mesh.use_mirror_topology -> use_mirror_topology: boolean "'Use topology based mirroring'"
+ID|Mesh.use_mirror_x -> use_mirror_x: boolean "'X Axis mirror editing'"
+ID|Mesh.use_paint_mask -> use_paint_mask: boolean "'Face selection masking for painting'"
+ID|Mesh.uv_texture_clone -> uv_texture_clone: pointer "'UV texture to be used as cloning source'"
+ID|Mesh.uv_texture_clone_index -> uv_texture_clone_index: int "'Clone UV texture index'"
+ID|Mesh.uv_texture_stencil -> uv_texture_stencil: pointer "'UV texture to mask the painted area'"
+ID|Mesh.uv_texture_stencil_index -> uv_texture_stencil_index: int "'Mask UV texture index'"
+ID|Mesh.uv_textures -> uv_textures: collection, "'(read-only)'"
+ID|Mesh.vertex_colors -> vertex_colors: collection, "'(read-only)'"
+ID|Mesh.verts -> verts: collection, "'(read-only) Vertices of the mesh'"
+ID|MetaBall.active_element -> active_element: pointer, "'(read-only) Last selected element'"
+ID|MetaBall.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|MetaBall.auto_texspace -> use_auto_texspace: boolean '"Adjusts active object\'s texture space automatically when transforming object"'
+ID|MetaBall.elements -> elements: collection, "'(read-only) Meta elements'"
+ID|MetaBall.flag -> flag: enum "'Metaball edit update behavior'"
+ID|MetaBall.materials -> materials: collection, "'(read-only)'"
+ID|MetaBall.render_size -> render_size: float "'Polygonization resolution in rendering'"
+ID|MetaBall.texspace_loc -> texspace_loc: float "'Texture space location'"
+ID|MetaBall.texspace_size -> texspace_size: float "'Texture space size'"
+ID|MetaBall.threshold -> threshold: float "'Influence of meta elements'"
+ID|MetaBall.wire_size -> wire_size: float "'Polygonization resolution in the 3D viewport'"
+ID|NodeTree.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|NodeTree.grease_pencil -> grease_pencil: pointer "'Grease Pencil datablock'"
+ID|NodeTree.nodes -> nodes: collection, "'(read-only)'"
+ID|Object.active_material -> active_material: pointer "'Active material being displayed'"
+ID|Object.active_material_index -> active_material_index: int "'Index of active material slot'"
+ID|Object.active_particle_system -> active_particle_system: pointer, "'(read-only) Active particle system being displayed'"
+ID|Object.active_particle_system_index -> active_particle_system_index: int "'Index of active particle system slot'"
+ID|Object.active_shape_key -> active_shape_key: pointer, "'(read-only) Current shape key'"
+ID|Object.active_shape_key_index -> active_shape_key_index: int "'Current shape key index'"
+ID|Object.active_vertex_group -> active_vertex_group: pointer, "'(read-only) Vertex groups of the object'"
+ID|Object.active_vertex_group_index -> active_vertex_group_index: int "'Active index in vertex group array'"
+ID|Object.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Object.animation_visualisation -> animation_visualisation: pointer, "'(read-only) Animation data for this datablock'"
+ID|Object.bound_box -> bound_box: float, "'(read-only) Objects bound box in object-space coordinates'"
+ID|Object.collision -> collision: pointer, "'(read-only) Settings for using the objects as a collider in physics simulation'"
+ID|Object.color -> color: float "'Object color and alpha, used when faces have the ObColor mode enabled'"
+ID|Object.constraints -> constraints: collection, "'(read-only) Constraints affecting the transformation of the object'"
+ID|Object.data -> data: pointer "'Object data'"
+ID|Object.delta_location -> delta_location: float "'Extra translation added to the location of the object'"
+ID|Object.delta_rotation_euler -> delta_rotation_euler: float "'Extra rotation added to the rotation of the object (when using Euler rotations)'"
+ID|Object.delta_rotation_quaternion -> delta_rotation_quaternion: float "'Extra rotation added to the rotation of the object (when using Quaternion rotations)'"
+ID|Object.delta_scale -> delta_scale: float "'Extra scaling added to the scale of the object'"
+ID|Object.dimensions -> dimensions: float "'Absolute bounding box dimensions of the object'"
+ID|Object.draw_axis -> show_axis: boolean '"Displays the object\'s origin and axis"'
+ID|Object.draw_bounds -> show_bounds: boolean '"Displays the object\'s bounds"'
+ID|Object.draw_bounds_type -> draw_bounds_type: enum "'Object boundary display type'"
+ID|Object.draw_name -> show_name: boolean '"Displays the object\'s name"'
+ID|Object.draw_texture_space -> show_texture_space: boolean '"Displays the object\'s texture space"'
+ID|Object.draw_transparent -> show_transparent: boolean "'Enables transparent materials for the object (Mesh only)'"
+ID|Object.draw_wire -> show_wire: boolean '"Adds the object\'s wireframe over solid drawing"'
+ID|Object.dupli_faces_scale -> dupli_faces_scale: float "'Scale the DupliFace objects'"
+ID|Object.dupli_frames_end -> dupli_frames_end: int "'End frame for DupliFrames'"
+ID|Object.dupli_frames_off -> dupli_frames_off: int "'Recurring frames to exclude from the Dupliframes'"
+ID|Object.dupli_frames_on -> dupli_frames_on: int "'Number of frames to use between DupOff frames'"
+ID|Object.dupli_frames_start -> dupli_frames_start: int "'Start frame for DupliFrames'"
+ID|Object.dupli_group -> dupli_group: pointer "'Instance an existing group'"
+ID|Object.dupli_list -> dupli_list: collection, "'(read-only) Object duplis'"
+ID|Object.dupli_type -> dupli_type: enum "'If not None, object duplication method to use'"
+ID|Object.duplis_used -> is_duplicator: boolean, "'(read-only)'"
+ID|Object.empty_draw_size -> empty_draw_size: float "'Size of display for empties in the viewport'"
+ID|Object.empty_draw_type -> empty_draw_type: enum "'Viewport display style for empties'"
+ID|Object.field -> field: pointer, "'(read-only) Settings for using the objects as a field in physics simulation'"
+ID|Object.game -> game: pointer, "'(read-only) Game engine related settings for the object'"
+ID|Object.grease_pencil -> grease_pencil: pointer "'Grease Pencil datablock'"
+ID|Object.hide -> hide: boolean "'Restrict visibility in the viewport'"
+ID|Object.hide_render -> hide_render: boolean "'Restrict renderability'"
+ID|Object.hide_select -> hide_select: boolean "'Restrict selection in the viewport'"
+ID|Object.layers -> layers: boolean "'Layers the object is on'"
+ID|Object.location -> location: float "'Location of the object'"
+ID|Object.lock_location -> lock_location: boolean "'Lock editing of location in the interface'"
+ID|Object.lock_rotation -> lock_rotation: boolean "'Lock editing of rotation in the interface'"
+ID|Object.lock_rotation_w -> lock_rotation_w: boolean '"Lock editing of \'angle\' component of four-component rotations in the interface"'
+ID|Object.lock_rotations_4d -> lock_rotations_4d: boolean "'Lock editing of four component rotations by components (instead of as Eulers)'"
+ID|Object.lock_scale -> lock_scale: boolean "'Lock editing of scale in the interface'"
+ID|Object.material_slots -> material_slots: collection, "'(read-only) Material slots in the object'"
+ID|Object.matrix_local -> matrix_local: float "'Parent relative transformation matrix'"
+ID|Object.matrix_world -> matrix_world: float "'Worldspace transformation matrix'"
+ID|Object.max_draw_type -> draw_type: enum "'Maximum draw type to display object with in viewport'"
+ID|Object.mode -> mode: enum, "'(read-only) Object interaction mode'"
+ID|Object.modifiers -> modifiers: collection, "'(read-only) Modifiers affecting the geometric data of the object'"
+ID|Object.motion_path -> motion_path: pointer, "'(read-only) Motion Path for this element'"
+ID|Object.parent -> parent: pointer "'Parent Object'"
+ID|Object.parent_bone -> parent_bone: string "'Name of parent bone in case of a bone parenting relation'"
+ID|Object.parent_type -> parent_type: enum "'Type of parent relation'"
+ID|Object.parent_vertices -> parent_vertices: int, "'(read-only) Indices of vertices in cases of a vertex parenting relation'"
+ID|Object.particle_systems -> particle_systems: collection, "'(read-only) Particle systems emitted from the object'"
+ID|Object.pass_index -> pass_index: int "'Index # for the IndexOB render pass'"
+ID|Object.pose -> pose: pointer, "'(read-only) Current pose for armatures'"
+ID|Object.pose_library -> pose_library: pointer, "'(read-only) Action used as a pose library for armatures'"
+ID|Object.proxy -> proxy: pointer, "'(read-only) Library object this proxy object controls'"
+ID|Object.proxy_group -> proxy_group: pointer, "'(read-only) Library group duplicator object this proxy object controls'"
+ID|Object.rotation_axis_angle -> rotation_axis_angle: float "'Angle of Rotation for Axis-Angle rotation representation'"
+ID|Object.rotation_euler -> rotation_euler: float "'Rotation in Eulers'"
+ID|Object.rotation_mode -> rotation_mode: enum "'NO DESCRIPTION'"
+ID|Object.rotation_quaternion -> rotation_quaternion: float "'Rotation in Quaternions'"
+ID|Object.scale -> scale: float "'Scaling of the object'"
+ID|Object.select -> select: boolean "'Object selection state'"
+ID|Object.shape_key_edit_mode -> use_shape_key_edit_mode: boolean "'Apply shape keys in edit mode (for Meshes only)'"
+ID|Object.shape_key_lock -> show_shape_key: boolean "'Always show the current Shape for this Object'"
+ID|Object.slow_parent -> use_slow_parent: boolean "'Create a delay in the parent relationship'"
+ID|Object.soft_body -> soft_body: pointer, "'(read-only) Settings for soft body simulation'"
+ID|Object.time_offset -> time_offset: float "'Animation offset in frames for F-Curve and dupligroup instances'"
+ID|Object.time_offset_add_parent -> use_time_offset_add_parent: boolean "'Add the parents time offset value'"
+ID|Object.time_offset_edit -> use_time_offset_edit: boolean "'Use time offset when inserting keys and display time offset for F-Curve and action views'"
+ID|Object.time_offset_parent -> use_time_offset_parent: boolean "'Apply the time offset to this objects parent relationship'"
+ID|Object.time_offset_particle -> use_time_offset_particle: boolean "'Let the time offset work on the particle effect'"
+ID|Object.track_axis -> track_axis: enum '"Axis that points in \'forward\' direction"'
+ID|Object.type -> type: enum, "'(read-only) Type of Object'"
+ID|Object.up_axis -> up_axis: enum "'Axis that points in the upward direction'"
+ID|Object.use_dupli_faces_scale -> use_dupli_faces_scale: boolean "'Scale dupli based on face size'"
+ID|Object.use_dupli_frames_speed -> use_dupli_frames_speed: boolean "'Set dupliframes to use the frame'"
+ID|Object.use_dupli_verts_rotation -> use_dupli_verts_rotation: boolean "'Rotate dupli according to vertex normal'"
+ID|Object.vertex_groups -> vertex_groups: collection, "'(read-only) Vertex groups of the object'"
+ID|Object.x_ray -> show_x_ray: boolean "'Makes the object draw in front of others'"
+ID|ParticleSettings.abs_path_time -> use_absolute_path_time: boolean "'Path timing is in absolute frames'"
+ID|ParticleSettings.active_dupliweight -> active_dupliweight: pointer, "'(read-only)'"
+ID|ParticleSettings.active_dupliweight_index -> active_dupliweight_index: int "'NO DESCRIPTION'"
+ID|ParticleSettings.adaptive_angle -> adaptive_angle: int "'How many degrees path has to curve to make another render segment'"
+ID|ParticleSettings.adaptive_pix -> adaptive_pix: int "'How many pixels path has to cover to make another render segment'"
+ID|ParticleSettings.amount -> amount: int "'Total number of particles'"
+ID|ParticleSettings.angular_velocity_factor -> angular_velocity_factor: float "'Angular velocity amount'"
+ID|ParticleSettings.angular_velocity_mode -> angular_velocity_mode: enum "'Particle angular velocity mode'"
+ID|ParticleSettings.animate_branching -> use_animate_branching: boolean "'Animate branching'"
+ID|ParticleSettings.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|ParticleSettings.billboard_align -> billboard_align: enum "'In respect to what the billboards are aligned'"
+ID|ParticleSettings.billboard_animation -> billboard_animation: enum "'How to animate billboard textures'"
+ID|ParticleSettings.billboard_lock -> lock_billboard: boolean "'Lock the billboards align axis'"
+ID|ParticleSettings.billboard_object -> billboard_object: pointer "'Billboards face this object (default is active camera)'"
+ID|ParticleSettings.billboard_offset -> billboard_offset: float "'NO DESCRIPTION'"
+ID|ParticleSettings.billboard_random_tilt -> billboard_random_tilt: float "'Random tilt of the billboards'"
+ID|ParticleSettings.billboard_split_offset -> billboard_split_offset: enum "'How to offset billboard textures'"
+ID|ParticleSettings.billboard_tilt -> billboard_tilt: float "'Tilt of the billboards'"
+ID|ParticleSettings.billboard_uv_split -> billboard_uv_split: int "'Amount of rows/columns to split UV coordinates for billboards'"
+ID|ParticleSettings.boids -> boids: pointer, "'(read-only)'"
+ID|ParticleSettings.boids_2d -> lock_boids_to_surface: boolean "'Constrain boids to a surface'"
+ID|ParticleSettings.branch_threshold -> branch_threshold: float "'Threshold of branching'"
+ID|ParticleSettings.branching -> use_branching: boolean "'Branch child paths from each other'"
+ID|ParticleSettings.brownian_factor -> brownian_factor: float "'Specify the amount of Brownian motion'"
+ID|ParticleSettings.child_effector -> apply_effector_to_children: boolean "'Apply effectors to children'"
+ID|ParticleSettings.child_guide -> apply_guide_to_children: boolean "'NO DESCRIPTION'"
+ID|ParticleSettings.child_length -> child_length: float "'Length of child paths'"
+ID|ParticleSettings.child_length_thres -> child_length_thres: float "'Amount of particles left untouched by child path length'"
+ID|ParticleSettings.child_nbr -> child_nbr: int "'Amount of children/parent'"
+ID|ParticleSettings.child_radius -> child_radius: float "'Radius of children around parent'"
+ID|ParticleSettings.child_random_size -> child_random_size: float "'Random variation to the size of the child particles'"
+ID|ParticleSettings.child_roundness -> child_roundness: float "'Roundness of children around parent'"
+ID|ParticleSettings.child_size -> child_size: float "'A multiplier for the child particle size'"
+ID|ParticleSettings.child_type -> child_type: enum "'Create child particles'"
+ID|ParticleSettings.clump_factor -> clump_factor: float "'Amount of clumping'"
+ID|ParticleSettings.clumppow -> clumppow: float "'Shape of clumping'"
+ID|ParticleSettings.damp_factor -> damp_factor: float "'Specify the amount of damping'"
+ID|ParticleSettings.die_on_collision -> use_die_on_collision: boolean "'Particles die when they collide with a deflector object'"
+ID|ParticleSettings.died -> use_died: boolean "'Show particles after they have died'"
+ID|ParticleSettings.display -> display: int "'Percentage of particles to display in 3D view'"
+ID|ParticleSettings.distribution -> distribution: enum "'How to distribute particles on selected element'"
+ID|ParticleSettings.drag_factor -> drag_factor: float "'Specify the amount of air-drag'"
+ID|ParticleSettings.draw_as -> draw_as: enum "'How particles are drawn in viewport'"
+ID|ParticleSettings.draw_health -> show_health: boolean "'Draw boid health'"
+ID|ParticleSettings.draw_size -> draw_size: int "'Size of particles on viewport in pixels (0=default)'"
+ID|ParticleSettings.draw_step -> draw_step: int "'How many steps paths are drawn with (power of 2)'"
+ID|ParticleSettings.dupli_group -> dupli_group: pointer "'Show Objects in this Group in place of particles'"
+ID|ParticleSettings.dupli_object -> dupli_object: pointer "'Show this Object in place of particles'"
+ID|ParticleSettings.dupliweights -> dupliweights: collection, "'(read-only) Weights for all of the objects in the dupli group'"
+ID|ParticleSettings.effect_hair -> effect_hair: float "'Hair stiffness for effectors'"
+ID|ParticleSettings.effector_weights -> effector_weights: pointer, "'(read-only)'"
+ID|ParticleSettings.emit_from -> emit_from: enum "'Where to emit particles from'"
+ID|ParticleSettings.emitter -> use_render_emitter: boolean "'Render emitter Object also'"
+ID|ParticleSettings.enable_simplify -> use_simplify: boolean "'Remove child strands as the object becomes smaller on the screen'"
+ID|ParticleSettings.even_distribution -> use_even_distribution: boolean "'Use even distribution from faces based on face areas or edge lengths'"
+ID|ParticleSettings.fluid -> fluid: pointer, "'(read-only)'"
+ID|ParticleSettings.force_field_1 -> force_field_1: pointer, "'(read-only)'"
+ID|ParticleSettings.force_field_2 -> force_field_2: pointer, "'(read-only)'"
+ID|ParticleSettings.frame_end -> frame_end: float "'Frame # to stop emitting particles'"
+ID|ParticleSettings.frame_start -> frame_start: float "'Frame # to start emitting particles'"
+ID|ParticleSettings.grid_invert -> invert_grid: boolean "'Invert what is considered object and what is not'"
+ID|ParticleSettings.grid_resolution -> grid_resolution: int "'The resolution of the particle grid'"
+ID|ParticleSettings.hair_bspline -> use_hair_bspline: boolean "'Interpolate hair using B-Splines'"
+ID|ParticleSettings.hair_step -> hair_step: int "'Number of hair segments'"
+ID|ParticleSettings.integrator -> integrator: enum "'Select physics integrator type'"
+ID|ParticleSettings.jitter_factor -> jitter_factor: float "'Amount of jitter applied to the sampling'"
+ID|ParticleSettings.keyed_loops -> keyed_loops: int "'Number of times the keys are looped'"
+ID|ParticleSettings.keys_step -> keys_step: int "'NO DESCRIPTION'"
+ID|ParticleSettings.kink -> kink: enum "'Type of periodic offset on the path'"
+ID|ParticleSettings.kink_amplitude -> kink_amplitude: float "'The amplitude of the offset'"
+ID|ParticleSettings.kink_axis -> kink_axis: enum "'Which axis to use for offset'"
+ID|ParticleSettings.kink_frequency -> kink_frequency: float "'The frequency of the offset (1/total length)'"
+ID|ParticleSettings.kink_shape -> kink_shape: float "'Adjust the offset to the beginning/end'"
+ID|ParticleSettings.lifetime -> lifetime: float "'Specify the life span of the particles'"
+ID|ParticleSettings.line_length_head -> line_length_head: float '"Length of the line\'s head"'
+ID|ParticleSettings.line_length_tail -> line_length_tail: float '"Length of the line\'s tail"'
+ID|ParticleSettings.mass -> mass: float "'Specify the mass of the particles'"
+ID|ParticleSettings.material -> material: int "'Specify material used for the particles'"
+ID|ParticleSettings.material_color -> show_material_color: boolean '"Draw particles using material\'s diffuse color"'
+ID|ParticleSettings.normal_factor -> normal_factor: float "'Let the surface normal give the particle a starting speed'"
+ID|ParticleSettings.num -> show_number: boolean "'Show particle number'"
+ID|ParticleSettings.object_aligned_factor -> object_aligned_factor: float "'Let the emitter object orientation give the particle a starting speed'"
+ID|ParticleSettings.object_factor -> object_factor: float "'Let the object give the particle a starting speed'"
+ID|ParticleSettings.parent -> use_parents: boolean "'Render parent particles'"
+ID|ParticleSettings.particle_factor -> particle_factor: float "'Let the target particle give the particle a starting speed'"
+ID|ParticleSettings.particle_size -> particle_size: float "'The size of the particles'"
+ID|ParticleSettings.path_end -> path_end: float "'End time of drawn path'"
+ID|ParticleSettings.path_start -> path_start: float "'Starting time of drawn path'"
+ID|ParticleSettings.phase_factor -> phase_factor: float "'Initial rotation phase'"
+ID|ParticleSettings.physics_type -> physics_type: enum "'Particle physics type'"
+ID|ParticleSettings.rand_group -> use_group_pick_random: boolean "'Pick objects from group randomly'"
+ID|ParticleSettings.random_factor -> random_factor: float "'Give the starting speed a random variation'"
+ID|ParticleSettings.random_length -> random_length: float "'Give path length a random variation'"
+ID|ParticleSettings.random_lifetime -> random_lifetime: float "'Give the particle life a random variation'"
+ID|ParticleSettings.random_phase_factor -> random_phase_factor: float "'Randomize rotation phase'"
+ID|ParticleSettings.random_rotation_factor -> random_rotation_factor: float "'Randomize rotation'"
+ID|ParticleSettings.random_size -> random_size: float "'Give the particle size a random variation'"
+ID|ParticleSettings.react_event -> react_event: enum "'The event of target particles to react on'"
+ID|ParticleSettings.react_multiple -> use_react_multiple: boolean "'React multiple times'"
+ID|ParticleSettings.react_start_end -> use_react_start_end: boolean "'Give birth to unreacted particles eventually'"
+ID|ParticleSettings.reaction_shape -> reaction_shape: float "'Power of reaction strength dependence on distance to target'"
+ID|ParticleSettings.reactor_factor -> reactor_factor: float "'Let the vector away from the target particles location give the particle a starting speed'"
+ID|ParticleSettings.ren_as -> ren_as: enum "'How particles are rendered'"
+ID|ParticleSettings.render_adaptive -> use_render_adaptive: boolean "'Use adapative rendering for paths'"
+ID|ParticleSettings.render_step -> render_step: int "'How many steps paths are rendered with (power of 2)'"
+ID|ParticleSettings.render_strand -> use_strand_primitive: boolean "'Use the strand primitive for rendering'"
+ID|ParticleSettings.rendered_child_nbr -> rendered_child_nbr: int "'Amount of children/parent for rendering'"
+ID|ParticleSettings.rotate_from -> rotate_from: enum "'NO DESCRIPTION'"
+ID|ParticleSettings.rotation_dynamic -> use_dynamic_rotation: boolean "'Sets rotation to dynamic/constant'"
+ID|ParticleSettings.rotation_mode -> rotation_mode: enum "'Particles initial rotation'"
+ID|ParticleSettings.rough1 -> rough1: float "'Amount of location dependent rough'"
+ID|ParticleSettings.rough1_size -> rough1_size: float "'Size of location dependent rough'"
+ID|ParticleSettings.rough2 -> rough2: float "'Amount of random rough'"
+ID|ParticleSettings.rough2_size -> rough2_size: float "'Size of random rough'"
+ID|ParticleSettings.rough2_thres -> rough2_thres: float "'Amount of particles left untouched by random rough'"
+ID|ParticleSettings.rough_end_shape -> rough_end_shape: float "'Shape of end point rough'"
+ID|ParticleSettings.rough_endpoint -> rough_endpoint: float "'Amount of end point rough'"
+ID|ParticleSettings.self_effect -> use_self_effect: boolean "'Particle effectors effect themselves'"
+ID|ParticleSettings.show_size -> show_size: boolean "'Show particle size'"
+ID|ParticleSettings.simplify_rate -> simplify_rate: float "'Speed of simplification'"
+ID|ParticleSettings.simplify_refsize -> simplify_refsize: int "'Reference size in pixels, after which simplification begins'"
+ID|ParticleSettings.simplify_transition -> simplify_transition: float "'Transition period for fading out strands'"
+ID|ParticleSettings.simplify_viewport -> simplify_viewport: float "'Speed of Simplification'"
+ID|ParticleSettings.size_deflect -> use_size_deflect: boolean '"Use particle\'s size in deflection"'
+ID|ParticleSettings.sizemass -> use_multiply_size_mass: boolean "'Multiply mass by particle size'"
+ID|ParticleSettings.subframes -> subframes: int "'Subframes to simulate for improved stability and finer granularity simulations'"
+ID|ParticleSettings.symmetric_branching -> use_symmetric_branching: boolean "'Start and end points are the same'"
+ID|ParticleSettings.tangent_factor -> tangent_factor: float "'Let the surface tangent give the particle a starting speed'"
+ID|ParticleSettings.tangent_phase -> tangent_phase: float "'Rotate the surface tangent'"
+ID|ParticleSettings.time_tweak -> time_tweak: float "'A multiplier for physics timestep (1.0 means one frame = 1/25 seconds)'"
+ID|ParticleSettings.trail_count -> trail_count: int "'Number of trail particles'"
+ID|ParticleSettings.trand -> use_emit_random: boolean "'Emit in random order of elements'"
+ID|ParticleSettings.type -> type: enum "'NO DESCRIPTION'"
+ID|ParticleSettings.unborn -> use_unborn: boolean "'Show particles before they are emitted'"
+ID|ParticleSettings.use_global_dupli -> use_global_dupli: boolean '"Use object\'s global coordinates for duplication"'
+ID|ParticleSettings.use_group_count -> use_group_count: boolean "'Use object multiple times in the same group'"
+ID|ParticleSettings.userjit -> userjit: int "'Emission locations / face (0 = automatic)'"
+ID|ParticleSettings.velocity -> show_velocity: boolean "'Show particle velocity'"
+ID|ParticleSettings.velocity_length -> use_velocity_length: boolean "'Multiply line length by particle speed'"
+ID|ParticleSettings.viewport -> use_simplify_viewport: boolean "'NO DESCRIPTION'"
+ID|ParticleSettings.virtual_parents -> virtual_parents: float "'Relative amount of virtual parents'"
+ID|ParticleSettings.whole_group -> use_whole_group: boolean "'Use whole group at once'"
+ID|Scene.active_keying_set -> active_keying_set: pointer "'Active Keying Set used to insert/delete keyframes'"
+ID|Scene.active_keying_set_index -> active_keying_set_index: int '"Current Keying Set index (negative for \'builtin\' and positive for \'absolute\')"'
+ID|Scene.all_keying_sets -> all_keying_sets: collection, "'(read-only) All Keying Sets available for use (builtins and Absolute Keying Sets for this Scene)'"
+ID|Scene.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Scene.bases -> bases: collection, "'(read-only)'"
+ID|Scene.camera -> camera: pointer "'Active camera used for rendering the scene'"
+ID|Scene.cursor_location -> cursor_location: float "'3D cursor location'"
+ID|Scene.distance_model -> distance_model: enum "'Distance model for distance attenuation calculation'"
+ID|Scene.doppler_factor -> doppler_factor: float "'Pitch factor for Doppler effect calculation'"
+ID|Scene.frame_current -> frame_current: int "'NO DESCRIPTION'"
+ID|Scene.frame_drop -> use_frame_drop: boolean "'Play back dropping frames if frame display is too slow'"
+ID|Scene.frame_end -> frame_end: int "'Final frame of the playback/rendering range'"
+ID|Scene.frame_start -> frame_start: int "'First frame of the playback/rendering range'"
+ID|Scene.frame_step -> frame_step: int "'Number of frames to skip forward while rendering/playing back each frame'"
+ID|Scene.game_data -> game_data: pointer, "'(read-only)'"
+ID|Scene.gravity -> gravity: float "'Constant acceleration in a given direction'"
+ID|Scene.grease_pencil -> grease_pencil: pointer "'Grease Pencil datablock'"
+ID|Scene.keying_sets -> keying_sets: collection, "'(read-only) Absolute Keying Sets for this Scene'"
+ID|Scene.layers -> layers: boolean "'Layers visible when rendering the scene'"
+ID|Scene.mute_audio -> mute_audio: boolean "'Play back of audio from Sequence Editor will be muted'"
+ID|Scene.network_render -> network_render: pointer, "'(read-only) Network Render Settings'"
+ID|Scene.nla_tweakmode_on -> use_nla_tweakmode: boolean, "'(read-only) Indicates whether there is any action referenced by NLA being edited. Strictly read-only'"
+ID|Scene.nodetree -> nodetree: pointer, "'(read-only) Compositing node tree'"
+ID|Scene.objects -> objects: collection, "'(read-only)'"
+ID|Scene.orientations -> orientations: collection, "'(read-only)'"
+ID|Scene.pose_templates -> pose_templates: pointer, "'(read-only) Pose Template Settings'"
+ID|Scene.preview_range_frame_end -> preview_range_frame_end: int "'Alternative end frame for UI playback'"
+ID|Scene.preview_range_frame_start -> preview_range_frame_start: int "'Alternative start frame for UI playback'"
+ID|Scene.render -> render: pointer, "'(read-only)'"
+ID|Scene.scrub_audio -> use_audio_scrub: boolean "'Play audio from Sequence Editor while scrubbing'"
+ID|Scene.sequence_editor -> sequence_editor: pointer, "'(read-only)'"
+ID|Scene.set -> set: pointer "'Background set scene'"
+ID|Scene.speed_of_sound -> speed_of_sound: float "'Speed of sound for Doppler effect calculation'"
+ID|Scene.stamp_note -> stamp_note: string "'User define note for the render stamping'"
+ID|Scene.sync_audio -> use_audio_sync: boolean "'Play back and sync with audio clock, dropping frames if frame display is too slow'"
+ID|Scene.sync_mode -> sync_mode: enum "'How to sync playback'"
+ID|Scene.timeline_markers -> timeline_markers: collection, "'(read-only) Markers used in all timelines for the current scene'"
+ID|Scene.tool_settings -> tool_settings: pointer, "'(read-only)'"
+ID|Scene.unit_settings -> unit_settings: pointer, "'(read-only) Unit editing settings'"
+ID|Scene.use_gravity -> use_gravity: boolean "'Use global gravity for all dynamics'"
+ID|Scene.use_nodes -> use_nodes: boolean "'Enable the compositing node tree'"
+ID|Scene.use_preview_range -> use_preview_range: boolean "'Use an alternative start/end frame for UI playback, rather than the scene start/end frame'"
+ID|Scene.world -> world: pointer "'World used for rendering the scene'"
+ID|Screen.animation_playing -> is_animation_playing: boolean, "'(read-only) Animation playback is active'"
+ID|Screen.areas -> areas: collection, "'(read-only) Areas the screen is subdivided into'"
+ID|Screen.fullscreen -> is_fullscreen: boolean, "'(read-only) An area is maximised, filling this screen'"
+ID|Screen.scene -> scene: pointer "'Active scene to be edited in the screen'"
+ID|Sound.caching -> use_ram_cache: boolean "'The sound file is decoded and loaded into RAM'"
+ID|Sound.filepath -> filepath: string "'Sound sample file used by this Sound datablock'"
+ID|Sound.packed_file -> packed_file: pointer, "'(read-only)'"
+ID|Text.current_character -> current_character: int, "'(read-only) Index of current character in current line, and also start index of character in selection if one exists'"
+ID|Text.current_line -> current_line: pointer, "'(read-only) Current line, and start line of selection if one exists'"
+ID|Text.dirty -> is_dirty: boolean, "'(read-only) Text file has been edited since last save'"
+ID|Text.filepath -> filepath: string "'Filename of the text file'"
+ID|Text.lines -> lines: collection, "'(read-only) Lines of text'"
+ID|Text.markers -> markers: collection, "'(read-only) Text markers highlighting part of the text'"
+ID|Text.memory -> is_in_memory: boolean, "'(read-only) Text file is in memory, without a corresponding file on disk'"
+ID|Text.modified -> is_modified: boolean, "'(read-only) Text file on disk is different than the one in memory'"
+ID|Text.selection_end_character -> selection_end_character: int, "'(read-only) Index of character after end of selection in the selection end line'"
+ID|Text.selection_end_line -> selection_end_line: pointer, "'(read-only) End line of selection'"
+ID|Text.tabs_as_spaces -> use_tabs_as_spaces: boolean "'Automatically converts all new tabs into spaces'"
+ID|Text.use_module -> use_module: boolean '"Register this text as a module on loading, Text name must end with \'.py\'"'
+ID|Texture.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|Texture.brightness -> intensity: float "'NO DESCRIPTION'"
+ID|Texture.color_ramp -> color_ramp: pointer, "'(read-only)'"
+ID|Texture.contrast -> contrast: float "'NO DESCRIPTION'"
+ID|Texture.factor_blue -> factor_blue: float "'NO DESCRIPTION'"
+ID|Texture.factor_green -> factor_green: float "'NO DESCRIPTION'"
+ID|Texture.factor_red -> factor_red: float "'NO DESCRIPTION'"
+ID|Texture.node_tree -> node_tree: pointer, "'(read-only) Node tree for node-based textures'"
+ID|Texture.saturation -> saturation: float "'NO DESCRIPTION'"
+ID|Texture.type -> type: enum "'NO DESCRIPTION'"
+ID|Texture.use_color_ramp -> use_color_ramp: boolean "'Toggle color ramp operations'"
+ID|Texture.use_nodes -> use_nodes: boolean "'Make this a node-based texture'"
+ID|Texture.use_preview_alpha -> use_preview_alpha: boolean "'Show Alpha in Preview Render'"
++ * ID|Texture|BlendTexture.flip_axis -> flip_axis: enum '"Flips the texture\'s X and Y axis"'
++ * ID|Texture|BlendTexture.progression -> progression: enum "'Sets the style of the color blending'"
++ * ID|Texture|CloudsTexture.nabla -> nabla: float "'Size of derivative offset used for calculating normal'"
++ * ID|Texture|CloudsTexture.noise_basis -> noise_basis: enum "'Sets the noise basis used for turbulence'"
++ * ID|Texture|CloudsTexture.noise_depth -> noise_depth: int "'Sets the depth of the cloud calculation'"
++ * ID|Texture|CloudsTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
++ * ID|Texture|CloudsTexture.noise_type -> noise_type: enum "'NO DESCRIPTION'"
+ID|Texture|CloudsTexture.stype -> stype: enum 'NO DESCRIPTION'
+ID|Texture|DistortedNoiseTexture.distortion -> distortion: float "'NO DESCRIPTION'"
+ID|Texture|DistortedNoiseTexture.nabla -> nabla: float "'Size of derivative offset used for calculating normal'"
+ID|Texture|DistortedNoiseTexture.noise_basis -> noise_basis: enum "'Sets the noise basis used for turbulence'"
+ID|Texture|DistortedNoiseTexture.noise_distortion -> noise_distortion: enum "'Sets the noise basis for the distortion'"
+ID|Texture|DistortedNoiseTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
+ID|Texture|EnvironmentMapTexture.environment_map -> environment_map: pointer, "'(read-only) Gets the environment map associated with this texture'"
+ID|Texture|EnvironmentMapTexture.filter -> filter: enum "'Texture filter to use for sampling image'"
+ID|Texture|EnvironmentMapTexture.filter_eccentricity -> filter_eccentricity: int "'Maximum eccentricity. Higher gives less blur at distant/oblique angles, but is also slower'"
+ID|Texture|EnvironmentMapTexture.filter_probes -> filter_probes: int "'Maximum number of samples. Higher gives less blur at distant/oblique angles, but is also slower'"
+ID|Texture|EnvironmentMapTexture.filter_size -> filter_size: float "'Multiplies the filter size used by MIP Map and Interpolation'"
+ID|Texture|EnvironmentMapTexture.filter_size_minimum -> use_filter_size_min: boolean "'Use Filter Size as a minimal filter value in pixels'"
+ID|Texture|EnvironmentMapTexture.image -> image: pointer "'Source image file to read the environment map from'"
+ID|Texture|EnvironmentMapTexture.image_user -> image_user: pointer, "'(read-only) Parameters defining which layer, pass and frame of the image is displayed'"
+ID|Texture|EnvironmentMapTexture.mipmap -> use_mipmap: boolean "'Uses auto-generated MIP maps for the image'"
+ID|Texture|EnvironmentMapTexture.mipmap_gauss -> use_mipmap_gauss: boolean "'Uses Gauss filter to sample down MIP maps'"
+ID|Texture|ImageTexture.calculate_alpha -> use_calculate_alpha: boolean "'Calculates an alpha channel based on RGB values in the image'"
+ID|Texture|ImageTexture.checker_distance -> checker_distance: float "'Sets distance between checker tiles'"
+ID|Texture|ImageTexture.checker_even -> use_checker_even: boolean "'Sets even checker tiles'"
+ID|Texture|ImageTexture.checker_odd -> use_checker_odd: boolean "'Sets odd checker tiles'"
+ID|Texture|ImageTexture.crop_max_x -> crop_max_x: float "'Sets maximum X value to crop the image'"
+ID|Texture|ImageTexture.crop_max_y -> crop_max_y: float "'Sets maximum Y value to crop the image'"
+ID|Texture|ImageTexture.crop_min_x -> crop_min_x: float "'Sets minimum X value to crop the image'"
+ID|Texture|ImageTexture.crop_min_y -> crop_min_y: float "'Sets minimum Y value to crop the image'"
+ID|Texture|ImageTexture.extension -> extension: enum "'Sets how the image is extrapolated past its original bounds'"
+ID|Texture|ImageTexture.filter -> filter: enum "'Texture filter to use for sampling image'"
+ID|Texture|ImageTexture.filter_eccentricity -> filter_eccentricity: int "'Maximum eccentricity. Higher gives less blur at distant/oblique angles, but is also slower'"
+ID|Texture|ImageTexture.filter_probes -> filter_probes: int "'Maximum number of samples. Higher gives less blur at distant/oblique angles, but is also slower'"
+ID|Texture|ImageTexture.filter_size -> filter_size: float "'Multiplies the filter size used by MIP Map and Interpolation'"
+ID|Texture|ImageTexture.filter_size_minimum -> use_minimum_filter_size: boolean "'Use Filter Size as a minimal filter value in pixels'"
+ID|Texture|ImageTexture.flip_axis -> use_flip_axis: boolean '"Flips the texture\'s X and Y axis"'
+ID|Texture|ImageTexture.image -> image: pointer "'NO DESCRIPTION'"
+ID|Texture|ImageTexture.image_user -> image_user: pointer, "'(read-only) Parameters defining which layer, pass and frame of the image is displayed'"
+ID|Texture|ImageTexture.interpolation -> use_interpolation: boolean "'Interpolates pixels using Area filter'"
+ID|Texture|ImageTexture.invert_alpha -> invert_alpha: boolean "'Inverts all the alpha values in the image'"
+ID|Texture|ImageTexture.mipmap -> use_mipmap: boolean "'Uses auto-generated MIP maps for the image'"
+ID|Texture|ImageTexture.mipmap_gauss -> use_mipmap_gauss: boolean "'Uses Gauss filter to sample down MIP maps'"
+ID|Texture|ImageTexture.mirror_x -> use_mirror_x: boolean "'Mirrors the image repetition on the X direction'"
+ID|Texture|ImageTexture.mirror_y -> use_mirror_y: boolean "'Mirrors the image repetition on the Y direction'"
+ID|Texture|ImageTexture.normal_map -> use_normal_map: boolean "'Uses image RGB values for normal mapping'"
+ID|Texture|ImageTexture.normal_space -> normal_space: enum "'Sets space of normal map image'"
+ID|Texture|ImageTexture.repeat_x -> repeat_x: int "'Sets a repetition multiplier in the X direction'"
+ID|Texture|ImageTexture.repeat_y -> repeat_y: int "'Sets a repetition multiplier in the Y direction'"
+ID|Texture|ImageTexture.use_alpha -> use_alpha: boolean "'Uses the alpha channel information in the image'"
+ID|Texture|MagicTexture.noise_depth -> noise_depth: int "'Sets the depth of the cloud calculation'"
+ID|Texture|MagicTexture.turbulence -> turbulence: float "'Sets the turbulence of the bandnoise and ringnoise types'"
+ID|Texture|MarbleTexture.nabla -> nabla: float "'Size of derivative offset used for calculating normal'"
+ID|Texture|MarbleTexture.noise_basis -> noise_basis: enum "'Sets the noise basis used for turbulence'"
+ID|Texture|MarbleTexture.noise_depth -> noise_depth: int "'Sets the depth of the cloud calculation'"
+ID|Texture|MarbleTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
+ID|Texture|MarbleTexture.noise_type -> noise_type: enum "'NO DESCRIPTION'"
+ID|Texture|MarbleTexture.noisebasis2 -> noisebasis2: enum "'NO DESCRIPTION'"
+ID|Texture|MarbleTexture.stype -> stype: enum "'NO DESCRIPTION'"
+ID|Texture|MarbleTexture.turbulence -> turbulence: float "'Sets the turbulence of the bandnoise and ringnoise types'"
+ID|Texture|MusgraveTexture.gain -> gain: float "'The gain multiplier'"
+ID|Texture|MusgraveTexture.highest_dimension -> highest_dimension: float "'Highest fractal dimension'"
+ID|Texture|MusgraveTexture.lacunarity -> lacunarity: float "'Gap between successive frequencies'"
+ID|Texture|MusgraveTexture.musgrave_type -> musgrave_type: enum "'NO DESCRIPTION'"
+ID|Texture|MusgraveTexture.nabla -> nabla: float "'Size of derivative offset used for calculating normal'"
+ID|Texture|MusgraveTexture.noise_basis -> noise_basis: enum "'Sets the noise basis used for turbulence'"
+ID|Texture|MusgraveTexture.noise_intensity -> noise_intensity: float "'NO DESCRIPTION'"
+ID|Texture|MusgraveTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
+ID|Texture|MusgraveTexture.octaves -> octaves: float "'Number of frequencies used'"
+ID|Texture|MusgraveTexture.offset -> offset: float "'The fractal offset'"
+ID|Texture|PointDensityTexture.pointdensity -> pointdensity: pointer, "'(read-only) The point density settings associated with this texture'"
+ID|Texture|StucciTexture.noise_basis -> noise_basis: enum "'Sets the noise basis used for turbulence'"
+ID|Texture|StucciTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
+ID|Texture|StucciTexture.noise_type -> noise_type: enum "'NO DESCRIPTION'"
+ID|Texture|StucciTexture.stype -> stype: enum "'NO DESCRIPTION'"
+ID|Texture|StucciTexture.turbulence -> turbulence: float "'Sets the turbulence of the bandnoise and ringnoise types'"
+ID|Texture|VoronoiTexture.coloring -> color_mode: enum "'NO DESCRIPTION'"
+ID|Texture|VoronoiTexture.distance_metric -> distance_metric: enum "'NO DESCRIPTION'"
+ID|Texture|VoronoiTexture.minkovsky_exponent -> minkovsky_exponent: float "'Minkovsky exponent'"
+ID|Texture|VoronoiTexture.nabla -> nabla: float "'Size of derivative offset used for calculating normal'"
+ID|Texture|VoronoiTexture.noise_intensity -> noise_intensity: float "'NO DESCRIPTION'"
+ID|Texture|VoronoiTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
+ID|Texture|VoronoiTexture.weight_1 -> weight_1: float "'Voronoi feature weight 1'"
+ID|Texture|VoronoiTexture.weight_2 -> weight_2: float "'Voronoi feature weight 2'"
+ID|Texture|VoronoiTexture.weight_3 -> weight_3: float "'Voronoi feature weight 3'"
+ID|Texture|VoronoiTexture.weight_4 -> weight_4: float "'Voronoi feature weight 4'"
+ID|Texture|VoxelDataTexture.image -> image: pointer "'NO DESCRIPTION'"
+ID|Texture|VoxelDataTexture.image_user -> image_user: pointer, "'(read-only) Parameters defining which layer, pass and frame of the image is displayed'"
+ID|Texture|VoxelDataTexture.voxeldata -> voxeldata: pointer, "'(read-only) The voxel data associated with this texture'"
+ID|Texture|WoodTexture.nabla -> nabla: float "'Size of derivative offset used for calculating normal'"
+ID|Texture|WoodTexture.noise_basis -> noise_basis: enum "'Sets the noise basis used for turbulence'"
+ID|Texture|WoodTexture.noise_size -> noise_size: float "'Sets scaling for noise input'"
+ID|Texture|WoodTexture.noise_type -> noise_type: enum "'NO DESCRIPTION'"
+ID|Texture|WoodTexture.noisebasis2 -> noisebasis2: enum "'NO DESCRIPTION'"
+ID|Texture|WoodTexture.stype -> stype: enum "'NO DESCRIPTION'"
+ID|Texture|WoodTexture.turbulence -> turbulence: float "'Sets the turbulence of the bandnoise and ringnoise types'"
+ID|VectorFont.filepath -> filepath: string, "'(read-only)'"
+ID|VectorFont.packed_file -> packed_file: pointer, "'(read-only)'"
+ID|WindowManager.active_keyconfig -> active_keyconfig: pointer "'NO DESCRIPTION'"
+ID|WindowManager.default_keyconfig -> default_keyconfig: pointer, "'(read-only)'"
+ID|WindowManager.keyconfigs -> keyconfigs: collection, "'(read-only) Registered key configurations'"
+ID|WindowManager.operators -> operators: collection, "'(read-only) Operator registry'"
+ID|WindowManager.windows -> windows: collection, "'(read-only) Open windows'"
+ID|World.active_texture -> active_texture: pointer "'Active texture slot being displayed'"
+ID|World.active_texture_index -> active_texture_index: int "'Index of active texture slot'"
+ID|World.ambient_color -> ambient_color: float "'NO DESCRIPTION'"
+ID|World.animation_data -> animation_data: pointer, "'(read-only) Animation data for this datablock'"
+ID|World.blend_sky -> use_sky_blend: boolean "'Render background with natural progression from horizon to zenith'"
+ID|World.exposure -> exposure: float "'Amount of exponential color correction for light'"
+ID|World.horizon_color -> horizon_color: float "'Color at the horizon'"
+ID|World.lighting -> lighting: pointer, "'(read-only) World lighting settings'"
+ID|World.mist -> mist: pointer, "'(read-only) World mist settings'"
+ID|World.paper_sky -> use_sky_paper: boolean "'Flatten blend or texture coordinates'"
+ID|World.range -> range: float "'The color range that will be mapped to 0-1'"
+ID|World.real_sky -> use_sky_real: boolean "'Render background with a real horizon, relative to the camera angle'"
+ID|World.stars -> stars: pointer, "'(read-only) World stars settings'"
+ID|World.texture_slots -> texture_slots: collection, "'(read-only) Texture slots defining the mapping and influence of textures'"
+ID|World.zenith_color -> zenith_color: float "'Color at the zenith'"
+IKParam.ik_solver -> ik_solver: enum, "'(read-only) IK solver for which these parameters are defined, 0 for Legacy, 1 for iTaSC'"
+IKParam|Itasc.auto_step -> use_auto_step: boolean "'Automatically determine the optimal number of steps for best performance/accuracy trade off'"
+IKParam|Itasc.dampeps -> dampeps: float "'Singular value under which damping is progressively applied. Higher values=more stability, less reactivity. Default=0.1'"
+IKParam|Itasc.dampmax -> dampmax: float "'Maximum damping coefficient when singular value is nearly 0. Higher values=more stability, less reactivity. Default=0.5'"
+IKParam|Itasc.feedback -> feedback: float "'Feedback coefficient for error correction. Average response time=1/feedback. Default=20'"
+IKParam|Itasc.max_step -> step_max: float "'Higher bound for timestep in second in case of automatic substeps'"
+IKParam|Itasc.max_velocity -> velocity_max: float "'Maximum joint velocity in rad/s. Default=50'"
+IKParam|Itasc.min_step -> step_min: float "'Lower bound for timestep in second in case of automatic substeps'"
+IKParam|Itasc.mode -> mode: enum "'NO DESCRIPTION'"
+IKParam|Itasc.num_iter -> num_iter: int "'Maximum number of iterations for convergence in case of reiteration'"
+IKParam|Itasc.num_step -> num_step: int "'Divides the frame interval into this many steps'"
+IKParam|Itasc.precision -> precision: float "'Precision of convergence in case of reiteration'"
+IKParam|Itasc.reiteration -> reiteration: enum "'Defines if the solver is allowed to reiterate (converges until precision is met) on none, first or all frames'"
+IKParam|Itasc.solver -> solver: enum "'Solving method selection: Automatic damping or manual damping'"
+ImageUser.auto_refresh -> use_auto_refresh: boolean "'Always refresh image on frame changes'"
+ImageUser.cyclic -> use_cyclic: boolean "'Cycle the images in the movie'"
+ImageUser.fields_per_frame -> fields_per_frame: int "'The number of fields per rendered frame (2 fields is 1 image)'"
+ImageUser.frame_start -> frame_start: int "'Sets the global starting frame of the movie'"
+ImageUser.frames -> frames: int "'Sets the number of images of a movie to use'"
+ImageUser.multilayer_layer -> multilayer_layer: int, "'(read-only) Layer in multilayer image'"
+ImageUser.multilayer_pass -> multilayer_pass: int, "'(read-only) Pass in multilayer image'"
+ImageUser.offset -> offset: int "'Offsets the number of the frame to use in the animation'"
+KeyConfig.keymaps -> keymaps: collection, "'(read-only) Key maps configured as part of this configuration'"
+KeyConfig.name -> name: string "'Name of the key configuration'"
+KeyConfig.user_defined -> is_user_defined: boolean, "'(read-only) Indicates that a keyconfig was defined by the user'"
+KeyMap.children_expanded -> show_expanded_children: boolean "'Children expanded in the user interface'"
+KeyMap.items -> items: collection, "'(read-only) Items in the keymap, linking an operator to an input event'"
+KeyMap.items_expanded -> show_expanded_items: boolean "'Expanded in the user interface'"
+KeyMap.modal -> is_modal: boolean, "'(read-only) Indicates that a keymap is used for translate modal events for an operator'"
+KeyMap.name -> name: string, "'(read-only) Name of the key map'"
+KeyMap.region_type -> region_type: enum, "'(read-only) Optional region type keymap is associated with'"
+KeyMap.space_type -> space_type: enum, "'(read-only) Optional space type keymap is associated with'"
+KeyMap.user_defined -> is_user_defined: boolean "'Keymap is defined by the user'"
+KeyMapItem.active -> active: boolean "'Activate or deactivate item'"
+KeyMapItem.alt -> pressed_alt: boolean "'Alt key pressed'"
+KeyMapItem.any -> pressed_any: boolean "'Any modifier keys pressed'"
+KeyMapItem.ctrl -> pressed_ctrl: boolean "'Control key pressed'"
+KeyMapItem.expanded -> show_expanded: boolean "'Show key map event and property details in the user interface'"
+KeyMapItem.id -> id: int, "'(read-only) ID of the item'"
+KeyMapItem.idname -> idname: string "'Identifier of operator to call on input event'"
+KeyMapItem.key_modifier -> key_modifier: enum "'Regular key pressed as a modifier'"
+KeyMapItem.map_type -> map_type: enum "'Type of event mapping'"
+KeyMapItem.name -> name: string, "'(read-only) Name of operator to call on input event'"
+KeyMapItem.oskey -> pressed_cmd: boolean "'Operating system key pressed'"
+KeyMapItem.properties -> properties: pointer, "'(read-only) Properties to set when the operator is called'"
+KeyMapItem.propvalue -> propvalue: enum "'The value this event translates to in a modal keymap'"
+KeyMapItem.shift -> pressed_shift: boolean "'Shift key pressed'"
+KeyMapItem.type -> type: enum "'Type of event'"
+KeyMapItem.value -> value: enum "'NO DESCRIPTION'"
+Keyframe.co -> co: float "'Coordinates of the control point'"
+Keyframe.handle1 -> handle_left: float "'Coordinates of the first handle'"
+Keyframe.handle1_type -> handle_left_type: enum "'Handle types'"
+Keyframe.handle2 -> handle_right: float "'Coordinates of the second handle'"
+Keyframe.handle2_type -> handle_right_type: enum "'Handle types'"
+Keyframe.interpolation -> interpolation: enum "'Interpolation method to use for segment of the curve from this Keyframe until the next Keyframe'"
+Keyframe.select_control_point -> select_control_point: boolean "'Control point selection status'"
+Keyframe.select_left_handle -> select_left_handle: boolean "'Handle 1 selection status'"
+Keyframe.select_right_handle -> select_right_handle: boolean "'Handle 2 selection status'"
+Keyframe.type -> type: enum "'The type of keyframe'"
+KeyingSet.absolute -> use_absolute: boolean "'Keying Set defines specific paths/settings to be keyframed (i.e. is not reliant on context info)'"
+KeyingSet.active_path -> active_path: pointer "'Active Keying Set used to insert/delete keyframes'"
+KeyingSet.active_path_index -> active_path_index: int "'Current Keying Set index'"
+KeyingSet.insertkey_needed -> use_insertkey_needed: boolean '"Only insert keyframes where they\'re needed in the relevant F-Curves"'
+KeyingSet.insertkey_visual -> use_insertkey_visual: boolean '"Insert keyframes based on \'visual transforms\'"'
+KeyingSet.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean "'Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis'"
+KeyingSet.name -> name: string "'NO DESCRIPTION'"
+KeyingSet.paths -> paths: collection, "'(read-only) Keying Set Paths to define settings that get keyframed together'"
+KeyingSet.type_info -> type_info: pointer, "'(read-only) Callback function defines for built-in Keying Sets'"
+KeyingSetInfo.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+KeyingSetInfo.bl_label -> bl_label: string "'NO DESCRIPTION'"
+KeyingSetInfo.insertkey_needed -> use_insertkey_needed: boolean '"Only insert keyframes where they\'re needed in the relevant F-Curves"'
+KeyingSetInfo.insertkey_visual -> use_insertkey_visual: boolean '"Insert keyframes based on \'visual transforms\'"'
+KeyingSetInfo.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean "'Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis'"
+KeyingSetPath.array_index -> array_index: int "'Index to the specific setting if applicable'"
+KeyingSetPath.data_path -> data_path: string "'Path to property setting'"
+KeyingSetPath.entire_array -> use_entire_array: boolean '"When an \'array/vector\' type is chosen (Location, Rotation, Color, etc.), entire array is to be used"'
+KeyingSetPath.group -> group: string "'Name of Action Group to assign setting(s) for this path to'"
+KeyingSetPath.grouping -> group_method: enum "'Method used to define which Group-name to use'"
+KeyingSetPath.id -> id: pointer "'ID-Block that keyframes for Keying Set should be added to (for Absolute Keying Sets only)'"
+KeyingSetPath.id_type -> id_type: enum "'Type of ID-block that can be used'"
+KeyingSetPath.insertkey_needed -> use_insertkey_needed: boolean '"Only insert keyframes where they\'re needed in the relevant F-Curves"'
+KeyingSetPath.insertkey_visual -> use_insertkey_visual: boolean '"Insert keyframes based on \'visual transforms\'"'
+KeyingSetPath.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean "'Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis'"
+LampSkySettings.atmosphere_distance_factor -> atmosphere_distance_factor: float "'Multiplier to convert blender units to physical distance'"
+LampSkySettings.atmosphere_extinction -> atmosphere_extinction: float "'Extinction scattering contribution factor'"
+LampSkySettings.atmosphere_inscattering -> atmosphere_inscattering: float "'Scatter contribution factor'"
+LampSkySettings.atmosphere_turbidity -> atmosphere_turbidity: float "'Sky turbidity'"
+LampSkySettings.backscattered_light -> backscattered_light: float "'Backscattered light'"
+LampSkySettings.horizon_brightness -> horizon_intensity: float "'Horizon brightness'"
+LampSkySettings.sky_blend -> sky_blend: float "'Blend factor with sky'"
+LampSkySettings.sky_blend_type -> sky_blend_type: enum "'Blend mode for combining sun sky with world sky'"
+LampSkySettings.sky_color_space -> sky_color_space: enum "'Color space to use for internal XYZ->RGB color conversion'"
+LampSkySettings.sky_exposure -> sky_exposure: float "'Strength of sky shading exponential exposure correction'"
+LampSkySettings.spread -> spread: float "'Horizon Spread'"
+LampSkySettings.sun_brightness -> sun_intensity: float "'Sun brightness'"
+LampSkySettings.sun_intensity -> sun_intensity: float "'Sun intensity'"
+LampSkySettings.sun_size -> sun_size: float "'Sun size'"
+LampSkySettings.use_atmosphere -> use_atmosphere: boolean "'Apply sun effect on atmosphere'"
+LampSkySettings.use_sky -> use_sky: boolean "'Apply sun effect on sky'"
+LatticePoint.co -> co: float, "'(read-only)'"
+LatticePoint.deformed_co -> deformed_co: float "'NO DESCRIPTION'"
+LatticePoint.groups -> groups: collection, "'(read-only) Weights for the vertex groups this point is member of'"
+Macro.bl_description -> bl_description: string "'NO DESCRIPTION'"
+Macro.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+Macro.bl_label -> bl_label: string "'NO DESCRIPTION'"
+Macro.bl_options -> bl_options: enum "'Options for this operator type'"
+Macro.name -> name: string, "'(read-only)'"
+Macro.properties -> properties: pointer, "'(read-only)'"
+Main.actions -> actions: collection, "'(read-only) Action datablocks.'"
+Main.armatures -> armatures: collection, "'(read-only) Armature datablocks.'"
+Main.brushes -> brushes: collection, "'(read-only) Brush datablocks.'"
+Main.cameras -> cameras: collection, "'(read-only) Camera datablocks.'"
+Main.curves -> curves: collection, "'(read-only) Curve datablocks.'"
+Main.debug -> show_debug: boolean "'Print debugging information in console'"
+Main.file_is_saved -> is_saved: boolean, "'(read-only) Has the current session been saved to disk as a .blend file'"
+Main.filepath -> filepath: string, "'(read-only) Path to the .blend file'"
+Main.fonts -> fonts: collection, "'(read-only) Vector font datablocks.'"
+Main.gpencil -> gpencil: collection, "'(read-only) Grease Pencil datablocks.'"
+Main.groups -> groups: collection, "'(read-only) Group datablocks.'"
+Main.images -> images: collection, "'(read-only) Image datablocks.'"
+Main.lamps -> lamps: collection, "'(read-only) Lamp datablocks.'"
+Main.lattices -> lattices: collection, "'(read-only) Lattice datablocks.'"
+Main.libraries -> libraries: collection, "'(read-only) Library datablocks.'"
+Main.materials -> materials: collection, "'(read-only) Material datablocks.'"
+Main.meshes -> meshes: collection, "'(read-only) Mesh datablocks.'"
+Main.metaballs -> metaballs: collection, "'(read-only) Metaball datablocks.'"
+Main.node_groups -> node_groups: collection, "'(read-only) Node group datablocks.'"
+Main.objects -> objects: collection, "'(read-only) Object datablocks.'"
+Main.particles -> particles: collection, "'(read-only) Particle datablocks.'"
+Main.scenes -> scenes: collection, "'(read-only) Scene datablocks.'"
+Main.screens -> screens: collection, "'(read-only) Screen datablocks.'"
+Main.scripts -> scripts: collection, "'(read-only) Script datablocks (DEPRECATED).'"
+Main.sounds -> sounds: collection, "'(read-only) Sound datablocks.'"
+Main.texts -> texts: collection, "'(read-only) Text datablocks.'"
+Main.textures -> textures: collection, "'(read-only) Texture datablocks.'"
+Main.window_managers -> window_managers: collection, "'(read-only) Window manager datablocks.'"
+Main.worlds -> worlds: collection, "'(read-only) World datablocks.'"
+MaterialHalo.add -> add: float "'Sets the strength of the add effect'"
+MaterialHalo.flare_boost -> flare_boost: float "'Gives the flare extra strength'"
+MaterialHalo.flare_mode -> use_flare_mode: boolean "'Renders halo as a lensflare'"
+MaterialHalo.flare_seed -> flare_seed: int "'Specifies an offset in the flare seed table'"
+MaterialHalo.flare_size -> flare_size: float "'Sets the factor by which the flare is larger than the halo'"
+MaterialHalo.flare_subsize -> flare_subsize: float "'Sets the dimension of the subflares, dots and circles'"
+MaterialHalo.flares_sub -> flares_sub: int "'Sets the number of subflares'"
+MaterialHalo.hardness -> hard: int "'Sets the hardness of the halo'"
+MaterialHalo.line_number -> line_number: int "'Sets the number of star shaped lines rendered over the halo'"
+MaterialHalo.lines -> use_lines: boolean "'Renders star shaped lines over halo'"
+MaterialHalo.ring -> use_ring: boolean "'Renders rings over halo'"
+MaterialHalo.rings -> rings: int "'Sets the number of rings rendered over the halo'"
+MaterialHalo.seed -> seed: int "'Randomizes ring dimension and line location'"
+MaterialHalo.shaded -> use_shading: boolean "'Lets halo receive light and shadows from external objects'"
+MaterialHalo.size -> size: float "'Sets the dimension of the halo'"
+MaterialHalo.soft -> use_soft: boolean "'Softens the edges of halos at intersections with other geometry'"
+MaterialHalo.star -> use_star: boolean "'Renders halo as a star'"
+MaterialHalo.star_tips -> star_tips: int "'Sets the number of points on the star shaped halo'"
+MaterialHalo.texture -> use_texture: boolean "'Gives halo a texture'"
+MaterialHalo.vertex_normal -> use_vertex_normal: boolean "'Uses the vertex normal to specify the dimension of the halo'"
+MaterialHalo.xalpha -> use_extreme_alpha: boolean "'Uses extreme alpha'"
+MaterialPhysics.align_to_normal -> use_align_to_normal: boolean "'Align dynamic game objects along the surface normal, when inside the physics distance area'"
+MaterialPhysics.damp -> damp: float "'Damping of the spring force, when inside the physics distance area'"
+MaterialPhysics.distance -> distance: float "'Distance of the physics area'"
+MaterialPhysics.elasticity -> elasticity: float "'Elasticity of collisions'"
+MaterialPhysics.force -> force: float "'Upward spring force, when inside the physics distance area'"
+MaterialPhysics.friction -> friction: float "'Coulomb friction coefficient, when inside the physics distance area'"
+MaterialRaytraceMirror.depth -> depth: int "'Maximum allowed number of light inter-reflections'"
+MaterialRaytraceMirror.distance -> distance: float "'Maximum distance of reflected rays. Reflections further than this range fade to sky color or material color'"
+MaterialRaytraceMirror.enabled -> use: boolean "'Enable raytraced reflections'"
+MaterialRaytraceMirror.fade_to -> fade_to: enum "'The color that rays with no intersection within the Max Distance take. Material color can be best for indoor scenes, sky color for outdoor'"
+MaterialRaytraceMirror.fresnel -> fresnel: float "'Power of Fresnel for mirror reflection'"
+MaterialRaytraceMirror.fresnel_factor -> fresnel_factor: float "'Blending factor for Fresnel'"
+MaterialRaytraceMirror.gloss_anisotropic -> gloss_anisotropic: float "'The shape of the reflection, from 0.0 (circular) to 1.0 (fully stretched along the tangent'"
+MaterialRaytraceMirror.gloss_factor -> gloss_factor: float "'The shininess of the reflection. Values < 1.0 give diffuse, blurry reflections'"
+MaterialRaytraceMirror.gloss_samples -> gloss_samples: int "'Number of cone samples averaged for blurry reflections'"
+MaterialRaytraceMirror.gloss_threshold -> gloss_threshold: float "'Threshold for adaptive sampling. If a sample contributes less than this amount (as a percentage), sampling is stopped'"
+MaterialRaytraceMirror.reflect_factor -> reflect_factor: float "'Sets the amount mirror reflection for raytrace'"
+MaterialRaytraceTransparency.depth -> depth: int "'Maximum allowed number of light inter-refractions'"
+MaterialRaytraceTransparency.falloff -> falloff: float "'Falloff power for transmissivity filter effect (1.0 is linear)'"
+MaterialRaytraceTransparency.filter -> filter: float '"Amount to blend in the material\'s diffuse color in raytraced transparency (simulating absorption)"'
+MaterialRaytraceTransparency.fresnel -> fresnel: float "'Power of Fresnel for transparency (Ray or ZTransp)'"
+MaterialRaytraceTransparency.fresnel_factor -> fresnel_factor: float "'Blending factor for Fresnel'"
+MaterialRaytraceTransparency.gloss_factor -> gloss_factor: float "'The clarity of the refraction. Values < 1.0 give diffuse, blurry refractions'"
+MaterialRaytraceTransparency.gloss_samples -> gloss_samples: int "'Number of cone samples averaged for blurry refractions'"
+MaterialRaytraceTransparency.gloss_threshold -> gloss_threshold: float "'Threshold for adaptive sampling. If a sample contributes less than this amount (as a percentage), sampling is stopped'"
+MaterialRaytraceTransparency.ior -> ior: float "'Sets angular index of refraction for raytraced refraction'"
+MaterialRaytraceTransparency.limit -> limit: float "'Maximum depth for light to travel through the transparent material before becoming fully filtered (0.0 is disabled)'"
+MaterialSlot.link -> link: enum '"Link material to object or the object\'s data"'
+MaterialSlot.material -> material: pointer "'Material datablock used by this material slot'"
+MaterialSlot.name -> name: string, "'(read-only) Material slot name'"
+MaterialStrand.blend_distance -> blend_distance: float "'Worldspace distance over which to blend in the surface normal'"
+MaterialStrand.blender_units -> use_blender_units: boolean "'Use Blender units for widths instead of pixels'"
+MaterialStrand.min_size -> size_min: float "'Minimum size of strands in pixels'"
+MaterialStrand.root_size -> root_size: float "'Start size of strands in pixels or Blender units'"
+MaterialStrand.shape -> shape: float "'Positive values make strands rounder, negative makes strands spiky'"
+MaterialStrand.surface_diffuse -> use_surface_diffuse: boolean "'Make diffuse shading more similar to shading the surface'"
+MaterialStrand.tangent_shading -> use_tangent_shading: boolean "'Uses direction of strands as normal for tangent-shading'"
+MaterialStrand.tip_size -> tip_size: float "'End size of strands in pixels or Blender units'"
+MaterialStrand.uv_layer -> uv_layer: string "'Name of UV layer to override'"
+MaterialStrand.width_fade -> width_fade: float "'Transparency along the width of the strand'"
+MaterialSubsurfaceScattering.back -> back: float "'Back scattering weight'"
+MaterialSubsurfaceScattering.color -> color: float "'Scattering color'"
+MaterialSubsurfaceScattering.color_factor -> color_factor: float "'Blend factor for SSS colors'"
+MaterialSubsurfaceScattering.enabled -> use: boolean "'Enable diffuse subsurface scatting effects in a material'"
+MaterialSubsurfaceScattering.error_tolerance -> error_tolerance: float "'Error tolerance (low values are slower and higher quality)'"
+MaterialSubsurfaceScattering.front -> front: float "'Front scattering weight'"
+MaterialSubsurfaceScattering.ior -> ior: float "'Index of refraction (higher values are denser)'"
+MaterialSubsurfaceScattering.radius -> radius: float "'Mean red/green/blue scattering path length'"
+MaterialSubsurfaceScattering.scale -> scale: float "'Object scale factor'"
+MaterialSubsurfaceScattering.texture_factor -> texture_factor: float "'Texture scatting blend factor'"
+MaterialVolume.asymmetry -> asymmetry: float "'Back scattering (-1.0) to Forward scattering (1.0) and the range in between'"
+MaterialVolume.cache_resolution -> cache_resolution: int "'Resolution of the voxel grid, low resolutions are faster, high resolutions use more memory'"
+MaterialVolume.density -> density: float "'The base density of the volume'"
+MaterialVolume.density_scale -> density_scale: float '"Multiplier for the material\'s density"'
+MaterialVolume.depth_cutoff -> depth_cutoff: float "'Stop ray marching early if transmission drops below this luminance - higher values give speedups in dense volumes at the expense of accuracy'"
+MaterialVolume.emission -> emission: float "'Amount of light that gets emitted by the volume'"
+MaterialVolume.emission_color -> emission_color: float "'NO DESCRIPTION'"
+MaterialVolume.external_shadows -> use_external_shadows: boolean "'Receive shadows from sources outside the volume (temporary)'"
+MaterialVolume.light_cache -> use_light_cache: boolean "'Pre-calculate the shading information into a voxel grid, speeds up shading at slightly less accuracy'"
+MaterialVolume.lighting_mode -> light_mode: enum "'Method of shading, attenuating, and scattering light through the volume'"
+MaterialVolume.ms_diffusion -> ms_diffusion: float "'Diffusion factor, the strength of the blurring effect'"
+MaterialVolume.ms_intensity -> ms_intensity: float "'Multiplier for multiple scattered light energy'"
+MaterialVolume.ms_spread -> ms_spread: float "'Proportional distance over which the light is diffused'"
+MaterialVolume.reflection -> reflection: float "'Multiplier to make out-scattered light brighter or darker (non-physically correct)'"
+MaterialVolume.reflection_color -> reflection_color: float "'Colour of light scattered out of the volume (does not affect transmission)'"
+MaterialVolume.scattering -> scattering: float "'Amount of light that gets scattered out by the volume - the more out-scattering, the shallower the light will penetrate'"
+MaterialVolume.step_calculation -> step_calculation: enum "'Method of calculating the steps through the volume'"
+MaterialVolume.step_size -> step_size: float "'Distance between subsequent volume depth samples'"
+MaterialVolume.transmission_color -> transmission_color: float "'Result color of the volume, after other light has been scattered/absorbed'"
+Menu.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+Menu.bl_label -> bl_label: string "'NO DESCRIPTION'"
+Menu.layout -> layout: pointer, "'(read-only)'"
+MeshColor.color1 -> color1: float "'NO DESCRIPTION'"
+MeshColor.color2 -> color2: float "'NO DESCRIPTION'"
+MeshColor.color3 -> color3: float "'NO DESCRIPTION'"
+MeshColor.color4 -> color4: float "'NO DESCRIPTION'"
+MeshColorLayer.active -> active: boolean "'Sets the layer as active for display and editing'"
+MeshColorLayer.active_render -> active_render: boolean "'Sets the layer as active for rendering'"
+MeshColorLayer.data -> data: collection, "'(read-only)'"
+MeshColorLayer.name -> name: string "'NO DESCRIPTION'"
+MeshEdge.bevel_weight -> bevel_weight: float "'Weight used by the Bevel modifier'"
+MeshEdge.crease -> crease: float "'Weight used by the Subsurf modifier for creasing'"
+MeshEdge.fgon -> is_fgon: boolean, "'(read-only) Fgon edge'"
+MeshEdge.hide -> hide: boolean "'NO DESCRIPTION'"
+MeshEdge.index -> index: int, "'(read-only) Index number of the vertex'"
+MeshEdge.loose -> is_loose: boolean, "'(read-only) Loose edge'"
+MeshEdge.seam -> use_seam: boolean "'Seam edge for UV unwrapping'"
+MeshEdge.select -> select: boolean "'NO DESCRIPTION'"
+MeshEdge.sharp -> use_sharp: boolean "'Sharp edge for the EdgeSplit modifier'"
+MeshEdge.verts -> verts: int "'Vertex indices'"
+MeshFace.area -> area: float, "'(read-only) read only area of the face'"
+MeshFace.hide -> hide: boolean "'NO DESCRIPTION'"
+MeshFace.index -> index: int, "'(read-only) Index number of the vertex'"
+MeshFace.material_index -> material_index: int "'NO DESCRIPTION'"
+MeshFace.normal -> normal: float, "'(read-only) local space unit length normal vector for this face'"
+MeshFace.select -> select: boolean "'NO DESCRIPTION'"
+MeshFace.smooth -> use_smooth: boolean "'NO DESCRIPTION'"
+MeshFace.verts -> verts: int "'Vertex indices'"
+MeshFace.verts_raw -> verts_raw: int "'Fixed size vertex indices array'"
+MeshFaces.active -> active: int "'The active face for this mesh'"
+MeshFaces.active_tface -> active_tface: pointer, "'(read-only) Active Texture Face'"
+MeshFloatProperty.value -> value: float "'NO DESCRIPTION'"
+MeshFloatPropertyLayer.data -> data: collection, "'(read-only)'"
+MeshFloatPropertyLayer.name -> name: string "'NO DESCRIPTION'"
+MeshIntProperty.value -> value: int "'NO DESCRIPTION'"
+MeshIntPropertyLayer.data -> data: collection, "'(read-only)'"
+MeshIntPropertyLayer.name -> name: string "'NO DESCRIPTION'"
+MeshSticky.co -> co: float "'Sticky texture coordinate location'"
+MeshStringProperty.value -> value: string "'NO DESCRIPTION'"
+MeshStringPropertyLayer.data -> data: collection, "'(read-only)'"
+MeshStringPropertyLayer.name -> name: string "'NO DESCRIPTION'"
+MeshTextureFace.alpha_sort -> use_alpha_sort: boolean "'Enable sorting of faces for correct alpha drawing (slow, use Clip Alpha instead when possible)'"
+MeshTextureFace.billboard -> use_billboard: boolean "'Billboard with Z-axis constraint'"
+MeshTextureFace.collision -> use_collision: boolean "'Use face for collision and ray-sensor detection'"
+MeshTextureFace.halo -> use_halo: boolean "'Screen aligned billboard'"
+MeshTextureFace.image -> image: pointer "'NO DESCRIPTION'"
+MeshTextureFace.invisible -> hide: boolean "'Make face invisible'"
+MeshTextureFace.light -> use_light: boolean "'Use light for face'"
+MeshTextureFace.object_color -> use_object_color: boolean "'Use ObColor instead of vertex colors'"
+MeshTextureFace.select_uv -> select_uv: boolean "'NO DESCRIPTION'"
+MeshTextureFace.shadow -> use_shadow_face: boolean "'Face is used for shadow'"
+MeshTextureFace.shared -> use_blend_shared: boolean "'Blend vertex colors across face when vertices are shared'"
+MeshTextureFace.tex -> use_texture: boolean "'Render face with texture'"
+MeshTextureFace.text -> use_bitmap_text: boolean "'Enable bitmap text on face'"
+MeshTextureFace.transp -> transp: enum "'Transparency blending mode'"
+MeshTextureFace.twoside -> use_twoside: boolean "'Render face two-sided'"
+MeshTextureFace.uv -> uv: float "'NO DESCRIPTION'"
+MeshTextureFace.uv1 -> uv1: float "'NO DESCRIPTION'"
+MeshTextureFace.uv2 -> uv2: float "'NO DESCRIPTION'"
+MeshTextureFace.uv3 -> uv3: float "'NO DESCRIPTION'"
+MeshTextureFace.uv4 -> uv4: float "'NO DESCRIPTION'"
+MeshTextureFace.uv_pinned -> pin_uv: boolean "'NO DESCRIPTION'"
+MeshTextureFace.uv_raw -> uv_raw: float "'Fixed size UV coordinates array'"
+MeshTextureFaceLayer.active -> active: boolean "'Sets the layer as active for display and editing'"
+MeshTextureFaceLayer.active_clone -> active_clone: boolean "'Sets the layer as active for cloning'"
+MeshTextureFaceLayer.active_render -> active_render: boolean "'Sets the layer as active for rendering'"
+MeshTextureFaceLayer.data -> data: collection, "'(read-only)'"
+MeshTextureFaceLayer.name -> name: string "'NO DESCRIPTION'"
+MeshVertex.bevel_weight -> bevel_weight: float '"Weight used by the Bevel modifier \'Only Vertices\' option"'
+MeshVertex.co -> co: float "'NO DESCRIPTION'"
+MeshVertex.groups -> groups: collection, "'(read-only) Weights for the vertex groups this vertex is member of'"
+MeshVertex.hide -> hide: boolean "'NO DESCRIPTION'"
+MeshVertex.index -> index: int, "'(read-only) Index number of the vertex'"
+MeshVertex.normal -> normal: float "'Vertex Normal'"
+MeshVertex.select -> select: boolean "'NO DESCRIPTION'"
+MetaElement.hide -> hide: boolean "'Hide element'"
+MetaElement.location -> location: float "'NO DESCRIPTION'"
+MetaElement.negative -> use_negative: boolean "'Set metaball as negative one'"
+MetaElement.radius -> radius: float "'NO DESCRIPTION'"
+MetaElement.rotation -> rotation: float "'NO DESCRIPTION'"
+MetaElement.size_x -> size_x: float "'Size of element, use of components depends on element type'"
+MetaElement.size_y -> size_y: float "'Size of element, use of components depends on element type'"
+MetaElement.size_z -> size_z: float "'Size of element, use of components depends on element type'"
+MetaElement.stiffness -> stiffness: float "'Stiffness defines how much of the element to fill'"
+MetaElement.type -> type: enum "'Metaball types'"
+Modifier.editmode -> show_in_editmode: boolean "'Use modifier while in the edit mode'"
+Modifier.expanded -> show_expanded: boolean "'Set modifier expanded in the user interface'"
+Modifier.name -> name: string "'Modifier name'"
+Modifier.on_cage -> show_on_cage: boolean "'Enable direct editing of modifier control cage'"
+Modifier.realtime -> show_realtime: boolean "'Realtime display of a modifier'"
+Modifier.render -> use_render: boolean "'Use modifier during rendering'"
+Modifier.type -> type: enum, "'(read-only)'"
++ * Modifier|ArmatureModifier.invert -> invert_vertex_group: boolean "'Invert vertex group influence'"
++ * Modifier|ArmatureModifier.multi_modifier -> use_multi_modifier: boolean "'Use same input as previous modifier, and mix results using overall vgroup'"
++ * Modifier|ArmatureModifier.object -> object: pointer "'Armature object to deform with'"
++ * Modifier|ArmatureModifier.quaternion -> use_deform_preserve_volume: boolean "'Deform rotation interpolation with quaternions'"
++ * Modifier|ArmatureModifier.use_bone_envelopes -> use_bone_envelopes: boolean "'NO DESCRIPTION'"
++ * Modifier|ArmatureModifier.use_vertex_groups -> use_vertex_groups: boolean "'NO DESCRIPTION'"
++ * Modifier|ArmatureModifier.vertex_group -> vertex_group: string "'Vertex group name'"
++ * Modifier|ArrayModifier.add_offset_object -> use_object_offset: boolean '"Add another object\'s transformation to the total offset"'
++ * Modifier|ArrayModifier.constant_offset -> use_constant_offset: boolean "'Add a constant offset'"
++ * Modifier|ArrayModifier.constant_offset_displacement -> constant_offset_displace: float "'NO DESCRIPTION'"
+CHECK WITH SIMILAR * Modifier|ArrayModifier.count -> count: int 'Number of duplicates to make'
++ * Modifier|ArrayModifier.curve -> curve: pointer "'Curve object to fit array length to'"
++ * Modifier|ArrayModifier.end_cap -> end_cap: pointer "'Mesh object to use as an end cap'"
++ * Modifier|ArrayModifier.fit_type -> fit_type: enum "'Array length calculation method'"
++ * Modifier|ArrayModifier.length -> fit_length: float "'Length to fit array within'"
++ * Modifier|ArrayModifier.merge_adjacent_vertices -> use_merge_vertices: boolean "'Merge vertices in adjacent duplicates'"
++ * Modifier|ArrayModifier.merge_distance -> merge_threshold: float "'Limit below which to merge vertices'"
++ * Modifier|ArrayModifier.merge_end_vertices -> use_merge_vertices_cap: boolean "'Merge vertices in first and last duplicates'"
++ * Modifier|ArrayModifier.offset_object -> offset_object: pointer "'NO DESCRIPTION'"
++ * Modifier|ArrayModifier.relative_offset -> use_relative_offset: boolean '"Add an offset relative to the object\'s bounding box"'
++ * Modifier|ArrayModifier.relative_offset_displacement -> relative_offset_displace: float "'NO DESCRIPTION'"
++ * Modifier|ArrayModifier.start_cap -> start_cap: pointer "'Mesh object to use as a start cap'"
++ * Modifier|BevelModifier.angle -> angle_limit: float "'Angle above which to bevel edges'"
++ * Modifier|BevelModifier.edge_weight_method -> edge_weight_method: enum "'What edge weight to use for weighting a vertex'"
++ * Modifier|BevelModifier.limit_method -> limit_method: enum "'NO DESCRIPTION'"
++ * Modifier|BevelModifier.only_vertices -> use_only_vertices: boolean "'Bevel verts/corners, not edges'"
++ * Modifier|BevelModifier.width -> width: float "'Bevel value/amount'"
++ * Modifier|BooleanModifier.object -> object: pointer "'Mesh object to use for Boolean operation'"
++ * Modifier|BooleanModifier.operation -> operation: enum "'NO DESCRIPTION'"
++ * Modifier|BuildModifier.frame_start -> frame_start: float "'Specify the start frame of the effect'"
++ * Modifier|BuildModifier.length -> frame_length: float "'Specify the total time the build effect requires'"
++ * Modifier|BuildModifier.randomize -> use_random_order: boolean "'Randomize the faces or edges during build'"
++ * Modifier|BuildModifier.seed -> seed: int "'Specify the seed for random if used'"
++ * Modifier|CastModifier.cast_type -> cast_type: enum "'NO DESCRIPTION'"
++ * Modifier|CastModifier.factor -> factor: float "'NO DESCRIPTION'"
++ * Modifier|CastModifier.from_radius -> use_radius_as_size: boolean "'Use radius as size of projection shape (0 = auto)'"
++ * Modifier|CastModifier.object -> object: pointer "'Control object: if available, its location determines the center of the effect'"
++ * Modifier|CastModifier.radius -> radius: float "'Only deform vertices within this distance from the center of the effect (leave as 0 for infinite.)'"
++ * Modifier|CastModifier.size -> size: float "'Size of projection shape (leave as 0 for auto.)'"
++ * Modifier|CastModifier.use_transform -> use_transform: boolean "'Use object transform to control projection shape'"
++ * Modifier|CastModifier.vertex_group -> vertex_group: string "'Vertex group name'"
++ * Modifier|CastModifier.x -> use_x: boolean "'NO DESCRIPTION'"
++ * Modifier|CastModifier.y -> use_y: boolean "'NO DESCRIPTION'"
++ * Modifier|CastModifier.z -> use_z: boolean "'NO DESCRIPTION'"
++ * Modifier|ClothModifier.collision_settings -> collision_settings: pointer, "'(read-only)'"
++ * Modifier|ClothModifier.point_cache -> point_cache: pointer, "'(read-only)'"
++ * Modifier|ClothModifier.settings -> settings: pointer, "'(read-only)'"
++ * Modifier|CollisionModifier.settings -> settings: pointer, "'(read-only)'"
+Modifier|CurveModifier.deform_axis -> deform_axis: enum "'The axis that the curve deforms along'"
+Modifier|CurveModifier.object -> object: pointer "'Curve object to deform with'"
+Modifier|CurveModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|DecimateModifier.face_count -> face_count: int, "'(read-only) The current number of faces in the decimated mesh'"
+Modifier|DecimateModifier.ratio -> ratio: float "'Defines the ratio of triangles to reduce to'"
+Modifier|DisplaceModifier.direction -> direction: enum "'NO DESCRIPTION'"
+Modifier|DisplaceModifier.midlevel -> midlevel: float "'Material value that gives no displacement'"
+Modifier|DisplaceModifier.strength -> strength: float "'NO DESCRIPTION'"
+Modifier|DisplaceModifier.texture -> texture: pointer "'NO DESCRIPTION'"
+Modifier|DisplaceModifier.texture_coordinate_object -> texture_coordinate_object: pointer "'NO DESCRIPTION'"
+Modifier|DisplaceModifier.texture_coordinates -> texture_coordinates: enum "'NO DESCRIPTION'"
+Modifier|DisplaceModifier.uv_layer -> uv_layer: string "'UV layer name'"
+Modifier|DisplaceModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|EdgeSplitModifier.split_angle -> split_angle: float "'Angle above which to split edges'"
+Modifier|EdgeSplitModifier.use_edge_angle -> use_edge_angle: boolean "'Split edges with high angle between faces'"
+Modifier|EdgeSplitModifier.use_sharp -> use_edge_sharp: boolean "'Split edges that are marked as sharp'"
+Modifier|ExplodeModifier.alive -> show_alive: boolean "'Show mesh when particles are alive'"
+Modifier|ExplodeModifier.dead -> show_dead: boolean "'Show mesh when particles are dead'"
+Modifier|ExplodeModifier.protect -> protect: float "'Clean vertex group edges'"
+Modifier|ExplodeModifier.size -> use_size: boolean "'Use particle size for the shrapnel'"
+Modifier|ExplodeModifier.split_edges -> use_edge_split: boolean "'Split face edges for nicer shrapnel'"
+Modifier|ExplodeModifier.unborn -> show_unborn: boolean "'Show mesh when particles are unborn'"
+Modifier|ExplodeModifier.vertex_group -> vertex_group: string "'NO DESCRIPTION'"
+Modifier|FluidSimulationModifier.settings -> settings: pointer, "'(read-only) Settings for how this object is used in the fluid simulation'"
+Modifier|HookModifier.falloff -> falloff: float "'If not zero, the distance from the hook where influence ends'"
+Modifier|HookModifier.force -> force: float "'Relative force of the hook'"
+Modifier|HookModifier.object -> object: pointer "'Parent Object for hook, also recalculates and clears offset'"
+Modifier|HookModifier.subtarget -> subtarget: string "'Name of Parent Bone for hook (if applicable), also recalculates and clears offset'"
+Modifier|HookModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|LatticeModifier.object -> object: pointer "'Lattice object to deform with'"
+Modifier|LatticeModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|MaskModifier.armature -> armature: pointer "'Armature to use as source of bones to mask'"
+Modifier|MaskModifier.invert -> invert_vertex_group: boolean "'Use vertices that are not part of region defined'"
+Modifier|MaskModifier.mode -> mode: enum "'NO DESCRIPTION'"
+Modifier|MaskModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|MeshDeformModifier.dynamic -> use_dynamic_bind: boolean "'Recompute binding dynamically on top of other deformers (slower and more memory consuming.)'"
+Modifier|MeshDeformModifier.invert -> invert_vertex_group: boolean "'Invert vertex group influence'"
+Modifier|MeshDeformModifier.is_bound -> is_bound: boolean, "'(read-only) Whether geometry has been bound to control cage'"
+Modifier|MeshDeformModifier.object -> object: pointer "'Mesh object to deform with'"
+Modifier|MeshDeformModifier.precision -> precision: int "'The grid size for binding'"
+Modifier|MeshDeformModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|MirrorModifier.clip -> use_clip: boolean "'Prevents vertices from going through the mirror during transform'"
+Modifier|MirrorModifier.merge_limit -> merge_limit: float "'Distance from axis within which mirrored vertices are merged'"
+Modifier|MirrorModifier.mirror_object -> mirror_object: pointer "'Object to use as mirror'"
+Modifier|MirrorModifier.mirror_u -> use_mirror_u: boolean "'Mirror the U texture coordinate around the 0.5 point'"
+Modifier|MirrorModifier.mirror_v -> use_mirror_v: boolean "'Mirror the V texture coordinate around the 0.5 point'"
+Modifier|MirrorModifier.mirror_vertex_groups -> use_mirror_vertex_groups: boolean "'Mirror vertex groups (e.g. .R->.L)'"
+Modifier|MirrorModifier.x -> use_x: boolean "'Enable X axis mirror'"
+Modifier|MirrorModifier.y -> use_y: boolean "'Enable Y axis mirror'"
+Modifier|MirrorModifier.z -> use_z: boolean "'Enable Z axis mirror'"
+Modifier|MultiresModifier.external -> is_external: boolean, "'(read-only) Store multires displacements outside the .blend file, to save memory'"
+Modifier|MultiresModifier.filepath -> filepath: string "'Path to external displacements file'"
+Modifier|MultiresModifier.levels -> levels: int "'Number of subdivisions to use in the viewport'"
+Modifier|MultiresModifier.optimal_display -> show_only_control_edges: boolean "'Skip drawing/rendering of interior subdivided edges'"
+Modifier|MultiresModifier.render_levels -> render_levels: int "'NO DESCRIPTION'"
+Modifier|MultiresModifier.sculpt_levels -> sculpt_levels: int "'Number of subdivisions to use in sculpt mode'"
+Modifier|MultiresModifier.subdivision_type -> subdivision_type: enum "'Selects type of subdivision algorithm'"
+Modifier|MultiresModifier.total_levels -> total_levels: int, "'(read-only) Number of subdivisions for which displacements are stored'"
+Modifier|ParticleInstanceModifier.alive -> use_alive: boolean "'Show instances when particles are alive'"
+Modifier|ParticleInstanceModifier.axis -> axis: enum "'Pole axis for rotation'"
+Modifier|ParticleInstanceModifier.children -> use_children: boolean "'Create instances from child particles'"
+Modifier|ParticleInstanceModifier.dead -> use_dead: boolean "'Show instances when particles are dead'"
+Modifier|ParticleInstanceModifier.keep_shape -> use_preserve_shape: boolean '"Don\'t stretch the object"'
+Modifier|ParticleInstanceModifier.normal -> use_normal: boolean "'Create instances from normal particles'"
+Modifier|ParticleInstanceModifier.object -> object: pointer "'Object that has the particle system'"
+Modifier|ParticleInstanceModifier.particle_system_number -> particle_system_number: int "'NO DESCRIPTION'"
+Modifier|ParticleInstanceModifier.position -> position: float "'Position along path'"
+Modifier|ParticleInstanceModifier.random_position -> random_position: float "'Randomize position along path'"
+Modifier|ParticleInstanceModifier.size -> use_size: boolean "'Use particle size to scale the instances'"
+Modifier|ParticleInstanceModifier.unborn -> use_unborn: boolean "'Show instances when particles are unborn'"
+Modifier|ParticleInstanceModifier.use_path -> use_path: boolean "'Create instances along particle paths'"
+Modifier|ParticleSystemModifier.particle_system -> particle_system: pointer, "'(read-only) Particle System that this modifier controls'"
+Modifier|ScrewModifier.angle -> angle: float "'Angle of revolution'"
+Modifier|ScrewModifier.axis -> axis: enum "'Screw axis'"
+Modifier|ScrewModifier.iterations -> iterations: int "'Number of times to apply the screw operation'"
+Modifier|ScrewModifier.object -> object: pointer "'Object to define the screw axis'"
+Modifier|ScrewModifier.render_steps -> render_steps: int "'Number of steps in the revolution'"
+Modifier|ScrewModifier.screw_offset -> screw_offset: float "'Offset the revolution along its axis'"
+Modifier|ScrewModifier.steps -> steps: int "'Number of steps in the revolution'"
+Modifier|ScrewModifier.use_normal_calculate -> use_normal_calculate: boolean "'Calculate the order of edges (needed for meshes, but not curves)'"
+Modifier|ScrewModifier.use_normal_flip -> use_normal_flip: boolean "'Flip normals of lathed faces'"
+Modifier|ScrewModifier.use_object_screw_offset -> use_object_screw_offset: boolean "'Use the distance between the objects to make a screw'"
+Modifier|ShrinkwrapModifier.auxiliary_target -> auxiliary_target: pointer "'Additional mesh target to shrink to'"
+Modifier|ShrinkwrapModifier.cull_back_faces -> use_cull_back_faces: boolean "'Stop vertices from projecting to a back face on the target'"
+Modifier|ShrinkwrapModifier.cull_front_faces -> use_cull_front_faces: boolean "'Stop vertices from projecting to a front face on the target'"
+Modifier|ShrinkwrapModifier.keep_above_surface -> use_keep_above_surface: boolean "'NO DESCRIPTION'"
+Modifier|ShrinkwrapModifier.mode -> mode: enum "'NO DESCRIPTION'"
+Modifier|ShrinkwrapModifier.negative -> use_negative_direction: boolean "'Allow vertices to move in the negative direction of axis'"
+Modifier|ShrinkwrapModifier.offset -> offset: float "'Distance to keep from the target'"
+Modifier|ShrinkwrapModifier.positive -> use_positive_direction: boolean "'Allow vertices to move in the positive direction of axis'"
+Modifier|ShrinkwrapModifier.subsurf_levels -> subsurf_levels: int '"Number of subdivisions that must be performed before extracting vertices\' positions and normals"'
+Modifier|ShrinkwrapModifier.target -> target: pointer "'Mesh target to shrink to'"
+Modifier|ShrinkwrapModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|ShrinkwrapModifier.x -> use_project_x: boolean "'NO DESCRIPTION'"
+Modifier|ShrinkwrapModifier.y -> use_project_y: boolean "'NO DESCRIPTION'"
+Modifier|ShrinkwrapModifier.z -> use_project_z: boolean "'NO DESCRIPTION'"
+Modifier|SimpleDeformModifier.factor -> factor: float "'NO DESCRIPTION'"
+Modifier|SimpleDeformModifier.limits -> limits: float "'Lower/Upper limits for deform'"
+Modifier|SimpleDeformModifier.lock_x_axis -> lock_x: boolean "'NO DESCRIPTION'"
+Modifier|SimpleDeformModifier.lock_y_axis -> lock_y: boolean "'NO DESCRIPTION'"
+Modifier|SimpleDeformModifier.mode -> mode: enum "'NO DESCRIPTION'"
+Modifier|SimpleDeformModifier.origin -> origin: pointer "'Origin of modifier space coordinates'"
+Modifier|SimpleDeformModifier.relative -> use_relative: boolean "'Sets the origin of deform space to be relative to the object'"
+Modifier|SimpleDeformModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|SmokeModifier.coll_settings -> coll_settings: pointer, "'(read-only)'"
+Modifier|SmokeModifier.domain_settings -> domain_settings: pointer, "'(read-only)'"
+Modifier|SmokeModifier.flow_settings -> flow_settings: pointer, "'(read-only)'"
+Modifier|SmokeModifier.smoke_type -> smoke_type: enum "'NO DESCRIPTION'"
+Modifier|SmoothModifier.factor -> factor: float "'NO DESCRIPTION'"
+Modifier|SmoothModifier.repeat -> repeat: int "'NO DESCRIPTION'"
+Modifier|SmoothModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|SmoothModifier.x -> use_x: boolean "'NO DESCRIPTION'"
+Modifier|SmoothModifier.y -> use_y: boolean "'NO DESCRIPTION'"
+Modifier|SmoothModifier.z -> use_z: boolean "'NO DESCRIPTION'"
+Modifier|SoftBodyModifier.point_cache -> point_cache: pointer, "'(read-only)'"
+Modifier|SoftBodyModifier.settings -> settings: pointer, "'(read-only)'"
+Modifier|SolidifyModifier.edge_crease_inner -> edge_crease_inner: float "'Assign a crease to inner edges'"
+Modifier|SolidifyModifier.edge_crease_outer -> edge_crease_outer: float "'Assign a crease to outer edges'"
+Modifier|SolidifyModifier.edge_crease_rim -> edge_crease_rim: float "'Assign a crease to the edges making up the rim'"
+Modifier|SolidifyModifier.invert -> invert_vertex_group: boolean "'Invert the vertex group influence'"
+Modifier|SolidifyModifier.offset -> offset: float "'NO DESCRIPTION'"
+Modifier|SolidifyModifier.thickness -> thickness: float "'Thickness of the shell'"
+Modifier|SolidifyModifier.use_even_offset -> use_even_offset: boolean "'Maintain thickness by adjusting for sharp corners (slow, disable when not needed)'"
+Modifier|SolidifyModifier.use_quality_normals -> use_quality_normals: boolean "'Calculate normals which result in more even thickness (slow, disable when not needed)'"
+Modifier|SolidifyModifier.use_rim -> use_rim: boolean "'Create edge loops between the inner and outer surfaces on face edges (slow, disable when not needed)'"
+Modifier|SolidifyModifier.use_rim_material -> use_rim_material: boolean "'Use in the next material for rim faces'"
+Modifier|SolidifyModifier.vertex_group -> vertex_group: string "'Vertex group name'"
+Modifier|SubsurfModifier.levels -> levels: int "'Number of subdivisions to perform'"
+Modifier|SubsurfModifier.optimal_display -> show_only_control_edges: boolean "'Skip drawing/rendering of interior subdivided edges'"
+Modifier|SubsurfModifier.render_levels -> render_levels: int "'Number of subdivisions to perform when rendering'"
+Modifier|SubsurfModifier.subdivision_type -> subdivision_type: enum "'Selects type of subdivision algorithm'"
+Modifier|SubsurfModifier.subsurf_uv -> use_subsurf_uv: boolean "'Use subsurf to subdivide UVs'"
+Modifier|UVProjectModifier.aspect_x -> aspect_x: float "'NO DESCRIPTION'"
+Modifier|UVProjectModifier.aspect_y -> aspect_y: float "'NO DESCRIPTION'"
+Modifier|UVProjectModifier.image -> image: pointer "'NO DESCRIPTION'"
+Modifier|UVProjectModifier.num_projectors -> num_projectors: int "'Number of projectors to use'"
+Modifier|UVProjectModifier.override_image -> use_image_override: boolean '"Override faces\' current images with the given image"'
+Modifier|UVProjectModifier.projectors -> projectors: collection, "'(read-only)'"
+Modifier|UVProjectModifier.scale_x -> scale_x: float "'NO DESCRIPTION'"
+Modifier|UVProjectModifier.scale_y -> scale_y: float "'NO DESCRIPTION'"
+Modifier|UVProjectModifier.uv_layer -> uv_layer: string "'UV layer name'"
+Modifier|WaveModifier.cyclic -> use_cyclic: boolean "'Cyclic wave effect'"
+Modifier|WaveModifier.damping_time -> damping_time: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.falloff_radius -> falloff_radius: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.height -> height: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.lifetime -> lifetime: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.narrowness -> narrowness: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.normals -> use_normal: boolean "'Displace along normal'"
+Modifier|WaveModifier.speed -> speed: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.start_position_object -> start_position_object: pointer "'NO DESCRIPTION'"
+Modifier|WaveModifier.start_position_x -> start_position_x: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.start_position_y -> start_position_y: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.texture -> texture: pointer "'Texture for modulating the wave'"
+Modifier|WaveModifier.texture_coordinates -> texture_coordinates: enum "'Texture coordinates used for modulating input'"
+Modifier|WaveModifier.texture_coordinates_object -> texture_coordinates_object: pointer "'NO DESCRIPTION'"
+Modifier|WaveModifier.time_offset -> time_offset: float "'Either the starting frame (for positive speed) or ending frame (for negative speed.)'"
+Modifier|WaveModifier.uv_layer -> uv_layer: string "'UV layer name'"
+Modifier|WaveModifier.vertex_group -> vertex_group: string "'Vertex group name for modulating the wave'"
+Modifier|WaveModifier.width -> width: float "'NO DESCRIPTION'"
+Modifier|WaveModifier.x -> use_x: boolean "'X axis motion'"
+Modifier|WaveModifier.x_normal -> use_normal_x: boolean "'Enable displacement along the X normal'"
+Modifier|WaveModifier.y -> use_y: boolean "'Y axis motion'"
+Modifier|WaveModifier.y_normal -> use_normal_y: boolean "'Enable displacement along the Y normal'"
+Modifier|WaveModifier.z_normal -> use_normal_z: boolean "'Enable displacement along the Z normal'"
+MotionPath.editing -> is_edited: boolean "'Path is being edited'"
+MotionPath.frame_end -> frame_end: int, "'(read-only) End frame of the stored range'"
+MotionPath.frame_start -> frame_start: int, "'(read-only) Starting frame of the stored range'"
+MotionPath.length -> length: int, "'(read-only) Number of frames cached'"
+MotionPath.points -> points: collection, "'(read-only) Cached positions per frame'"
+MotionPath.use_bone_head -> use_bone_head: boolean, "'(read-only) For PoseBone paths, use the bone head location when calculating this path'"
+MotionPathVert.co -> co: float "'NO DESCRIPTION'"
+MotionPathVert.select -> select: boolean "'Path point is selected for editing'"
+NlaStrip.action -> action: pointer "'Action referenced by this strip'"
+NlaStrip.action_frame_end -> action_frame_end: float "'NO DESCRIPTION'"
+NlaStrip.action_frame_start -> action_frame_start: float "'NO DESCRIPTION'"
+NlaStrip.active -> active: boolean, "'(read-only) NLA Strip is active'"
+NlaStrip.animated_influence -> use_animated_influence: boolean "'Influence setting is controlled by an F-Curve rather than automatically determined'"
+NlaStrip.animated_time -> use_animated_time: boolean "'Strip time is controlled by an F-Curve rather than automatically determined'"
+NlaStrip.animated_time_cyclic -> use_animated_time_cyclic: boolean "'Cycle the animated time within the action start & end'"
+NlaStrip.auto_blending -> use_auto_blend: boolean "'Number of frames for Blending In/Out is automatically determined from overlapping strips'"
+NlaStrip.blend_in -> blend_in: float "'Number of frames at start of strip to fade in influence'"
+NlaStrip.blend_out -> blend_out: float "'NO DESCRIPTION'"
+NlaStrip.blending -> blend_type: enum '"Method used for combining strip\'s result with accumulated result"'
+NlaStrip.extrapolation -> extrapolation: enum "'Action to take for gaps past the strip extents'"
+NlaStrip.fcurves -> fcurves: collection, '"(read-only) F-Curves for controlling the strip\'s influence and timing"'
+NlaStrip.frame_end -> frame_end: float "'NO DESCRIPTION'"
+NlaStrip.frame_start -> frame_start: float "'NO DESCRIPTION'"
+NlaStrip.influence -> influence: float "'Amount the strip contributes to the current result'"
+NlaStrip.modifiers -> modifiers: collection, "'(read-only) Modifiers affecting all the F-Curves in the referenced Action'"
+NlaStrip.mute -> mute: boolean "'NLA Strip is not evaluated'"
+NlaStrip.name -> name: string "'NO DESCRIPTION'"
+NlaStrip.repeat -> repeat: float "'Number of times to repeat the action range'"
+NlaStrip.reversed -> use_reverse: boolean "'NLA Strip is played back in reverse order (only when timing is automatically determined)'"
+NlaStrip.scale -> scale: float "'Scaling factor for action'"
+NlaStrip.select -> select: boolean "'NLA Strip is selected'"
+NlaStrip.strip_time -> strip_time: float "'Frame of referenced Action to evaluate'"
+NlaStrip.strips -> strips: collection, "'(read-only) NLA Strips that this strip acts as a container for (if it is of type Meta)'"
+NlaStrip.type -> type: enum, "'(read-only) Type of NLA Strip'"
+NlaTrack.active -> active: boolean, "'(read-only) NLA Track is active'"
+NlaTrack.lock -> lock: boolean "'NLA Track is locked'"
+NlaTrack.mute -> mute: boolean "'NLA Track is not evaluated'"
+NlaTrack.name -> name: string "'NO DESCRIPTION'"
+NlaTrack.select -> select: boolean "'NLA Track is selected'"
+NlaTrack.solo -> is_solo: boolean, "'(read-only) NLA Track is evaluated itself (i.e. active Action and all other NLA Tracks in the same AnimData block are disabled)'"
+NlaTrack.strips -> strips: collection, "'(read-only) NLA Strips on this NLA-track'"
+Node.inputs -> inputs: collection, "'(read-only)'"
+Node.location -> location: float "'NO DESCRIPTION'"
+Node.name -> name: string "'Node name'"
+Node.outputs -> outputs: collection, "'(read-only)'"
++ * Node|CompositorNode.type -> type: enum, "'(read-only)'"
++ * Node|CompositorNode|CompositorNodeAlphaOver.convert_premul -> use_premultiply: boolean "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeAlphaOver.premul -> premul: float "'Mix Factor'"
++ * Node|CompositorNode|CompositorNodeBilateralblur.iterations -> iterations: int "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBilateralblur.sigma_color -> sigma_color: float "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBilateralblur.sigma_space -> sigma_space: float "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.bokeh -> use_bokeh: boolean "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.factor -> factor: float "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.factor_x -> factor_x: float "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.factor_y -> factor_y: float "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.filter_type -> filter_type: enum "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.gamma -> use_gamma_correction: boolean "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.relative -> use_relative: boolean "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.sizex -> size_x: int "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeBlur.sizey -> size_y: int "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeChannelMatte.algorithm -> limit_method: enum "'Algorithm to use to limit channel'"
++ * Node|CompositorNode|CompositorNodeChannelMatte.channel -> matte_channel: enum "'Channel used to determine matte'"
++ * Node|CompositorNode|CompositorNodeChannelMatte.color_space -> color_space: enum "'NO DESCRIPTION'"
++ * Node|CompositorNode|CompositorNodeChannelMatte.high -> limit_max: float "'Values higher than this setting are 100% opaque'"
++ * Node|CompositorNode|CompositorNodeChannelMatte.limit_channel -> limit_channel: enum "'Limit by this channels value'"
++ * Node|CompositorNode|CompositorNodeChannelMatte.low -> limit_min: float "'Values lower than this setting are 100% keyed'"
+TODO * Node|CompositorNode|CompositorNodeChromaMatte.acceptance -> acceptance: float 'Tolerance for a color to be considered a keying color'
+TODO * Node|CompositorNode|CompositorNodeChromaMatte.cutoff -> cutoff: float 'Tolerance below which colors will be considered as exact matches'
+Node|CompositorNode|CompositorNodeChromaMatte.gain -> gain: float "'Alpha gain'"
+Node|CompositorNode|CompositorNodeChromaMatte.lift -> lift: float "'Alpha lift'"
+Node|CompositorNode|CompositorNodeChromaMatte.shadow_adjust -> shadow_adjust: float "'Adjusts the brightness of any shadows captured'"
+Node|CompositorNode|CompositorNodeColorBalance.correction_formula -> correction_formula: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeColorBalance.gain -> gain: float "'Correction for Highlights'"
+Node|CompositorNode|CompositorNodeColorBalance.gamma -> gamma: float "'Correction for Midtones'"
+Node|CompositorNode|CompositorNodeColorBalance.lift -> lift: float "'Correction for Shadows'"
+Node|CompositorNode|CompositorNodeColorBalance.offset -> offset: float "'Correction for Shadows'"
+Node|CompositorNode|CompositorNodeColorBalance.power -> power: float "'Correction for Midtones'"
+Node|CompositorNode|CompositorNodeColorBalance.slope -> slope: float "'Correction for Highlights'"
+Node|CompositorNode|CompositorNodeColorMatte.h -> h: float "'Hue tolerance for colors to be considered a keying color'"
+Node|CompositorNode|CompositorNodeColorMatte.s -> s: float "'Saturation Tolerance for the color'"
+Node|CompositorNode|CompositorNodeColorMatte.v -> v: float "'Value Tolerance for the color'"
+Node|CompositorNode|CompositorNodeColorSpill.algorithm -> algorithm: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeColorSpill.channel -> channel: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeColorSpill.limit_channel -> limit_channel: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeColorSpill.ratio -> ratio: float "'Scale limit by value'"
+Node|CompositorNode|CompositorNodeColorSpill.unspill -> use_unspill: boolean "'Compensate all channels (diffenrently) by hand'"
+Node|CompositorNode|CompositorNodeColorSpill.unspill_blue -> unspill_blue: float "'Blue spillmap scale'"
+Node|CompositorNode|CompositorNodeColorSpill.unspill_green -> unspill_green: float "'Green spillmap scale'"
+Node|CompositorNode|CompositorNodeColorSpill.unspill_red -> unspill_red: float "'Red spillmap scale'"
+Node|CompositorNode|CompositorNodeCrop.crop_size -> use_crop_size: boolean "'Whether to crop the size of the input image'"
+Node|CompositorNode|CompositorNodeCrop.x1 -> x1: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeCrop.x2 -> x2: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeCrop.y1 -> y1: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeCrop.y2 -> y2: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeCurveRGB.mapping -> mapping: pointer, "'(read-only)'"
+Node|CompositorNode|CompositorNodeCurveVec.mapping -> mapping: pointer, "'(read-only)'"
+Node|CompositorNode|CompositorNodeDBlur.angle -> angle: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.center_x -> center_x: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.center_y -> center_y: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.distance -> distance: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.iterations -> iterations: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.spin -> spin: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.wrap -> use_wrap: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDBlur.zoom -> zoom: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDefocus.angle -> angle: int "'Bokeh shape rotation offset in degrees'"
+Node|CompositorNode|CompositorNodeDefocus.bokeh -> bokeh: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeDefocus.f_stop -> f_stop: float "'Amount of focal blur, 128=infinity=perfect focus, half the value doubles the blur radius'"
+Node|CompositorNode|CompositorNodeDefocus.gamma_correction -> use_gamma_correction: boolean "'Enable gamma correction before and after main process'"
+Node|CompositorNode|CompositorNodeDefocus.max_blur -> blur_max: float "'blur limit, maximum CoC radius, 0=no limit'"
+Node|CompositorNode|CompositorNodeDefocus.preview -> use_preview: boolean "'Enable sampling mode, useful for preview when using low samplecounts'"
+Node|CompositorNode|CompositorNodeDefocus.samples -> samples: int "'Number of samples (16=grainy, higher=less noise)'"
+Node|CompositorNode|CompositorNodeDefocus.threshold -> threshold: float "'CoC radius threshold, prevents background bleed on in-focus midground, 0=off'"
+Node|CompositorNode|CompositorNodeDefocus.use_zbuffer -> use_zbuffer: boolean "'Disable when using an image as input instead of actual zbuffer (auto enabled if node not image based, eg. time node)'"
+Node|CompositorNode|CompositorNodeDefocus.z_scale -> z_scale: float "'Scales the Z input when not using a zbuffer, controls maximum blur designated by the color white or input value 1'"
+Node|CompositorNode|CompositorNodeDiffMatte.falloff -> falloff: float "'Color distances below this additional threshold are partially keyed'"
+Node|CompositorNode|CompositorNodeDiffMatte.tolerance -> tolerance: float "'Color distances below this threshold are keyed'"
+Node|CompositorNode|CompositorNodeDilateErode.distance -> distance: int "'Distance to grow/shrink (number of iterations)'"
+Node|CompositorNode|CompositorNodeDistanceMatte.falloff -> falloff: float "'Color distances below this additional threshold are partially keyed'"
+Node|CompositorNode|CompositorNodeDistanceMatte.tolerance -> tolerance: float "'Color distances below this threshold are keyed'"
+Node|CompositorNode|CompositorNodeFilter.filter_type -> filter_type: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeFlip.axis -> axis: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeGlare.angle_offset -> angle_offset: float "'Streak angle offset in degrees'"
+Node|CompositorNode|CompositorNodeGlare.color_modulation -> color_modulation: float "'Amount of Color Modulation, modulates colors of streaks and ghosts for a spectral dispersion effect'"
+Node|CompositorNode|CompositorNodeGlare.fade -> fade: float "'Streak fade-out factor'"
+Node|CompositorNode|CompositorNodeGlare.glare_type -> glare_type: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeGlare.iterations -> iterations: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeGlare.mix -> mix: float "'-1 is original image only, 0 is exact 50/50 mix, 1 is processed image only'"
+Node|CompositorNode|CompositorNodeGlare.quality -> quality: enum "'If not set to high quality, the effect will be applied to a low-res copy of the source image'"
+Node|CompositorNode|CompositorNodeGlare.rotate_45 -> use_rotate_45: boolean "'Simple star filter: add 45 degree rotation offset'"
+Node|CompositorNode|CompositorNodeGlare.size -> size: int "'Glow/glare size (not actual size; relative to initial size of bright area of pixels)'"
+Node|CompositorNode|CompositorNodeGlare.streaks -> streaks: int "'Total number of streaks'"
+Node|CompositorNode|CompositorNodeGlare.threshold -> threshold: float "'The glare filter will only be applied to pixels brighter than this value'"
+Node|CompositorNode|CompositorNodeHueCorrect.mapping -> mapping: pointer, "'(read-only)'"
+Node|CompositorNode|CompositorNodeHueSat.hue -> hue: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeHueSat.sat -> sat: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeHueSat.val -> val: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeIDMask.index -> index: int "'Pass index number to convert to alpha'"
+Node|CompositorNode|CompositorNodeImage.auto_refresh -> use_auto_refresh: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeImage.cyclic -> use_cyclic: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeImage.frames -> frames: int "'Number of images used in animation'"
+Node|CompositorNode|CompositorNodeImage.image -> image: pointer "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeImage.layer -> layer: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeImage.offset -> offset: int "'Offsets the number of the frame to use in the animation'"
+Node|CompositorNode|CompositorNodeImage.start -> start: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeInvert.alpha -> invert_alpha: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeInvert.rgb -> invert_rgb: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeLensdist.fit -> use_fit: boolean "'For positive distortion factor only: scale image such that black areas are not visible'"
+Node|CompositorNode|CompositorNodeLensdist.jitter -> use_jitter: boolean "'Enable/disable jittering; faster, but also noisier'"
+Node|CompositorNode|CompositorNodeLensdist.projector -> use_projector: boolean "'Enable/disable projector mode. Effect is applied in horizontal direction only'"
+Node|CompositorNode|CompositorNodeLevels.channel -> channel: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeLumaMatte.high -> high: float "'Values higher than this setting are 100% opaque'"
+Node|CompositorNode|CompositorNodeLumaMatte.low -> low: float "'Values lower than this setting are 100% keyed'"
+Node|CompositorNode|CompositorNodeMapUV.alpha -> alpha: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMapValue.max -> max: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMapValue.min -> min: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMapValue.offset -> offset: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMapValue.size -> size: float "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMapValue.use_max -> use_max: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMapValue.use_min -> use_min: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMath.operation -> operation: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeMixRGB.alpha -> use_alpha: boolean "'Include alpha of second input in this operation'"
+Node|CompositorNode|CompositorNodeMixRGB.blend_type -> blend_type: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeOutputFile.exr_codec -> exr_codec: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeOutputFile.exr_half -> use_exr_half: boolean "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeOutputFile.filepath -> filepath: string "'Output path for the image, same functionality as render output.'"
+Node|CompositorNode|CompositorNodeOutputFile.frame_end -> frame_end: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeOutputFile.frame_start -> frame_start: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeOutputFile.image_type -> image_type: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeOutputFile.quality -> quality: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodePremulKey.mapping -> mapping: enum "'Conversion between premultiplied alpha and key alpha'"
+Node|CompositorNode|CompositorNodeRLayers.layer -> layer: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeRLayers.scene -> scene: pointer "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeRotate.filter -> filter: enum "'Method to use to filter rotation'"
+Node|CompositorNode|CompositorNodeScale.space -> space: enum "'Coordinate space to scale relative to'"
+Node|CompositorNode|CompositorNodeSplitViewer.axis -> axis: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeSplitViewer.factor -> factor: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeTexture.node_output -> node_output: int "'For node-based textures, which output node to use'"
+Node|CompositorNode|CompositorNodeTexture.texture -> texture: pointer "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeTime.curve -> curve: pointer, "'(read-only)'"
+Node|CompositorNode|CompositorNodeTime.end -> end: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeTime.start -> start: int "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeTonemap.adaptation -> adaptation: float "'If 0, global; if 1, based on pixel intensity'"
+Node|CompositorNode|CompositorNodeTonemap.contrast -> contrast: float "'Set to 0 to use estimate from input image'"
+Node|CompositorNode|CompositorNodeTonemap.correction -> correction: float "'If 0, same for all channels; if 1, each independent'"
+Node|CompositorNode|CompositorNodeTonemap.gamma -> gamma: float "'If not used, set to 1'"
+Node|CompositorNode|CompositorNodeTonemap.intensity -> intensity: float "'If less than zero, darkens image; otherwise, makes it brighter'"
+Node|CompositorNode|CompositorNodeTonemap.key -> key: float "'The value the average luminance is mapped to'"
+Node|CompositorNode|CompositorNodeTonemap.offset -> offset: float "'Normally always 1, but can be used as an extra control to alter the brightness curve'"
+Node|CompositorNode|CompositorNodeTonemap.tonemap_type -> tonemap_type: enum "'NO DESCRIPTION'"
+Node|CompositorNode|CompositorNodeValToRGB.color_ramp -> color_ramp: pointer, "'(read-only)'"
+Node|CompositorNode|CompositorNodeVecBlur.curved -> use_curved: boolean "'Interpolate between frames in a bezier curve, rather than linearly'"
+Node|CompositorNode|CompositorNodeVecBlur.factor -> factor: float '"Scaling factor for motion vectors; actually \'shutter speed\' in frames"'
+Node|CompositorNode|CompositorNodeVecBlur.max_speed -> speed_max: int "'Maximum speed, or zero for none'"
+Node|CompositorNode|CompositorNodeVecBlur.min_speed -> speed_min: int "'Minimum speed for a pixel to be blurred; used to separate background from foreground'"
+Node|CompositorNode|CompositorNodeVecBlur.samples -> samples: int "'NO DESCRIPTION'"
+Node|NodeGroup.nodetree -> nodetree: pointer "'NO DESCRIPTION'"
+Node|ShaderNode.type -> type: enum, "'(read-only)'"
+Node|ShaderNode|ShaderNodeExtendedMaterial.diffuse -> use_diffuse: boolean "'Material Node outputs Diffuse'"
+Node|ShaderNode|ShaderNodeExtendedMaterial.invert_normal -> invert_normal: boolean "'Material Node uses inverted normal'"
+Node|ShaderNode|ShaderNodeExtendedMaterial.material -> material: pointer "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeExtendedMaterial.specular -> use_specular: boolean "'Material Node outputs Specular'"
+Node|ShaderNode|ShaderNodeGeometry.color_layer -> color_layer: string "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeGeometry.uv_layer -> uv_layer: string "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeMapping.clamp_maximum -> use_max: boolean "'Clamp the output coordinate to a maximum value'"
+Node|ShaderNode|ShaderNodeMapping.clamp_minimum -> use_min: boolean "'Clamp the output coordinate to a minimum value'"
+Node|ShaderNode|ShaderNodeMapping.location -> location: float "'Location offset for the input coordinate'"
+Node|ShaderNode|ShaderNodeMapping.maximum -> max: float "'Maximum value to clamp coordinate to'"
+Node|ShaderNode|ShaderNodeMapping.minimum -> min: float "'Minimum value to clamp coordinate to'"
+Node|ShaderNode|ShaderNodeMapping.rotation -> rotation: float "'Rotation offset for the input coordinate'"
+Node|ShaderNode|ShaderNodeMapping.scale -> scale: float "'Scale adjustment for the input coordinate'"
+Node|ShaderNode|ShaderNodeMaterial.diffuse -> use_diffuse: boolean "'Material Node outputs Diffuse'"
+Node|ShaderNode|ShaderNodeMaterial.invert_normal -> invert_normal: boolean "'Material Node uses inverted normal'"
+Node|ShaderNode|ShaderNodeMaterial.material -> material: pointer "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeMaterial.specular -> use_specular: boolean "'Material Node outputs Specular'"
+Node|ShaderNode|ShaderNodeMath.operation -> operation: enum "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeMixRGB.alpha -> use_alpha: boolean "'Include alpha of second input in this operation'"
+Node|ShaderNode|ShaderNodeMixRGB.blend_type -> blend_type: enum "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeRGBCurve.mapping -> mapping: pointer, "'(read-only)'"
+Node|ShaderNode|ShaderNodeTexture.node_output -> node_output: int "'For node-based textures, which output node to use'"
+Node|ShaderNode|ShaderNodeTexture.texture -> texture: pointer "'NO DESCRIPTION'"
+Node|ShaderNode|ShaderNodeValToRGB.color_ramp -> color_ramp: pointer, "'(read-only)'"
+Node|ShaderNode|ShaderNodeVectorCurve.mapping -> mapping: pointer, "'(read-only)'"
+Node|ShaderNode|ShaderNodeVectorMath.operation -> operation: enum "'NO DESCRIPTION'"
+Node|TextureNode.type -> type: enum, "'(read-only)'"
+Node|TextureNode|TextureNodeBricks.offset -> offset: float "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeBricks.offset_frequency -> offset_frequency: int "'Offset every N rows'"
+Node|TextureNode|TextureNodeBricks.squash -> squash: float "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeBricks.squash_frequency -> squash_frequency: int "'Squash every N rows'"
+Node|TextureNode|TextureNodeCurveRGB.mapping -> mapping: pointer, "'(read-only)'"
+Node|TextureNode|TextureNodeCurveTime.curve -> curve: pointer, "'(read-only)'"
+Node|TextureNode|TextureNodeCurveTime.end -> end: int "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeCurveTime.start -> start: int "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeImage.image -> image: pointer "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeMath.operation -> operation: enum "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeMixRGB.alpha -> use_alpha: boolean "'Include alpha of second input in this operation'"
+Node|TextureNode|TextureNodeMixRGB.blend_type -> blend_type: enum "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeOutput.output_name -> output_name: string "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeTexture.node_output -> node_output: int "'For node-based textures, which output node to use'"
+Node|TextureNode|TextureNodeTexture.texture -> texture: pointer "'NO DESCRIPTION'"
+Node|TextureNode|TextureNodeValToRGB.color_ramp -> color_ramp: pointer, "'(read-only)'"
+ObjectBase.layers -> layers: boolean "'Layers the object base is on'"
+ObjectBase.object -> object: pointer, "'(read-only) Object this base links to'"
+ObjectBase.select -> select: boolean "'Object base selection state'"
+ObjectConstraints.active -> active: pointer "'Active Object constraint'"
+Operator.bl_description -> bl_description: string "'NO DESCRIPTION'"
+Operator.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+Operator.bl_label -> bl_label: string "'NO DESCRIPTION'"
+Operator.bl_options -> bl_options: enum "'Options for this operator type'"
+Operator.has_reports -> has_reports: boolean, "'(read-only) Operator has a set of reports (warnings and errors) from last execution'"
+Operator.layout -> layout: pointer, "'(read-only)'"
+Operator.name -> name: string, "'(read-only)'"
+Operator.properties -> properties: pointer, "'(read-only)'"
+OperatorTypeMacro.properties -> properties: pointer, "'(read-only)'"
+PackedFile.size -> size: int, "'(read-only) Size of packed file in bytes'"
+Paint.brush -> brush: pointer "'Active paint brush'"
+Paint.fast_navigate -> show_low_resolution: boolean "'For multires, show low resolution while navigating the view'"
+Paint.show_brush -> show_brush: boolean "'NO DESCRIPTION'"
+Paint.show_brush_on_surface -> show_brush_on_surface: boolean "'NO DESCRIPTION'"
+Paint|ImagePaint.invert_stencil -> invert_stencil: boolean "'Invert the stencil layer'"
+Paint|ImagePaint.normal_angle -> normal_angle: int "'Paint most on faces pointing towards the view according to this angle'"
+Paint|ImagePaint.screen_grab_size -> screen_grab_size: int "'Size to capture the image for re-projecting'"
+Paint|ImagePaint.seam_bleed -> seam_bleed: int "'Extend paint beyond the faces UVs to reduce seams (in pixels, slower)'"
+Paint|ImagePaint.show_brush -> show_brush: boolean "'Enables brush shape while not drawing'"
+Paint|ImagePaint.show_brush_draw -> show_brush_draw: boolean "'Enables brush shape while drawing'"
+Paint|ImagePaint.use_backface_cull -> use_backface_culling: boolean "'Ignore faces pointing away from the view (faster)'"
+Paint|ImagePaint.use_clone_layer -> use_clone_layer: boolean "'Use another UV layer as clone source, otherwise use 3D the cursor as the source'"
+Paint|ImagePaint.use_normal_falloff -> use_normal_falloff: boolean "'Paint most on faces pointing towards the view'"
+Paint|ImagePaint.use_occlude -> use_occlude: boolean "'Only paint onto the faces directly under the brush (slower)'"
+Paint|ImagePaint.use_projection -> use_projection: boolean "'Use projection painting for improved consistency in the brush strokes'"
+Paint|ImagePaint.use_stencil_layer -> use_stencil_layer: boolean "'Set the mask layer from the UV layer buttons'"
+Paint|Sculpt.lock_x -> lock_x: boolean "'Disallow changes to the X axis of vertices'"
+Paint|Sculpt.lock_y -> lock_y: boolean "'Disallow changes to the Y axis of vertices'"
+Paint|Sculpt.lock_z -> lock_z: boolean "'Disallow changes to the Z axis of vertices'"
+Paint|Sculpt.radial_symm -> radial_symm: int "'Number of times to copy strokes across the surface'"
+Paint|Sculpt.symmetry_x -> use_symmetry_x: boolean "'Mirror brush across the X axis'"
+Paint|Sculpt.symmetry_y -> use_symmetry_y: boolean "'Mirror brush across the Y axis'"
+Paint|Sculpt.symmetry_z -> use_symmetry_z: boolean "'Mirror brush across the Z axis'"
+Paint|Sculpt.use_openmp -> use_openmp: boolean "'Take advantage of multiple CPU cores to improve sculpting performance'"
+Paint|Sculpt.use_symmetry_feather -> use_symmetry_feather: boolean "'Reduce the strength of the brush where it overlaps symmetrical daubs'"
+Paint|VertexPaint.all_faces -> use_all_faces: boolean "'Paint on all faces inside brush'"
+Paint|VertexPaint.normals -> use_normal: boolean "'Applies the vertex normal before painting'"
+Paint|VertexPaint.spray -> use_spray: boolean "'Keep applying paint effect while holding mouse'"
+Panel.bl_context -> bl_context: string "'NO DESCRIPTION'"
+Panel.bl_default_closed -> bl_use_closed: boolean "'NO DESCRIPTION'"
+Panel.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+Panel.bl_label -> bl_label: string "'NO DESCRIPTION'"
+Panel.bl_region_type -> bl_region_type: enum "'NO DESCRIPTION'"
+Panel.bl_show_header -> bl_show_header: boolean "'NO DESCRIPTION'"
+Panel.bl_space_type -> bl_space_type: enum "'NO DESCRIPTION'"
+Panel.layout -> layout: pointer, "'(read-only)'"
+Panel.text -> text: string "'NO DESCRIPTION'"
+Particle.alive_state -> alive_state: enum "'NO DESCRIPTION'"
+Particle.angular_velocity -> angular_velocity: float "'NO DESCRIPTION'"
+Particle.birthtime -> birthtime: float "'NO DESCRIPTION'"
+Particle.die_time -> die_time: float "'NO DESCRIPTION'"
+Particle.hair -> hair: collection, "'(read-only)'"
+Particle.is_existing -> is_existing: boolean, "'(read-only)'"
+Particle.is_visible -> is_visible: boolean, "'(read-only)'"
+Particle.keys -> keys: collection, "'(read-only)'"
+Particle.lifetime -> lifetime: float "'NO DESCRIPTION'"
+Particle.location -> location: float "'NO DESCRIPTION'"
+Particle.prev_angular_velocity -> prev_angular_velocity: float "'NO DESCRIPTION'"
+Particle.prev_location -> prev_location: float "'NO DESCRIPTION'"
+Particle.prev_rotation -> prev_rotation: float "'NO DESCRIPTION'"
+Particle.prev_velocity -> prev_velocity: float "'NO DESCRIPTION'"
+Particle.rotation -> rotation: float "'NO DESCRIPTION'"
+Particle.size -> size: float "'NO DESCRIPTION'"
+Particle.velocity -> velocity: float "'NO DESCRIPTION'"
+ParticleBrush.count -> count: int "'Particle count'"
+ParticleBrush.curve -> curve: pointer, "'(read-only)'"
+ParticleBrush.length_mode -> length_mode: enum "'NO DESCRIPTION'"
+ParticleBrush.puff_mode -> puff_mode: enum "'NO DESCRIPTION'"
+ParticleBrush.size -> size: int "'Brush size'"
+ParticleBrush.steps -> steps: int "'Brush steps'"
+ParticleBrush.strength -> strength: float "'Brush strength'"
+ParticleBrush.use_puff_volume -> use_puff_volume: boolean "'Apply puff to unselected end-points, (helps maintain hair volume when puffing root)'"
+ParticleDupliWeight.count -> count: int "'The number of times this object is repeated with respect to other objects'"
+ParticleDupliWeight.name -> name: string, "'(read-only) Particle dupliobject name'"
+ParticleEdit.add_interpolate -> use_add_interpolate: boolean "'Interpolate new particles from the existing ones'"
+ParticleEdit.add_keys -> add_keys: int "'How many keys to make new particles with'"
+ParticleEdit.auto_velocity -> use_auto_velocity: boolean "'Calculate point velocities automatically'"
+ParticleEdit.brush -> brush: pointer, "'(read-only)'"
+ParticleEdit.draw_particles -> show_particles: boolean "'Draw actual particles'"
+ParticleEdit.draw_step -> draw_step: int "'How many steps to draw the path with'"
+ParticleEdit.editable -> is_editable: boolean, "'(read-only) A valid edit mode exists'"
+ParticleEdit.emitter_deflect -> use_emitter_deflect: boolean "'Keep paths from intersecting the emitter'"
+ParticleEdit.emitter_distance -> emitter_distance: float "'Distance to keep particles away from the emitter'"
+ParticleEdit.fade_frames -> fade_frames: int "'How many frames to fade'"
+ParticleEdit.fade_time -> use_fade_time: boolean "'Fade paths and keys further away from current frame'"
+ParticleEdit.hair -> is_hair: boolean, "'(read-only) Editing hair'"
+ParticleEdit.keep_lengths -> use_preserve_lengths: boolean "'Keep path lengths constant'"
+ParticleEdit.keep_root -> use_preserve_root: boolean "'Keep root keys unmodified'"
+ParticleEdit.object -> object: pointer, "'(read-only) The edited object'"
+ParticleEdit.selection_mode -> selection_mode: enum "'Particle select and display mode'"
+ParticleEdit.tool -> tool: enum "'NO DESCRIPTION'"
+ParticleEdit.type -> type: enum "'NO DESCRIPTION'"
+ParticleHairKey.location -> location: float "'Location of the hair key in object space'"
+ParticleHairKey.location_hairspace -> location_hairspace: float "'Location of the hair key in its internal coordinate system, relative to the emitting face'"
+ParticleHairKey.time -> time: float "'Relative time of key over hair length'"
+ParticleHairKey.weight -> weight: float "'Weight for cloth simulation'"
+ParticleKey.angular_velocity -> angular_velocity: float "'Key angular velocity'"
+ParticleKey.location -> location: float "'Key location'"
+ParticleKey.rotation -> rotation: float "'Key rotation quaterion'"
+ParticleKey.time -> time: float "'Time of key over the simulation'"
+ParticleKey.velocity -> velocity: float "'Key velocity'"
+ParticleSystem.active_particle_target -> active_particle_target: pointer, "'(read-only)'"
+ParticleSystem.active_particle_target_index -> active_particle_target_index: int "'NO DESCRIPTION'"
+ParticleSystem.billboard_normal_uv -> billboard_normal_uv: string "'UV Layer to control billboard normals'"
+ParticleSystem.billboard_split_uv -> billboard_split_uv: string "'UV Layer to control billboard splitting'"
+ParticleSystem.billboard_time_index_uv -> billboard_time_index_uv: string "'UV Layer to control billboard time index (X-Y)'"
+ParticleSystem.child_particles -> child_particles: collection, "'(read-only) Child particles generated by the particle system'"
+ParticleSystem.cloth -> cloth: pointer, "'(read-only) Cloth dynamics for hair'"
+ParticleSystem.editable -> is_editable: boolean, "'(read-only) Particle system can be edited in particle mode'"
+ParticleSystem.edited -> is_edited: boolean, "'(read-only) Particle system has been edited in particle mode'"
+ParticleSystem.global_hair -> is_global_hair: boolean, "'(read-only) Hair keys are in global coordinate space'"
+ParticleSystem.hair_dynamics -> use_hair_dynamics: boolean "'Enable hair dynamics using cloth simulation'"
+ParticleSystem.keyed_timing -> use_keyed_timing: boolean "'Use key times'"
+ParticleSystem.multiple_caches -> has_multiple_caches: boolean, "'(read-only) Particle system has multiple point caches'"
+ParticleSystem.name -> name: string "'Particle system name'"
+ParticleSystem.parent -> parent: pointer '"Use this object\'s coordinate system instead of global coordinate system"'
+ParticleSystem.particles -> particles: collection, "'(read-only) Particles generated by the particle system'"
+ParticleSystem.point_cache -> point_cache: pointer, "'(read-only)'"
+ParticleSystem.reactor_target_object -> reactor_target_object: pointer "'For reactor systems, the object that has the target particle system (empty if same object)'"
+ParticleSystem.reactor_target_particle_system -> reactor_target_particle_system: int "'For reactor systems, index of particle system on the target object'"
+ParticleSystem.seed -> seed: int "'Offset in the random number table, to get a different randomized result'"
+ParticleSystem.settings -> settings: pointer "'Particle system settings'"
+ParticleSystem.targets -> targets: collection, "'(read-only) Target particle systems'"
+ParticleSystem.vertex_group_clump -> vertex_group_clump: string "'Vertex group to control clump'"
+ParticleSystem.vertex_group_clump_negate -> invert_vertex_group_clump: boolean "'Negate the effect of the clump vertex group'"
+ParticleSystem.vertex_group_density -> vertex_group_density: string "'Vertex group to control density'"
+ParticleSystem.vertex_group_density_negate -> invert_vertex_group_density: boolean "'Negate the effect of the density vertex group'"
+ParticleSystem.vertex_group_field -> vertex_group_field: string "'Vertex group to control field'"
+ParticleSystem.vertex_group_field_negate -> invert_vertex_group_field: boolean "'Negate the effect of the field vertex group'"
+ParticleSystem.vertex_group_kink -> vertex_group_kink: string "'Vertex group to control kink'"
+ParticleSystem.vertex_group_kink_negate -> invert_vertex_group_kink: boolean "'Negate the effect of the kink vertex group'"
+ParticleSystem.vertex_group_length -> vertex_group_length: string "'Vertex group to control length'"
+ParticleSystem.vertex_group_length_negate -> invert_vertex_group_length: boolean "'Negate the effect of the length vertex group'"
+ParticleSystem.vertex_group_rotation -> vertex_group_rotation: string "'Vertex group to control rotation'"
+ParticleSystem.vertex_group_rotation_negate -> invert_vertex_group_rotation: boolean "'Negate the effect of the rotation vertex group'"
+ParticleSystem.vertex_group_roughness1 -> vertex_group_rough1: string "'Vertex group to control roughness 1'"
+ParticleSystem.vertex_group_roughness1_negate -> invert_vertex_group_roughness1: boolean "'Negate the effect of the roughness 1 vertex group'"
+ParticleSystem.vertex_group_roughness2 -> vertex_group_rough2: string "'Vertex group to control roughness 2'"
+ParticleSystem.vertex_group_roughness2_negate -> invert_vertex_group_roughness2: boolean "'Negate the effect of the roughness 2 vertex group'"
+ParticleSystem.vertex_group_roughness_end -> vertex_group_rough_end: string "'Vertex group to control roughness end'"
+ParticleSystem.vertex_group_roughness_end_negate -> invert_vertex_group_roughness_end: boolean "'Negate the effect of the roughness end vertex group'"
+ParticleSystem.vertex_group_size -> vertex_group_size: string "'Vertex group to control size'"
+ParticleSystem.vertex_group_size_negate -> invert_vertex_group_size: boolean "'Negate the effect of the size vertex group'"
+ParticleSystem.vertex_group_tangent -> vertex_group_tangent: string "'Vertex group to control tangent'"
+ParticleSystem.vertex_group_tangent_negate -> invert_vertex_group_tangent: boolean "'Negate the effect of the tangent vertex group'"
+ParticleSystem.vertex_group_velocity -> vertex_group_velocity: string "'Vertex group to control velocity'"
+ParticleSystem.vertex_group_velocity_negate -> invert_vertex_group_velocity: boolean "'Negate the effect of the velocity vertex group'"
+ParticleTarget.duration -> duration: float "'NO DESCRIPTION'"
+ParticleTarget.mode -> mode: enum "'NO DESCRIPTION'"
+ParticleTarget.name -> name: string, "'(read-only) Particle target name'"
+ParticleTarget.object -> object: pointer "'The object that has the target particle system (empty if same object)'"
+ParticleTarget.system -> system: int "'The index of particle system on the target object'"
+ParticleTarget.time -> time: float "'NO DESCRIPTION'"
+ParticleTarget.valid -> is_valid: boolean "'Keyed particles target is valid'"
+PointCache.active_point_cache_index -> active_point_cache_index: int "'NO DESCRIPTION'"
+PointCache.baked -> is_baked: boolean, "'(read-only)'"
+PointCache.baking -> is_baking: boolean, "'(read-only)'"
+PointCache.disk_cache -> use_disk_cache: boolean "'Save cache files to disk (.blend file must be saved first)'"
+PointCache.external -> use_external: boolean "'Read cache from an external location'"
+PointCache.filepath -> filepath: string "'Cache file path'"
+PointCache.frame_end -> frame_end: int "'Frame on which the simulation stops'"
+PointCache.frame_start -> frame_start: int "'Frame on which the simulation starts'"
+PointCache.frames_skipped -> frames_skipped: boolean, "'(read-only)'"
+PointCache.index -> index: int "'Index number of cache files'"
+PointCache.info -> info: string, "'(read-only) Info on current cache status'"
+PointCache.name -> name: string "'Cache name'"
+PointCache.outdated -> is_outdated: boolean, "'(read-only)'"
+PointCache.point_cache_list -> point_cache_list: collection, "'(read-only) Point cache list'"
+PointCache.quick_cache -> use_quick_cache: boolean "'Update simulation with cache steps'"
+PointCache.step -> step: int "'Number of frames between cached frames'"
+PointCache.use_library_path -> use_library_path: boolean "'Use this files path when library linked into another file.'"
+PointDensity.color_ramp -> color_ramp: pointer, "'(read-only)'"
+PointDensity.color_source -> color_source: enum "'Data to derive color results from'"
+PointDensity.falloff -> falloff: enum "'Method of attenuating density by distance from the point'"
+PointDensity.falloff_softness -> falloff_soft: float '"Softness of the \'soft\' falloff option"'
+PointDensity.noise_basis -> noise_basis: enum "'Noise formula used for turbulence'"
+PointDensity.object -> object: pointer "'Object to take point data from'"
+PointDensity.particle_cache -> particle_cache: enum "'Co-ordinate system to cache particles in'"
+PointDensity.particle_system -> particle_system: pointer "'Particle System to render as points'"
+PointDensity.point_source -> point_source: enum "'Point data to use as renderable point density'"
+PointDensity.radius -> radius: float "'Radius from the shaded sample to look for points within'"
+PointDensity.speed_scale -> speed_scale: float "'Multiplier to bring particle speed within an acceptable range'"
+PointDensity.turbulence -> use_turbulence: boolean "'Add directed noise to the density at render-time'"
+PointDensity.turbulence_depth -> turbulence_depth: int "'Level of detail in the added turbulent noise'"
+PointDensity.turbulence_influence -> turbulence_influence: enum "'Method for driving added turbulent noise'"
+PointDensity.turbulence_size -> turbulence_size: float "'Scale of the added turbulent noise'"
+PointDensity.turbulence_strength -> turbulence_strength: float "'NO DESCRIPTION'"
+PointDensity.vertices_cache -> vertices_cache: enum "'Co-ordinate system to cache vertices in'"
+Pose.active_bone_group -> active_bone_group: pointer "'Active bone group for this pose'"
+Pose.active_bone_group_index -> active_bone_group_index: int "'Active index in bone groups array'"
+Pose.animation_visualisation -> animation_visualisation: pointer, "'(read-only) Animation data for this datablock'"
+Pose.bone_groups -> bone_groups: collection, "'(read-only) Groups of the bones'"
+Pose.bones -> bones: collection, "'(read-only) Individual pose bones for the armature'"
+Pose.ik_param -> ik_param: pointer, "'(read-only) Parameters for IK solver'"
+Pose.ik_solver -> ik_solver: enum "'Selection of IK solver for IK chain, current choice is 0 for Legacy, 1 for iTaSC'"
+PoseBone.bone -> bone: pointer, "'(read-only) Bone associated with this PoseBone'"
+PoseBone.bone_group -> bone_group: pointer "'Bone Group this pose channel belongs to'"
+PoseBone.bone_group_index -> bone_group_index: int "'Bone Group this pose channel belongs to (0=no group)'"
+PoseBone.child -> child: pointer, "'(read-only) Child of this pose bone'"
+PoseBone.constraints -> constraints: collection, "'(read-only) Constraints that act on this PoseChannel'"
+PoseBone.custom_shape -> custom_shape: pointer "'Object that defines custom draw type for this bone'"
+PoseBone.custom_shape_transform -> custom_shape_transform: pointer "'Bone that defines the display transform of this custom shape'"
+PoseBone.has_ik -> is_in_ik_chain: boolean, "'(read-only) Is part of an IK chain'"
+PoseBone.head -> head: float, '"(read-only) Location of head of the channel\'s bone"'
+NEGATE * PoseBone.ik_dof_x -> lock_ik_x: boolean "'Allow movement around the X axis'"
+NEGATE * PoseBone.ik_dof_y -> lock_ik_y: boolean "'Allow movement around the Y axis'"
+NEGATE * PoseBone.ik_dof_z -> lock_ik_z: boolean "'Allow movement around the Z axis'"
+PoseBone.ik_limit_x -> lock_ik_x: boolean "'Limit movement around the X axis'"
+PoseBone.ik_limit_y -> lock_ik_y: boolean "'Limit movement around the Y axis'"
+PoseBone.ik_limit_z -> lock_ik_z: boolean "'Limit movement around the Z axis'"
+PoseBone.ik_lin_control -> use_ik_lin_control: boolean "'Apply channel size as IK constraint if stretching is enabled'"
+PoseBone.ik_lin_weight -> ik_lin_weight: float "'Weight of scale constraint for IK'"
+PoseBone.ik_max_x -> ik_max_x: float "'Maximum angles for IK Limit'"
+PoseBone.ik_max_y -> ik_max_y: float "'Maximum angles for IK Limit'"
+PoseBone.ik_max_z -> ik_max_z: float "'Maximum angles for IK Limit'"
+PoseBone.ik_min_x -> ik_min_x: float "'Minimum angles for IK Limit'"
+PoseBone.ik_min_y -> ik_min_y: float "'Minimum angles for IK Limit'"
+PoseBone.ik_min_z -> ik_min_z: float "'Minimum angles for IK Limit'"
+PoseBone.ik_rot_control -> use_ik_rot_control: boolean "'Apply channel rotation as IK constraint'"
+PoseBone.ik_rot_weight -> ik_rot_weight: float "'Weight of rotation constraint for IK'"
+PoseBone.ik_stiffness_x -> ik_stiffness_x: float "'IK stiffness around the X axis'"
+PoseBone.ik_stiffness_y -> ik_stiffness_y: float "'IK stiffness around the Y axis'"
+PoseBone.ik_stiffness_z -> ik_stiffness_z: float "'IK stiffness around the Z axis'"
+PoseBone.ik_stretch -> ik_stretch: float "'Allow scaling of the bone for IK'"
+PoseBone.location -> location: float "'NO DESCRIPTION'"
+PoseBone.lock_location -> lock_location: boolean "'Lock editing of location in the interface'"
+PoseBone.lock_rotation -> lock_rotation: boolean "'Lock editing of rotation in the interface'"
+PoseBone.lock_rotation_w -> lock_rotation_w: boolean '"Lock editing of \'angle\' component of four-component rotations in the interface"'
+PoseBone.lock_rotations_4d -> lock_rotations_4d: boolean "'Lock editing of four component rotations by components (instead of as Eulers)'"
+PoseBone.lock_scale -> lock_scale: boolean "'Lock editing of scale in the interface'"
+PoseBone.matrix -> matrix: float, "'(read-only) Final 4x4 matrix for this channel'"
+PoseBone.matrix_channel -> matrix_channel: float, "'(read-only) 4x4 matrix, before constraints'"
+PoseBone.matrix_local -> matrix_local: float "'Matrix representing the parent relative location, scale and rotation. Provides an alternative access to these properties.'"
+PoseBone.motion_path -> motion_path: pointer, "'(read-only) Motion Path for this element'"
+PoseBone.name -> name: string "'NO DESCRIPTION'"
+PoseBone.parent -> parent: pointer, "'(read-only) Parent of this pose bone'"
+PoseBone.rotation_axis_angle -> rotation_axis_angle: float "'Angle of Rotation for Axis-Angle rotation representation'"
+PoseBone.rotation_euler -> rotation_euler: float "'Rotation in Eulers'"
+PoseBone.rotation_mode -> rotation_mode: enum "'NO DESCRIPTION'"
+PoseBone.rotation_quaternion -> rotation_quaternion: float "'Rotation in Quaternions'"
+PoseBone.scale -> scale: float "'NO DESCRIPTION'"
+PoseBone.select -> select: boolean "'NO DESCRIPTION'"
+PoseBone.tail -> tail: float, '"(read-only) Location of tail of the channel\'s bone"'
+PoseBoneConstraints.active -> active: pointer "'Active PoseChannel constraint'"
+Property.description -> description: string, "'(read-only) Description of the property for tooltips'"
+Property.identifier -> identifier: string, "'(read-only) Unique name used in the code and scripting'"
+Property.is_never_none -> is_never_none: boolean, '"(read-only) True when this value can\'t be set to None"'
+Property.is_readonly -> is_readonly: boolean, "'(read-only) Property is editable through RNA'"
+Property.is_required -> is_required: boolean, "'(read-only) False when this property is an optional argument in an RNA function'"
+Property.name -> name: string, "'(read-only) Human readable name'"
+Property.registered -> is_registered: boolean, "'(read-only) Property is registered as part of type registration'"
+Property.registered_optional -> is_registered_optional: boolean, "'(read-only) Property is optionally registered as part of type registration'"
+Property.srna -> srna: pointer, "'(read-only) Struct definition used for properties assigned to this item'"
+Property.subtype -> subtype: enum, "'(read-only) Semantic interpretation of the property'"
+Property.type -> type: enum, "'(read-only) Data type of the property'"
+Property.unit -> unit: enum, "'(read-only) Type of units for this property'"
+Property.use_output -> is_output: boolean, "'(read-only) True when this property is an output value from an RNA function'"
++ * Property|BooleanProperty.array_length -> array_length: int, "'(read-only) Maximum length of the array, 0 means unlimited'"
++ * Property|BooleanProperty.default -> default: boolean, "'(read-only) Default value for this number'"
++ * Property|BooleanProperty.default_array -> default_array: boolean, "'(read-only) Default value for this array'"
++ * Property|CollectionProperty.fixed_type -> fixed_type: pointer, "'(read-only) Fixed pointer type, empty if variable type'"
+Property|EnumProperty.default -> default: enum, "'(read-only) Default value for this enum'"
+Property|EnumProperty.items -> items: collection, "'(read-only) Possible values for the property'"
+Property|FloatProperty.array_length -> array_length: int, "'(read-only) Maximum length of the array, 0 means unlimited'"
+Property|FloatProperty.default -> default: float, "'(read-only) Default value for this number'"
+Property|FloatProperty.default_array -> default_array: float, "'(read-only) Default value for this array'"
+Property|FloatProperty.hard_max -> hard_max: float, "'(read-only) Maximum value used by buttons'"
+Property|FloatProperty.hard_min -> hard_min: float, "'(read-only) Minimum value used by buttons'"
+Property|FloatProperty.precision -> precision: int, "'(read-only) Number of digits after the dot used by buttons'"
+Property|FloatProperty.soft_max -> soft_max: float, "'(read-only) Maximum value used by buttons'"
+Property|FloatProperty.soft_min -> soft_min: float, "'(read-only) Minimum value used by buttons'"
+Property|FloatProperty.step -> step: float, "'(read-only) Step size used by number buttons, for floats 1/100th of the step size'"
+Property|IntProperty.array_length -> array_length: int, "'(read-only) Maximum length of the array, 0 means unlimited'"
+Property|IntProperty.default -> default: int, "'(read-only) Default value for this number'"
+Property|IntProperty.default_array -> default_array: int, "'(read-only) Default value for this array'"
+Property|IntProperty.hard_max -> hard_max: int, "'(read-only) Maximum value used by buttons'"
+Property|IntProperty.hard_min -> hard_min: int, "'(read-only) Minimum value used by buttons'"
+Property|IntProperty.soft_max -> soft_max: int, "'(read-only) Maximum value used by buttons'"
+Property|IntProperty.soft_min -> soft_min: int, "'(read-only) Minimum value used by buttons'"
+Property|IntProperty.step -> step: int, "'(read-only) Step size used by number buttons, for floats 1/100th of the step size'"
+Property|PointerProperty.fixed_type -> fixed_type: pointer, "'(read-only) Fixed pointer type, empty if variable type'"
+Property|StringProperty.default -> default: string, "'(read-only) string default value'"
+Property|StringProperty.max_length -> length_max: int, "'(read-only) Maximum length of the string, 0 means unlimited'"
+RGBANodeSocket.default_value -> default_value: float "'Default value of the socket when no link is attached'"
+RGBANodeSocket.name -> name: string, "'(read-only) Socket name'"
+Region.height -> height: int, "'(read-only) Region height'"
+Region.id -> id: int, "'(read-only) Unique ID for this region'"
+Region.type -> type: enum, "'(read-only) Type of this region'"
+Region.width -> width: int, "'(read-only) Region width'"
+RegionView3D.box_clip -> use_box_clip: boolean '"Clip objects based on what\'s visible in other side views"'
+RegionView3D.box_preview -> show_synced_view: boolean "'Sync view position between side views'"
+RegionView3D.lock_rotation -> lock_rotation: boolean "'Lock view rotation in side views'"
+RegionView3D.perspective_matrix -> perspective_matrix: float, "'(read-only) Current perspective matrix of the 3D region'"
+RegionView3D.view_distance -> view_distance: float "'Distance to the view location'"
+RegionView3D.view_location -> view_location: float "'View pivot location'"
+RegionView3D.view_matrix -> view_matrix: float, "'(read-only) Current view matrix of the 3D region'"
+RegionView3D.view_perspective -> view_perspective: enum "'View Perspective'"
+RegionView3D.view_rotation -> view_rotation: float "'Rotation in quaternions (keep normalized)'"
+RenderEngine.bl_idname -> bl_idname: string "'NO DESCRIPTION'"
+RenderEngine.bl_label -> bl_label: string "'NO DESCRIPTION'"
+RenderEngine.bl_postprocess -> bl_use_postprocess: boolean "'NO DESCRIPTION'"
+RenderEngine.bl_preview -> bl_use_preview: boolean "'NO DESCRIPTION'"
+RenderLayer.all_z -> use_all_z: boolean, "'(read-only) Fill in Z values for solid faces in invisible layers, for masking'"
+RenderLayer.edge -> use_edge_enhance: boolean, "'(read-only) Render Edge-enhance in this Layer (only works for Solid faces)'"
+RenderLayer.enabled -> use: boolean, "'(read-only) Disable or enable the render layer'"
+RenderLayer.halo -> use_halo: boolean, "'(read-only) Render Halos in this Layer (on top of Solid)'"
+RenderLayer.light_override -> light_override: pointer, "'(read-only) Group to override all other lights in this render layer'"
+RenderLayer.material_override -> material_override: pointer, "'(read-only) Material to override all other materials in this render layer'"
+RenderLayer.name -> name: string, "'(read-only) Render layer name'"
+RenderLayer.pass_ao -> use_pass_ambient_occlusion: boolean, "'(read-only) Deliver AO pass'"
+RenderLayer.pass_ao_exclude -> exclude_ambient_occlusion: boolean, "'(read-only) Exclude AO pass from combined'"
+RenderLayer.pass_color -> use_pass_color: boolean, "'(read-only) Deliver shade-less color pass'"
+RenderLayer.pass_combined -> use_pass_combined: boolean, "'(read-only) Deliver full combined RGBA buffer'"
+RenderLayer.pass_diffuse -> use_pass_diffuse: boolean, "'(read-only) Deliver diffuse pass'"
+RenderLayer.pass_emit -> use_pass_emit: boolean, "'(read-only) Deliver emission pass'"
+RenderLayer.pass_emit_exclude -> exclude_emit: boolean, "'(read-only) Exclude emission pass from combined'"
+RenderLayer.pass_environment -> use_pass_environment: boolean, "'(read-only) Deliver environment lighting pass'"
+RenderLayer.pass_environment_exclude -> exclude_environment: boolean, "'(read-only) Exclude environment pass from combined'"
+RenderLayer.pass_indirect -> use_pass_indirect: boolean, "'(read-only) Deliver indirect lighting pass'"
+RenderLayer.pass_indirect_exclude -> exclude_indirect: boolean, "'(read-only) Exclude indirect pass from combined'"
+RenderLayer.pass_mist -> use_pass_mist: boolean, "'(read-only) Deliver mist factor pass (0.0-1.0)'"
+RenderLayer.pass_normal -> use_pass_normal: boolean, "'(read-only) Deliver normal pass'"
+RenderLayer.pass_object_index -> use_pass_object_index: boolean, "'(read-only) Deliver object index pass'"
+RenderLayer.pass_reflection -> use_pass_reflection: boolean, "'(read-only) Deliver raytraced reflection pass'"
+RenderLayer.pass_reflection_exclude -> exclude_reflection: boolean, "'(read-only) Exclude raytraced reflection pass from combined'"
+RenderLayer.pass_refraction -> use_pass_refraction: boolean, "'(read-only) Deliver raytraced refraction pass'"
+RenderLayer.pass_refraction_exclude -> exclude_refraction: boolean, "'(read-only) Exclude raytraced refraction pass from combined'"
+RenderLayer.pass_shadow -> use_pass_shadow: boolean, "'(read-only) Deliver shadow pass'"
+RenderLayer.pass_shadow_exclude -> exclude_shadow: boolean, "'(read-only) Exclude shadow pass from combined'"
+RenderLayer.pass_specular -> use_pass_specular: boolean, "'(read-only) Deliver specular pass'"
+RenderLayer.pass_specular_exclude -> exclude_specular: boolean, "'(read-only) Exclude specular pass from combined'"
+RenderLayer.pass_uv -> use_pass_uv: boolean, "'(read-only) Deliver texture UV pass'"
+RenderLayer.pass_vector -> use_pass_vector: boolean, "'(read-only) Deliver speed vector pass'"
+RenderLayer.pass_z -> use_pass_z: boolean, "'(read-only) Deliver Z values pass'"
+RenderLayer.passes -> passes: collection, "'(read-only)'"
+RenderLayer.rect -> rect: float "'NO DESCRIPTION'"
+RenderLayer.sky -> use_sky: boolean, "'(read-only) Render Sky in this Layer'"
+RenderLayer.solid -> use_solid: boolean, "'(read-only) Render Solid faces in this Layer'"
+RenderLayer.strand -> use_strand: boolean, "'(read-only) Render Strands in this Layer'"
+RenderLayer.visible_layers -> layers: boolean, "'(read-only) Scene layers included in this render layer'"
+RenderLayer.zmask -> use_zmask: boolean, '"(read-only) Only render what\'s in front of the solid z values"'
+RenderLayer.zmask_layers -> layers_zmask: boolean, "'(read-only) Zmask scene layers'"
+RenderLayer.zmask_negate -> invert_zmask: boolean, "'(read-only) For Zmask, only render what is behind solid z values instead of in front'"
+RenderLayer.ztransp -> use_ztransp: boolean, "'(read-only) Render Z-Transparent faces in this Layer (On top of Solid and Halos)'"
+RenderPass.channel_id -> channel_id: string, "'(read-only)'"
+RenderPass.channels -> channels: int, "'(read-only)'"
+RenderPass.name -> name: string, "'(read-only)'"
+RenderPass.rect -> rect: float "'NO DESCRIPTION'"
+RenderPass.type -> type: enum, "'(read-only)'"
+RenderResult.layers -> layers: collection, "'(read-only)'"
+RenderResult.resolution_x -> resolution_x: int, "'(read-only)'"
+RenderResult.resolution_y -> resolution_y: int, "'(read-only)'"
+RenderSettings.active_layer_index -> active_layer_index: int "'Active index in render layer array'"
+RenderSettings.alpha_mode -> alpha_mode: enum "'Representation of alpha information in the RGBA pixels'"
+RenderSettings.antialiasing_samples -> antialiasing_samples: enum "'Amount of anti-aliasing samples per pixel'"
+RenderSettings.backbuf -> use_backbuf: boolean "'Render backbuffer image'"
+RenderSettings.bake_aa_mode -> bake_aa_mode: enum "'NO DESCRIPTION'"
+RenderSettings.bake_active -> use_bake_active_to_selected: boolean "'Bake shading on the surface of selected objects to the active object'"
+RenderSettings.bake_bias -> bake_bias: float "'Bias towards faces further away from the object (in blender units)'"
+RenderSettings.bake_clear -> use_bake_clear: boolean "'Clear Images before baking'"
+RenderSettings.bake_distance -> bake_distance: float "'Maximum distance from active object to other object (in blender units'"
+RenderSettings.bake_enable_aa -> use_bake_antialiasing: boolean "'Enables Anti-aliasing'"
+RenderSettings.bake_margin -> bake_margin: int "'Amount of pixels to extend the baked result with, as post process filter'"
+RenderSettings.bake_normal_space -> bake_normal_space: enum "'Choose normal space for baking'"
+RenderSettings.bake_normalized -> use_bake_normalized: boolean "'With displacement normalize to the distance, with ambient occlusion normalize without using material settings'"
+RenderSettings.bake_quad_split -> bake_quad_split: enum "'Choose the method used to split a quad into 2 triangles for baking'"
+RenderSettings.bake_type -> bake_type: enum "'Choose shading information to bake into the image'"
+RenderSettings.border_max_x -> border_max_x: float "'Sets maximum X value for the render border'"
+RenderSettings.border_max_y -> border_max_y: float "'Sets maximum Y value for the render border'"
+RenderSettings.border_min_x -> border_min_x: float "'Sets minimum X value to for the render border'"
+RenderSettings.border_min_y -> border_min_y: float "'Sets minimum Y value for the render border'"
+RenderSettings.cineon_black -> cineon_black: int "'Log conversion reference blackpoint'"
+RenderSettings.cineon_gamma -> cineon_gamma: float "'Log conversion gamma'"
+RenderSettings.cineon_log -> use_cineon_log: boolean "'Convert to logarithmic color space'"
+RenderSettings.cineon_white -> cineon_white: int "'Log conversion reference whitepoint'"
+RenderSettings.color_management -> use_color_management: boolean "'Use color profiles and gamma corrected imaging pipeline'"
+RenderSettings.color_mode -> color_mode: enum "'Choose BW for saving greyscale images, RGB for saving red, green and blue channels, AND RGBA for saving red, green, blue + alpha channels'"
+RenderSettings.crop_to_border -> use_crop_to_border: boolean "'Crop the rendered frame to the defined border size'"
+RenderSettings.display_mode -> display_mode: enum "'Select where rendered images will be displayed'"
+RenderSettings.dither_intensity -> dither_intensity: float "'Amount of dithering noise added to the rendered image to break up banding'"
+RenderSettings.edge -> use_edge_enhance: boolean "'use_Create a toon outline around the edges of geometry'"
+RenderSettings.edge_color -> edge_color: float "'NO DESCRIPTION'"
+RenderSettings.edge_threshold -> edge_threshold: int "'Threshold for drawing outlines on geometry edges'"
+RenderSettings.engine -> engine: enum "'Engine to use for rendering'"
+RenderSettings.field_order -> field_order: enum "'Order of video fields. Select which lines get rendered first, to create smooth motion for TV output'"
+RenderSettings.fields -> use_fields: boolean "'Render image to two fields per frame, for interlaced TV output'"
+RenderSettings.fields_still -> use_fields_still: boolean "'Disable the time difference between fields'"
+RenderSettings.file_extension -> file_extension: string, "'(read-only) The file extension used for saving renders'"
+RenderSettings.file_format -> file_format: enum "'File format to save the rendered images as'"
+RenderSettings.file_quality -> file_quality: int "'Quality of JPEG images, AVI Jpeg and SGI movies'"
+RenderSettings.filter_size -> filter_size: float "'Pixel width over which the reconstruction filter combines samples'"
+RenderSettings.fps -> fps: int "'Framerate, expressed in frames per second'"
+RenderSettings.fps_base -> fps_base: float "'Framerate base'"
+RenderSettings.free_image_textures -> use_free_image_textures: boolean "'Free all image texture from memory after render, to save memory before compositing'"
+RenderSettings.free_unused_nodes -> use_free_unused_nodes: boolean "'Free Nodes that are not used while compositing, to save memory'"
+RenderSettings.full_sample -> use_full_sample: boolean "'Save for every anti-aliasing sample the entire RenderLayer results. This solves anti-aliasing issues with compositing'"
+RenderSettings.is_movie_format -> is_movie_format: boolean, "'(read-only) When true the format is a movie'"
+RenderSettings.layers -> layers: collection, "'(read-only)'"
+RenderSettings.motion_blur -> use_motion_blur: boolean "'Use multi-sampled 3D scene motion blur'"
+RenderSettings.motion_blur_samples -> motion_blur_samples: int "'Number of scene samples to take with motion blur'"
+RenderSettings.motion_blur_shutter -> motion_blur_shutter: float "'Time taken in frames between shutter open and close'"
+RenderSettings.multiple_engines -> has_multiple_engines: boolean, "'(read-only) More than one rendering engine is available'"
+RenderSettings.octree_resolution -> octree_resolution: enum "'Resolution of raytrace accelerator. Use higher resolutions for larger scenes'"
+RenderSettings.output_path -> output_path: string "'Directory/name to save animations, # characters defines the position and length of frame numbers'"
+RenderSettings.parts_x -> parts_x: int "'Number of horizontal tiles to use while rendering'"
+RenderSettings.parts_y -> parts_y: int "'Number of vertical tiles to use while rendering'"
+RenderSettings.pixel_aspect_x -> pixel_aspect_x: float "'Horizontal aspect ratio - for anamorphic or non-square pixel output'"
+RenderSettings.pixel_aspect_y -> pixel_aspect_y: float "'Vertical aspect ratio - for anamorphic or non-square pixel output'"
+RenderSettings.pixel_filter -> pixel_filter: enum "'Reconstruction filter used for combining anti-aliasing samples'"
+RenderSettings.raytrace_structure -> raytrace_structure: enum "'Type of raytrace accelerator structure'"
+RenderSettings.render_antialiasing -> use_antialiasing: boolean "'Render and combine multiple samples per pixel to prevent jagged edges'"
+RenderSettings.render_stamp -> use_stamp: boolean "'Render the stamp info text in the rendered image'"
+RenderSettings.resolution_percentage -> resolution_percentage: int "'Percentage scale for render resolution'"
+RenderSettings.resolution_x -> resolution_x: int "'Number of horizontal pixels in the rendered image'"
+RenderSettings.resolution_y -> resolution_y: int "'Number of vertical pixels in the rendered image'"
+RenderSettings.save_buffers -> use_save_buffers: boolean "'Save tiles for all RenderLayers and SceneNodes to files in the temp directory (saves memory, required for Full Sample)'"
+RenderSettings.sequencer_gl_preview -> sequencer_gl_preview: enum "'Method to draw in the sequencer view'"
+RenderSettings.sequencer_gl_render -> sequencer_gl_render: enum "'Method to draw in the sequencer view'"
+RenderSettings.simplify_ao_sss -> simplify_ao_sss: float "'Global approximate AA and SSS quality factor'"
+RenderSettings.simplify_child_particles -> simplify_child_particles: float "'Global child particles percentage'"
+RenderSettings.simplify_shadow_samples -> simplify_shadow_samples: int "'Global maximum shadow samples'"
+RenderSettings.simplify_subdivision -> simplify_subdivision: int "'Global maximum subdivision level'"
+RenderSettings.simplify_triangulate -> use_simplify_triangulate: boolean "'Disables non-planer quads being triangulated'"
+RenderSettings.single_layer -> use_single_layer: boolean "'Only render the active layer'"
+RenderSettings.stamp_background -> stamp_background: float "'Color to use behind stamp text'"
+RenderSettings.stamp_camera -> use_stamp_camera: boolean "'Include the name of the active camera in image metadata'"
+RenderSettings.stamp_date -> use_stamp_date: boolean "'Include the current date in image metadata'"
+RenderSettings.stamp_filename -> use_stamp_filename: boolean "'Include the filename of the .blend file in image metadata'"
+RenderSettings.stamp_font_size -> stamp_font_size: int "'Size of the font used when rendering stamp text'"
+RenderSettings.stamp_foreground -> stamp_foreground: float "'Color to use for stamp text'"
+RenderSettings.stamp_frame -> use_stamp_frame: boolean "'Include the frame number in image metadata'"
+RenderSettings.stamp_marker -> use_stamp_marker: boolean "'Include the name of the last marker in image metadata'"
+RenderSettings.stamp_note -> use_stamp_note: boolean "'Include a custom note in image metadata'"
+RenderSettings.stamp_note_text -> stamp_note_text: string "'Custom text to appear in the stamp note'"
+RenderSettings.stamp_render_time -> use_stamp_render_time: boolean "'Include the render time in the stamp image'"
+RenderSettings.stamp_scene -> use_stamp_scene: boolean "'Include the name of the active scene in image metadata'"
+RenderSettings.stamp_sequencer_strip -> use_stamp_sequencer_strip: boolean "'Include the name of the foreground sequence strip in image metadata'"
+RenderSettings.stamp_time -> use_stamp_time: boolean "'Include the render frame as HH:MM:SS.FF in image metadata'"
+RenderSettings.threads -> threads: int "'Number of CPU threads to use simultaneously while rendering (for multi-core/CPU systems)'"
+RenderSettings.threads_mode -> threads_mode: enum "'Determine the amount of render threads used'"
+RenderSettings.tiff_bit -> use_tiff_16bit: boolean "'Save TIFF with 16 bits per channel'"
+RenderSettings.use_border -> use_border: boolean "'Render a user-defined border region, within the frame size. Note, this disables save_buffers and full_sample'"
+RenderSettings.use_compositing -> use_compositing: boolean "'Process the render result through the compositing pipeline, if compositing nodes are enabled'"
+RenderSettings.use_envmaps -> use_envmaps: boolean "'Calculate environment maps while rendering'"
+RenderSettings.use_file_extension -> use_file_extension: boolean "'Add the file format extensions to the rendered file name (eg: filename + .jpg)'"
+RenderSettings.use_game_engine -> use_game_engine: boolean, "'(read-only) Current rendering engine is a game engine'"
+RenderSettings.use_instances -> use_instances: boolean "'Instance support leads to effective memory reduction when using duplicates'"
+RenderSettings.use_local_coords -> use_local_coords: boolean "'Vertex coordinates are stored localy on each primitive. Increases memory usage, but may have impact on speed'"
+RenderSettings.use_overwrite -> use_overwrite: boolean "'Overwrite existing files while rendering'"
+RenderSettings.use_placeholder -> use_placeholder: boolean '"Create empty placeholder files while rendering frames (similar to Unix \'touch\')"'
+RenderSettings.use_radiosity -> use_radiosity: boolean "'Calculate radiosity in a pre-process before rendering'"
+RenderSettings.use_raytracing -> use_raytrace: boolean "'Pre-calculate the raytrace accelerator and render raytracing effects'"
+RenderSettings.use_sequencer -> use_sequencer: boolean "'Process the render (and composited) result through the video sequence editor pipeline, if sequencer strips exist'"
+RenderSettings.use_sequencer_gl_preview -> use_sequencer_gl_preview: boolean "'NO DESCRIPTION'"
+RenderSettings.use_sequencer_gl_render -> use_sequencer_gl_render: boolean "'NO DESCRIPTION'"
+RenderSettings.use_shadows -> use_shadows: boolean "'Calculate shadows while rendering'"
+RenderSettings.use_simplify -> use_simplify: boolean "'Enable simplification of scene for quicker preview renders'"
+RenderSettings.use_sss -> use_sss: boolean "'Calculate sub-surface scattering in materials rendering'"
+RenderSettings.use_textures -> use_textures: boolean "'Use textures to affect material properties'"
+SPHFluidSettings.buoyancy -> buoyancy: float "'NO DESCRIPTION'"
+SPHFluidSettings.fluid_radius -> fluid_radius: float "'Fluid interaction Radius'"
+SPHFluidSettings.rest_density -> rest_density: float "'Density'"
+SPHFluidSettings.rest_length -> rest_length: float "'The Spring Rest Length (factor of interaction radius)'"
+SPHFluidSettings.spring_k -> spring_k: float "'Spring force constant'"
+SPHFluidSettings.stiffness_k -> stiffness_k: float "'Constant K - Stiffness'"
+SPHFluidSettings.stiffness_knear -> stiffness_knear: float "'Repulsion factor: stiffness_knear'"
+SPHFluidSettings.viscosity_beta -> viscosity_beta: float "'Square viscosity factor'"
+SPHFluidSettings.viscosity_omega -> viscosity_omega: float "'Linear viscosity'"
+SceneBases.active -> active: pointer "'Active object base in the scene'"
+SceneGameData.activity_culling -> use_activity_culling: boolean "'Activity culling is enabled'"
+SceneGameData.activity_culling_box_radius -> activity_culling_box_radius: float "'Radius of the activity bubble, in Manhattan length. Objects outside the box are activity-culled'"
+SceneGameData.auto_start -> use_auto_start: boolean "'Automatically start game at load time'"
+SceneGameData.depth -> depth: int "'Displays bit depth of full screen display'"
+SceneGameData.dome_angle -> dome_angle: int "'Field of View of the Dome - it only works in mode Fisheye and Truncated'"
+SceneGameData.dome_buffer_resolution -> dome_buffer_resolution: float "'Buffer Resolution - decrease it to increase speed'"
+SceneGameData.dome_mode -> dome_mode: enum "'Dome physical configurations'"
+SceneGameData.dome_tesselation -> dome_tesselation: int "'Tessellation level - check the generated mesh in wireframe mode'"
+SceneGameData.dome_text -> dome_text: pointer "'Custom Warp Mesh data file'"
+SceneGameData.dome_tilt -> dome_tilt: int "'Camera rotation in horizontal axis'"
+SceneGameData.eye_separation -> eye_separation: float "'Set the distance between the eyes - the camera focal length/30 should be fine'"
+SceneGameData.fps -> fps: int "'The nominal number of game frames per second. Physics fixed timestep = 1/fps, independently of actual frame rate'"
+SceneGameData.framing_color -> frame_color: float "'Set colour of the bars'"
+SceneGameData.framing_type -> frame_type: enum "'Select the type of Framing you want'"
+SceneGameData.frequency -> frequency: int "'Displays clock frequency of fullscreen display'"
+SceneGameData.fullscreen -> show_fullscreen: boolean "'Starts player in a new fullscreen display'"
+SceneGameData.glsl_extra_textures -> use_glsl_extra_textures: boolean "'Use extra textures like normal or specular maps for GLSL rendering'"
+SceneGameData.glsl_lights -> use_glsl_lights: boolean "'Use lights for GLSL rendering'"
+SceneGameData.glsl_nodes -> use_glsl_nodes: boolean "'Use nodes for GLSL rendering'"
+SceneGameData.glsl_ramps -> use_glsl_ramps: boolean "'Use ramps for GLSL rendering'"
+SceneGameData.glsl_shaders -> use_glsl_shaders: boolean "'Use shaders for GLSL rendering'"
+SceneGameData.glsl_shadows -> use_glsl_shadows: boolean "'Use shadows for GLSL rendering'"
+SceneGameData.logic_step_max -> logic_step_max: int "'Sets the maximum number of logic frame per game frame if graphics slows down the game, higher value allows better synchronization with physics'"
+SceneGameData.material_mode -> material_mode: enum "'Material mode to use for rendering'"
+SceneGameData.occlusion_culling_resolution -> occlusion_culling_resolution: float "'The size of the occlusion buffer in pixel, use higher value for better precision (slower)'"
+SceneGameData.physics_engine -> physics_engine: enum "'Physics engine used for physics simulation in the game engine'"
+SceneGameData.physics_gravity -> physics_gravity: float "'Gravitational constant used for physics simulation in the game engine'"
+SceneGameData.physics_step_max -> physics_step_max: int "'Sets the maximum number of physics step per game frame if graphics slows down the game, higher value allows physics to keep up with realtime'"
+SceneGameData.physics_step_sub -> physics_step_sub: int "'Sets the number of simulation substep per physic timestep, higher value give better physics precision'"
+SceneGameData.resolution_x -> resolution_x: int "'Number of horizontal pixels in the screen'"
+SceneGameData.resolution_y -> resolution_y: int "'Number of vertical pixels in the screen'"
+SceneGameData.show_debug_properties -> show_debug_properties: boolean "'Show properties marked for debugging while the game runs'"
+SceneGameData.show_framerate_profile -> show_framerate_profile: boolean "'Show framerate and profiling information while the game runs'"
+SceneGameData.show_physics_visualization -> show_physics_visualization: boolean "'Show a visualization of physics bounds and interactions'"
+SceneGameData.stereo -> stereo: enum "'NO DESCRIPTION'"
+SceneGameData.stereo_mode -> stereo_mode: enum "'Stereographic techniques'"
+SceneGameData.use_animation_record -> use_animation_record: boolean "'Record animation to fcurves'"
+SceneGameData.use_deprecation_warnings -> use_deprecation_warnings: boolean "'Print warnings when using deprecated features in the python API'"
+SceneGameData.use_display_lists -> use_display_lists: boolean "'Use display lists to speed up rendering by keeping geometry on the GPU'"
+SceneGameData.use_frame_rate -> use_frame_rate: boolean "'Respect the frame rate rather than rendering as many frames as possible'"
+SceneGameData.use_occlusion_culling -> use_occlusion_culling: boolean "'Use optimized Bullet DBVT tree for view frustum and occlusion culling'"
+SceneObjects.active -> active: pointer "'Active object for this scene'"
+SceneRenderLayer.all_z -> use_all_z: boolean "'Fill in Z values for solid faces in invisible layers, for masking'"
+SceneRenderLayer.edge -> use_edge_enhance: boolean "'Render Edge-enhance in this Layer (only works for Solid faces)'"
+SceneRenderLayer.enabled -> use: boolean "'Disable or enable the render layer'"
+SceneRenderLayer.halo -> use_halo: boolean "'Render Halos in this Layer (on top of Solid)'"
+SceneRenderLayer.light_override -> light_override: pointer "'Group to override all other lights in this render layer'"
+SceneRenderLayer.material_override -> material_override: pointer "'Material to override all other materials in this render layer'"
+SceneRenderLayer.name -> name: string "'Render layer name'"
+SceneRenderLayer.pass_ao -> use_pass_ambient_occlusion: boolean "'Deliver AO pass'"
+SceneRenderLayer.pass_ao_exclude -> exclude_ambient_occlusion: boolean "'Exclude AO pass from combined'"
+SceneRenderLayer.pass_color -> use_pass_color: boolean "'Deliver shade-less color pass'"
+SceneRenderLayer.pass_combined -> use_pass_combined: boolean "'Deliver full combined RGBA buffer'"
+SceneRenderLayer.pass_diffuse -> use_pass_diffuse: boolean "'Deliver diffuse pass'"
+SceneRenderLayer.pass_emit -> use_pass_emit: boolean "'Deliver emission pass'"
+SceneRenderLayer.pass_emit_exclude -> exclude_emit: boolean "'Exclude emission pass from combined'"
+SceneRenderLayer.pass_environment -> use_pass_environment: boolean "'Deliver environment lighting pass'"
+SceneRenderLayer.pass_environment_exclude -> exclude_environment: boolean "'Exclude environment pass from combined'"
+SceneRenderLayer.pass_indirect -> use_pass_indirect: boolean "'Deliver indirect lighting pass'"
+SceneRenderLayer.pass_indirect_exclude -> exclude_indirect: boolean "'Exclude indirect pass from combined'"
+SceneRenderLayer.pass_mist -> use_pass_mist: boolean "'Deliver mist factor pass (0.0-1.0)'"
+SceneRenderLayer.pass_normal -> use_pass_normal: boolean "'Deliver normal pass'"
+SceneRenderLayer.pass_object_index -> use_pass_object_index: boolean "'Deliver object index pass'"
+SceneRenderLayer.pass_reflection -> use_pass_reflection: boolean "'Deliver raytraced reflection pass'"
+SceneRenderLayer.pass_reflection_exclude -> exclude_reflection: boolean "'Exclude raytraced reflection pass from combined'"
+SceneRenderLayer.pass_refraction -> use_pass_refraction: boolean "'Deliver raytraced refraction pass'"
+SceneRenderLayer.pass_refraction_exclude -> exclude_refraction: boolean "'Exclude raytraced refraction pass from combined'"
+SceneRenderLayer.pass_shadow -> use_pass_shadow: boolean "'Deliver shadow pass'"
+SceneRenderLayer.pass_shadow_exclude -> exclude_shadow: boolean "'Exclude shadow pass from combined'"
+SceneRenderLayer.pass_specular -> use_pass_specular: boolean "'Deliver specular pass'"
+SceneRenderLayer.pass_specular_exclude -> exclude_specular: boolean "'Exclude specular pass from combined'"
+SceneRenderLayer.pass_uv -> use_pass_uv: boolean "'Deliver texture UV pass'"
+SceneRenderLayer.pass_vector -> use_pass_vector: boolean "'Deliver speed vector pass'"
+SceneRenderLayer.pass_z -> use_pass_z: boolean "'Deliver Z values pass'"
+SceneRenderLayer.sky -> use_sky: boolean "'Render Sky in this Layer'"
+SceneRenderLayer.solid -> use_solid: boolean "'Render Solid faces in this Layer'"
+SceneRenderLayer.strand -> use_strand: boolean "'Render Strands in this Layer'"
+SceneRenderLayer.visible_layers -> layers: boolean "'Scene layers included in this render layer'"
+SceneRenderLayer.zmask -> use_zmask: boolean '"Only render what\'s in front of the solid z values"'
+SceneRenderLayer.zmask_layers -> layers_zmask: boolean "'Zmask scene layers'"
+SceneRenderLayer.zmask_negate -> invert_zmask: boolean "'For Zmask, only render what is behind solid z values instead of in front'"
+SceneRenderLayer.ztransp -> use_ztransp: boolean "'Render Z-Transparent faces in this Layer (On top of Solid and Halos)'"
+Scopes.accuracy -> accuracy: float "'Proportion of original image source pixel lines to sample'"
+Scopes.histogram -> histogram: pointer, "'(read-only) Histogram for viewing image statistics'"
+Scopes.use_full_resolution -> use_full_resolution: boolean "'Sample every pixel of the image'"
+Scopes.vectorscope_alpha -> vectorscope_alpha: float "'Opacity of the points'"
+Scopes.waveform_alpha -> waveform_alpha: float "'Opacity of the points'"
+Scopes.waveform_mode -> waveform_mode: enum "'NO DESCRIPTION'"
+Sensor.expanded -> show_expanded: boolean "'Set sensor expanded in the user interface'"
+Sensor.frequency -> frequency: int "'Delay between repeated pulses(in logic tics, 0=no delay)'"
+Sensor.invert -> invert: boolean "'Invert the level(output) of this sensor'"
+Sensor.level -> use_level: boolean "'Level detector, trigger controllers of new states (only applicable upon logic state transition)'"
+Sensor.name -> name: string "'Sensor name'"
+Sensor.pinned -> pinned: boolean "'Display when not linked to a visible states controller'"
+Sensor.pulse_false_level -> use_pulse_false_level: boolean "'Activate FALSE level triggering (pulse mode)'"
+Sensor.pulse_true_level -> use_pulse_true_level: boolean "'Activate TRUE level triggering (pulse mode)'"
+Sensor.tap -> use_tap: boolean "'Trigger controllers only for an instant, even while the sensor remains true'"
+Sensor.type -> type: enum "'NO DESCRIPTION'"
++ * Sensor|ActuatorSensor.actuator -> actuator: string "'Actuator name, actuator active state modifications will be detected'"
++ * Sensor|ArmatureSensor.bone -> bone: string "'Identify the bone to check value from'"
++ * Sensor|ArmatureSensor.constraint -> constraint: string "'Identify the bone constraint to check value from'"
++ * Sensor|ArmatureSensor.test_type -> test_type: enum "'Type of value and test'"
++ * Sensor|ArmatureSensor.value -> value: float "'Specify value to be used in comparison'"
++ * Sensor|CollisionSensor.collision_type -> use_material: boolean "'Use material instead of property'"
++ * Sensor|CollisionSensor.material -> material: string "'Only look for Objects with this material'"
++ * Sensor|CollisionSensor.property -> property: string "'Only look for Objects with this property'"
++ * Sensor|CollisionSensor.pulse -> use_pulse: boolean "'Changes to the set of colliding objects generates pulse'"
+Sensor|DelaySensor.delay -> delay: int "'Delay in number of logic tics before the positive trigger (default 60 per second)'"
+Sensor|DelaySensor.duration -> duration: int "'If >0, delay in number of logic tics before the negative trigger following the positive trigger'"
+Sensor|DelaySensor.repeat -> use_repeat: boolean "'Toggle repeat option. If selected, the sensor restarts after Delay+Dur logic tics'"
+Sensor|JoystickSensor.all_events -> use_all_events: boolean "'Triggered by all events on this joysticks current type (axis/button/hat)'"
+Sensor|JoystickSensor.axis_direction -> axis_direction: enum "'The direction of the axis'"
+Sensor|JoystickSensor.axis_number -> axis_number: int "'Specify which axis pair to use, 1 is usually the main direction input'"
+Sensor|JoystickSensor.axis_threshold -> axis_threshold: int "'Specify the precision of the axis'"
+Sensor|JoystickSensor.button_number -> button_number: int "'Specify which button to use'"
+Sensor|JoystickSensor.event_type -> event_type: enum "'The type of event this joystick sensor is triggered on'"
+Sensor|JoystickSensor.hat_direction -> hat_direction: enum "'Specify hat direction'"
+Sensor|JoystickSensor.hat_number -> hat_number: int "'Specify which hat to use'"
+Sensor|JoystickSensor.joystick_index -> joystick_index: int "'Specify which joystick to use'"
+Sensor|JoystickSensor.single_axis_number -> single_axis_number: int "'Specify a single axis (verticle/horizontal/other) to detect'"
+Sensor|KeyboardSensor.all_keys -> use_all_keys: boolean "'Trigger this sensor on any keystroke'"
+Sensor|KeyboardSensor.key -> key: enum "'NO DESCRIPTION'"
+Sensor|KeyboardSensor.log -> log: string "'Property that receive the keystrokes in case a string is logged'"
+Sensor|KeyboardSensor.modifier_key -> modifier_key: enum "'Modifier key code'"
+Sensor|KeyboardSensor.second_modifier_key -> second_modifier_key: enum "'Modifier key code'"
+Sensor|KeyboardSensor.target -> target: string "'Property that indicates whether to log keystrokes as a string'"
+Sensor|MessageSensor.subject -> subject: string "'Optional subject filter: only accept messages with this subject, or empty for all'"
+Sensor|MouseSensor.mouse_event -> mouse_event: enum "'Specify the type of event this mouse sensor should trigger on'"
+Sensor|NearSensor.distance -> distance: float "'Trigger distance'"
+Sensor|NearSensor.property -> property: string "'Only look for objects with this property'"
+Sensor|NearSensor.reset_distance -> reset_distance: float "'NO DESCRIPTION'"
+Sensor|PropertySensor.evaluation_type -> evaluation_type: enum "'Type of property evaluation'"
+Sensor|PropertySensor.max_value -> value_max: string "'Specify maximum value in Interval type'"
+Sensor|PropertySensor.min_value -> value_min: string "'Specify minimum value in Interval type'"
+Sensor|PropertySensor.property -> property: string "'NO DESCRIPTION'"
+Sensor|PropertySensor.value -> value: string "'Check for this value in types in Equal or Not Equal types'"
+Sensor|RadarSensor.angle -> angle: float "'Opening angle of the radar cone'"
+Sensor|RadarSensor.axis -> axis: enum "'Specify along which axis the radar cone is cast'"
+Sensor|RadarSensor.distance -> distance: float "'Depth of the radar cone'"
+Sensor|RadarSensor.property -> property: string "'Only look for Objects with this property'"
+Sensor|RandomSensor.seed -> seed: int "'Initial seed of the generator. (Choose 0 for not random)'"
+Sensor|RaySensor.axis -> axis: enum "'Specify along which axis the ray is cast'"
+Sensor|RaySensor.material -> material: string "'Only look for Objects with this material'"
+Sensor|RaySensor.property -> property: string "'Only look for Objects with this property'"
+Sensor|RaySensor.range -> range: float "'Sense objects no farther than this distance'"
+Sensor|RaySensor.ray_type -> ray_type: enum "'Toggle collision on material or property'"
+Sensor|RaySensor.x_ray_mode -> use_x_ray: boolean '"See through objects that don\'t have the property"'
+Sensor|TouchSensor.material -> material: pointer "'Only look for objects with this material'"
+Sequence.blend_mode -> blend_type: enum "'NO DESCRIPTION'"
+Sequence.blend_opacity -> blend_opacity: float "'NO DESCRIPTION'"
+Sequence.channel -> channel: int "'Y position of the sequence strip'"
+Sequence.effect_fader -> effect_fader: float "'NO DESCRIPTION'"
+Sequence.frame_final_end -> frame_final_end: int "'End frame displayed in the sequence editor after offsets are applied'"
+Sequence.frame_final_length -> frame_final_length: int "'The length of the contents of this strip before the handles are applied'"
+Sequence.frame_final_start -> frame_final_start: int "'Start frame displayed in the sequence editor after offsets are applied, setting this is equivalent to moving the handle, not the actual start frame'"
+Sequence.frame_length -> frame_length: int, "'(read-only) The length of the contents of this strip before the handles are applied'"
+Sequence.frame_offset_end -> frame_offset_end: int, "'(read-only)'"
+Sequence.frame_offset_start -> frame_offset_start: int, "'(read-only)'"
+Sequence.frame_start -> frame_start: int "'NO DESCRIPTION'"
+Sequence.frame_still_end -> frame_still_end: int, "'(read-only)'"
+Sequence.frame_still_start -> frame_still_start: int, "'(read-only)'"
+Sequence.lock -> lock: boolean '"Lock strip so that it can\'t be transformed"'
+Sequence.mute -> mute: boolean "'NO DESCRIPTION'"
+Sequence.name -> name: string "'NO DESCRIPTION'"
+Sequence.select -> select: boolean "'NO DESCRIPTION'"
+Sequence.select_left_handle -> select_left_handle: boolean "'NO DESCRIPTION'"
+Sequence.select_right_handle -> select_right_handle: boolean "'NO DESCRIPTION'"
+Sequence.speed_fader -> speed_fader: float "'NO DESCRIPTION'"
+Sequence.type -> type: enum, "'(read-only)'"
+Sequence.use_effect_default_fade -> use_default_fade: boolean "'Fade effect using the built-in default (usually make transition as long as effect strip)'"
+SequenceColorBalance.gain -> gain: float "'Color balance gain (highlights)'"
+SequenceColorBalance.gamma -> gamma: float "'Color balance gamma (midtones)'"
+SequenceColorBalance.inverse_gain -> invert_gain: boolean "'NO DESCRIPTION'"
+SequenceColorBalance.inverse_gamma -> invert_gamma: boolean "'NO DESCRIPTION'"
+SequenceColorBalance.inverse_lift -> invert_lift: boolean "'NO DESCRIPTION'"
+SequenceColorBalance.lift -> lift: float "'Color balance lift (shadows)'"
+SequenceCrop.bottom -> bottom: int "'NO DESCRIPTION'"
+SequenceCrop.left -> left: int "'NO DESCRIPTION'"
+SequenceCrop.right -> right: int "'NO DESCRIPTION'"
+SequenceCrop.top -> top: int "'NO DESCRIPTION'"
+SequenceEditor.active_strip -> active_strip: pointer "'NO DESCRIPTION'"
+SequenceEditor.meta_stack -> meta_stack: collection, "'(read-only) Meta strip stack, last is currently edited meta strip'"
+SequenceEditor.overlay_frame -> overlay_frame: int "'Sequencers active strip'"
+SequenceEditor.overlay_lock -> overlay_lock: boolean "'NO DESCRIPTION'"
+SequenceEditor.sequences -> sequences: collection, "'(read-only)'"
+SequenceEditor.sequences_all -> sequences_all: collection, "'(read-only)'"
+SequenceEditor.show_overlay -> show_overlay: boolean "'Partial overlay ontop of the sequencer'"
+SequenceElement.filename -> filename: string "'NO DESCRIPTION'"
+SequenceProxy.directory -> directory: string "'Location to store the proxy files'"
+SequenceProxy.filepath -> filepath: string "'Location of custom proxy file'"
+SequenceTransform.offset_x -> offset_x: int "'NO DESCRIPTION'"
+SequenceTransform.offset_y -> offset_y: int "'NO DESCRIPTION'"
+Sequence|EffectSequence.color_balance -> color_balance: pointer, "'(read-only)'"
+Sequence|EffectSequence.color_saturation -> color_saturation: float "'NO DESCRIPTION'"
+Sequence|EffectSequence.convert_float -> use_float: boolean "'Convert input to float data'"
+Sequence|EffectSequence.crop -> crop: pointer, "'(read-only)'"
+Sequence|EffectSequence.de_interlace -> use_deinterlace: boolean "'For video movies to remove fields'"
+Sequence|EffectSequence.flip_x -> use_flip_x: boolean "'Flip on the X axis'"
+Sequence|EffectSequence.flip_y -> use_flip_y: boolean "'Flip on the Y axis'"
+Sequence|EffectSequence.multiply_colors -> color_multiply: float "'NO DESCRIPTION'"
+Sequence|EffectSequence.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+Sequence|EffectSequence.proxy -> proxy: pointer, "'(read-only)'"
+Sequence|EffectSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean "'Use a custom directory to store data'"
+Sequence|EffectSequence.proxy_custom_file -> use_proxy_custom_file: boolean "'Use a custom file to read proxy data from'"
+Sequence|EffectSequence.reverse_frames -> use_reverse_frames: boolean "'Reverse frame order'"
+Sequence|EffectSequence.strobe -> strobe: float "'Only display every nth frame'"
+Sequence|EffectSequence.transform -> transform: pointer, "'(read-only)'"
+Sequence|EffectSequence.use_color_balance -> use_color_balance: boolean "'(3-Way color correction) on input'"
+Sequence|EffectSequence.use_crop -> use_crop: boolean "'Crop image before processing'"
+Sequence|EffectSequence.use_proxy -> use_proxy: boolean "'Use a preview proxy for this strip'"
+Sequence|EffectSequence.use_translation -> use_translation: boolean "'Translate image before processing'"
++ * Sequence|EffectSequence|ColorSequence.color -> color: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|GlowSequence.blur_distance -> blur_distance: float "'Radius of glow effect'"
+Sequence|EffectSequence|GlowSequence.boost_factor -> boost_factor: float "'Brightness multiplier'"
+Sequence|EffectSequence|GlowSequence.clamp -> clamp: float "'rightness limit of intensity'"
+Sequence|EffectSequence|GlowSequence.only_boost -> use_only_boost: boolean "'Show the glow buffer only'"
+Sequence|EffectSequence|GlowSequence.quality -> quality: int "'Accuracy of the blur effect'"
+Sequence|EffectSequence|GlowSequence.threshold -> threshold: float "'Minimum intensity to trigger a glow'"
+Sequence|EffectSequence|PluginSequence.filename -> filename: string, "'(read-only)'"
+Sequence|EffectSequence|SpeedControlSequence.curve_compress_y -> use_curve_compress_y: boolean "'Scale F-Curve value to get the target frame number, F-Curve value runs from 0.0 to 1.0'"
+Sequence|EffectSequence|SpeedControlSequence.curve_velocity -> use_curve_velocity: boolean "'Interpret the F-Curve value as a velocity instead of a frame number'"
+Sequence|EffectSequence|SpeedControlSequence.frame_blending -> use_frame_blend: boolean "'Blend two frames into the target for a smoother result'"
+Sequence|EffectSequence|SpeedControlSequence.global_speed -> global_speed: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.interpolation -> interpolation: enum "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.rotation_start -> rotation_start: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.scale_start_x -> scale_start_x: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.scale_start_y -> scale_start_y: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.translate_start_x -> translate_start_x: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.translate_start_y -> translate_start_y: float "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.translation_unit -> translation_unit: enum "'NO DESCRIPTION'"
+Sequence|EffectSequence|TransformSequence.uniform_scale -> use_uniform_scale: boolean "'Scale uniformly, preserving aspect ratio'"
+Sequence|EffectSequence|WipeSequence.angle -> angle: float "'Edge angle'"
+Sequence|EffectSequence|WipeSequence.blur_width -> blur_width: float "'Width of the blur edge, in percentage relative to the image size'"
+Sequence|EffectSequence|WipeSequence.direction -> direction: enum "'Wipe direction'"
+Sequence|EffectSequence|WipeSequence.transition_type -> transition_type: enum "'NO DESCRIPTION'"
+Sequence|ImageSequence.animation_end_offset -> animation_end_offset: int "'Animation end offset (trim end)'"
+Sequence|ImageSequence.animation_start_offset -> animation_start_offset: int "'Animation start offset (trim start)'"
+Sequence|ImageSequence.color_balance -> color_balance: pointer, "'(read-only)'"
+Sequence|ImageSequence.color_saturation -> color_saturation: float "'NO DESCRIPTION'"
+Sequence|ImageSequence.convert_float -> use_float: boolean "'Convert input to float data'"
+Sequence|ImageSequence.crop -> crop: pointer, "'(read-only)'"
+Sequence|ImageSequence.de_interlace -> use_deinterlace: boolean "'For video movies to remove fields'"
+Sequence|ImageSequence.directory -> directory: string "'NO DESCRIPTION'"
+Sequence|ImageSequence.elements -> elements: collection, "'(read-only)'"
+Sequence|ImageSequence.flip_x -> use_flip_x: boolean "'Flip on the X axis'"
+Sequence|ImageSequence.flip_y -> use_flip_y: boolean "'Flip on the Y axis'"
+Sequence|ImageSequence.multiply_colors -> multiply_colors: float "'NO DESCRIPTION'"
+Sequence|ImageSequence.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+Sequence|ImageSequence.proxy -> proxy: pointer, "'(read-only)'"
+Sequence|ImageSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean "'Use a custom directory to store data'"
+Sequence|ImageSequence.proxy_custom_file -> use_proxy_custom_file: boolean "'Use a custom file to read proxy data from'"
+Sequence|ImageSequence.reverse_frames -> use_reverse_frames: boolean "'Reverse frame order'"
+Sequence|ImageSequence.strobe -> strobe: float "'Only display every nth frame'"
+Sequence|ImageSequence.transform -> transform: pointer, "'(read-only)'"
+Sequence|ImageSequence.use_color_balance -> use_color_balance: boolean "'(3-Way color correction) on input'"
+Sequence|ImageSequence.use_crop -> use_crop: boolean "'Crop image before processing'"
+Sequence|ImageSequence.use_proxy -> use_proxy: boolean "'Use a preview proxy for this strip'"
+Sequence|ImageSequence.use_translation -> use_translation: boolean "'Translate image before processing'"
+Sequence|MetaSequence.animation_end_offset -> animation_end_offset: int "'Animation end offset (trim end)'"
+Sequence|MetaSequence.animation_start_offset -> animation_start_offset: int "'Animation start offset (trim start)'"
+Sequence|MetaSequence.color_balance -> color_balance: pointer, "'(read-only)'"
+Sequence|MetaSequence.color_saturation -> color_saturation: float "'NO DESCRIPTION'"
+Sequence|MetaSequence.convert_float -> use_float: boolean "'Convert input to float data'"
+Sequence|MetaSequence.crop -> crop: pointer, "'(read-only)'"
+Sequence|MetaSequence.de_interlace -> use_deinterlace: boolean "'For video movies to remove fields'"
+Sequence|MetaSequence.flip_x -> use_flip_x: boolean "'Flip on the X axis'"
+Sequence|MetaSequence.flip_y -> use_flip_y: boolean "'Flip on the Y axis'"
+Sequence|MetaSequence.multiply_colors -> multiply_colors: float "'NO DESCRIPTION'"
+Sequence|MetaSequence.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+Sequence|MetaSequence.proxy -> proxy: pointer, "'(read-only)'"
+Sequence|MetaSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean "'Use a custom directory to store data'"
+Sequence|MetaSequence.proxy_custom_file -> use_proxy_custom_file: boolean "'Use a custom file to read proxy data from'"
+Sequence|MetaSequence.reverse_frames -> use_reverse_frames: boolean "'Reverse frame order'"
+Sequence|MetaSequence.sequences -> sequences: collection, "'(read-only)'"
+Sequence|MetaSequence.strobe -> strobe: float "'Only display every nth frame'"
+Sequence|MetaSequence.transform -> transform: pointer, "'(read-only)'"
+Sequence|MetaSequence.use_color_balance -> use_color_balance: boolean "'(3-Way color correction) on input'"
+Sequence|MetaSequence.use_crop -> use_crop: boolean "'Crop image before processing'"
+Sequence|MetaSequence.use_proxy -> use_proxy: boolean "'Use a preview proxy for this strip'"
+Sequence|MetaSequence.use_translation -> use_translation: boolean "'Translate image before processing'"
+Sequence|MovieSequence.animation_end_offset -> animation_end_offset: int "'Animation end offset (trim end)'"
+Sequence|MovieSequence.animation_start_offset -> animation_start_offset: int "'Animation start offset (trim start)'"
+Sequence|MovieSequence.color_balance -> color_balance: pointer, "'(read-only)'"
+Sequence|MovieSequence.color_saturation -> color_saturation: float "'NO DESCRIPTION'"
+Sequence|MovieSequence.convert_float -> use_float: boolean "'Convert input to float data'"
+Sequence|MovieSequence.crop -> crop: pointer, "'(read-only)'"
+Sequence|MovieSequence.de_interlace -> use_deinterlace: boolean "'For video movies to remove fields'"
+Sequence|MovieSequence.filepath -> filepath: string "'NO DESCRIPTION'"
+Sequence|MovieSequence.flip_x -> use_flip_x: boolean "'Flip on the X axis'"
+Sequence|MovieSequence.flip_y -> use_flip_y: boolean "'Flip on the Y axis'"
+Sequence|MovieSequence.mpeg_preseek -> mpeg_preseek: int "'For MPEG movies, preseek this many frames'"
+Sequence|MovieSequence.multiply_colors -> multiply_colors: float "'NO DESCRIPTION'"
+Sequence|MovieSequence.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+Sequence|MovieSequence.proxy -> proxy: pointer, "'(read-only)'"
+Sequence|MovieSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean "'Use a custom directory to store data'"
+Sequence|MovieSequence.proxy_custom_file -> use_proxy_custom_file: boolean "'Use a custom file to read proxy data from'"
+Sequence|MovieSequence.reverse_frames -> use_reverse_frames: boolean "'Reverse frame order'"
+Sequence|MovieSequence.strobe -> strobe: float "'Only display every nth frame'"
+Sequence|MovieSequence.transform -> transform: pointer, "'(read-only)'"
+Sequence|MovieSequence.use_color_balance -> use_color_balance: boolean "'(3-Way color correction) on input'"
+Sequence|MovieSequence.use_crop -> use_crop: boolean "'Crop image before processing'"
+Sequence|MovieSequence.use_proxy -> use_proxy: boolean "'Use a preview proxy for this strip'"
+Sequence|MovieSequence.use_translation -> use_translation: boolean "'Translate image before processing'"
+Sequence|MulticamSequence.animation_end_offset -> animation_end_offset: int "'Animation end offset (trim end)'"
+Sequence|MulticamSequence.animation_start_offset -> animation_start_offset: int "'Animation start offset (trim start)'"
+Sequence|MulticamSequence.color_balance -> color_balance: pointer, "'(read-only)'"
+Sequence|MulticamSequence.color_saturation -> color_saturation: float "'NO DESCRIPTION'"
+Sequence|MulticamSequence.convert_float -> use_float: boolean "'Convert input to float data'"
+Sequence|MulticamSequence.crop -> crop: pointer, "'(read-only)'"
+Sequence|MulticamSequence.de_interlace -> use_deinterlace: boolean "'For video movies to remove fields'"
+Sequence|MulticamSequence.flip_x -> use_flip_x: boolean "'Flip on the X axis'"
+Sequence|MulticamSequence.flip_y -> use_flip_y: boolean "'Flip on the Y axis'"
+Sequence|MulticamSequence.multicam_source -> multicam_source: int "'NO DESCRIPTION'"
+Sequence|MulticamSequence.multiply_colors -> multiply_colors: float "'NO DESCRIPTION'"
+Sequence|MulticamSequence.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+Sequence|MulticamSequence.proxy -> proxy: pointer, "'(read-only)'"
+Sequence|MulticamSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean "'Use a custom directory to store data'"
+Sequence|MulticamSequence.proxy_custom_file -> use_proxy_custom_file: boolean "'Use a custom file to read proxy data from'"
+Sequence|MulticamSequence.reverse_frames -> use_reverse_frames: boolean "'Reverse frame order'"
+Sequence|MulticamSequence.strobe -> strobe: float "'Only display every nth frame'"
+Sequence|MulticamSequence.transform -> transform: pointer, "'(read-only)'"
+Sequence|MulticamSequence.use_color_balance -> use_color_balance: boolean "'(3-Way color correction) on input'"
+Sequence|MulticamSequence.use_crop -> use_crop: boolean "'Crop image before processing'"
+Sequence|MulticamSequence.use_proxy -> use_proxy: boolean "'Use a preview proxy for this strip'"
+Sequence|MulticamSequence.use_translation -> use_translation: boolean "'Translate image before processing'"
+Sequence|SceneSequence.animation_end_offset -> animation_end_offset: int "'Animation end offset (trim end)'"
+Sequence|SceneSequence.animation_start_offset -> animation_start_offset: int "'Animation start offset (trim start)'"
+Sequence|SceneSequence.color_balance -> color_balance: pointer, "'(read-only)'"
+Sequence|SceneSequence.color_saturation -> color_saturation: float "'NO DESCRIPTION'"
+Sequence|SceneSequence.convert_float -> use_float: boolean "'Convert input to float data'"
+Sequence|SceneSequence.crop -> crop: pointer, "'(read-only)'"
+Sequence|SceneSequence.de_interlace -> use_deinterlace: boolean "'For video movies to remove fields'"
+Sequence|SceneSequence.flip_x -> use_flip_x: boolean "'Flip on the X axis'"
+Sequence|SceneSequence.flip_y -> use_flip_y: boolean "'Flip on the Y axis'"
+Sequence|SceneSequence.multiply_colors -> multiply_colors: float "'NO DESCRIPTION'"
+Sequence|SceneSequence.premultiply -> use_premultiply: boolean "'Convert RGB from key alpha to premultiplied alpha'"
+Sequence|SceneSequence.proxy -> proxy: pointer, "'(read-only)'"
+Sequence|SceneSequence.proxy_custom_directory -> use_proxy_custom_directory: boolean "'Use a custom directory to store data'"
+Sequence|SceneSequence.proxy_custom_file -> use_proxy_custom_file: boolean "'Use a custom file to read proxy data from'"
+Sequence|SceneSequence.reverse_frames -> use_reverse_frames: boolean "'Reverse frame order'"
+Sequence|SceneSequence.scene -> scene: pointer "'Scene that this sequence uses'"
+Sequence|SceneSequence.scene_camera -> scene_camera: pointer "'Override the scenes active camera'"
+Sequence|SceneSequence.strobe -> strobe: float "'Only display every nth frame'"
+Sequence|SceneSequence.transform -> transform: pointer, "'(read-only)'"
+Sequence|SceneSequence.use_color_balance -> use_color_balance: boolean "'(3-Way color correction) on input'"
+Sequence|SceneSequence.use_crop -> use_crop: boolean "'Crop image before processing'"
+Sequence|SceneSequence.use_proxy -> use_proxy: boolean "'Use a preview proxy for this strip'"
+Sequence|SceneSequence.use_translation -> use_translation: boolean "'Translate image before processing'"
+Sequence|SoundSequence.animation_end_offset -> animation_end_offset: int "'Animation end offset (trim end)'"
+Sequence|SoundSequence.animation_start_offset -> animation_start_offset: int "'Animation start offset (trim start)'"
+Sequence|SoundSequence.attenuation -> attenuation: float "'Attenuation in dezibel'"
+Sequence|SoundSequence.filepath -> filepath: string "'NO DESCRIPTION'"
+Sequence|SoundSequence.sound -> sound: pointer, "'(read-only) Sound datablock used by this sequence'"
+Sequence|SoundSequence.volume -> volume: float "'Playback volume of the sound'"
+ShapeKey.data -> data: collection, "'(read-only)'"
+ShapeKey.frame -> frame: float, "'(read-only) Frame for absolute keys'"
+ShapeKey.interpolation -> interpolation: enum "'Interpolation type'"
+ShapeKey.mute -> mute: boolean "'Mute this shape key'"
+ShapeKey.name -> name: string "'NO DESCRIPTION'"
+ShapeKey.relative_key -> relative_key: pointer "'Shape used as a relative key'"
+ShapeKey.slider_max -> slider_max: float "'Maximum for slider'"
+ShapeKey.slider_min -> slider_min: float "'Minimum for slider'"
+ShapeKey.value -> value: float "'Value of shape key at the current frame'"
+ShapeKey.vertex_group -> vertex_group: string "'Vertex weight group, to blend with basis shape'"
+ShapeKeyBezierPoint.co -> co: float "'NO DESCRIPTION'"
+ShapeKeyBezierPoint.handle_1_co -> handle_1_co: float "'NO DESCRIPTION'"
+ShapeKeyBezierPoint.handle_2_co -> handle_2_co: float "'NO DESCRIPTION'"
+ShapeKeyCurvePoint.co -> co: float "'NO DESCRIPTION'"
+ShapeKeyCurvePoint.tilt -> tilt: float "'NO DESCRIPTION'"
+ShapeKeyPoint.co -> co: float "'NO DESCRIPTION'"
+SmokeDomainSettings.alpha -> alpha: float "'Higher value results in sinking smoke'"
+SmokeDomainSettings.amplify -> amplify: int "'Enhance the resolution of smoke by this factor using noise'"
+SmokeDomainSettings.beta -> beta: float "'Higher value results in faster rising smoke'"
+SmokeDomainSettings.coll_group -> coll_group: pointer "'Limit collisions to this group'"
+SmokeDomainSettings.dissolve_smoke -> use_dissolve_smoke: boolean "'Enable smoke to disappear over time'"
+SmokeDomainSettings.dissolve_smoke_log -> use_dissolve_smoke_log: boolean "'Using 1/x'"
+SmokeDomainSettings.dissolve_speed -> dissolve_speed: int "'Dissolve Speed'"
+SmokeDomainSettings.eff_group -> eff_group: pointer "'Limit effectors to this group'"
+SmokeDomainSettings.effector_weights -> effector_weights: pointer, "'(read-only)'"
+SmokeDomainSettings.fluid_group -> fluid_group: pointer "'Limit fluid objects to this group'"
+SmokeDomainSettings.highres -> use_high_resolution: boolean "'Enable high resolution (using amplification)'"
+SmokeDomainSettings.maxres -> maxres: int "'Maximal resolution used in the fluid domain'"
+SmokeDomainSettings.noise_type -> noise_type: enum "'Noise method which is used for creating the high resolution'"
+SmokeDomainSettings.point_cache_high -> point_cache_high: pointer, "'(read-only)'"
+SmokeDomainSettings.point_cache_low -> point_cache_low: pointer, "'(read-only)'"
+SmokeDomainSettings.smoke_cache_comp -> smoke_cache_comp: enum "'Compression method to be used'"
+SmokeDomainSettings.smoke_cache_high_comp -> smoke_cache_high_comp: enum "'Compression method to be used'"
+SmokeDomainSettings.smoke_domain_colli -> smoke_domain_colli: enum "'Selects which domain border will be treated as collision object.'"
+SmokeDomainSettings.smoothemitter -> smoothemitter: boolean "'Smoothens emitted smoke to avoid blockiness.'"
+SmokeDomainSettings.strength -> strength: float "'Strength of wavelet noise'"
+SmokeDomainSettings.time_scale -> time_scale: float "'Adjust simulation speed.'"
+SmokeDomainSettings.viewhighres -> show_high_resolution: boolean "'Show high resolution (using amplification)'"
+SmokeDomainSettings.vorticity -> vorticity: float "'Amount of turbulence/rotation in fluid.'"
+SmokeFlowSettings.absolute -> absolute: boolean "'Only allows given density value in emitter area.'"
+SmokeFlowSettings.density -> density: float "'NO DESCRIPTION'"
+SmokeFlowSettings.initial_velocity -> initial_velocity: boolean '"Smoke inherits it\'s velocity from the emitter particle"'
+NEGATE * SmokeFlowSettings.outflow -> use_outflow: boolean "'Deletes smoke from simulation'"
+SmokeFlowSettings.psys -> psys: pointer "'Particle systems emitted from the object'"
+SmokeFlowSettings.temperature -> temperature: float "'Temperature difference to ambient temperature'"
+SmokeFlowSettings.velocity_multiplier -> velocity_multiplier: float "'Multiplier to adjust velocity passed to smoke'"
+SoftBodySettings.aero -> aero: float '"Make edges \'sail\'"'
+SoftBodySettings.aerodynamics_type -> aerodynamics_type: enum "'Method of calculating aerodynamic interaction'"
+SoftBodySettings.auto_step -> use_auto_step: boolean "'Use velocities for automagic step sizes'"
+SoftBodySettings.ball_damp -> ball_damp: float "'Blending to inelastic collision'"
+SoftBodySettings.ball_size -> ball_size: float "'Absolute ball size or factor if not manual adjusted'"
+SoftBodySettings.ball_stiff -> ball_stiff: float "'Ball inflating pressure'"
+SoftBodySettings.bending -> bend: float "'Bending Stiffness'"
+SoftBodySettings.choke -> choke: int '"\'Viscosity\' inside collision target"'
+SoftBodySettings.collision_type -> collision_type: enum "'Choose Collision Type'"
+SoftBodySettings.damp -> damp: float "'Edge spring friction'"
+SoftBodySettings.diagnose -> use_diagnose: boolean "'Turn on SB diagnose console prints'"
+SoftBodySettings.edge_collision -> use_edge_collision: boolean "'Edges collide too'"
+SoftBodySettings.effector_weights -> effector_weights: pointer, "'(read-only)'"
+SoftBodySettings.error_limit -> error_limit: float "'The Runge-Kutta ODE solver error limit, low value gives more precision, high values speed'"
+SoftBodySettings.estimate_matrix -> use_estimate_matrix: boolean "'estimate matrix .. split to COM , ROT ,SCALE'"
+SoftBodySettings.face_collision -> use_face_collision: boolean "'Faces collide too, SLOOOOOW warning'"
+SoftBodySettings.friction -> friction: float "'General media friction for point movements'"
+SoftBodySettings.fuzzy -> fuzzy: int "'Fuzziness while on collision, high values make collsion handling faster but less stable'"
+SoftBodySettings.goal_default -> goal_default: float "'Default Goal (vertex target position) value, when no Vertex Group used'"
+SoftBodySettings.goal_friction -> goal_friction: float "'Goal (vertex target position) friction'"
+SoftBodySettings.goal_max -> goal_max: float "'Goal maximum, vertex weights are scaled to match this range'"
+SoftBodySettings.goal_min -> goal_min: float "'Goal minimum, vertex weights are scaled to match this range'"
+SoftBodySettings.goal_spring -> goal_spring: float "'Goal (vertex target position) spring stiffness'"
+SoftBodySettings.goal_vertex_group -> goal_vertex_group: string "'Control point weight values'"
+SoftBodySettings.gravity -> gravity: float "'Apply gravitation to point movement'"
+SoftBodySettings.lcom -> lcom: float "'Location of Center of mass'"
+SoftBodySettings.lrot -> lrot: float "'Estimated rotation matrix'"
+SoftBodySettings.lscale -> lscale: float "'Estimated scale matrix'"
+SoftBodySettings.mass -> mass: float "'General Mass value'"
+SoftBodySettings.mass_vertex_group -> mass_vertex_group: string "'Control point mass values'"
+SoftBodySettings.maxstep -> step_max: int "'Maximal # solver steps/frame'"
+SoftBodySettings.minstep -> step_min: int "'Minimal # solver steps/frame'"
+SoftBodySettings.plastic -> plastic: float "'Permanent deform'"
+SoftBodySettings.pull -> pull: float "'Edge spring stiffness when longer than rest length'"
+SoftBodySettings.push -> push: float "'Edge spring stiffness when shorter than rest length'"
+SoftBodySettings.self_collision -> use_self_collision: boolean "'Enable naive vertex ball self collision'"
+SoftBodySettings.shear -> shear: float "'Shear Stiffness'"
+SoftBodySettings.speed -> speed: float "'Tweak timing for physics to control frequency and speed'"
+SoftBodySettings.spring_length -> spring_length: float "'Alter spring length to shrink/blow up (unit %) 0 to disable'"
+SoftBodySettings.spring_vertex_group -> spring_vertex_group: string "'Control point spring strength values'"
+SoftBodySettings.stiff_quads -> use_stiff_quads: boolean "'Adds diagonal springs on 4-gons'"
+SoftBodySettings.use_edges -> use_edges: boolean "'Use Edges as springs'"
+SoftBodySettings.use_goal -> use_goal: boolean "'Define forces for vertices to stick to animated position'"
+Space.type -> type: enum, "'(read-only) Space data type'"
+SpaceUVEditor.constrain_to_image_bounds -> use_constrain_to_image_bounds: boolean "'Constraint to stay within the image bounds while editing'"
+SpaceUVEditor.cursor_location -> cursor_location: float "'2D cursor location for this view'"
+SpaceUVEditor.draw_modified_edges -> show_modified_edges: boolean "'Draw edges after modifiers are applied'"
+SpaceUVEditor.draw_other_objects -> show_other_objects: boolean "'Draw other selected objects that share the same image'"
+SpaceUVEditor.draw_smooth_edges -> show_smooth_edges: boolean "'Draw UV edges anti-aliased'"
+SpaceUVEditor.draw_stretch -> show_stretch: boolean "'Draw faces colored according to the difference in shape between UVs and their 3D coordinates (blue for low distortion, red for high distortion)'"
+SpaceUVEditor.draw_stretch_type -> draw_stretch_type: enum "'Type of stretch to draw'"
+SpaceUVEditor.edge_draw_type -> edge_draw_type: enum "'Draw type for drawing UV edges'"
+SpaceUVEditor.live_unwrap -> use_live_unwrap: boolean "'Continuously unwrap the selected UV island while transforming pinned vertices'"
+SpaceUVEditor.normalized_coordinates -> show_normalized_coordinates: boolean "'Display UV coordinates from 0.0 to 1.0 rather than in pixels'"
+SpaceUVEditor.pivot -> pivot: enum "'Rotation/Scaling Pivot'"
+SpaceUVEditor.snap_to_pixels -> use_snap_to_pixels: boolean "'Snap UVs to pixel locations while editing'"
+SpaceUVEditor.sticky_selection_mode -> sticky_selection_mode: enum "'Automatically select also UVs sharing the same vertex as the ones being selected'"
+Space|SpaceConsole.console_type -> console_type: enum "'Console type'"
+Space|SpaceConsole.font_size -> font_size: int "'Font size to use for displaying the text'"
+Space|SpaceConsole.history -> history: collection, "'(read-only) Command history'"
+Space|SpaceConsole.language -> language: string "'Command line prompt language'"
+Space|SpaceConsole.prompt -> prompt: string "'Command line prompt'"
+Space|SpaceConsole.scrollback -> scrollback: collection, "'(read-only) Command output'"
+Space|SpaceConsole.selection_end -> selection_end: int "'NO DESCRIPTION'"
+Space|SpaceConsole.selection_start -> selection_start: int "'NO DESCRIPTION'"
+Space|SpaceConsole.show_report_debug -> show_report_debug: boolean "'Display debug reporting info'"
+Space|SpaceConsole.show_report_error -> show_report_error: boolean "'Display error text'"
+Space|SpaceConsole.show_report_info -> show_report_info: boolean "'Display general information'"
+Space|SpaceConsole.show_report_operator -> show_report_operator: boolean "'Display the operator log'"
+Space|SpaceConsole.show_report_warn -> show_report_warning: boolean "'Display warnings'"
+Space|SpaceDopeSheetEditor.action -> action: pointer "'Action displayed and edited in this space'"
+Space|SpaceDopeSheetEditor.automerge_keyframes -> use_automerge_keyframes: boolean "'Automatically merge nearby keyframes'"
+Space|SpaceDopeSheetEditor.autosnap -> autosnap: enum "'Automatic time snapping settings for transformations'"
+Space|SpaceDopeSheetEditor.dopesheet -> dopesheet: pointer, "'(read-only) Settings for filtering animation data'"
+Space|SpaceDopeSheetEditor.mode -> mode: enum "'Editing context being displayed'"
+Space|SpaceDopeSheetEditor.realtime_updates -> use_realtime_updates: boolean "'When transforming keyframes, changes to the animation data are flushed to other views'"
+Space|SpaceDopeSheetEditor.show_cframe_indicator -> show_frame_indicator: boolean "'Show frame number beside the current frame indicator line'"
+Space|SpaceDopeSheetEditor.show_seconds -> show_seconds: boolean, "'(read-only) Show timing in seconds not frames'"
+Space|SpaceDopeSheetEditor.show_sliders -> show_sliders: boolean "'Show sliders beside F-Curve channels'"
+Space|SpaceDopeSheetEditor.use_marker_sync -> use_marker_sync: boolean "'Sync Markers with keyframe edits'"
+Space|SpaceFileBrowser.params -> params: pointer, "'(read-only) Parameters and Settings for the Filebrowser'"
+Space|SpaceGraphEditor.automerge_keyframes -> use_automerge_keyframes: boolean "'Automatically merge nearby keyframes'"
+Space|SpaceGraphEditor.autosnap -> autosnap: enum "'Automatic time snapping settings for transformations'"
+Space|SpaceGraphEditor.cursor_value -> cursor_value: float "'Graph Editor 2D-Value cursor - Y-Value component'"
+Space|SpaceGraphEditor.dopesheet -> dopesheet: pointer, "'(read-only) Settings for filtering animation data'"
+Space|SpaceGraphEditor.has_ghost_curves -> has_ghost_curves: boolean "'Graph Editor instance has some ghost curves stored'"
+Space|SpaceGraphEditor.mode -> mode: enum "'Editing context being displayed'"
+Space|SpaceGraphEditor.only_selected_curves_handles -> use_only_selected_curves_handles: boolean "'Only keyframes of selected F-Curves are visible and editable'"
+Space|SpaceGraphEditor.only_selected_keyframe_handles -> use_only_selected_keyframe_handles: boolean "'Only show and edit handles of selected keyframes'"
+Space|SpaceGraphEditor.pivot_point -> pivot_point: enum "'Pivot center for rotation/scaling'"
+Space|SpaceGraphEditor.realtime_updates -> use_realtime_updates: boolean "'When transforming keyframes, changes to the animation data are flushed to other views'"
+Space|SpaceGraphEditor.show_cframe_indicator -> show_frame_indicator: boolean "'Show frame number beside the current frame indicator line'"
+Space|SpaceGraphEditor.show_cursor -> show_cursor: boolean "'Show 2D cursor'"
+Space|SpaceGraphEditor.show_handles -> show_handles: boolean "'Show handles of Bezier control points'"
+Space|SpaceGraphEditor.show_seconds -> show_seconds: boolean, "'(read-only) Show timing in seconds not frames'"
+Space|SpaceGraphEditor.show_sliders -> show_sliders: boolean "'Show sliders beside F-Curve channels'"
+Space|SpaceImageEditor.curves -> curves: pointer, "'(read-only) Color curve mapping to use for displaying the image'"
+Space|SpaceImageEditor.draw_channels -> draw_channels: enum "'Channels of the image to draw'"
+Space|SpaceImageEditor.draw_repeated -> show_repeated: boolean "'Draw the image repeated outside of the main view'"
+Space|SpaceImageEditor.grease_pencil -> grease_pencil: pointer "'Grease pencil data for this space'"
+Space|SpaceImageEditor.image -> image: pointer "'Image displayed and edited in this space'"
+Space|SpaceImageEditor.image_painting -> use_image_paint: boolean "'Enable image painting mode'"
+Space|SpaceImageEditor.image_pin -> use_image_pin: boolean "'Display current image regardless of object selection'"
+Space|SpaceImageEditor.image_user -> image_user: pointer, "'(read-only) Parameters defining which layer, pass and frame of the image is displayed'"
+Space|SpaceImageEditor.sample_histogram -> sample_histogram: pointer, "'(read-only) Sampled colors along line'"
+Space|SpaceImageEditor.scopes -> scopes: pointer, "'(read-only) Scopes to visualize image statistics.'"
+Space|SpaceImageEditor.show_paint -> show_paint: boolean, "'(read-only) Show paint related properties'"
+Space|SpaceImageEditor.show_render -> show_render: boolean, "'(read-only) Show render related properties'"
+Space|SpaceImageEditor.show_uvedit -> show_uvedit: boolean, "'(read-only) Show UV editing related properties'"
+Space|SpaceImageEditor.update_automatically -> use_realtime_updates: boolean "'Update other affected window spaces automatically to reflect changes during interactive operations such as transform'"
+Space|SpaceImageEditor.use_grease_pencil -> use_grease_pencil: boolean "'Display and edit the grease pencil freehand annotations overlay'"
+Space|SpaceImageEditor.uv_editor -> uv_editor: pointer, "'(read-only) UV editor settings'"
+Space|SpaceLogicEditor.actuators_show_active_objects -> show_actuators_active_objects: boolean "'Show actuators of active object'"
+Space|SpaceLogicEditor.actuators_show_active_states -> show_actuators_active_states: boolean "'Show only actuators connected to active states'"
+Space|SpaceLogicEditor.actuators_show_linked_controller -> show_actuators_linked_controller: boolean "'Show linked objects to the actuator'"
+Space|SpaceLogicEditor.actuators_show_selected_objects -> show_actuators_selected_objects: boolean "'Show actuators of all selected objects'"
+Space|SpaceLogicEditor.controllers_show_active_objects -> show_controllers_active_objects: boolean "'Show controllers of active object'"
+Space|SpaceLogicEditor.controllers_show_linked_controller -> show_controllers_linked_controller: boolean "'Show linked objects to sensor/actuator'"
+Space|SpaceLogicEditor.controllers_show_selected_objects -> show_controllers_selected_objects: boolean "'Show controllers of all selected objects'"
+Space|SpaceLogicEditor.sensors_show_active_objects -> show_sensors_active_objects: boolean "'Show sensors of active object'"
+Space|SpaceLogicEditor.sensors_show_active_states -> show_sensors_active_states: boolean "'Show only sensors connected to active states'"
+Space|SpaceLogicEditor.sensors_show_linked_controller -> show_sensors_linked_controller: boolean "'Show linked objects to the controller'"
+Space|SpaceLogicEditor.sensors_show_selected_objects -> show_sensors_selected_objects: boolean "'Show sensors of all selected objects'"
+Space|SpaceNLA.autosnap -> autosnap: enum "'Automatic time snapping settings for transformations'"
+Space|SpaceNLA.dopesheet -> dopesheet: pointer, "'(read-only) Settings for filtering animation data'"
+Space|SpaceNLA.realtime_updates -> use_realtime_updates: boolean "'When transforming strips, changes to the animation data are flushed to other views'"
+Space|SpaceNLA.show_cframe_indicator -> show_frame_indicator: boolean "'Show frame number beside the current frame indicator line'"
+Space|SpaceNLA.show_seconds -> show_seconds: boolean, "'(read-only) Show timing in seconds not frames'"
+Space|SpaceNLA.show_strip_curves -> show_strip_curves: boolean "'Show influence curves on strips'"
+Space|SpaceNodeEditor.backdrop -> show_backdrop: boolean "'Use active Viewer Node output as backdrop for compositing nodes'"
+Space|SpaceNodeEditor.id -> id: pointer, "'(read-only) Datablock whose nodes are being edited'"
+Space|SpaceNodeEditor.id_from -> id_from: pointer, "'(read-only) Datablock from which the edited datablock is linked'"
+Space|SpaceNodeEditor.nodetree -> nodetree: pointer, "'(read-only) Node tree being displayed and edited'"
+Space|SpaceNodeEditor.texture_type -> texture_type: enum "'Type of data to take texture from'"
+Space|SpaceNodeEditor.tree_type -> tree_type: enum "'Node tree type to display and edit'"
+Space|SpaceOutliner.display_filter -> display_filter: string "'Live search filtering string'"
+Space|SpaceOutliner.display_mode -> display_mode: enum "'Type of information to display'"
+Space|SpaceOutliner.match_case_sensitive -> use_match_case_sensitive: boolean "'Only use case sensitive matches of search string'"
+Space|SpaceOutliner.match_complete -> use_match_complete: boolean "'Only use complete matches of search string'"
+Space|SpaceOutliner.show_restriction_columns -> show_restriction_columns: boolean "'Show column'"
+Space|SpaceProperties.align -> align: enum "'Arrangement of the panels'"
+Space|SpaceProperties.brush_texture -> show_brush_texture: boolean "'Show brush textures'"
+Space|SpaceProperties.context -> context: enum "'Type of active data to display and edit'"
+Space|SpaceProperties.pin_id -> pin_id: pointer "'NO DESCRIPTION'"
+Space|SpaceProperties.use_pin_id -> use_pin_id: boolean "'Use the pinned context'"
+Space|SpaceSequenceEditor.display_channel -> display_channel: int "'The channel number shown in the image preview. 0 is the result of all strips combined'"
+Space|SpaceSequenceEditor.display_mode -> display_mode: enum "'The view mode to use for displaying sequencer output'"
+Space|SpaceSequenceEditor.draw_frames -> show_frames: boolean "'Draw frames rather than seconds'"
+Space|SpaceSequenceEditor.draw_overexposed -> draw_overexposed: int "'Show overexposed areas with zebra stripes'"
+Space|SpaceSequenceEditor.draw_safe_margin -> show_safe_margin: boolean "'Draw title safe margins in preview'"
+Space|SpaceSequenceEditor.grease_pencil -> grease_pencil: pointer, "'(read-only) Grease pencil data for this space'"
+Space|SpaceSequenceEditor.offset_x -> offset_x: float "'Offsets image horizontally from the view center'"
+Space|SpaceSequenceEditor.offset_y -> offset_y: float "'Offsets image horizontally from the view center'"
+Space|SpaceSequenceEditor.proxy_render_size -> proxy_render_size: enum "'Draw preview using full resolution or different proxy resolutions'"
+Space|SpaceSequenceEditor.separate_color_preview -> show_separate_color: boolean "'Separate color channels in preview'"
+Space|SpaceSequenceEditor.show_cframe_indicator -> show_frame_indicator: boolean "'Show frame number beside the current frame indicator line'"
+Space|SpaceSequenceEditor.use_grease_pencil -> use_grease_pencil: boolean "'Display and edit the grease pencil freehand annotations overlay'"
+Space|SpaceSequenceEditor.use_marker_sync -> use_marker_sync: boolean "'Transform markers as well as strips'"
+Space|SpaceSequenceEditor.view_type -> view_type: enum "'The type of the Sequencer view (sequencer, preview or both)'"
+Space|SpaceSequenceEditor.zoom -> zoom: float "'Display zoom level'"
+Space|SpaceTextEditor.find_all -> use_find_all: boolean "'Search in all text datablocks, instead of only the active one'"
+Space|SpaceTextEditor.find_text -> find_text: string "'Text to search for with the find tool'"
+Space|SpaceTextEditor.find_wrap -> use_find_wrap: boolean "'Search again from the start of the file when reaching the end'"
+Space|SpaceTextEditor.font_size -> font_size: int "'Font size to use for displaying the text'"
+Space|SpaceTextEditor.line_numbers -> show_line_numbers: boolean "'Show line numbers next to the text'"
+Space|SpaceTextEditor.live_edit -> use_live_edit: boolean "'Run python while editing'"
+Space|SpaceTextEditor.overwrite -> use_overwrite: boolean "'Overwrite characters when typing rather than inserting them'"
+Space|SpaceTextEditor.replace_text -> replace_text: string "'Text to replace selected text with using the replace tool'"
+Space|SpaceTextEditor.syntax_highlight -> show_syntax_highlight: boolean "'Syntax highlight for scripting'"
+Space|SpaceTextEditor.tab_width -> tab_width: int "'Number of spaces to display tabs with'"
+Space|SpaceTextEditor.text -> text: pointer "'Text displayed and edited in this space'"
+Space|SpaceTextEditor.word_wrap -> use_word_wrap: boolean "'Wrap words if there is not enough horizontal space'"
+Space|SpaceTimeline.cache_cloth -> cache_cloth: boolean '"Show the active object\'s cloth point cache"'
+Space|SpaceTimeline.cache_particles -> cache_particles: boolean '"Show the active object\'s particle point cache"'
+Space|SpaceTimeline.cache_smoke -> cache_smoke: boolean '"Show the active object\'s smoke cache"'
+Space|SpaceTimeline.cache_softbody -> cache_softbody: boolean '"Show the active object\'s softbody point cache"'
+Space|SpaceTimeline.only_selected -> show_only_selected: boolean "'Show keyframes for active Object and/or its selected channels only'"
+Space|SpaceTimeline.play_all_3d -> use_play_3d_editors: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.play_anim -> use_play_animation_editors: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.play_buttons -> use_play_properties_editors: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.play_image -> use_play_image_editors: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.play_nodes -> use_play_node_editors: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.play_sequencer -> use_play_sequence_editors: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.play_top_left -> use_play_top_left_3d_editor: boolean "'NO DESCRIPTION'"
+Space|SpaceTimeline.show_cache -> show_cache: boolean "'Show the status of cached frames in the timeline'"
+Space|SpaceTimeline.show_cframe_indicator -> show_frame_indicator: boolean "'Show frame number beside the current frame indicator line'"
+Space|SpaceUserPreferences.filter -> filter: string "'Search term for filtering in the UI'"
+Space|SpaceView3D.all_object_origins -> show_all_objects_origin: boolean "'Show the object origin center dot for all (selected and unselected) objects'"
+Space|SpaceView3D.background_images -> background_images: collection, "'(read-only) List of background images'"
+Space|SpaceView3D.camera -> camera: pointer '"Active camera used in this view (when unlocked from the scene\'s active camera)"'
+Space|SpaceView3D.clip_end -> clip_end: float "'3D View far clipping distance'"
+Space|SpaceView3D.clip_start -> clip_start: float "'3D View near clipping distance'"
+Space|SpaceView3D.current_orientation -> current_orientation: pointer, "'(read-only) Current Transformation orientation'"
+Space|SpaceView3D.cursor_location -> cursor_location: float "'3D cursor location for this view (dependent on local view setting)'"
+Space|SpaceView3D.display_background_images -> show_background_images: boolean "'Display reference images behind objects in the 3D View'"
+Space|SpaceView3D.display_floor -> show_floor: boolean "'Show the ground plane grid in perspective view'"
+Space|SpaceView3D.display_render_override -> show_only_render: boolean "'Display only objects which will be rendered'"
+Space|SpaceView3D.display_x_axis -> show_axis_x: boolean "'Show the X axis line in perspective view'"
+Space|SpaceView3D.display_y_axis -> show_axis_y: boolean "'Show the Y axis line in perspective view'"
+Space|SpaceView3D.display_z_axis -> show_axis_z: boolean "'Show the Z axis line in perspective view'"
+Space|SpaceView3D.grid_lines -> grid_lines: int "'The number of grid lines to display in perspective view'"
+Space|SpaceView3D.grid_spacing -> grid_spacing: float "'The distance between 3D View grid lines'"
+Space|SpaceView3D.grid_subdivisions -> grid_subdivisions: int "'The number of subdivisions between grid lines'"
+Space|SpaceView3D.layers -> layers: boolean "'Layers visible in this 3D View'"
+Space|SpaceView3D.lens -> lens: float "'Lens angle (mm) in perspective view'"
+Space|SpaceView3D.local_view -> local_view: pointer, "'(read-only) Display an isolated sub-set of objects, apart from the scene visibility'"
+Space|SpaceView3D.lock_bone -> lock_bone: string '"3D View center is locked to this bone\'s position"'
+Space|SpaceView3D.lock_camera_and_layers -> lock_camera_and_layers: boolean '"Use the scene\'s active camera and layers in this view, rather than local layers"'
+Space|SpaceView3D.lock_object -> lock_object: pointer '"3D View center is locked to this object\'s position"'
+Space|SpaceView3D.manipulator -> use_manipulator: boolean "'Use a 3D manipulator widget for controlling transforms'"
+Space|SpaceView3D.manipulator_rotate -> use_manipulator_rotate: boolean "'Use the manipulator for rotation transformations'"
+Space|SpaceView3D.manipulator_scale -> use_manipulator_scale: boolean "'Use the manipulator for scale transformations'"
+Space|SpaceView3D.manipulator_translate -> use_manipulator_translate: boolean "'Use the manipulator for movement transformations'"
+Space|SpaceView3D.occlude_geometry -> use_occlude_geometry: boolean "'Limit selection to visible (clipped with depth buffer)'"
+Space|SpaceView3D.outline_selected -> show_outline_selected: boolean "'Show an outline highlight around selected objects in non-wireframe views'"
+Space|SpaceView3D.pivot_point -> pivot_point: enum "'Pivot center for rotation/scaling'"
+Space|SpaceView3D.pivot_point_align -> use_pivot_point_align: boolean "'Manipulate object centers only'"
+Space|SpaceView3D.region_3d -> region_3d: pointer, "'(read-only) 3D region in this space, in case of quad view the camera region'"
+Space|SpaceView3D.region_quadview -> region_quadview: pointer, "'(read-only) 3D region that defines the quad view settings'"
+Space|SpaceView3D.relationship_lines -> show_relationship_lines: boolean "'Show dashed lines indicating parent or constraint relationships'"
+Space|SpaceView3D.textured_solid -> show_textured_solid: boolean "'Display face-assigned textures in solid view'"
+Space|SpaceView3D.transform_orientation -> transform_orientation: enum "'Transformation orientation'"
+Space|SpaceView3D.used_layers -> layers_used: boolean, "'(read-only) Layers that contain something'"
+Space|SpaceView3D.viewport_shading -> viewport_shade: enum "'Method to display/shade objects in the 3D View'"
+Spline.bezier_points -> bezier_points: collection, "'(read-only) Collection of points for bezier curves only'"
+Spline.bezier_u -> use_bezier_u: boolean "'Make this nurbs curve or surface act like a bezier spline in the U direction (Order U must be 3 or 4, Cyclic U must be disabled)'"
+Spline.bezier_v -> use_bezier_v: boolean "'Make this nurbs surface act like a bezier spline in the V direction (Order V must be 3 or 4, Cyclic V must be disabled)'"
+Spline.character_index -> character_index: int, "'(read-only) Location of this character in the text data (only for text curves)'"
+Spline.cyclic_u -> use_cyclic_u: boolean "'Make this curve or surface a closed loop in the U direction'"
+Spline.cyclic_v -> use_cyclic_v: boolean "'Make this surface a closed loop in the V direction'"
+Spline.endpoint_u -> use_endpoint_u: boolean "'Make this nurbs curve or surface meet the endpoints in the U direction (Cyclic U must be disabled)'"
+Spline.endpoint_v -> use_endpoint_v: boolean "'Make this nurbs surface meet the endpoints in the V direction (Cyclic V must be disabled)'"
+Spline.hide -> hide: boolean "'Hide this curve in editmode'"
+Spline.material_index -> material_index: int "'NO DESCRIPTION'"
+Spline.order_u -> order_u: int "'Nurbs order in the U direction (For splines and surfaces), Higher values let points influence a greater area'"
+Spline.order_v -> order_v: int "'Nurbs order in the V direction (For surfaces only), Higher values let points influence a greater area'"
+Spline.point_count_u -> point_count_u: int, "'(read-only) Total number points for the curve or surface in the U direction'"
+Spline.point_count_v -> point_count_v: int, "'(read-only) Total number points for the surface on the V direction'"
+Spline.points -> points: collection, "'(read-only) Collection of points that make up this poly or nurbs spline'"
+Spline.radius_interpolation -> radius_interpolation: enum "'The type of radius interpolation for Bezier curves'"
+Spline.resolution_u -> resolution_u: int "'Curve or Surface subdivisions per segment'"
+Spline.resolution_v -> resolution_v: int "'Surface subdivisions per segment'"
+Spline.smooth -> use_smooth: boolean "'Smooth the normals of the surface or beveled curve'"
+Spline.tilt_interpolation -> tilt_interpolation: enum "'The type of tilt interpolation for 3D, Bezier curves'"
+Spline.type -> type: enum "'The interpolation type for this curve element'"
+SplinePoint.co -> co: float "'Point coordinates'"
+SplinePoint.hide -> hide: boolean "'Visibility status'"
+SplinePoint.radius -> radius: float, "'(read-only) Radius for bevelling'"
+SplinePoint.select -> select: boolean "'Selection status'"
+SplinePoint.tilt -> tilt: float "'Tilt in 3D View'"
+SplinePoint.weight -> weight: float "'Nurbs weight'"
+SplinePoint.weight_softbody -> weight_softbody: float "'Softbody goal weight'"
+Struct.base -> base: pointer, "'(read-only) Struct definition this is derived from'"
+Struct.description -> description: string, '"(read-only) Description of the Struct\'s purpose"'
+Struct.functions -> functions: collection, "'(read-only)'"
+Struct.identifier -> identifier: string, "'(read-only) Unique name used in the code and scripting'"
+Struct.name -> name: string, "'(read-only) Human readable name'"
+Struct.name_property -> name_property: pointer, "'(read-only) Property that gives the name of the struct'"
+Struct.nested -> nested: pointer, "'(read-only) Struct in which this struct is always nested, and to which it logically belongs'"
+Struct.properties -> properties: collection, "'(read-only) Properties in the struct'"
+TexMapping.has_maximum -> use_max: boolean "'Whether to use maximum clipping value'"
+TexMapping.has_minimum -> use_min: boolean "'Whether to use minimum clipping value'"
+TexMapping.location -> location: float "'NO DESCRIPTION'"
+TexMapping.maximum -> max: float "'Maximum value for clipping'"
+TexMapping.minimum -> min: float "'Minimum value for clipping'"
+TexMapping.rotation -> rotation: float "'NO DESCRIPTION'"
+TexMapping.scale -> scale: float "'NO DESCRIPTION'"
+TextBox.height -> height: float "'NO DESCRIPTION'"
+TextBox.width -> width: float "'NO DESCRIPTION'"
+TextBox.x -> x: float "'NO DESCRIPTION'"
+TextBox.y -> y: float "'NO DESCRIPTION'"
+TextCharacterFormat.bold -> use_bold: boolean "'NO DESCRIPTION'"
+TextCharacterFormat.italic -> use_italic: boolean "'NO DESCRIPTION'"
+TextCharacterFormat.underline -> use_underline: boolean "'NO DESCRIPTION'"
+TextCharacterFormat.use_small_caps -> use_small_caps: boolean "'NO DESCRIPTION'"
+TextLine.line -> line: string "'Text in the line'"
+TextMarker.color -> color: float "'Color to display the marker with'"
+TextMarker.edit_all -> use_edit_all: boolean, "'(read-only) Edit all markers of the same group as one'"
+TextMarker.end -> end: int, "'(read-only) Start position of the marker in the line'"
+TextMarker.group -> group: int, "'(read-only)'"
+TextMarker.line -> line: int, "'(read-only) Line in which the marker is located'"
+TextMarker.start -> start: int, "'(read-only) Start position of the marker in the line'"
+TextMarker.temporary -> is_temporary: boolean, "'(read-only) Marker is temporary'"
+TextureSlot.blend_type -> blend_type: enum "'NO DESCRIPTION'"
+TextureSlot.color -> color: float '"The default color for textures that don\'t return RGB"'
+TextureSlot.default_value -> default_value: float "'Value to use for Ref, Spec, Amb, Emit, Alpha, RayMir, TransLu and Hard'"
+TextureSlot.name -> name: string, "'(read-only) Texture slot name'"
+TextureSlot.negate -> invert: boolean "'Inverts the values of the texture to reverse its effect'"
+TextureSlot.offset -> offset: float "'Fine tunes texture mapping X, Y and Z locations'"
+TextureSlot.output_node -> output_node: enum "'Which output node to use, for node-based textures'"
+TextureSlot.rgb_to_intensity -> use_rgb_to_intensity: boolean "'Converts texture RGB values to intensity (gray) values'"
+TextureSlot.size -> size: float '"Sets scaling for the texture\'s X, Y and Z sizes"'
+TextureSlot.stencil -> use_stencil: boolean "'Use this texture as a blending value on the next texture'"
+TextureSlot.texture -> texture: pointer "'Texture datablock used by this texture slot'"
++ * TextureSlot|BrushTextureSlot.angle -> angle: float "'Defines brush texture rotation'"
++ * TextureSlot|BrushTextureSlot.map_mode -> map_mode: enum "'NO DESCRIPTION'"
+TextureSlot|LampTextureSlot.color_factor -> color_factor: float "'Amount texture affects color values'"
+TextureSlot|LampTextureSlot.map_color -> use_map_color: boolean "'Lets the texture affect the basic color of the lamp'"
+TextureSlot|LampTextureSlot.map_shadow -> use_map_shadow: boolean "'Lets the texture affect the shadow color of the lamp'"
+TextureSlot|LampTextureSlot.object -> object: pointer "'Object to use for mapping with Object texture coordinates'"
+TextureSlot|LampTextureSlot.shadow_factor -> shadow_factor: float "'Amount texture affects shadow'"
+TextureSlot|LampTextureSlot.texture_coordinates -> texture_coordinates: enum "'NO DESCRIPTION'"
+TextureSlot|MaterialTextureSlot.alpha_factor -> alpha_factor: float "'Amount texture affects alpha'"
+TextureSlot|MaterialTextureSlot.ambient_factor -> ambient_factor: float "'Amount texture affects ambient'"
+TextureSlot|MaterialTextureSlot.colordiff_factor -> colordiff_factor: float "'Amount texture affects diffuse color'"
+TextureSlot|MaterialTextureSlot.coloremission_factor -> coloremission_factor: float "'Amount texture affects emission color'"
+TextureSlot|MaterialTextureSlot.colorreflection_factor -> colorreflection_factor: float "'Amount texture affects color of out-scattered light'"
+TextureSlot|MaterialTextureSlot.colorspec_factor -> colorspec_factor: float "'Amount texture affects specular color'"
+TextureSlot|MaterialTextureSlot.colortransmission_factor -> colortransmission_factor: float "'Amount texture affects result color after light has been scattered/absorbed'"
+TextureSlot|MaterialTextureSlot.density_factor -> density_factor: float "'Amount texture affects density'"
+TextureSlot|MaterialTextureSlot.diffuse_factor -> diffuse_factor: float "'Amount texture affects diffuse reflectivity'"
+TextureSlot|MaterialTextureSlot.displacement_factor -> displacement_factor: float "'Amount texture displaces the surface'"
+TextureSlot|MaterialTextureSlot.emission_factor -> emission_factor: float "'Amount texture affects emission'"
+TextureSlot|MaterialTextureSlot.emit_factor -> emit_factor: float "'Amount texture affects emission'"
+TextureSlot|MaterialTextureSlot.enabled -> use: boolean "'Enable this material texture slot'"
+TextureSlot|MaterialTextureSlot.from_dupli -> use_from_dupli: boolean '"Dupli\'s instanced from verts, faces or particles, inherit texture coordinate from their parent"'
+TextureSlot|MaterialTextureSlot.from_original -> use_from_original: boolean '"Dupli\'s derive their object coordinates from the original objects transformation"'
+TextureSlot|MaterialTextureSlot.hardness_factor -> hard_factor: float "'Amount texture affects hardness'"
+TextureSlot|MaterialTextureSlot.map_alpha -> use_map_alpha: boolean "'Causes the texture to affect the alpha value'"
+TextureSlot|MaterialTextureSlot.map_ambient -> use_map_ambient: boolean "'Causes the texture to affect the value of ambient'"
+TextureSlot|MaterialTextureSlot.map_colordiff -> use_map_colordiff: boolean "'Causes the texture to affect basic color of the material'"
+TextureSlot|MaterialTextureSlot.map_coloremission -> use_map_coloremission: boolean "'Causes the texture to affect the color of emission'"
+TextureSlot|MaterialTextureSlot.map_colorreflection -> use_map_colorreflection: boolean "'Causes the texture to affect the color of scattered light'"
+TextureSlot|MaterialTextureSlot.map_colorspec -> use_map_colorspec: boolean "'Causes the texture to affect the specularity color'"
+TextureSlot|MaterialTextureSlot.map_colortransmission -> use_map_colortransmission: boolean "'Causes the texture to affect the result color after other light has been scattered/absorbed'"
+TextureSlot|MaterialTextureSlot.map_density -> use_map_density: boolean '"Causes the texture to affect the volume\'s density"'
+TextureSlot|MaterialTextureSlot.map_diffuse -> use_map_diffuse: boolean "'Causes the texture to affect the value of the materials diffuse reflectivity'"
+TextureSlot|MaterialTextureSlot.map_displacement -> use_map_displacement: boolean "'Let the texture displace the surface'"
+TextureSlot|MaterialTextureSlot.map_emission -> use_map_emission: boolean '"Causes the texture to affect the volume\'s emission"'
+TextureSlot|MaterialTextureSlot.map_emit -> use_map_emit: boolean "'Causes the texture to affect the emit value'"
+TextureSlot|MaterialTextureSlot.map_hardness -> use_map_hardness: boolean "'Causes the texture to affect the hardness value'"
+TextureSlot|MaterialTextureSlot.map_mirror -> use_map_mirror: boolean "'Causes the texture to affect the mirror color'"
+TextureSlot|MaterialTextureSlot.map_normal -> use_map_normal: boolean "'Causes the texture to affect the rendered normal'"
+TextureSlot|MaterialTextureSlot.map_raymir -> use_map_raymir: boolean "'Causes the texture to affect the ray-mirror value'"
+TextureSlot|MaterialTextureSlot.map_reflection -> use_map_reflect: boolean '"Causes the texture to affect the reflected light\'s brightness"'
+TextureSlot|MaterialTextureSlot.map_scattering -> use_map_scatter: boolean '"Causes the texture to affect the volume\'s scattering"'
+TextureSlot|MaterialTextureSlot.map_specular -> use_map_specular: boolean "'Causes the texture to affect the value of specular reflectivity'"
+TextureSlot|MaterialTextureSlot.map_translucency -> use_map_translucency: boolean "'Causes the texture to affect the translucency value'"
+TextureSlot|MaterialTextureSlot.map_warp -> use_map_warp: boolean "'Let the texture warp texture coordinates of next channels'"
+TextureSlot|MaterialTextureSlot.mapping -> mapping: enum "'NO DESCRIPTION'"
+TextureSlot|MaterialTextureSlot.mirror_factor -> mirror_factor: float "'Amount texture affects mirror color'"
+TextureSlot|MaterialTextureSlot.new_bump -> use_new_bump: boolean "'Use new, corrected bump mapping code (backwards compatibility option)'"
+TextureSlot|MaterialTextureSlot.normal_factor -> normal_factor: float "'Amount texture affects normal values'"
+TextureSlot|MaterialTextureSlot.normal_map_space -> normal_map_space: enum "'NO DESCRIPTION'"
+TextureSlot|MaterialTextureSlot.object -> object: pointer "'Object to use for mapping with Object texture coordinates'"
+TextureSlot|MaterialTextureSlot.raymir_factor -> raymir_factor: float "'Amount texture affects ray mirror'"
+TextureSlot|MaterialTextureSlot.reflection_factor -> reflection_factor: float "'Amount texture affects brightness of out-scattered light'"
+TextureSlot|MaterialTextureSlot.scattering_factor -> scattering_factor: float "'Amount texture affects scattering'"
+TextureSlot|MaterialTextureSlot.specular_factor -> specular_factor: float "'Amount texture affects specular reflectivity'"
+TextureSlot|MaterialTextureSlot.texture_coordinates -> texture_coordinates: enum "'NO DESCRIPTION'"
+TextureSlot|MaterialTextureSlot.translucency_factor -> translucency_factor: float "'Amount texture affects translucency'"
+TextureSlot|MaterialTextureSlot.uv_layer -> uv_layer: string "'UV layer to use for mapping with UV texture coordinates'"
+TextureSlot|MaterialTextureSlot.warp_factor -> warp_factor: float "'Amount texture affects texture coordinates of next channels'"
+TextureSlot|MaterialTextureSlot.x_mapping -> x_mapping: enum "'NO DESCRIPTION'"
+TextureSlot|MaterialTextureSlot.y_mapping -> y_mapping: enum "'NO DESCRIPTION'"
+TextureSlot|MaterialTextureSlot.z_mapping -> z_mapping: enum "'NO DESCRIPTION'"
+TextureSlot|WorldTextureSlot.blend_factor -> blend_factor: float "'Amount texture affects color progression of the background'"
+TextureSlot|WorldTextureSlot.horizon_factor -> horizon_factor: float "'Amount texture affects color of the horizon'"
+TextureSlot|WorldTextureSlot.map_blend -> use_map_blend: boolean "'Affect the color progression of the background'"
+TextureSlot|WorldTextureSlot.map_horizon -> use_map_horizon: boolean "'Affect the color of the horizon'"
+TextureSlot|WorldTextureSlot.map_zenith_down -> use_map_zenith_down: boolean "'Affect the color of the zenith below'"
+TextureSlot|WorldTextureSlot.map_zenith_up -> use_map_zenith_up: boolean "'Affect the color of the zenith above'"
+TextureSlot|WorldTextureSlot.object -> object: pointer "'Object to use for mapping with Object texture coordinates'"
+TextureSlot|WorldTextureSlot.texture_coordinates -> texture_coordinates: enum "'Texture coordinates used to map the texture onto the background'"
+TextureSlot|WorldTextureSlot.zenith_down_factor -> zenith_down_factor: float "'Amount texture affects color of the zenith below'"
+TextureSlot|WorldTextureSlot.zenith_up_factor -> zenith_up_factor: float "'Amount texture affects color of the zenith above'"
+Theme.bone_color_sets -> bone_color_sets: collection, "'(read-only)'"
+Theme.console -> console: pointer, "'(read-only)'"
+Theme.dopesheet_editor -> dopesheet_editor: pointer, "'(read-only)'"
+Theme.file_browser -> file_browser: pointer, "'(read-only)'"
+Theme.graph_editor -> graph_editor: pointer, "'(read-only)'"
+Theme.image_editor -> image_editor: pointer, "'(read-only)'"
+Theme.info -> info: pointer, "'(read-only)'"
+Theme.logic_editor -> logic_editor: pointer, "'(read-only)'"
+Theme.name -> name: string "'Name of the theme'"
+Theme.nla_editor -> nla_editor: pointer, "'(read-only)'"
+Theme.node_editor -> node_editor: pointer, "'(read-only)'"
+Theme.outliner -> outliner: pointer, "'(read-only)'"
+Theme.properties -> properties: pointer, "'(read-only)'"
+Theme.sequence_editor -> sequence_editor: pointer, "'(read-only)'"
+Theme.text_editor -> text_editor: pointer, "'(read-only)'"
+Theme.theme_area -> theme_area: enum "'NO DESCRIPTION'"
+Theme.timeline -> timeline: pointer, "'(read-only)'"
+Theme.user_interface -> user_interface: pointer, "'(read-only)'"
+Theme.user_preferences -> user_preferences: pointer, "'(read-only)'"
+Theme.view_3d -> view_3d: pointer, "'(read-only)'"
+ThemeAudioWindow.back -> back: float "'NO DESCRIPTION'"
+ThemeAudioWindow.button -> button: float "'NO DESCRIPTION'"
+ThemeAudioWindow.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeAudioWindow.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeAudioWindow.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeAudioWindow.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeAudioWindow.grid -> grid: float "'NO DESCRIPTION'"
+ThemeAudioWindow.header -> header: float "'NO DESCRIPTION'"
+ThemeAudioWindow.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeAudioWindow.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeAudioWindow.text -> text: float "'NO DESCRIPTION'"
+ThemeAudioWindow.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeAudioWindow.title -> title: float "'NO DESCRIPTION'"
+ThemeAudioWindow.window_sliders -> window_sliders: float "'NO DESCRIPTION'"
+ThemeBoneColorSet.active -> active: float "'Color used for active bones'"
+ThemeBoneColorSet.colored_constraints -> show_colored_constraints: boolean "'Allow the use of colors indicating constraints/keyed status'"
+ThemeBoneColorSet.normal -> normal: float "'Color used for the surface of bones'"
+ThemeBoneColorSet.select -> select: float "'Color used for selected bones'"
+ThemeConsole.back -> back: float "'NO DESCRIPTION'"
+ThemeConsole.button -> button: float "'NO DESCRIPTION'"
+ThemeConsole.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeConsole.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeConsole.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeConsole.cursor -> cursor: float "'NO DESCRIPTION'"
+ThemeConsole.header -> header: float "'NO DESCRIPTION'"
+ThemeConsole.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeConsole.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeConsole.line_error -> line_error: float "'NO DESCRIPTION'"
+ThemeConsole.line_info -> line_info: float "'NO DESCRIPTION'"
+ThemeConsole.line_input -> line_input: float "'NO DESCRIPTION'"
+ThemeConsole.line_output -> line_output: float "'NO DESCRIPTION'"
+ThemeConsole.text -> text: float "'NO DESCRIPTION'"
+ThemeConsole.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeConsole.title -> title: float "'NO DESCRIPTION'"
+ThemeDopeSheet.active_channels_group -> active_channels_group: float "'NO DESCRIPTION'"
+ThemeDopeSheet.back -> back: float "'NO DESCRIPTION'"
+ThemeDopeSheet.button -> button: float "'NO DESCRIPTION'"
+ThemeDopeSheet.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeDopeSheet.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeDopeSheet.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeDopeSheet.channel_group -> channel_group: float "'NO DESCRIPTION'"
+ThemeDopeSheet.channels -> channels: float "'NO DESCRIPTION'"
+ThemeDopeSheet.channels_selected -> channels_selected: float "'NO DESCRIPTION'"
+ThemeDopeSheet.dopesheet_channel -> dopesheet_channel: float "'NO DESCRIPTION'"
+ThemeDopeSheet.dopesheet_subchannel -> dopesheet_subchannel: float "'NO DESCRIPTION'"
+ThemeDopeSheet.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeDopeSheet.grid -> grid: float "'NO DESCRIPTION'"
+ThemeDopeSheet.header -> header: float "'NO DESCRIPTION'"
+ThemeDopeSheet.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeDopeSheet.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeDopeSheet.list -> list: float "'NO DESCRIPTION'"
+ThemeDopeSheet.list_text -> list_text: float "'NO DESCRIPTION'"
+ThemeDopeSheet.list_text_hi -> list_text_hi: float "'NO DESCRIPTION'"
+ThemeDopeSheet.list_title -> list_title: float "'NO DESCRIPTION'"
+ThemeDopeSheet.long_key -> long_key: float "'NO DESCRIPTION'"
+ThemeDopeSheet.long_key_selected -> long_key_selected: float "'NO DESCRIPTION'"
+ThemeDopeSheet.text -> text: float "'NO DESCRIPTION'"
+ThemeDopeSheet.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeDopeSheet.title -> title: float "'NO DESCRIPTION'"
+ThemeDopeSheet.value_sliders -> value_sliders: float "'NO DESCRIPTION'"
+ThemeDopeSheet.view_sliders -> view_sliders: float "'NO DESCRIPTION'"
+ThemeFileBrowser.active_file -> active_file: float "'NO DESCRIPTION'"
+ThemeFileBrowser.active_file_text -> active_file_text: float "'NO DESCRIPTION'"
+ThemeFileBrowser.back -> back: float "'NO DESCRIPTION'"
+ThemeFileBrowser.button -> button: float "'NO DESCRIPTION'"
+ThemeFileBrowser.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeFileBrowser.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeFileBrowser.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeFileBrowser.header -> header: float "'NO DESCRIPTION'"
+ThemeFileBrowser.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeFileBrowser.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeFileBrowser.list -> list: float "'NO DESCRIPTION'"
+ThemeFileBrowser.list_text -> list_text: float "'NO DESCRIPTION'"
+ThemeFileBrowser.list_text_hi -> list_text_hi: float "'NO DESCRIPTION'"
+ThemeFileBrowser.list_title -> list_title: float "'NO DESCRIPTION'"
+ThemeFileBrowser.scroll_handle -> scroll_handle: float "'NO DESCRIPTION'"
+ThemeFileBrowser.scrollbar -> scrollbar: float "'NO DESCRIPTION'"
+ThemeFileBrowser.selected_file -> selected_file: float "'NO DESCRIPTION'"
+ThemeFileBrowser.text -> text: float "'NO DESCRIPTION'"
+ThemeFileBrowser.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeFileBrowser.tiles -> tiles: float "'NO DESCRIPTION'"
+ThemeFileBrowser.title -> title: float "'NO DESCRIPTION'"
+ThemeFontStyle.font_kerning_style -> font_kerning_style: enum "'Which style to use for font kerning'"
+ThemeFontStyle.points -> points: int "'NO DESCRIPTION'"
+ThemeFontStyle.shadow -> shadow: int "'Shadow size in pixels (0, 3 and 5 supported)'"
+ThemeFontStyle.shadowalpha -> shadowalpha: float "'NO DESCRIPTION'"
+ThemeFontStyle.shadowcolor -> shadowcolor: float "'Shadow color in grey value'"
+ThemeFontStyle.shadx -> shadow_offset_x: int "'Shadow offset in pixels'"
+ThemeFontStyle.shady -> shadow_offset_y: int "'Shadow offset in pixels'"
+ThemeGraphEditor.active_channels_group -> active_channels_group: float "'NO DESCRIPTION'"
+ThemeGraphEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeGraphEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeGraphEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeGraphEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeGraphEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeGraphEditor.channel_group -> channel_group: float "'NO DESCRIPTION'"
+ThemeGraphEditor.channels_region -> channels_region: float "'NO DESCRIPTION'"
+ThemeGraphEditor.dopesheet_channel -> dopesheet_channel: float "'NO DESCRIPTION'"
+ThemeGraphEditor.dopesheet_subchannel -> dopesheet_subchannel: float "'NO DESCRIPTION'"
+ThemeGraphEditor.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeGraphEditor.grid -> grid: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_align -> handle_align: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_auto -> handle_auto: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_free -> handle_free: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_sel_align -> handle_sel_align: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_sel_auto -> handle_sel_auto: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_sel_free -> handle_sel_free: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_sel_vect -> handle_sel_vect: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_vect -> handle_vect: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_vertex -> handle_vertex: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_vertex_select -> handle_vertex_select: float "'NO DESCRIPTION'"
+ThemeGraphEditor.handle_vertex_size -> handle_vertex_size: int "'NO DESCRIPTION'"
+ThemeGraphEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeGraphEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeGraphEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeGraphEditor.lastsel_point -> lastsel_point: float "'NO DESCRIPTION'"
+ThemeGraphEditor.list -> list: float "'NO DESCRIPTION'"
+ThemeGraphEditor.list_text -> list_text: float "'NO DESCRIPTION'"
+ThemeGraphEditor.list_text_hi -> list_text_hi: float "'NO DESCRIPTION'"
+ThemeGraphEditor.list_title -> list_title: float "'NO DESCRIPTION'"
+ThemeGraphEditor.panel -> panel: float "'NO DESCRIPTION'"
+ThemeGraphEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeGraphEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeGraphEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeGraphEditor.vertex -> vertex: float "'NO DESCRIPTION'"
+ThemeGraphEditor.vertex_select -> vertex_select: float "'NO DESCRIPTION'"
+ThemeGraphEditor.vertex_size -> vertex_size: int "'NO DESCRIPTION'"
+ThemeGraphEditor.window_sliders -> window_sliders: float "'NO DESCRIPTION'"
+ThemeImageEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeImageEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeImageEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeImageEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeImageEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeImageEditor.editmesh_active -> editmesh_active: float "'NO DESCRIPTION'"
+ThemeImageEditor.face -> face: float "'NO DESCRIPTION'"
+ThemeImageEditor.face_dot -> face_dot: float "'NO DESCRIPTION'"
+ThemeImageEditor.face_select -> face_select: float "'NO DESCRIPTION'"
+ThemeImageEditor.facedot_size -> facedot_size: int "'NO DESCRIPTION'"
+ThemeImageEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeImageEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeImageEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeImageEditor.scope_back -> scope_back: float "'NO DESCRIPTION'"
+ThemeImageEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeImageEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeImageEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeImageEditor.vertex -> vertex: float "'NO DESCRIPTION'"
+ThemeImageEditor.vertex_select -> vertex_select: float "'NO DESCRIPTION'"
+ThemeImageEditor.vertex_size -> vertex_size: int "'NO DESCRIPTION'"
+ThemeInfo.back -> back: float "'NO DESCRIPTION'"
+ThemeInfo.button -> button: float "'NO DESCRIPTION'"
+ThemeInfo.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeInfo.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeInfo.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeInfo.header -> header: float "'NO DESCRIPTION'"
+ThemeInfo.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeInfo.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeInfo.text -> text: float "'NO DESCRIPTION'"
+ThemeInfo.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeInfo.title -> title: float "'NO DESCRIPTION'"
+ThemeLogicEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeLogicEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeLogicEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeLogicEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeLogicEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeLogicEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeLogicEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeLogicEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeLogicEditor.panel -> panel: float "'NO DESCRIPTION'"
+ThemeLogicEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeLogicEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeLogicEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeNLAEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeNLAEditor.bars -> bars: float "'NO DESCRIPTION'"
+ThemeNLAEditor.bars_selected -> bars_selected: float "'NO DESCRIPTION'"
+ThemeNLAEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeNLAEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeNLAEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeNLAEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeNLAEditor.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeNLAEditor.grid -> grid: float "'NO DESCRIPTION'"
+ThemeNLAEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeNLAEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeNLAEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeNLAEditor.list -> list: float "'NO DESCRIPTION'"
+ThemeNLAEditor.list_text -> list_text: float "'NO DESCRIPTION'"
+ThemeNLAEditor.list_text_hi -> list_text_hi: float "'NO DESCRIPTION'"
+ThemeNLAEditor.list_title -> list_title: float "'NO DESCRIPTION'"
+ThemeNLAEditor.strips -> strips: float "'NO DESCRIPTION'"
+ThemeNLAEditor.strips_selected -> strips_selected: float "'NO DESCRIPTION'"
+ThemeNLAEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeNLAEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeNLAEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeNLAEditor.view_sliders -> view_sliders: float "'NO DESCRIPTION'"
+ThemeNodeEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeNodeEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeNodeEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeNodeEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeNodeEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeNodeEditor.converter_node -> converter_node: float "'NO DESCRIPTION'"
+ThemeNodeEditor.group_node -> group_node: float "'NO DESCRIPTION'"
+ThemeNodeEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeNodeEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeNodeEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeNodeEditor.in_out_node -> in_out_node: float "'NO DESCRIPTION'"
+ThemeNodeEditor.list -> list: float "'NO DESCRIPTION'"
+ThemeNodeEditor.list_text -> list_text: float "'NO DESCRIPTION'"
+ThemeNodeEditor.list_text_hi -> list_text_hi: float "'NO DESCRIPTION'"
+ThemeNodeEditor.list_title -> list_title: float "'NO DESCRIPTION'"
+ThemeNodeEditor.node_backdrop -> node_backdrop: float "'NO DESCRIPTION'"
+ThemeNodeEditor.operator_node -> operator_node: float "'NO DESCRIPTION'"
+ThemeNodeEditor.selected_text -> selected_text: float "'NO DESCRIPTION'"
+ThemeNodeEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeNodeEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeNodeEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeNodeEditor.wire_select -> wire_select: float "'NO DESCRIPTION'"
+ThemeNodeEditor.wires -> wires: float "'NO DESCRIPTION'"
+ThemeOutliner.back -> back: float "'NO DESCRIPTION'"
+ThemeOutliner.button -> button: float "'NO DESCRIPTION'"
+ThemeOutliner.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeOutliner.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeOutliner.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeOutliner.header -> header: float "'NO DESCRIPTION'"
+ThemeOutliner.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeOutliner.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeOutliner.text -> text: float "'NO DESCRIPTION'"
+ThemeOutliner.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeOutliner.title -> title: float "'NO DESCRIPTION'"
+ThemeProperties.back -> back: float "'NO DESCRIPTION'"
+ThemeProperties.button -> button: float "'NO DESCRIPTION'"
+ThemeProperties.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeProperties.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeProperties.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeProperties.header -> header: float "'NO DESCRIPTION'"
+ThemeProperties.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeProperties.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeProperties.panel -> panel: float "'NO DESCRIPTION'"
+ThemeProperties.text -> text: float "'NO DESCRIPTION'"
+ThemeProperties.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeProperties.title -> title: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.audio_strip -> audio_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.draw_action -> draw_action: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.effect_strip -> effect_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.grid -> grid: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.image_strip -> image_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.keyframe -> keyframe: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.meta_strip -> meta_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.movie_strip -> movie_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.plugin_strip -> plugin_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.scene_strip -> scene_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.transition_strip -> transition_strip: float "'NO DESCRIPTION'"
+ThemeSequenceEditor.window_sliders -> window_sliders: float "'NO DESCRIPTION'"
+ThemeStyle.grouplabel -> grouplabel: pointer, "'(read-only)'"
+ThemeStyle.paneltitle -> paneltitle: pointer, "'(read-only)'"
+ThemeStyle.panelzoom -> panelzoom: float "'Default zoom level for panel areas'"
+ThemeStyle.widget -> widget: pointer, "'(read-only)'"
+ThemeStyle.widgetlabel -> widgetlabel: pointer, "'(read-only)'"
+ThemeTextEditor.back -> back: float "'NO DESCRIPTION'"
+ThemeTextEditor.button -> button: float "'NO DESCRIPTION'"
+ThemeTextEditor.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeTextEditor.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeTextEditor.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeTextEditor.cursor -> cursor: float "'NO DESCRIPTION'"
+ThemeTextEditor.header -> header: float "'NO DESCRIPTION'"
+ThemeTextEditor.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeTextEditor.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeTextEditor.line_numbers_background -> line_numbers_background: float "'NO DESCRIPTION'"
+ThemeTextEditor.scroll_bar -> scroll_bar: float "'NO DESCRIPTION'"
+ThemeTextEditor.selected_text -> selected_text: float "'NO DESCRIPTION'"
+ThemeTextEditor.syntax_builtin -> syntax_builtin: float "'NO DESCRIPTION'"
+ThemeTextEditor.syntax_comment -> syntax_comment: float "'NO DESCRIPTION'"
+ThemeTextEditor.syntax_numbers -> syntax_numbers: float "'NO DESCRIPTION'"
+ThemeTextEditor.syntax_special -> syntax_special: float "'NO DESCRIPTION'"
+ThemeTextEditor.syntax_string -> syntax_string: float "'NO DESCRIPTION'"
+ThemeTextEditor.text -> text: float "'NO DESCRIPTION'"
+ThemeTextEditor.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeTextEditor.title -> title: float "'NO DESCRIPTION'"
+ThemeTimeline.back -> back: float "'NO DESCRIPTION'"
+ThemeTimeline.button -> button: float "'NO DESCRIPTION'"
+ThemeTimeline.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeTimeline.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeTimeline.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeTimeline.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeTimeline.grid -> grid: float "'NO DESCRIPTION'"
+ThemeTimeline.header -> header: float "'NO DESCRIPTION'"
+ThemeTimeline.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeTimeline.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeTimeline.text -> text: float "'NO DESCRIPTION'"
+ThemeTimeline.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeTimeline.title -> title: float "'NO DESCRIPTION'"
+ThemeUserInterface.icon_file -> icon_file: string "'NO DESCRIPTION'"
+ThemeUserInterface.wcol_box -> wcol_box: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_list_item -> wcol_list_item: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_menu -> wcol_menu: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_menu_back -> wcol_menu_back: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_menu_item -> wcol_menu_item: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_num -> wcol_num: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_numslider -> wcol_numslider: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_option -> wcol_option: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_progress -> wcol_progress: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_pulldown -> wcol_pulldown: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_radio -> wcol_radio: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_regular -> wcol_regular: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_scroll -> wcol_scroll: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_state -> wcol_state: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_text -> wcol_text: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_toggle -> wcol_toggle: pointer, "'(read-only)'"
+ThemeUserInterface.wcol_tool -> wcol_tool: pointer, "'(read-only)'"
+ThemeUserPreferences.back -> back: float "'NO DESCRIPTION'"
+ThemeUserPreferences.button -> button: float "'NO DESCRIPTION'"
+ThemeUserPreferences.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeUserPreferences.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeUserPreferences.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeUserPreferences.header -> header: float "'NO DESCRIPTION'"
+ThemeUserPreferences.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeUserPreferences.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeUserPreferences.text -> text: float "'NO DESCRIPTION'"
+ThemeUserPreferences.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeUserPreferences.title -> title: float "'NO DESCRIPTION'"
+ThemeView3D.act_spline -> act_spline: float "'NO DESCRIPTION'"
+ThemeView3D.back -> back: float "'NO DESCRIPTION'"
+ThemeView3D.bone_pose -> bone_pose: float "'NO DESCRIPTION'"
+ThemeView3D.bone_solid -> bone_solid: float "'NO DESCRIPTION'"
+ThemeView3D.button -> button: float "'NO DESCRIPTION'"
+ThemeView3D.button_text -> button_text: float "'NO DESCRIPTION'"
+ThemeView3D.button_text_hi -> button_text_hi: float "'NO DESCRIPTION'"
+ThemeView3D.button_title -> button_title: float "'NO DESCRIPTION'"
+ThemeView3D.edge_crease -> edge_crease: float "'NO DESCRIPTION'"
+ThemeView3D.edge_facesel -> edge_facesel: float "'NO DESCRIPTION'"
+ThemeView3D.edge_seam -> edge_seam: float "'NO DESCRIPTION'"
+ThemeView3D.edge_select -> edge_select: float "'NO DESCRIPTION'"
+ThemeView3D.edge_sharp -> edge_sharp: float "'NO DESCRIPTION'"
+ThemeView3D.editmesh_active -> editmesh_active: float "'NO DESCRIPTION'"
+ThemeView3D.face -> face: float "'NO DESCRIPTION'"
+ThemeView3D.face_dot -> face_dot: float "'NO DESCRIPTION'"
+ThemeView3D.face_select -> face_select: float "'NO DESCRIPTION'"
+ThemeView3D.facedot_size -> facedot_size: int "'NO DESCRIPTION'"
+ThemeView3D.frame_current -> frame_current: float "'NO DESCRIPTION'"
+ThemeView3D.grid -> grid: float "'NO DESCRIPTION'"
+ThemeView3D.handle_align -> handle_align: float "'NO DESCRIPTION'"
+ThemeView3D.handle_auto -> handle_auto: float "'NO DESCRIPTION'"
+ThemeView3D.handle_free -> handle_free: float "'NO DESCRIPTION'"
+ThemeView3D.handle_sel_align -> handle_sel_align: float "'NO DESCRIPTION'"
+ThemeView3D.handle_sel_auto -> handle_sel_auto: float "'NO DESCRIPTION'"
+ThemeView3D.handle_sel_free -> handle_sel_free: float "'NO DESCRIPTION'"
+ThemeView3D.handle_sel_vect -> handle_sel_vect: float "'NO DESCRIPTION'"
+ThemeView3D.handle_vect -> handle_vect: float "'NO DESCRIPTION'"
+ThemeView3D.header -> header: float "'NO DESCRIPTION'"
+ThemeView3D.header_text -> header_text: float "'NO DESCRIPTION'"
+ThemeView3D.header_text_hi -> header_text_hi: float "'NO DESCRIPTION'"
+ThemeView3D.lamp -> lamp: float "'NO DESCRIPTION'"
+ThemeView3D.lastsel_point -> lastsel_point: float "'NO DESCRIPTION'"
+ThemeView3D.normal -> normal: float "'NO DESCRIPTION'"
+ThemeView3D.nurb_sel_uline -> nurb_sel_uline: float "'NO DESCRIPTION'"
+ThemeView3D.nurb_sel_vline -> nurb_sel_vline: float "'NO DESCRIPTION'"
+ThemeView3D.nurb_uline -> nurb_uline: float "'NO DESCRIPTION'"
+ThemeView3D.nurb_vline -> nurb_vline: float "'NO DESCRIPTION'"
+ThemeView3D.object_active -> object_active: float "'NO DESCRIPTION'"
+ThemeView3D.object_grouped -> object_grouped: float "'NO DESCRIPTION'"
+ThemeView3D.object_grouped_active -> object_grouped_active: float "'NO DESCRIPTION'"
+ThemeView3D.object_selected -> object_selected: float "'NO DESCRIPTION'"
+ThemeView3D.panel -> panel: float "'NO DESCRIPTION'"
+ThemeView3D.text -> text: float "'NO DESCRIPTION'"
+ThemeView3D.text_hi -> text_hi: float "'NO DESCRIPTION'"
+ThemeView3D.title -> title: float "'NO DESCRIPTION'"
+ThemeView3D.transform -> transform: float "'NO DESCRIPTION'"
+ThemeView3D.vertex -> vertex: float "'NO DESCRIPTION'"
+ThemeView3D.vertex_normal -> vertex_normal: float "'NO DESCRIPTION'"
+ThemeView3D.vertex_select -> vertex_select: float "'NO DESCRIPTION'"
+ThemeView3D.vertex_size -> vertex_size: int "'NO DESCRIPTION'"
+ThemeView3D.wire -> wire: float "'NO DESCRIPTION'"
+ThemeWidgetColors.inner -> inner: float "'NO DESCRIPTION'"
+ThemeWidgetColors.inner_sel -> inner_sel: float "'NO DESCRIPTION'"
+ThemeWidgetColors.item -> item: float "'NO DESCRIPTION'"
+ThemeWidgetColors.outline -> outline: float "'NO DESCRIPTION'"
+ThemeWidgetColors.shaded -> show_shaded: boolean "'NO DESCRIPTION'"
+ThemeWidgetColors.shadedown -> shadedown: int "'NO DESCRIPTION'"
+ThemeWidgetColors.shadetop -> shadetop: int "'NO DESCRIPTION'"
+ThemeWidgetColors.text -> text: float "'NO DESCRIPTION'"
+ThemeWidgetColors.text_sel -> text_sel: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.blend -> blend: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.inner_anim -> inner_anim: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.inner_anim_sel -> inner_anim_sel: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.inner_driven -> inner_driven: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.inner_driven_sel -> inner_driven_sel: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.inner_key -> inner_key: float "'NO DESCRIPTION'"
+ThemeWidgetStateColors.inner_key_sel -> inner_key_sel: float "'NO DESCRIPTION'"
+TimelineMarker.camera -> camera: pointer "'Camera this timeline sets to active'"
+TimelineMarker.frame -> frame: int "'The frame on which the timeline marker appears'"
+TimelineMarker.name -> name: string "'NO DESCRIPTION'"
+TimelineMarker.select -> select: boolean "'Marker selection state'"
+ToolSettings.auto_normalize -> use_auto_normalize: boolean "'Ensure all bone-deforming vertex groups add up to 1.0 while weight painting'"
+ToolSettings.autokey_mode -> autokey_mode: enum "'Mode of automatic keyframe insertion for Objects and Bones'"
+ToolSettings.automerge_editing -> use_automerge_editing: boolean "'Automatically merge vertices moved to the same location'"
+ToolSettings.bone_sketching -> use_bone_sketching: boolean "'DOC BROKEN'"
+ToolSettings.edge_path_mode -> edge_path_mode: enum "'The edge flag to tag when selecting the shortest path'"
+ToolSettings.etch_adaptive_limit -> etch_adaptive_limit: float "'Number of bones in the subdivided stroke'"
+ToolSettings.etch_autoname -> use_etch_autoname: boolean "'DOC BROKEN'"
+ToolSettings.etch_convert_mode -> etch_convert_mode: enum "'Method used to convert stroke to bones'"
+ToolSettings.etch_length_limit -> etch_length_limit: float "'Number of bones in the subdivided stroke'"
+ToolSettings.etch_number -> etch_number: string "'DOC BROKEN'"
+ToolSettings.etch_overdraw -> use_etch_overdraw: boolean "'DOC BROKEN'"
+ToolSettings.etch_quick -> use_etch_quick: boolean "'DOC BROKEN'"
+ToolSettings.etch_roll_mode -> etch_roll_mode: enum "'Method used to adjust the roll of bones when retargeting'"
+ToolSettings.etch_side -> etch_side: string "'DOC BROKEN'"
+ToolSettings.etch_subdivision_number -> etch_subdivision_number: int "'Number of bones in the subdivided stroke'"
+ToolSettings.etch_template -> etch_template: pointer "'Template armature that will be retargeted to the stroke'"
+ToolSettings.image_paint -> image_paint: pointer, "'(read-only)'"
+ToolSettings.mesh_selection_mode -> mesh_selection_mode: boolean "'Which mesh elements selection works on'"
+ToolSettings.normal_size -> normal_size: float "'Display size for normals in the 3D view'"
+ToolSettings.particle_edit -> particle_edit: pointer, "'(read-only)'"
+ToolSettings.proportional_editing -> proportional_edit: enum "'Proportional editing mode'"
+ToolSettings.proportional_editing_falloff -> proportional_edit_falloff: enum "'Falloff type for proportional editing mode'"
+ToolSettings.proportional_editing_objects -> proportional_editing_objects: boolean "'Proportional editing object mode'"
+ToolSettings.record_with_nla -> use_record_with_nla: boolean "'Add a new NLA Track + Strip for every loop/pass made over the animation to allow non-destructive tweaking'"
+ToolSettings.sculpt -> sculpt: pointer, "'(read-only)'"
+ToolSettings.sculpt_paint_use_unified_size -> sculpt_paint_use_unified_size: boolean "'Instead of per brush radius, the radius is shared across brushes'"
+ToolSettings.sculpt_paint_use_unified_strength -> sculpt_paint_use_unified_strength: boolean "'Instead of per brush strength, the strength is shared across brushes'"
+ToolSettings.snap -> use_snap: boolean "'Snap during transform'"
+ToolSettings.snap_align_rotation -> use_snap_align_rotation: boolean "'Align rotation with the snapping target'"
+ToolSettings.snap_element -> snap_element: enum "'Type of element to snap to'"
+ToolSettings.snap_peel_object -> use_snap_peel_object: boolean "'Consider objects as whole when finding volume center'"
+ToolSettings.snap_project -> use_snap_project: boolean "'Project vertices on the surface of other objects'"
+ToolSettings.snap_target -> snap_target: enum "'Which part to snap onto the target'"
+ToolSettings.use_auto_keying -> use_keyframe_insert_auto: boolean "'Automatic keyframe insertion for Objects and Bones'"
+ToolSettings.uv_local_view -> show_local_view: boolean "'Draw only faces with the currently displayed image assigned'"
+ToolSettings.uv_selection_mode -> uv_selection_mode: enum "'UV selection and display mode'"
+ToolSettings.uv_sync_selection -> use_uv_sync_selection: boolean "'Keep UV and edit mode mesh selection in sync'"
+ToolSettings.vertex_group_weight -> vertex_group_weight: float "'Weight to assign in vertex groups'"
+ToolSettings.vertex_paint -> vertex_paint: pointer, "'(read-only)'"
+ToolSettings.weight_paint -> weight_paint: pointer, "'(read-only)'"
+TransformOrientation.matrix -> matrix: float "'NO DESCRIPTION'"
+TransformOrientation.name -> name: string "'NO DESCRIPTION'"
+UILayout.active -> show_active: boolean "'NO DESCRIPTION'"
+UILayout.alignment -> alignment: enum "'NO DESCRIPTION'"
+UILayout.enabled -> show_enabled: boolean "'NO DESCRIPTION'"
+UILayout.operator_context -> operator_context: enum "'NO DESCRIPTION'"
+UILayout.scale_x -> scale_x: float "'NO DESCRIPTION'"
+UILayout.scale_y -> scale_y: float "'NO DESCRIPTION'"
+UVProjector.object -> object: pointer "'Object to use as projector transform'"
+UnitSettings.rotation_units -> rotation_units: enum "'Unit to use for displaying/editing rotation values'"
+UnitSettings.scale_length -> scale_length: float "'Scale to use when converting between blender units and dimensions'"
+UnitSettings.system -> system: enum "'The unit system to use for button display'"
+UnitSettings.use_separate -> use_separate: boolean "'Display units in pairs'"
+UserPreferences.active_section -> active_section: enum "'Active section of the user preferences shown in the user interface'"
+UserPreferences.addons -> addons: collection, "'(read-only)'"
+UserPreferences.edit -> edit: pointer, "'(read-only) Settings for interacting with Blender data'"
+UserPreferences.filepaths -> filepaths: pointer, "'(read-only) Default paths for external files'"
+UserPreferences.inputs -> inputs: pointer, "'(read-only) Settings for input devices'"
+UserPreferences.system -> system: pointer, "'(read-only) Graphics driver and operating system settings'"
+UserPreferences.themes -> themes: collection, "'(read-only)'"
+UserPreferences.uistyles -> uistyles: collection, "'(read-only)'"
+UserPreferences.view -> view: pointer, "'(read-only) Preferences related to viewing data'"
+UserPreferencesEdit.auto_keyframe_insert_available -> use_keyframe_insert_available: boolean "'Automatic keyframe insertion in available curves'"
+UserPreferencesEdit.auto_keyframe_insert_keyingset -> use_keyframe_insert_keyingset: boolean "'Automatic keyframe insertion using active Keying Set'"
+UserPreferencesEdit.auto_keying_mode -> auto_keying_mode: enum "'Mode of automatic keyframe insertion for Objects and Bones'"
+UserPreferencesEdit.drag_immediately -> use_drag_immediately: boolean "'Moving things with a mouse drag confirms when releasing the button'"
+UserPreferencesEdit.duplicate_action -> use_duplicate_action: boolean "'Causes actions to be duplicated with the object'"
+UserPreferencesEdit.duplicate_armature -> use_duplicate_armature: boolean "'Causes armature data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_curve -> use_duplicate_curve: boolean "'Causes curve data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_fcurve -> use_duplicate_fcurve: boolean "'Causes F-curve data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_lamp -> use_duplicate_lamp: boolean "'Causes lamp data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_material -> use_duplicate_material: boolean "'Causes material data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_mesh -> use_duplicate_mesh: boolean "'Causes mesh data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_metaball -> use_duplicate_metaball: boolean "'Causes metaball data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_particle -> use_duplicate_particle: boolean "'Causes particle systems to be duplicated with the object'"
+UserPreferencesEdit.duplicate_surface -> use_duplicate_surface: boolean "'Causes surface data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_text -> use_duplicate_text: boolean "'Causes text data to be duplicated with the object'"
+UserPreferencesEdit.duplicate_texture -> use_duplicate_texture: boolean "'Causes texture data to be duplicated with the object'"
+UserPreferencesEdit.enter_edit_mode -> use_enter_edit_mode: boolean "'Enter Edit Mode automatically after adding a new object'"
+UserPreferencesEdit.global_undo -> use_global_undo: boolean "'Global undo works by keeping a full copy of the file itself in memory, so takes extra memory'"
+UserPreferencesEdit.grease_pencil_eraser_radius -> grease_pencil_eraser_radius: int '"Radius of eraser \'brush\'"'
+UserPreferencesEdit.grease_pencil_euclidean_distance -> grease_pencil_euclidean_distance: int "'Distance moved by mouse when drawing stroke (in pixels) to include'"
+UserPreferencesEdit.grease_pencil_manhattan_distance -> grease_pencil_manhattan_distance: int "'Pixels moved by mouse per axis when drawing stroke'"
+UserPreferencesEdit.grease_pencil_simplify_stroke -> use_grease_pencil_simplify_stroke: boolean "'Simplify the final stroke'"
+UserPreferencesEdit.grease_pencil_smooth_stroke -> use_grease_pencil_smooth_stroke: boolean "'Smooth the final stroke'"
+UserPreferencesEdit.insertkey_xyz_to_rgb -> use_insertkey_xyz_to_rgb: boolean "'Color for newly added transformation F-Curves (Location, Rotation, Scale) and also Color is based on the transform axis'"
+UserPreferencesEdit.keyframe_insert_needed -> use_keyframe_insert_needed: boolean "'Keyframe insertion only when keyframe needed'"
+UserPreferencesEdit.keyframe_new_handle_type -> keyframe_new_handle_type: enum "'NO DESCRIPTION'"
+UserPreferencesEdit.keyframe_new_interpolation_type -> keyframe_new_interpolation_type: enum "'NO DESCRIPTION'"
+UserPreferencesEdit.material_link -> material_link: enum "'Toggle whether the material is linked to object data or the object block'"
+UserPreferencesEdit.object_align -> object_align: enum '"When adding objects from a 3D View menu, either align them to that view\'s direction or the world coordinates"'
+UserPreferencesEdit.sculpt_paint_overlay_col -> sculpt_paint_overlay_col: float "'Color of texture overlay'"
+UserPreferencesEdit.undo_memory_limit -> undo_memory_limit: int "'Maximum memory usage in megabytes (0 means unlimited)'"
+UserPreferencesEdit.undo_steps -> undo_steps: int "'Number of undo steps available (smaller values conserve memory)'"
+UserPreferencesEdit.use_auto_keying -> use_auto_keying: boolean "'Automatic keyframe insertion for Objects and Bones'"
+UserPreferencesEdit.use_negative_frames -> use_negative_frames: boolean "'Current frame number can be manually set to a negative value'"
+UserPreferencesEdit.use_visual_keying -> use_visual_keying: boolean "'Use Visual keying automatically for constrained objects'"
+UserPreferencesFilePaths.animation_player -> animation_player: string "'Path to a custom animation/frame sequence player'"
+UserPreferencesFilePaths.animation_player_preset -> animation_player_preset: enum "'Preset configs for external animation players'"
+UserPreferencesFilePaths.auto_save_temporary_files -> use_auto_save_temporary_files: boolean "'Automatic saving of temporary files'"
+UserPreferencesFilePaths.auto_save_time -> auto_save_time: int "'The time (in minutes) to wait between automatic temporary saves'"
+UserPreferencesFilePaths.compress_file -> use_file_compression: boolean "'Enable file compression when saving .blend files'"
+UserPreferencesFilePaths.filter_file_extensions -> use_filter_files: boolean "'Display only files with extensions in the image select window'"
+UserPreferencesFilePaths.fonts_directory -> fonts_directory: string "'The default directory to search for loading fonts'"
+UserPreferencesFilePaths.hide_dot_files_datablocks -> show_hidden_files_datablocks: boolean "'Hide files/datablocks that start with a dot(.*)'"
+UserPreferencesFilePaths.image_editor -> image_editor: string "'Path to an image editor'"
+UserPreferencesFilePaths.load_ui -> use_load_ui: boolean "'Load user interface setup when loading .blend files'"
+UserPreferencesFilePaths.python_scripts_directory -> python_scripts_directory: string "'The default directory to search for Python scripts (resets python module search path: sys.path)'"
+UserPreferencesFilePaths.recent_files -> recent_files: int "'Maximum number of recently opened files to remember'"
+UserPreferencesFilePaths.render_output_directory -> render_output_directory: string "'The default directory for rendering output'"
+UserPreferencesFilePaths.save_preview_images -> use_save_preview_images: boolean "'Enables automatic saving of preview images in the .blend file'"
+UserPreferencesFilePaths.save_version -> save_version: int "'The number of old versions to maintain in the current directory, when manually saving'"
+UserPreferencesFilePaths.sequence_plugin_directory -> sequence_plugin_directory: string "'The default directory to search for sequence plugins'"
+UserPreferencesFilePaths.sounds_directory -> sounds_directory: string "'The default directory to search for sounds'"
+UserPreferencesFilePaths.temporary_directory -> temporary_directory: string "'The directory for storing temporary save files'"
+UserPreferencesFilePaths.texture_plugin_directory -> texture_plugin_directory: string "'The default directory to search for texture plugins'"
+UserPreferencesFilePaths.textures_directory -> textures_directory: string "'The default directory to search for textures'"
+UserPreferencesFilePaths.use_relative_paths -> use_relative_paths: boolean "'Default relative path option for the file selector'"
+UserPreferencesInput.continuous_mouse -> use_continuous_mouse: boolean "'Allow moving the mouse outside the view on some manipulations (transform, ui control drag)'"
+UserPreferencesInput.double_click_time -> double_click_time: int "'The time (in ms) for a double click'"
+UserPreferencesInput.edited_keymaps -> edited_keymaps: collection, "'(read-only)'"
+UserPreferencesInput.emulate_3_button_mouse -> use_emulate_3_button_mouse: boolean '"Emulates Middle Mouse with Alt+LeftMouse (doesn\'t work with Left Mouse Select option)"'
+UserPreferencesInput.emulate_numpad -> use_emulate_numpad: boolean "'Causes the 1 to 0 keys to act as the numpad (useful for laptops)'"
+UserPreferencesInput.invert_zoom_direction -> invert_mouse_wheel_zoom: boolean "'Invert the axis of mouse movement for zooming'"
+UserPreferencesInput.ndof_pan_speed -> ndof_pan_speed: int "'The overall panning speed of an NDOF device, as percent of standard'"
+UserPreferencesInput.ndof_rotate_speed -> ndof_rotate_speed: int "'The overall rotation speed of an NDOF device, as percent of standard'"
+UserPreferencesInput.select_mouse -> select_mouse: enum "'The mouse button used for selection'"
+UserPreferencesInput.use_middle_mouse_paste -> use_mouse_mmb_paste: boolean "'In text window, paste with middle mouse button instead of panning'"
+UserPreferencesInput.view_rotation -> view_rotation: enum "'Rotation style in the viewport'"
+UserPreferencesInput.wheel_invert_zoom -> wheel_invert_zoom: boolean "'Swap the Mouse Wheel zoom direction'"
+UserPreferencesInput.wheel_scroll_lines -> wheel_scroll_lines: int "'The number of lines scrolled at a time with the mouse wheel'"
+UserPreferencesInput.zoom_axis -> zoom_axis: enum "'Axis of mouse movement to zoom in or out on'"
+UserPreferencesInput.zoom_style -> zoom_style: enum "'Which style to use for viewport scaling'"
+UserPreferencesSystem.audio_channels -> audio_channels: enum "'Sets the audio channel count'"
+UserPreferencesSystem.audio_device -> audio_device: enum "'Sets the audio output device'"
+UserPreferencesSystem.audio_mixing_buffer -> audio_mixing_buffer: enum "'Sets the number of samples used by the audio mixing buffer'"
+UserPreferencesSystem.audio_sample_format -> audio_sample_format: enum "'Sets the audio sample format'"
+UserPreferencesSystem.audio_sample_rate -> audio_sample_rate: enum "'Sets the audio sample rate'"
+UserPreferencesSystem.auto_execute_scripts -> use_scripts_auto_execute: boolean "'Allow any .blend file to run scripts automatically (unsafe with blend files from an untrusted source)'"
+UserPreferencesSystem.clip_alpha -> clip_alpha: float "'Clip alpha below this threshold in the 3D textured view'"
+UserPreferencesSystem.color_picker_type -> color_picker_type: enum "'Different styles of displaying the color picker widget'"
+UserPreferencesSystem.dpi -> dpi: int "'Font size and resolution for display'"
+UserPreferencesSystem.enable_all_codecs -> use_preview_images: boolean "'Enables automatic saving of preview images in the .blend file (Windows only)'"
+UserPreferencesSystem.frame_server_port -> frame_server_port: int "'Frameserver Port for Frameserver Rendering'"
+UserPreferencesSystem.gl_texture_limit -> gl_texture_limit: enum "'Limit the texture size to save graphics memory'"
+UserPreferencesSystem.international_fonts -> use_international_fonts: boolean "'Use international fonts'"
+UserPreferencesSystem.language -> language: enum "'Language use for translation'"
+UserPreferencesSystem.memory_cache_limit -> memory_cache_limit: int "'Memory cache limit in sequencer (megabytes)'"
+UserPreferencesSystem.prefetch_frames -> prefetch_frames: int "'Number of frames to render ahead during playback'"
+UserPreferencesSystem.screencast_fps -> screencast_fps: int "'Frame rate for the screencast to be played back'"
+UserPreferencesSystem.screencast_wait_time -> screencast_wait_time: int "'Time in milliseconds between each frame recorded for screencast'"
+UserPreferencesSystem.scrollback -> scrollback: int "'Maximum number of lines to store for the console buffer'"
+UserPreferencesSystem.solid_lights -> solid_lights: collection, "'(read-only) Lights user to display objects in solid draw mode'"
+UserPreferencesSystem.tabs_as_spaces -> use_tabs_as_spaces: boolean "'Automatically converts all new tabs into spaces for new and loaded text files'"
+UserPreferencesSystem.texture_collection_rate -> texture_collection_rate: int "'Number of seconds between each run of the GL texture garbage collector'"
+UserPreferencesSystem.texture_time_out -> texture_time_out: int "'Time since last access of a GL texture in seconds after which it is freed. (Set to 0 to keep textures allocated.)'"
+UserPreferencesSystem.translate_buttons -> use_translate_buttons: boolean "'Translate button labels'"
+UserPreferencesSystem.translate_toolbox -> use_translate_toolbox: boolean "'Translate toolbox menu'"
+UserPreferencesSystem.translate_tooltips -> use_translate_tooltips: boolean "'Translate Tooltips'"
+UserPreferencesSystem.use_antialiasing -> use_antialiasing: boolean "'Use anti-aliasing for the 3D view (may impact redraw performance)'"
+UserPreferencesSystem.use_mipmaps -> use_mipmaps: boolean "'Scale textures for the 3D View (looks nicer but uses more memory and slows image reloading)'"
+UserPreferencesSystem.use_textured_fonts -> use_textured_fonts: boolean "'Use textures for drawing international fonts'"
+UserPreferencesSystem.use_vbos -> use_vertex_buffer_objects: boolean "'Use Vertex Buffer Objects (or Vertex Arrays, if unsupported) for viewport rendering'"
+UserPreferencesSystem.use_weight_color_range -> use_weight_color_range: boolean "'Enable color range used for weight visualization in weight painting mode'"
+UserPreferencesSystem.weight_color_range -> weight_color_range: pointer, "'(read-only) Color range used for weight visualization in weight painting mode'"
+UserPreferencesSystem.window_draw_method -> window_draw_method: enum "'Drawing method used by the window manager'"
+UserPreferencesView.auto_depth -> use_mouse_auto_depth: boolean "'Use the depth under the mouse to improve view pan/rotate/zoom functionality'"
+UserPreferencesView.auto_perspective -> use_auto_perspective: boolean "'Automatically switch between orthographic and perspective when changing from top/front/side views'"
+UserPreferencesView.directional_menus -> use_directional_menus: boolean "'Otherwise menus, etc will always be top to bottom, left to right, no matter opening direction'"
+UserPreferencesView.display_object_info -> show_object_info: boolean "'Display objects name and frame number in 3D view'"
+UserPreferencesView.global_pivot -> use_global_pivot: boolean "'Lock the same rotation/scaling pivot in all 3D Views'"
+UserPreferencesView.global_scene -> use_global_scene: boolean "'Forces the current Scene to be displayed in all Screens'"
+UserPreferencesView.manipulator_handle_size -> manipulator_handle_size: int "'Size of widget handles as percentage of widget radius'"
+UserPreferencesView.manipulator_hotspot -> manipulator_hotspot: int "'Hotspot in pixels for clicking widget handles'"
+UserPreferencesView.manipulator_size -> manipulator_size: int "'Diameter of widget, in 10 pixel units'"
+UserPreferencesView.mini_axis_brightness -> mini_axis_brightness: int "'The brightness of the icon'"
+UserPreferencesView.mini_axis_size -> mini_axis_size: int '"The axis icon\'s size"'
+UserPreferencesView.object_origin_size -> object_origin_size: int "'Diameter in Pixels for Object/Lamp origin display'"
+UserPreferencesView.open_left_mouse_delay -> open_left_mouse_delay: int "'Time in 1/10 seconds to hold the Left Mouse Button before opening the toolbox'"
+UserPreferencesView.open_mouse_over -> use_mouse_over_open: boolean "'Open menu buttons and pulldowns automatically when the mouse is hovering'"
+UserPreferencesView.open_right_mouse_delay -> open_right_mouse_delay: int "'Time in 1/10 seconds to hold the Right Mouse Button before opening the toolbox'"
+UserPreferencesView.open_sublevel_delay -> open_sublevel_delay: int "'Time delay in 1/10 seconds before automatically opening sub level menus'"
+UserPreferencesView.open_toplevel_delay -> open_toplevel_delay: int "'Time delay in 1/10 seconds before automatically opening top level menus'"
+UserPreferencesView.rotate_around_selection -> use_rotate_around_selection: boolean "'Use selection as the pivot point'"
+UserPreferencesView.rotation_angle -> rotation_angle: int "'The rotation step for numerical pad keys (2 4 6 8)'"
+UserPreferencesView.show_mini_axis -> show_mini_axis: boolean "'Show a small rotating 3D axis in the bottom left corner of the 3D View'"
+UserPreferencesView.show_playback_fps -> show_playback_fps: boolean "'Show the frames per second screen refresh rate, while animation is played back'"
+UserPreferencesView.show_splash -> show_splash: boolean "'Display splash screen on startup'"
+UserPreferencesView.show_view_name -> show_view_name: boolean '"Show the name of the view\'s direction in each 3D View"'
+UserPreferencesView.smooth_view -> smooth_view: int "'The time to animate the view in milliseconds, zero to disable'"
+UserPreferencesView.timecode_style -> timecode_style: enum "'Format of Time Codes displayed when not displaying timing in terms of frames'"
+UserPreferencesView.tooltips -> show_tooltips: boolean "'Display tooltips'"
+UserPreferencesView.use_column_layout -> show_column_layout: boolean "'Use a column layout for toolbox'"
+UserPreferencesView.use_large_cursors -> show_large_cursors: boolean "'Use large mouse cursors when available'"
+UserPreferencesView.use_manipulator -> show_manipulator: boolean "'Use 3D transform manipulator'"
+UserPreferencesView.view2d_grid_minimum_spacing -> view2d_grid_spacing_min: int "'Minimum number of pixels between each gridline in 2D Viewports'"
+UserPreferencesView.zoom_to_mouse -> use_zoom_to_mouse: boolean '"Zoom in towards the mouse pointer\'s position in the 3D view, rather than the 2D window center"'
+UserSolidLight.diffuse_color -> diffuse_color: float "'The diffuse color of the OpenGL light'"
+UserSolidLight.direction -> direction: float "'The direction that the OpenGL light is shining'"
+UserSolidLight.enabled -> use: boolean "'Enable this OpenGL light in solid draw mode'"
+UserSolidLight.specular_color -> specular_color: float "'The color of the lights specular highlight'"
+ValueNodeSocket.default_value -> default_value: float "'Default value of the socket when no link is attached'"
+ValueNodeSocket.name -> name: string, "'(read-only) Socket name'"
+VectorNodeSocket.default_value -> default_value: float "'Default value of the socket when no link is attached'"
+VectorNodeSocket.name -> name: string, "'(read-only) Socket name'"
+VertexGroup.index -> index: int, "'(read-only) Index number of the vertex group'"
+VertexGroup.name -> name: string "'Vertex group name'"
+VertexGroupElement.group -> group: int, "'(read-only)'"
+VertexGroupElement.weight -> weight: float "'Vertex Weight'"
+VoxelData.domain_object -> domain_object: pointer "'Object used as the smoke simulation domain'"
+VoxelData.extension -> extension: enum "'Sets how the texture is extrapolated past its original bounds'"
+VoxelData.file_format -> file_format: enum "'Format of the source data set to render'"
+VoxelData.intensity -> intensity: float "'Multiplier for intensity values'"
+VoxelData.interpolation -> interpolation: enum "'Method to interpolate/smooth values between voxel cells'"
+VoxelData.resolution -> resolution: int "'Resolution of the voxel grid'"
+VoxelData.smoke_data_type -> smoke_data_type: enum "'Simulation value to be used as a texture'"
+VoxelData.source_path -> source_path: string "'The external source data file to use'"
+VoxelData.still -> use_still_frame: boolean "'Always render a still frame from the voxel data sequence'"
+VoxelData.still_frame_number -> still_frame_number: int "'The frame number to always use'"
+Window.screen -> screen: pointer "'Active screen showing in the window'"
+WorldLighting.adapt_to_speed -> adapt_to_speed: float "'Use the speed vector pass to reduce AO samples in fast moving pixels. Higher values result in more aggressive sample reduction. Requires Vec pass enabled (for Raytrace Adaptive QMC)'"
+WorldLighting.ao_blend_mode -> ao_blend_type: enum "'Defines how AO mixes with material shading'"
+WorldLighting.ao_factor -> ao_factor: float "'Factor for ambient occlusion blending'"
+WorldLighting.bias -> bias: float "'Bias (in radians) to prevent smoothed faces from showing banding (for Raytrace Constant Jittered)'"
+WorldLighting.correction -> correction: float "'Ad-hoc correction for over-occlusion due to the approximation (for Approximate)'"
+WorldLighting.distance -> distance: float "'Length of rays, defines how far away other faces give occlusion effect'"
+WorldLighting.environment_color -> environment_color: enum "'Defines where the color of the environment light comes from'"
+WorldLighting.environment_energy -> environment_energy: float "'Defines the strength of environment light'"
+WorldLighting.error_tolerance -> error_tolerance: float "'Low values are slower and higher quality (for Approximate)'"
+WorldLighting.falloff -> use_falloff: boolean "'NO DESCRIPTION'"
+WorldLighting.falloff_strength -> falloff_strength: float '"Distance attenuation factor, the higher, the \'shorter\' the shadows"'
+WorldLighting.gather_method -> gather_method: enum "'NO DESCRIPTION'"
+WorldLighting.indirect_bounces -> indirect_bounces: int "'Number of indirect diffuse light bounces to use for approximate ambient occlusion'"
+WorldLighting.indirect_factor -> indirect_factor: float "'Factor for how much surrounding objects contribute to light'"
+WorldLighting.passes -> passes: int "'Number of preprocessing passes to reduce overocclusion (for approximate ambient occlusion)'"
+WorldLighting.pixel_cache -> use_cache: boolean "'Cache AO results in pixels and interpolate over neighbouring pixels for speedup (for Approximate)'"
+WorldLighting.sample_method -> sample_method: enum "'Method for generating shadow samples (for Raytrace)'"
+WorldLighting.samples -> samples: int "'Amount of ray samples. Higher values give smoother results and longer rendering times'"
+WorldLighting.threshold -> threshold: float "'Samples below this threshold will be considered fully shadowed/unshadowed and skipped (for Raytrace Adaptive QMC)'"
+WorldLighting.use_ambient_occlusion -> use_ambient_occlusian: boolean "'Use Ambient Occlusion to add shadowing based on distance between objects'"
+WorldLighting.use_environment_lighting -> use_environment_lighting: boolean "'Add light coming from the environment'"
+WorldLighting.use_indirect_lighting -> use_indirect_lighting: boolean "'Add indirect light bouncing of surrounding objects'"
+WorldMistSettings.depth -> depth: float "'The distance over which the mist effect fades in'"
+WorldMistSettings.falloff -> falloff: enum "'Type of transition used to fade mist'"
+WorldMistSettings.height -> height: float "'Control how much mist density decreases with height'"
+WorldMistSettings.intensity -> intensity: float "'Intensity of the mist effect'"
+WorldMistSettings.start -> start: float "'Starting distance of the mist, measured from the camera'"
+WorldMistSettings.use_mist -> use_mist: boolean "'Occlude objects with the environment color as they are further away'"
+WorldStarsSettings.average_separation -> average_separation: float "'Average distance between any two stars'"
+WorldStarsSettings.color_randomization -> color_randomization: float "'Randomize star colors'"
+WorldStarsSettings.min_distance -> distance_min: float "'Minimum distance to the camera for stars'"
+WorldStarsSettings.size -> size: float "'Average screen dimension of stars'"
+WorldStarsSettings.use_stars -> use_stars: boolean "'Enable starfield generation'"
diff --git a/source/blender/modifiers/intern/MOD_cloth.c b/source/blender/modifiers/intern/MOD_cloth.c
index 5050333cd43..4d850e1bd95 100644
--- a/source/blender/modifiers/intern/MOD_cloth.c
+++ b/source/blender/modifiers/intern/MOD_cloth.c
@@ -30,6 +30,10 @@
*
*/
+#include "DNA_cloth_types.h"
+#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
+
#include "BKE_cloth.h"
#include "BKE_cdderivedmesh.h"
#include "BKE_global.h"
diff --git a/source/blender/modifiers/intern/MOD_collision.c b/source/blender/modifiers/intern/MOD_collision.c
index 7f70bd8f709..9e979822d6f 100644
--- a/source/blender/modifiers/intern/MOD_collision.c
+++ b/source/blender/modifiers/intern/MOD_collision.c
@@ -31,6 +31,8 @@
*/
#include "DNA_scene_types.h"
+#include "DNA_object_types.h"
+#include "DNA_meshdata_types.h"
#include "BLI_math.h"
diff --git a/source/blender/python/generic/mathutils.c b/source/blender/python/generic/mathutils.c
index a38ec7ce688..2bfd9a6d0c6 100644
--- a/source/blender/python/generic/mathutils.c
+++ b/source/blender/python/generic/mathutils.c
@@ -629,7 +629,7 @@ PyObject *BaseMathObject_getOwner( BaseMathObject * self, void *type )
return ret;
}
-char BaseMathObject_Wrapped_doc[] = "True when this object wraps external data (readonly). **type** boolean";
+char BaseMathObject_Wrapped_doc[] = "True when this object wraps external data (readonly).\n\n:type: boolean";
PyObject *BaseMathObject_getWrapped( BaseMathObject *self, void *type )
{
return PyBool_FromLong((self->wrapped == Py_WRAP) ? 1:0);
diff --git a/source/blender/python/generic/mathutils_color.c b/source/blender/python/generic/mathutils_color.c
index a9dfd0dce70..57d2838238c 100644
--- a/source/blender/python/generic/mathutils_color.c
+++ b/source/blender/python/generic/mathutils_color.c
@@ -434,15 +434,15 @@ static int Color_setHSV(ColorObject * self, PyObject * value, void * type)
/* Python attributes get/set structure: */
/*****************************************************************************/
static PyGetSetDef Color_getseters[] = {
- {"r", (getter)Color_getChannel, (setter)Color_setChannel, "Red color channel. **type** float", (void *)0},
- {"g", (getter)Color_getChannel, (setter)Color_setChannel, "Green color channel. **type** float", (void *)1},
- {"b", (getter)Color_getChannel, (setter)Color_setChannel, "Blue color channel. **type** float", (void *)2},
+ {"r", (getter)Color_getChannel, (setter)Color_setChannel, "Red color channel.\n\n:type: float", (void *)0},
+ {"g", (getter)Color_getChannel, (setter)Color_setChannel, "Green color channel.\n\n:type: float", (void *)1},
+ {"b", (getter)Color_getChannel, (setter)Color_setChannel, "Blue color channel.\n\n:type: float", (void *)2},
- {"h", (getter)Color_getChannelHSV, (setter)Color_setChannelHSV, "HSV Hue component in [0, 1]. **type** float", (void *)0},
- {"s", (getter)Color_getChannelHSV, (setter)Color_setChannelHSV, "HSV Saturation component in [0, 1]. **type** float", (void *)1},
- {"v", (getter)Color_getChannelHSV, (setter)Color_setChannelHSV, "HSV Value component in [0, 1]. **type** float", (void *)2},
+ {"h", (getter)Color_getChannelHSV, (setter)Color_setChannelHSV, "HSV Hue component in [0, 1].\n\n:type: float", (void *)0},
+ {"s", (getter)Color_getChannelHSV, (setter)Color_setChannelHSV, "HSV Saturation component in [0, 1].\n\n:type: float", (void *)1},
+ {"v", (getter)Color_getChannelHSV, (setter)Color_setChannelHSV, "HSV Value component in [0, 1].\n\n:type: float", (void *)2},
- {"hsv", (getter)Color_getHSV, (setter)Color_setHSV, "HSV Values in [0, 1]. **type** float triplet", (void *)0},
+ {"hsv", (getter)Color_getHSV, (setter)Color_setHSV, "HSV Values in [0, 1].\n\n:type: float triplet", (void *)0},
{"is_wrapped", (getter)BaseMathObject_getWrapped, (setter)NULL, BaseMathObject_Wrapped_doc, NULL},
{"owner", (getter)BaseMathObject_getOwner, (setter)NULL, BaseMathObject_Owner_doc, NULL},
diff --git a/source/blender/python/generic/mathutils_euler.c b/source/blender/python/generic/mathutils_euler.c
index d9e5e72ce64..b36eb7803f1 100644
--- a/source/blender/python/generic/mathutils_euler.c
+++ b/source/blender/python/generic/mathutils_euler.c
@@ -615,10 +615,10 @@ static int Euler_setOrder( EulerObject * self, PyObject * value, void * type )
/* Python attributes get/set structure: */
/*****************************************************************************/
static PyGetSetDef Euler_getseters[] = {
- {"x", (getter)Euler_getAxis, (setter)Euler_setAxis, "Euler X axis in radians. **type** float", (void *)0},
- {"y", (getter)Euler_getAxis, (setter)Euler_setAxis, "Euler Y axis in radians. **type** float", (void *)1},
- {"z", (getter)Euler_getAxis, (setter)Euler_setAxis, "Euler Z axis in radians. **type** float", (void *)2},
- {"order", (getter)Euler_getOrder, (setter)Euler_setOrder, "Euler rotation order. **type** string in ['XYZ', 'XZY', 'YXZ', 'YZX', 'ZXY', 'ZYX']", (void *)NULL},
+ {"x", (getter)Euler_getAxis, (setter)Euler_setAxis, "Euler X axis in radians.\n\n:type: float", (void *)0},
+ {"y", (getter)Euler_getAxis, (setter)Euler_setAxis, "Euler Y axis in radians.\n\n:type: float", (void *)1},
+ {"z", (getter)Euler_getAxis, (setter)Euler_setAxis, "Euler Z axis in radians.\n\n:type: float", (void *)2},
+ {"order", (getter)Euler_getOrder, (setter)Euler_setOrder, "Euler rotation order.\n\n:type: string in ['XYZ', 'XZY', 'YXZ', 'YZX', 'ZXY', 'ZYX']", (void *)NULL},
{"is_wrapped", (getter)BaseMathObject_getWrapped, (setter)NULL, BaseMathObject_Wrapped_doc, NULL},
{"owner", (getter)BaseMathObject_getOwner, (setter)NULL, BaseMathObject_Owner_doc, NULL},
diff --git a/source/blender/python/generic/mathutils_matrix.c b/source/blender/python/generic/mathutils_matrix.c
index a4af1f5f2d7..d54ee9a30ec 100644
--- a/source/blender/python/generic/mathutils_matrix.c
+++ b/source/blender/python/generic/mathutils_matrix.c
@@ -1300,10 +1300,10 @@ static PyObject *Matrix_getIsNegative( MatrixObject * self, void *type )
/* Python attributes get/set structure: */
/*****************************************************************************/
static PyGetSetDef Matrix_getseters[] = {
- {"row_size", (getter)Matrix_getRowSize, (setter)NULL, "The row size of the matrix (readonly). **type** int", NULL},
- {"col_size", (getter)Matrix_getColSize, (setter)NULL, "The column size of the matrix (readonly). **type** int", NULL},
- {"median_scale", (getter)Matrix_getMedianScale, (setter)NULL, "The average scale applied to each axis (readonly). **type** float", NULL},
- {"is_negative", (getter)Matrix_getIsNegative, (setter)NULL, "True if this matrix results in a negative scale, 3x3 and 4x4 only, (readonly). **type** bool", NULL},
+ {"row_size", (getter)Matrix_getRowSize, (setter)NULL, "The row size of the matrix (readonly).\n\n:type: int", NULL},
+ {"col_size", (getter)Matrix_getColSize, (setter)NULL, "The column size of the matrix (readonly).\n\n:type: int", NULL},
+ {"median_scale", (getter)Matrix_getMedianScale, (setter)NULL, "The average scale applied to each axis (readonly).\n\n:type: float", NULL},
+ {"is_negative", (getter)Matrix_getIsNegative, (setter)NULL, "True if this matrix results in a negative scale, 3x3 and 4x4 only, (readonly).\n\n:type: bool", NULL},
{"is_wrapped", (getter)BaseMathObject_getWrapped, (setter)NULL, BaseMathObject_Wrapped_doc, NULL},
{"owner",(getter)BaseMathObject_getOwner, (setter)NULL, BaseMathObject_Owner_doc, NULL},
{NULL,NULL,NULL,NULL,NULL} /* Sentinel */
diff --git a/source/blender/python/generic/mathutils_quat.c b/source/blender/python/generic/mathutils_quat.c
index 31f768314c4..553844b6ee5 100644
--- a/source/blender/python/generic/mathutils_quat.c
+++ b/source/blender/python/generic/mathutils_quat.c
@@ -922,13 +922,13 @@ static struct PyMethodDef Quaternion_methods[] = {
/* Python attributes get/set structure: */
/*****************************************************************************/
static PyGetSetDef Quaternion_getseters[] = {
- {"w", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion W value. **type** float", (void *)0},
- {"x", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion X axis. **type** float", (void *)1},
- {"y", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion Y axis. **type** float", (void *)2},
- {"z", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion Z axis. **type** float", (void *)3},
- {"magnitude", (getter)Quaternion_getMagnitude, (setter)NULL, "Size of the quaternion (readonly). **type** float", NULL},
- {"angle", (getter)Quaternion_getAngle, (setter)Quaternion_setAngle, "angle of the quaternion. **type** float", NULL},
- {"axis",(getter)Quaternion_getAxisVec, (setter)Quaternion_setAxisVec, "quaternion axis as a vector. **type** :class:`Vector`", NULL},
+ {"w", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion W value.\n\n:type: float", (void *)0},
+ {"x", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion X axis.\n\n:type: float", (void *)1},
+ {"y", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion Y axis.\n\n:type: float", (void *)2},
+ {"z", (getter)Quaternion_getAxis, (setter)Quaternion_setAxis, "Quaternion Z axis.\n\n:type: float", (void *)3},
+ {"magnitude", (getter)Quaternion_getMagnitude, (setter)NULL, "Size of the quaternion (readonly).\n\n:type: float", NULL},
+ {"angle", (getter)Quaternion_getAngle, (setter)Quaternion_setAngle, "angle of the quaternion.\n\n:type: float", NULL},
+ {"axis",(getter)Quaternion_getAxisVec, (setter)Quaternion_setAxisVec, "quaternion axis as a vector.\n\n:type: :class:`Vector`", NULL},
{"is_wrapped", (getter)BaseMathObject_getWrapped, (setter)NULL, BaseMathObject_Wrapped_doc, NULL},
{"owner", (getter)BaseMathObject_getOwner, (setter)NULL, BaseMathObject_Owner_doc, NULL},
{NULL,NULL,NULL,NULL,NULL} /* Sentinel */
diff --git a/source/blender/python/generic/mathutils_vector.c b/source/blender/python/generic/mathutils_vector.c
index 5fb89dc4bcf..75a695526fc 100644
--- a/source/blender/python/generic/mathutils_vector.c
+++ b/source/blender/python/generic/mathutils_vector.c
@@ -1596,12 +1596,12 @@ static int Vector_setSwizzle(VectorObject *self, PyObject * value, void *closure
/* Python attributes get/set structure: */
/*****************************************************************************/
static PyGetSetDef Vector_getseters[] = {
- {"x", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector X axis. **type** float", (void *)0},
- {"y", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector Y axis. **type** float", (void *)1},
- {"z", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector Z axis (3D Vectors only). **type** float", (void *)2},
- {"w", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector W axis (4D Vectors only). **type** float", (void *)3},
- {"length", (getter)Vector_getLength, (setter)Vector_setLength, "Vector Length. **type** float", NULL},
- {"magnitude", (getter)Vector_getLength, (setter)Vector_setLength, "Vector Length. **type** float", NULL},
+ {"x", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector X axis.\n\n:type: float", (void *)0},
+ {"y", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector Y axis.\n\n:type: float", (void *)1},
+ {"z", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector Z axis (3D Vectors only).\n\n:type: float", (void *)2},
+ {"w", (getter)Vector_getAxis, (setter)Vector_setAxis, "Vector W axis (4D Vectors only).\n\n:type: float", (void *)3},
+ {"length", (getter)Vector_getLength, (setter)Vector_setLength, "Vector Length.\n\n:type: float", NULL},
+ {"magnitude", (getter)Vector_getLength, (setter)Vector_setLength, "Vector Length.\n\n:type: float", NULL},
{"is_wrapped", (getter)BaseMathObject_getWrapped, (setter)NULL, BaseMathObject_Wrapped_doc, NULL},
{"owner", (getter)BaseMathObject_getOwner, (setter)NULL, BaseMathObject_Owner_doc, NULL},
diff --git a/source/blender/python/intern/bpy.c b/source/blender/python/intern/bpy.c
index 9818bff0e22..1336a752b22 100644
--- a/source/blender/python/intern/bpy.c
+++ b/source/blender/python/intern/bpy.c
@@ -70,7 +70,7 @@ PyObject *bpy_script_paths(PyObject *self)
static char bpy_blend_paths_doc[] =
".. function:: blend_paths(absolute=False)\n"
"\n"
-" Returns a list of paths associated with this blend file.\n"
+" Returns a list of paths to external files referenced by the loaded .blend file.\n"
"\n"
" :arg absolute: When true the paths returned are made absolute.\n"
" :type absolute: boolean\n"
diff --git a/source/blender/python/intern/bpy_rna.c b/source/blender/python/intern/bpy_rna.c
index 1b49ed52e3d..ff273fa098d 100644
--- a/source/blender/python/intern/bpy_rna.c
+++ b/source/blender/python/intern/bpy_rna.c
@@ -4409,7 +4409,7 @@ static int bpy_class_validate(PointerRNA *dummyptr, void *py_data, int *have_fun
const char *class_type= RNA_struct_identifier(srna);
PyObject *py_class= (PyObject*)py_data;
PyObject *base_class= RNA_struct_py_type_get(srna);
- PyObject *item, *fitem;
+ PyObject *item;
PyObject *py_arg_count;
int i, flag, arg_count, func_arg_count;
const char *py_class_name = ((PyTypeObject *)py_class)->tp_name; // __name__
@@ -4446,25 +4446,33 @@ static int bpy_class_validate(PointerRNA *dummyptr, void *py_data, int *have_fun
PyErr_Clear();
}
else {
- Py_DECREF(item); /* no need to keep a ref, the class owns it */
-
- if (PyMethod_Check(item))
- fitem= PyMethod_Function(item); /* py 2.x */
- else
- fitem= item; /* py 3.x */
-
- if (PyFunction_Check(fitem)==0) {
- PyErr_Format( PyExc_TypeError, "expected %.200s, %.200s class \"%.200s\" attribute to be a function", class_type, py_class_name, RNA_function_identifier(func));
- return -1;
+ Py_DECREF(item); /* no need to keep a ref, the class owns it (technically we should keep a ref but...) */
+ if(flag & FUNC_NO_SELF) {
+ if (PyMethod_Check(item)==0) {
+ PyErr_Format( PyExc_TypeError, "expected %.200s, %.200s class \"%.200s\" attribute to be a method, not a %.200s", class_type, py_class_name, RNA_function_identifier(func), Py_TYPE(item)->tp_name);
+ return -1;
+ }
+ item= ((PyMethodObject *)item)->im_func;
+ }
+ else {
+ if (PyFunction_Check(item)==0) {
+ PyErr_Format( PyExc_TypeError, "expected %.200s, %.200s class \"%.200s\" attribute to be a function, not a %.200s", class_type, py_class_name, RNA_function_identifier(func), Py_TYPE(item)->tp_name);
+ return -1;
+ }
}
func_arg_count= rna_function_arg_count(func);
if (func_arg_count >= 0) { /* -1 if we dont care*/
- py_arg_count = PyObject_GetAttrString(PyFunction_GET_CODE(fitem), "co_argcount");
+ py_arg_count = PyObject_GetAttrString(PyFunction_GET_CODE(item), "co_argcount");
arg_count = PyLong_AsSsize_t(py_arg_count);
Py_DECREF(py_arg_count);
+ /* note, the number of args we check for and the number of args we give to
+ * @classmethods are different (quirk of python), this is why rna_function_arg_count() doesn't return the value -1*/
+ if(flag & FUNC_NO_SELF)
+ func_arg_count++;
+
if (arg_count != func_arg_count) {
PyErr_Format( PyExc_AttributeError, "expected %.200s, %.200s class \"%.200s\" function to have %d args, found %d", class_type, py_class_name, RNA_function_identifier(func), func_arg_count, arg_count);
return -1;
@@ -4610,7 +4618,7 @@ static int bpy_class_call(PointerRNA *ptr, FunctionRNA *func, ParameterList *par
RNA_pointer_create(NULL, &RNA_Function, func, &funcptr);
args = PyTuple_New(rna_function_arg_count(func)); /* first arg is included in 'item' */
-
+
if(is_static) {
i= 0;
}
diff --git a/source/blender/python/intern/bpy_rna_callback.c b/source/blender/python/intern/bpy_rna_callback.c
index 2404442dc18..b2a7511f998 100644
--- a/source/blender/python/intern/bpy_rna_callback.c
+++ b/source/blender/python/intern/bpy_rna_callback.c
@@ -64,19 +64,28 @@ PyObject *pyrna_callback_add(BPy_StructRNA *self, PyObject *args)
char *cb_event_str= NULL;
int cb_event;
- if (!PyArg_ParseTuple(args, "OO|s:bpy_struct.callback_add", &cb_func, &cb_args, &cb_event_str))
+ if (!PyArg_ParseTuple(args, "OO!|s:bpy_struct.callback_add", &cb_func, &PyTuple_Type, &cb_args, &cb_event_str))
return NULL;
+
+ if(!PyCallable_Check(cb_func)) {
+ PyErr_SetString(PyExc_TypeError, "callback_add(): first argument isn't callable");
+ return NULL;
+ }
if(RNA_struct_is_a(self->ptr.type, &RNA_Region)) {
-
- static EnumPropertyItem region_draw_mode_items[] = {
- {REGION_DRAW_POST_VIEW, "POST_VIEW", 0, "Pose View", ""},
- {REGION_DRAW_POST_PIXEL, "POST_PIXEL", 0, "Post Pixel", ""},
- {REGION_DRAW_PRE_VIEW, "PRE_VIEW", 0, "Pre View", ""},
- {0, NULL, 0, NULL, NULL}};
-
- if(pyrna_enum_value_from_id(region_draw_mode_items, cb_event_str, &cb_event, "bpy_struct.callback_add()") < 0)
- return NULL;
+ if(cb_event_str) {
+ static EnumPropertyItem region_draw_mode_items[] = {
+ {REGION_DRAW_POST_PIXEL, "POST_PIXEL", 0, "Post Pixel", ""},
+ {REGION_DRAW_POST_VIEW, "POST_VIEW", 0, "Post View", ""},
+ {REGION_DRAW_PRE_VIEW, "PRE_VIEW", 0, "Pre View", ""},
+ {0, NULL, 0, NULL, NULL}};
+
+ if(pyrna_enum_value_from_id(region_draw_mode_items, cb_event_str, &cb_event, "bpy_struct.callback_add()") < 0)
+ return NULL;
+ }
+ else {
+ cb_event= REGION_DRAW_POST_PIXEL;
+ }
handle= ED_region_draw_cb_activate(((ARegion *)self->ptr.data)->type, cb_region_draw, (void *)args, cb_event);
Py_INCREF(args);