[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30109] branches/render25: Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/ blender -r30081:30108
Campbell Barton
ideasman42 at gmail.com
Thu Jul 8 12:08:02 CEST 2010
Revision: 30109
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30109
Author: campbellbarton
Date: 2010-07-08 12:08:02 +0200 (Thu, 08 Jul 2010)
Log Message:
-----------
Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r30081:30108
Modified Paths:
--------------
branches/render25/CMakeLists.txt
branches/render25/config/darwin-config.py
branches/render25/config/linux2-config.py
branches/render25/release/scripts/ui/space_sequencer.py
branches/render25/release/windows/installer/00.sconsblender.nsi
branches/render25/source/blender/blenkernel/BKE_sequencer.h
branches/render25/source/blender/blenkernel/intern/depsgraph.c
branches/render25/source/blender/blenkernel/intern/object.c
branches/render25/source/blender/blenkernel/intern/sequencer.c
branches/render25/source/blender/editors/mesh/editmesh_tools.c
branches/render25/source/blender/editors/object/object_vgroup.c
branches/render25/source/blender/editors/space_logic/logic_window.c
branches/render25/source/blender/editors/space_sequencer/sequencer_draw.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_ops.c
branches/render25/source/blender/editors/space_sequencer/space_sequencer.c
branches/render25/source/blender/makesdna/DNA_sequence_types.h
branches/render25/source/blender/makesrna/intern/rna_nodetree.c
branches/render25/source/blender/makesrna/intern/rna_sequencer.c
branches/render25/source/blender/windowmanager/intern/wm_operators.c
branches/render25/source/gameengine/GamePlayer/netscape/common/npmac.cpp
branches/render25/source/gameengine/Rasterizer/Makefile
branches/render25/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/Makefile
branches/render25/source/nan_compile.mk
Modified: branches/render25/CMakeLists.txt
===================================================================
--- branches/render25/CMakeLists.txt 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/CMakeLists.txt 2010-07-08 10:08:02 UTC (rev 30109)
@@ -261,6 +261,7 @@
SET(FFMPEG_INC ${FFMPEG}/include)
SET(FFMPEG_LIB avformat avcodec avutil avdevice swscale CACHE STRING "FFMPEG Libraries")
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__STDC_CONSTANT_MACROS")
ENDIF(WITH_FFMPEG)
IF(WITH_FFTW3)
@@ -736,6 +737,7 @@
SET(FFMPEG_INC ${FFMPEG}/include)
SET(FFMPEG_LIB avcodec avdevice avformat avutil mp3lame swscale x264 xvidcore theora theoradec theoraenc vorbis vorbisenc vorbisfile ogg)
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__STDC_CONSTANT_MACROS")
ENDIF(WITH_FFMPEG)
SET(LIBSAMPLERATE ${LIBDIR}/samplerate)
Modified: branches/render25/config/darwin-config.py
===================================================================
--- branches/render25/config/darwin-config.py 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/config/darwin-config.py 2010-07-08 10:08:02 UTC (rev 30109)
@@ -279,9 +279,9 @@
CFLAGS = ['-pipe','-funsigned-char']+ARCH_FLAGS
-CPPFLAGS = ['-fpascal-strings']+ARCH_FLAGS
-CCFLAGS = ['-pipe','-funsigned-char','-fpascal-strings']+ARCH_FLAGS
-CXXFLAGS = ['-pipe','-funsigned-char', '-fpascal-strings']+ARCH_FLAGS
+CPPFLAGS = []+ARCH_FLAGS
+CCFLAGS = ['-pipe','-funsigned-char']+ARCH_FLAGS
+CXXFLAGS = ['-pipe','-funsigned-char']+ARCH_FLAGS
if WITH_GHOST_COCOA==True:
PLATFORM_LINKFLAGS = ['-fexceptions','-framework','CoreServices','-framework','Foundation','-framework','IOKit','-framework','AppKit','-framework','Cocoa','-framework','Carbon','-framework','AudioUnit','-framework','AudioToolbox','-framework','CoreAudio','-framework','OpenAL']+ARCH_FLAGS
Modified: branches/render25/config/linux2-config.py
===================================================================
--- branches/render25/config/linux2-config.py 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/config/linux2-config.py 2010-07-08 10:08:02 UTC (rev 30109)
@@ -181,6 +181,9 @@
CPPFLAGS = []
CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing','-D_LARGEFILE_SOURCE', '-D_FILE_OFFSET_BITS=64']
+if WITH_BF_FFMPEG:
+ # libavutil needs UINT64_C()
+ CXXFLAGS += ['-D__STDC_CONSTANT_MACROS', ]
REL_CFLAGS = ['-O2']
REL_CCFLAGS = ['-O2']
##BF_DEPEND = True
Modified: branches/render25/release/scripts/ui/space_sequencer.py
===================================================================
--- branches/render25/release/scripts/ui/space_sequencer.py 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/release/scripts/ui/space_sequencer.py 2010-07-08 10:08:02 UTC (rev 30109)
@@ -69,7 +69,15 @@
else:
layout.prop(st, "display_channel", text="Channel")
+ ed = context.scene.sequence_editor
+ if ed:
+ row = layout.row(align=True)
+ row.prop(ed, "show_overlay", text="", icon='GHOST_ENABLED')
+ if ed.show_overlay:
+ row.prop(ed, "overlay_frame", text="")
+ row.prop(ed, "overlay_lock", text="", icon='LOCKED')
+
class SEQUENCER_MT_view_toggle(bpy.types.Menu):
bl_label = "View Type"
@@ -126,6 +134,10 @@
layout.operator_context = 'INVOKE_REGION_PREVIEW'
layout.operator("sequencer.view_all_preview", text='Fit preview in window')
layout.operator_context = 'INVOKE_DEFAULT'
+
+ # # XXX, invokes in the header view
+ # layout.operator("sequencer.view_ghost_border", text='Overlay Border')
+
layout.operator("sequencer.view_selected")
layout.prop(st, "draw_frames")
Modified: branches/render25/release/windows/installer/00.sconsblender.nsi
===================================================================
--- branches/render25/release/windows/installer/00.sconsblender.nsi 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/release/windows/installer/00.sconsblender.nsi 2010-07-08 10:08:02 UTC (rev 30109)
@@ -168,10 +168,9 @@
CreateDirectory "$SMPROGRAMS\Blender Foundation\Blender\"
CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\Blender.lnk" "$INSTDIR\Blender.exe" "" "$INSTDIR\blender.exe" 0
- CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\Readme.lnk" "$INSTDIR\Blender.html" "" "" 0
+ CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\Readme.lnk" "$INSTDIR\readme.html" "" "" 0
CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\Copyright.lnk" "$INSTDIR\Copyright.txt" "" "$INSTDIR\copyright.txt" 0
CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\GPL-license.lnk" "$INSTDIR\GPL-license.txt" "" "$INSTDIR\GPL-license.txt" 0
- CreateShortCut "$SMPROGRAMS\Blender Foundation\Blender\Help.lnk" "$INSTDIR\Help.url"
SectionEnd
Section "Add Desktop Blender-[VERSION] shortcut" Section3
Modified: branches/render25/source/blender/blenkernel/BKE_sequencer.h
===================================================================
--- branches/render25/source/blender/blenkernel/BKE_sequencer.h 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/source/blender/blenkernel/BKE_sequencer.h 2010-07-08 10:08:02 UTC (rev 30109)
@@ -187,6 +187,7 @@
int seq_test_overlap(struct ListBase * seqbasep, struct Sequence *test);
struct ListBase *seq_seqbase(struct ListBase *seqbase, struct Sequence *seq);
void seq_offset_animdata(struct Scene *scene, struct Sequence *seq, int ofs);
+void seq_dupe_animdata(struct Scene *scene, char *name_from, char *name_to);
int shuffle_seq(struct ListBase * seqbasep, struct Sequence *test, struct Scene *evil_scene);
int shuffle_seq_time(ListBase * seqbasep, struct Scene *evil_scene);
int seqbase_isolated_sel_check(struct ListBase *seqbase);
@@ -232,6 +233,7 @@
/* seq_dupli' flags */
#define SEQ_DUPE_UNIQUE_NAME 1<<0
#define SEQ_DUPE_CONTEXT 1<<1
+#define SEQ_DUPE_ANIM 1<<2
/* use as an api function */
typedef struct Sequence *(*SeqLoadFunc)(struct bContext *, ListBase *, struct SeqLoadInfo *);
Modified: branches/render25/source/blender/blenkernel/intern/depsgraph.c
===================================================================
--- branches/render25/source/blender/blenkernel/intern/depsgraph.c 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/source/blender/blenkernel/intern/depsgraph.c 2010-07-08 10:08:02 UTC (rev 30109)
@@ -1877,26 +1877,19 @@
}
}
-/* flushes all recalc flags in objects down the dependency tree */
-void DAG_scene_flush_update(Scene *sce, unsigned int lay, int time)
+/* flush layer flags to dependencies */
+static void dag_scene_flush_layers(Scene *sce, int lay)
{
- DagNode *firstnode, *node;
+ DagNode *node, *firstnode;
DagAdjList *itA;
- Object *ob;
Base *base;
int lasttime;
-
- if(sce->theDag==NULL) {
- printf("DAG zero... not allowed to happen!\n");
- DAG_scene_sort(sce);
- }
-
+
firstnode= sce->theDag->DagNode.first; // always scene node
for(itA = firstnode->child; itA; itA= itA->next)
itA->lay= 0;
-
- /* first we flush the layer flags */
+
sce->theDag->time++; // so we know which nodes were accessed
lasttime= sce->theDag->time;
@@ -1930,7 +1923,26 @@
for(itA = firstnode->child; itA; itA= itA->next)
if(itA->node->lasttime!=lasttime && itA->node->type==ID_OB)
flush_layer_node(sce, itA->node, lasttime);
+}
+
+/* flushes all recalc flags in objects down the dependency tree */
+void DAG_scene_flush_update(Scene *sce, unsigned int lay, int time)
+{
+ DagNode *firstnode;
+ DagAdjList *itA;
+ Object *ob;
+ int lasttime;
+ if(sce->theDag==NULL) {
+ printf("DAG zero... not allowed to happen!\n");
+ DAG_scene_sort(sce);
+ }
+
+ firstnode= sce->theDag->DagNode.first; // always scene node
+
+ /* first we flush the layer flags */
+ dag_scene_flush_layers(sce, lay);
+
/* then we use the relationships + layer info to flush update events */
sce->theDag->time++; // so we know which nodes were accessed
lasttime= sce->theDag->time;
@@ -2231,7 +2243,8 @@
Object *ob;
Group *group;
GroupObject *go;
- unsigned int lay;
+ DagNode *node;
+ unsigned int lay, oblay;
dag_current_scene_layers(bmain, &scene, &lay);
@@ -2240,10 +2253,14 @@
remade, tag them so they get remade in the scene update loop,
note armature poses or object matrices are preserved and do not
require updates, so we skip those */
+ dag_scene_flush_layers(scene, lay);
+
for(SETLOOPER(scene, base)) {
ob= base->object;
+ node= (sce->theDag)? dag_get_node(sce->theDag, ob): NULL;
+ oblay= (node)? node->lay: ob->lay;
- if(base->lay & lay) {
+ if(oblay & lay) {
//if(ELEM5(ob->type, OB_MESH, OB_CURVE, OB_SURF, OB_FONT, OB_MBALL))
ob->recalc |= OB_RECALC_DATA;
if(ob->dup_group)
Modified: branches/render25/source/blender/blenkernel/intern/object.c
===================================================================
--- branches/render25/source/blender/blenkernel/intern/object.c 2010-07-08 10:03:29 UTC (rev 30108)
+++ branches/render25/source/blender/blenkernel/intern/object.c 2010-07-08 10:08:02 UTC (rev 30109)
@@ -2491,6 +2491,17 @@
if(ob->pose)
make_pose_channels_hash(ob->pose);
+ if(ob->recalc & OB_RECALC_DATA) {
+ if(ob->type==OB_ARMATURE) {
+ /* this happens for reading old files and to match library armatures
+ with poses we do it ahead of where_is_object to ensure animation
+ is evaluated on the rebuilt pose, otherwise we get incorrect poses
+ on file load */
+ if(ob->pose==NULL || (ob->pose->flag & POSE_RECALC))
+ armature_rebuild_pose(ob, ob->data);
+ }
+ }
+
/* XXX new animsys warning: depsgraph tag OB_RECALC_DATA should not skip drivers,
which is only in where_is_object now */
// XXX: should this case be OB_RECALC_OB instead?
@@ -2553,11 +2564,6 @@
lattice_calc_modifiers(scene, ob);
}
else if(ob->type==OB_ARMATURE) {
- /* this happens for reading old files and to match library armatures with poses */
- // XXX this won't screw up the pose set already...
- if(ob->pose==NULL || (ob->pose->flag & POSE_RECALC))
- armature_rebuild_pose(ob, ob->data);
-
/* evaluate drivers */
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list