[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28611] branches/render25: Render Branch: https://svn.blender.org/svnroot/bf-blender/trunk/blender -r28593:28610
Campbell Barton
ideasman42 at gmail.com
Thu May 6 10:34:05 CEST 2010
Revision: 28611
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28611
Author: campbellbarton
Date: 2010-05-06 10:34:05 +0200 (Thu, 06 May 2010)
Log Message:
-----------
Render Branch: https://svn.blender.org/svnroot/bf-blender/trunk/blender -r28593:28610
Modified Paths:
--------------
branches/render25/release/scripts/modules/bpy_types.py
branches/render25/source/blender/blenloader/intern/readfile.c
branches/render25/source/blender/editors/space_logic/logic_window.c
branches/render25/source/blender/editors/space_logic/space_logic.c
branches/render25/source/blender/editors/space_sequencer/sequencer_edit.c
branches/render25/source/blender/editors/space_sequencer/sequencer_intern.h
branches/render25/source/blender/editors/space_sequencer/sequencer_select.c
branches/render25/source/blender/editors/space_view3d/view3d_edit.c
branches/render25/source/blender/gpu/intern/gpu_draw.c
branches/render25/source/blender/makesrna/intern/rna_actuator.c
branches/render25/source/blender/makesrna/intern/rna_object.c
Modified: branches/render25/release/scripts/modules/bpy_types.py
===================================================================
--- branches/render25/release/scripts/modules/bpy_types.py 2010-05-06 08:31:39 UTC (rev 28610)
+++ branches/render25/release/scripts/modules/bpy_types.py 2010-05-06 08:34:05 UTC (rev 28611)
@@ -45,21 +45,21 @@
def children(self):
"""All the children of this object"""
import bpy
- return [child for child in bpy.data.objects if child.parent == self]
+ return tuple(child for child in bpy.data.objects if child.parent == self)
@property
def group_users(self):
"""The groups this object is in"""
import bpy
name = self.name
- return [group for group in bpy.data.groups if name in group.objects]
+ return tuple(group for group in bpy.data.groups if name in group.objects)
@property
def scene_users(self):
"""The scenes this object is in"""
import bpy
name = self.name
- return [scene for scene in bpy.data.scenes if name in scene.objects]
+ return tuple(scene for scene in bpy.data.scenes if name in scene.objects)
class _GenericBone:
Modified: branches/render25/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/render25/source/blender/blenloader/intern/readfile.c 2010-05-06 08:31:39 UTC (rev 28610)
+++ branches/render25/source/blender/blenloader/intern/readfile.c 2010-05-06 08:34:05 UTC (rev 28611)
@@ -10831,6 +10831,27 @@
}
} /* sequencer changes */
}
+
+ if (main->versionfile <= 251) { /* 2.5.1 had no subversions */
+ bScreen *sc;
+
+ /* Blender 2.5.2 - subversion 0 introduced a new setting: V3D_RENDER_OVERRIDE.
+ * This bit was used in the past for V3D_TRANSFORM_SNAP, which is now deprecated.
+ * Here we clear it for old files so they don't come in with V3D_RENDER_OVERRIDE set,
+ * which would cause cameras, lamps, etc to become invisible */
+ for(sc= main->screen.first; sc; sc= sc->id.next) {
+ ScrArea *sa;
+ for(sa= sc->areabase.first; sa; sa= sa->next) {
+ SpaceLink *sl;
+ for (sl= sa->spacedata.first; sl; sl= sl->next) {
+ if(sl->spacetype==SPACE_VIEW3D) {
+ View3D* v3d = (View3D *)sl;
+ v3d->flag2 &= ~V3D_RENDER_OVERRIDE;
+ }
+ }
+ }
+ }
+ }
if (main->versionfile < 252 || (main->versionfile == 252 && main->subversionfile < 1)) {
Brush *brush;
Modified: branches/render25/source/blender/editors/space_logic/logic_window.c
===================================================================
--- branches/render25/source/blender/editors/space_logic/logic_window.c 2010-05-06 08:31:39 UTC (rev 28610)
+++ branches/render25/source/blender/editors/space_logic/logic_window.c 2010-05-06 08:34:05 UTC (rev 28611)
@@ -3221,6 +3221,7 @@
static void draw_sensor_collision(uiLayout *layout, PointerRNA *ptr)
{
+ uiItemL(layout, "Not ported back yet", 0);
//XXXSENSOR
/* // need to solve problems in rna_sensor.c
uiItemR(layout, ptr, "pulse", 0, NULL, 0);
@@ -3308,8 +3309,6 @@
uiItemR(layout, ptr, "target", 0, NULL, 0);
uiItemR(layout, ptr, "log", 0, NULL, 0);
-
- //XXXSENSOR
}
static void draw_sensor_message(uiLayout *layout, PointerRNA *ptr)
@@ -3375,6 +3374,8 @@
static void draw_sensor_ray(uiLayout *layout, PointerRNA *ptr)
{
+ uiItemL(layout, "Not ported back yet", 0);
+ /*
uiItemR(layout, ptr, "ray_type", 0, NULL, 0);
switch (RNA_enum_get(ptr, "ray_type")) {
case SENS_RAY_PROPERTY:
@@ -3385,6 +3386,7 @@
uiItemR(layout, ptr, "x_ray_mode", 0, NULL, 0);
uiItemR(layout, ptr, "range", 0, NULL, 0);
uiItemR(layout, ptr, "axis", 0, NULL, 0);
+ */
//XXXSENSOR - same problem as collision. enums badly used by UI code
}
@@ -3547,7 +3549,38 @@
static void draw_actuator_armature(uiLayout *layout, PointerRNA *ptr)
{
- //XXXACTUATOR
+ uiLayout *row;
+ uiItemR(layout, ptr, "mode", 0, NULL, 0);
+ switch (RNA_enum_get(ptr, "mode"))
+ {
+ case ACT_ARM_RUN:
+ break;
+ case ACT_ARM_ENABLE:
+ row = uiLayoutRow(layout, 1);
+ uiItemR(row, ptr, "bone", 0, NULL, 0);
+ uiItemR(row, ptr, "constraint", 0, NULL, 0);
+ break;
+ case ACT_ARM_DISABLE:
+ row = uiLayoutRow(layout, 1);
+ uiItemR(row, ptr, "bone", 0, NULL, 0);
+ uiItemR(row, ptr, "constraint", 0, NULL, 0);
+ break;
+ case ACT_ARM_SETTARGET:
+ row = uiLayoutRow(layout, 1);
+ uiItemR(row, ptr, "bone", 0, NULL, 0);
+ uiItemR(row, ptr, "constraint", 0, NULL, 0);
+
+ uiItemR(layout, ptr, "target", 0, NULL, 0);
+ uiItemR(layout, ptr, "secondary_target", 0, NULL, 0);
+ break;
+ case ACT_ARM_SETWEIGHT:
+ row = uiLayoutRow(layout, 1);
+ uiItemR(row, ptr, "bone", 0, NULL, 0);
+ uiItemR(row, ptr, "constraint", 0, NULL, 0);
+
+ uiItemR(layout, ptr, "weight", 0, NULL, 0);
+ break;
+ }
}
static void draw_actuator_camera(uiLayout *layout, PointerRNA *ptr)
@@ -3571,12 +3604,70 @@
static void draw_actuator_edit_object(uiLayout *layout, PointerRNA *ptr)
{
- //XXXACTUATOR
+ uiLayout *row, *split, *subsplit;
+ uiItemR(layout, ptr, "mode", 0, NULL, 0);
+
+ switch (RNA_enum_get(ptr, "mode"))
+ {
+ case ACT_EDOB_ADD_OBJECT:
+ row = uiLayoutRow(layout, 0);
+ uiItemR(row, ptr, "object", 0, NULL, 0);
+ uiItemR(row, ptr, "time", 0, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "linear_velocity", 0, NULL, 0);
+ uiItemR(split, ptr, "local_linear_velocity", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "angular_velocity", 0, NULL, 0);
+ uiItemR(split, ptr, "local_angular_velocity", UI_ITEM_R_TOGGLE, NULL, 0);
+ break;
+ case ACT_EDOB_END_OBJECT:
+ break;
+ case ACT_EDOB_REPLACE_MESH:
+ split = uiLayoutSplit(layout, 0.6, 0);
+ uiItemR(split, ptr, "mesh", 0, NULL, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "replace_display_mesh", UI_ITEM_R_TOGGLE, NULL, 0);
+ uiItemR(row, ptr, "replace_physics_mesh", UI_ITEM_R_TOGGLE, NULL, 0);
+ break;
+ case ACT_EDOB_TRACK_TO:
+ split = uiLayoutSplit(layout, 0.5, 0);
+ uiItemR(split, ptr, "track_object", 0, NULL, 0);
+ subsplit = uiLayoutSplit(split, 0.7, 0);
+ uiItemR(subsplit, ptr, "time", 0, NULL, 0);
+ uiItemR(subsplit, ptr, "enable_3d_tracking", UI_ITEM_R_TOGGLE, NULL, 0);
+ break;
+ case ACT_EDOB_DYNAMICS:
+ uiItemR(layout, ptr, "dynamic_operation", 0, NULL, 0);
+ if (RNA_enum_get(ptr, "dynamic_operation") == ACT_EDOB_SET_MASS)
+ uiItemR(layout, ptr, "mass", 0, NULL, 0);
+ break;
+ }
}
static void draw_actuator_filter_2d(uiLayout *layout, PointerRNA *ptr)
{
- //XXXACTUATOR
+ uiLayout *split;
+
+ uiItemR(layout, ptr, "mode", 0, NULL, 0);
+ switch (RNA_enum_get(ptr, "mode"))
+ {
+ case ACT_2DFILTER_CUSTOMFILTER:
+ uiItemR(layout, ptr, "filter_pass", 0, NULL, 0);
+ uiItemR(layout, ptr, "glsl_shader", 0, NULL, 0);
+ break;
+ case ACT_2DFILTER_MOTIONBLUR:
+ split=uiLayoutSplit(layout, 0.9, 0);
+ uiItemR(split, ptr, "motion_blur_value", 0, NULL, 0);
+ uiItemR(split, ptr, "enable_motion_blur", UI_ITEM_R_TOGGLE, NULL, 0);
+ break;
+ default: // all other 2D Filters
+ uiItemR(layout, ptr, "filter_pass", 0, NULL, 0);
+ break;
+ }
}
static void draw_actuator_game(uiLayout *layout, PointerRNA *ptr)
@@ -3631,7 +3722,92 @@
static void draw_actuator_motion(uiLayout *layout, PointerRNA *ptr)
{
- //XXXACTUATOR
+ uiLayout *split, *row, *col, *subcol;
+ Object *ob = (Object *)ptr->id.data;
+ PointerRNA settings_ptr;
+
+ RNA_pointer_create((ID *)ob, &RNA_GameObjectSettings, ob, &settings_ptr);
+
+ uiItemR(layout, ptr, "mode", 0, NULL, 0);
+
+ switch (RNA_enum_get(ptr, "mode")) {
+ case ACT_OBJECT_NORMAL:
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "loc", 0, NULL, 0);
+ uiItemR(split, ptr, "local_location", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "rot", 0, NULL, 0);
+ uiItemR(split, ptr, "local_rotation", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ if (RNA_enum_get(&settings_ptr, "physics_type") != OB_BODY_TYPE_DYNAMIC)
+ break;
+
+ uiItemL(layout, "Dynamic Object Settings:", 0);
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "force", 0, NULL, 0);
+ uiItemR(split, ptr, "local_force", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "torque", 0, NULL, 0);
+ uiItemR(split, ptr, "local_torque", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "linear_velocity", 0, NULL, 0);
+ row = uiLayoutRow(split, 1);
+ uiItemR(row, ptr, "local_linear_velocity", UI_ITEM_R_TOGGLE, NULL, 0);
+ uiItemR(row, ptr, "add_linear_velocity", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "angular_velocity", 0, NULL, 0);
+ uiItemR(split, ptr, "local_angular_velocity", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ uiItemR(layout, ptr, "damping", 0, NULL, 0);
+ break;
+ case ACT_OBJECT_SERVO:
+ uiItemR(layout, ptr, "reference_object", 0, NULL, 0);
+
+ split = uiLayoutSplit(layout, 0.9, 0);
+ row = uiLayoutRow(split, 0);
+ uiItemR(row, ptr, "linear_velocity", 0, NULL, 0);
+ uiItemR(split, ptr, "local_linear_velocity", UI_ITEM_R_TOGGLE, NULL, 0);
+
+ row = uiLayoutRow(layout, 0);
+ col = uiLayoutColumn(row, 0);
+ uiItemR(col, ptr, "servo_limit_x", UI_ITEM_R_TOGGLE, NULL, 0);
+ subcol = uiLayoutColumn(col, 0);
+ uiLayoutSetActive(subcol, RNA_boolean_get(ptr, "servo_limit_x")==1);
+ uiItemR(subcol, ptr, "force_max_x", 0, NULL, 0);
+ uiItemR(subcol, ptr, "force_min_x", 0, NULL, 0);
+
+ col = uiLayoutColumn(row, 0);
+ uiItemR(col, ptr, "servo_limit_y", UI_ITEM_R_TOGGLE, NULL, 0);
+ subcol = uiLayoutColumn(col, 0);
+ uiLayoutSetActive(subcol, RNA_boolean_get(ptr, "servo_limit_y")==1);
+ uiItemR(subcol, ptr, "force_max_y", 0, NULL, 0);
+ uiItemR(subcol, ptr, "force_min_y", 0, NULL, 0);
+
+ col = uiLayoutColumn(row, 0);
+ uiItemR(col, ptr, "servo_limit_z", UI_ITEM_R_TOGGLE, NULL, 0);
+ subcol = uiLayoutColumn(col, 0);
+ uiLayoutSetActive(subcol, RNA_boolean_get(ptr, "servo_limit_z")==1);
+ uiItemR(subcol, ptr, "force_max_z", 0, NULL, 0);
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list