Revision: 27079
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27079
Author: campbellbarton
Date: 2010-02-22 13:25:58 +0100 (Mon, 22 Feb 2010)
Log Message:
-----------
game engine support for recording animation back & some other minor changes.
Modified Paths:
--------------
trunk/blender/release/scripts/op/fcurve_euler_filter.py
trunk/blender/release/scripts/ui/properties_game.py
trunk/blender/release/scripts/ui/space_graph.py
trunk/blender/release/scripts/ui/space_info.py
trunk/blender/source/blender/editors/space_view3d/view3d_view.c
trunk/blender/source/blender/makesdna/DNA_scene_types.h
trunk/blender/source/blender/makesrna/intern/rna_scene.c
trunk/blender/source/blender/python/intern/bpy_rna.c
trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
trunk/blender/source/blenderplayer/bad_level_call_stubs/stubs.c
trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.h
trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h
Modified: trunk/blender/release/scripts/op/fcurve_euler_filter.py
===================================================================
--- trunk/blender/release/scripts/op/fcurve_euler_filter.py 2010-02-22
10:36:53 UTC (rev 27078)
+++ trunk/blender/release/scripts/op/fcurve_euler_filter.py 2010-02-22
12:25:58 UTC (rev 27079)
@@ -45,7 +45,7 @@
class DiscontFilterOp(bpy.types.Operator):
"""Fixes the most common causes of gimbal lock in the fcurves of the
active bone"""
- bl_idname = "graph.discont_filter"
+ bl_idname = "graph.euler_filter"
bl_label = "Filter out discontinuities in the active fcurves"
def poll(self, context):
@@ -63,4 +63,3 @@
if __name__ == "__main__":
register()
-
Modified: trunk/blender/release/scripts/ui/properties_game.py
===================================================================
--- trunk/blender/release/scripts/ui/properties_game.py 2010-02-22 10:36:53 UTC
(rev 27078)
+++ trunk/blender/release/scripts/ui/properties_game.py 2010-02-22 12:25:58 UTC
(rev 27079)
@@ -357,13 +357,13 @@
col.prop(gs, "show_debug_properties", text="Debug Properties")
col.prop(gs, "show_framerate_profile", text="Framerate and Profile")
col.prop(gs, "show_physics_visualization", text="Physics
Visualization")
- col.prop(gs, "deprecation_warnings")
+ col.prop(gs, "use_deprecation_warnings")
if wide_ui:
col = split.column()
col.label(text="Render:")
- col.prop(gs, "all_frames")
- col.prop(gs, "display_lists")
+ col.prop(gs, "use_frame_rate")
+ col.prop(gs, "use_display_lists")
class RENDER_PT_game_sound(RenderButtonsPanel):
Modified: trunk/blender/release/scripts/ui/space_graph.py
===================================================================
--- trunk/blender/release/scripts/ui/space_graph.py 2010-02-22 10:36:53 UTC
(rev 27078)
+++ trunk/blender/release/scripts/ui/space_graph.py 2010-02-22 12:25:58 UTC
(rev 27079)
@@ -148,7 +148,7 @@
layout.operator("anim.channels_collapse")
layout.separator()
- layout.operator("graph.discont_filter", text="Discontinuity (Euler)
Filter")
+ layout.operator("graph.euler_filter", text="Discontinuity (Euler)
Filter")
class GRAPH_MT_key(bpy.types.Menu):
Modified: trunk/blender/release/scripts/ui/space_info.py
===================================================================
--- trunk/blender/release/scripts/ui/space_info.py 2010-02-22 10:36:53 UTC
(rev 27078)
+++ trunk/blender/release/scripts/ui/space_info.py 2010-02-22 12:25:58 UTC
(rev 27079)
@@ -253,7 +253,8 @@
layout.prop(gs, "show_debug_properties")
layout.prop(gs, "show_framerate_profile")
layout.prop(gs, "show_physics_visualization")
- layout.prop(gs, "deprecation_warnings")
+ layout.prop(gs, "use_deprecation_warnings")
+ layout.prop(gs, "use_animation_record")
class INFO_MT_render(bpy.types.Menu):
Modified: trunk/blender/source/blender/editors/space_view3d/view3d_view.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_view.c
2010-02-22 10:36:53 UTC (rev 27078)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_view.c
2010-02-22 12:25:58 UTC (rev 27079)
@@ -1690,8 +1690,8 @@
test= (gm->flag & GAME_ENABLE_ALL_FRAMES);
SYS_WriteCommandLineInt(syshandle, "fixedtime", test);
-// a= (G.fileflags & G_FILE_GAME_TO_IPO);
-// SYS_WriteCommandLineInt(syshandle, "game2ipo", a);
+ test= (gm->flag & GAME_ENABLE_ANIMATION_RECORD);
+ SYS_WriteCommandLineInt(syshandle, "animation_record", test);
test= (gm->flag & GAME_IGNORE_DEPRECATION_WARNINGS);
SYS_WriteCommandLineInt(syshandle,
"ignore_deprecation_warnings", test);
Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h 2010-02-22
10:36:53 UTC (rev 27078)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h 2010-02-22
12:25:58 UTC (rev 27079)
@@ -487,6 +487,7 @@
#define GAME_GLSL_NO_NODES (1 << 10)
#define GAME_GLSL_NO_EXTRA_TEX (1 << 11)
#define GAME_IGNORE_DEPRECATION_WARNINGS (1 << 12)
+#define GAME_ENABLE_ANIMATION_RECORD (1 << 13)
/* GameData.matmode */
#define GAME_MAT_TEXFACE 0
Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c 2010-02-22
10:36:53 UTC (rev 27078)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c 2010-02-22
12:25:58 UTC (rev 27079)
@@ -1501,52 +1501,47 @@
prop= RNA_def_property(srna, "use_occlusion_culling", PROP_BOOLEAN,
PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "mode", (1 << 5)); //XXX mode
hardcoded // WO_DBVT_CULLING
RNA_def_property_ui_text(prop, "DBVT culling", "Use optimized Bullet
DBVT tree for view frustrum and occlusion culling");
- RNA_def_property_update(prop, NC_SCENE, NULL);
// not used // deprecated !!!!!!!!!!!!!
prop= RNA_def_property(srna, "activity_culling", PROP_BOOLEAN,
PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "mode", (1 << 3)); //XXX mode
hardcoded
RNA_def_property_ui_text(prop, "Activity Culling", "Activity culling is
enabled");
- RNA_def_property_update(prop, NC_SCENE, NULL);
// not used // deprecated !!!!!!!!!!!!!
prop= RNA_def_property(srna, "activity_culling_box_radius", PROP_FLOAT,
PROP_NONE);
RNA_def_property_float_sdna(prop, NULL, "activityBoxRadius");
RNA_def_property_range(prop, 0.0, 1000.0);
RNA_def_property_ui_text(prop, "box radius", "Radius of the activity
bubble, in Manhattan length. Objects outside the box are activity-culled");
- RNA_def_property_update(prop, NC_SCENE, NULL);
/* booleans */
- prop= RNA_def_property(srna, "all_frames", PROP_BOOLEAN, PROP_NONE);
- RNA_def_property_boolean_sdna(prop, NULL, "flag",
GAME_ENABLE_ALL_FRAMES);
- RNA_def_property_ui_text(prop, "All Frames", "Render as many frames as
possible, rather than respecting framerate");
- RNA_def_property_update(prop, NC_SCENE, NULL);
-
prop= RNA_def_property(srna, "show_debug_properties", PROP_BOOLEAN,
PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flag",
GAME_SHOW_DEBUG_PROPS);
RNA_def_property_ui_text(prop, "Show Debug Properties", "Show
properties marked for debugging while the game runs");
- RNA_def_property_update(prop, NC_SCENE, NULL);
prop= RNA_def_property(srna, "show_framerate_profile", PROP_BOOLEAN,
PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flag", GAME_SHOW_FRAMERATE);
RNA_def_property_ui_text(prop, "Show Framerate and Profile", "Show
framerate and profiling information while the game runs");
- RNA_def_property_update(prop, NC_SCENE, NULL);
prop= RNA_def_property(srna, "show_physics_visualization",
PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flag", GAME_SHOW_PHYSICS);
RNA_def_property_ui_text(prop, "Show Physics Visualization", "Show a
visualization of physics bounds and interactions");
- RNA_def_property_update(prop, NC_SCENE, NULL);
- prop= RNA_def_property(srna, "display_lists", PROP_BOOLEAN, PROP_NONE);
+ prop= RNA_def_property(srna, "use_frame_rate", PROP_BOOLEAN, PROP_NONE);
+ RNA_def_property_boolean_negative_sdna(prop, NULL, "flag",
GAME_ENABLE_ALL_FRAMES);
+ RNA_def_property_ui_text(prop, "Use Frame Rate", "Respect the frame
rate rather then rendering as many frames as possible");
+
+ prop= RNA_def_property(srna, "use_display_lists", PROP_BOOLEAN,
PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flag", GAME_DISPLAY_LISTS);
RNA_def_property_ui_text(prop, "Display Lists", "Use display lists to
speed up rendering by keeping geometry on the GPU");
- RNA_def_property_update(prop, NC_SCENE, NULL);
- prop= RNA_def_property(srna, "deprecation_warnings", PROP_BOOLEAN,
PROP_NONE);
+ prop= RNA_def_property(srna, "use_deprecation_warnings", PROP_BOOLEAN,
PROP_NONE);
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag",
GAME_IGNORE_DEPRECATION_WARNINGS);
RNA_def_property_ui_text(prop, "Deprecation Warnings", "Print warnings
when using deprecated features in the python API");
- RNA_def_property_update(prop, NC_SCENE, NULL);
+ prop= RNA_def_property(srna, "use_animation_record", PROP_BOOLEAN,
PROP_NONE);
+ RNA_def_property_boolean_sdna(prop, NULL, "flag",
GAME_ENABLE_ANIMATION_RECORD);
+ RNA_def_property_ui_text(prop, "Record Animation", "Record animation to
fcurves");
+
/* materials */
prop= RNA_def_property(srna, "material_mode", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_sdna(prop, NULL, "matmode");
Modified: trunk/blender/source/blender/python/intern/bpy_rna.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_rna.c 2010-02-22
10:36:53 UTC (rev 27078)
+++ trunk/blender/source/blender/python/intern/bpy_rna.c 2010-02-22
12:25:58 UTC (rev 27079)
@@ -1639,48 +1639,82 @@
return BPy_Wrap_GetValues(self->ptr.id.data, group);
}
-static PyObject *pyrna_struct_keyframe_insert(BPy_StructRNA *self, PyObject
*args)
+/* internal use for insert and delete */
+int pyrna_struct_keyframe_parse(PointerRNA *ptr, PyObject *args, char
*error_prefix,
+ char **path_full, int *index, float *cfra) /* return values */
{
- char *path, *path_full;
- int index= -1; /* default to all */
- float cfra = CTX_data_scene(BPy_GetContext())->r.cfra;
+ char *path;
PropertyRNA *prop;
- PyObject *result;
- if (!PyArg_ParseTuple(args, "s|if:keyframe_insert", &path, &index,
&cfra))
- return NULL;
+ if (!PyArg_ParseTuple(args, "s|if", &path, &index, &cfra)) {
+ PyErr_Format(PyExc_TypeError, "%.200s: expected a string and
optionally an int and float arguments", error_prefix);
+ return -1;
+ }
- if (self->ptr.data==NULL) {
- PyErr_Format( PyExc_TypeError, "keyframe_insert, this struct
has no data, cant be animated", path);
- return NULL;
+ if (ptr->data==NULL) {
+ PyErr_Format(PyExc_TypeError, "%.200s: this struct has no data,
can't be animated", error_prefix);
+ return -1;
}
- prop = RNA_struct_find_property(&self->ptr, path);
+ prop = RNA_struct_find_property(ptr, path);
if (prop==NULL) {
- PyErr_Format( PyExc_TypeError, "keyframe_insert, property
\"%s\" not found", path);
- return NULL;
@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs