[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [16328] branches/apricot: svn merge -r 16297:HEAD https://svn.blender.org/svnroot/bf-blender/trunk/ blender
Campbell Barton
ideasman42 at gmail.com
Mon Sep 1 09:03:09 CEST 2008
Revision: 16328
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16328
Author: campbellbarton
Date: 2008-09-01 09:03:09 +0200 (Mon, 01 Sep 2008)
Log Message:
-----------
svn merge -r 16297:HEAD https://svn.blender.org/svnroot/bf-blender/trunk/blender
Modified Paths:
--------------
branches/apricot/CMakeLists.txt
branches/apricot/release/scripts/bpymodules/colladaImEx/cstartup.py
branches/apricot/source/blender/blenkernel/intern/ipo.c
branches/apricot/source/blender/include/BIF_editarmature.h
branches/apricot/source/blender/makesdna/DNA_sensor_types.h
branches/apricot/source/blender/src/buttons_logic.c
branches/apricot/source/blender/src/drawgpencil.c
branches/apricot/source/blender/src/editarmature.c
branches/apricot/source/blender/src/editnode.c
branches/apricot/source/blender/src/editobject.c
branches/apricot/source/blender/src/gpencil.c
branches/apricot/source/blender/src/header_view3d.c
branches/apricot/source/blender/src/transform_conversions.c
branches/apricot/source/gameengine/Converter/BL_ArmatureObject.cpp
branches/apricot/source/gameengine/Converter/BL_ArmatureObject.h
branches/apricot/source/gameengine/Converter/KX_ConvertSensors.cpp
branches/apricot/source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp
branches/apricot/source/gameengine/GameLogic/Joystick/SCA_Joystick.h
branches/apricot/source/gameengine/GameLogic/Joystick/SCA_JoystickDefines.h
branches/apricot/source/gameengine/GameLogic/SCA_JoystickManager.cpp
branches/apricot/source/gameengine/GameLogic/SCA_JoystickManager.h
branches/apricot/source/gameengine/GameLogic/SCA_JoystickSensor.cpp
branches/apricot/source/gameengine/GameLogic/SCA_JoystickSensor.h
branches/apricot/source/gameengine/PyDoc/KX_GameObject.py
branches/apricot/source/gameengine/PyDoc/KX_ObjectActuator.py
branches/apricot/source/gameengine/PyDoc/KX_PolyProxy.py
branches/apricot/source/gameengine/PyDoc/KX_TrackToActuator.py
branches/apricot/source/gameengine/PyDoc/Rasterizer.py
branches/apricot/source/gameengine/PyDoc/SCA_DelaySensor.py
Modified: branches/apricot/CMakeLists.txt
===================================================================
--- branches/apricot/CMakeLists.txt 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/CMakeLists.txt 2008-09-01 07:03:09 UTC (rev 16328)
@@ -255,7 +255,11 @@
SET(GETTEXT ${LIBDIR}/gettext)
SET(GETTEXT_INC ${GETTEXT}/include)
- SET(GETTEXT_LIB gnu_gettext)
+ IF(CMAKE_CL_64)
+ SET(GETTEXT_LIB gettextlib)
+ ELSE(CMAKE_CL_64)
+ SET(GETTEXT_LIB gnu_gettext)
+ ENDIF(CMAKE_CL_64)
SET(GETTEXT_LIBPATH ${GETTEXT}/lib)
SET(FREETYPE ${LIBDIR}/freetype)
@@ -286,7 +290,12 @@
SET(FFMPEG_LIB avcodec-51 avformat-51 avutil-49)
SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
+ IF(CMAKE_CL_64)
+ SET(LLIBS kernel32 user32 vfw32 winmm ws2_32 )
+ ELSE(CMAKE_CL_64)
SET(LLIBS kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid ws2_32 vfw32 winmm)
+ ENDIF(CMAKE_CL_64)
+
IF(WITH_OPENAL)
SET(LLIBS ${LLIBS} dxguid)
ENDIF(WITH_OPENAL)
@@ -324,7 +333,7 @@
SET(WINTAB_INC ${LIBDIR}/wintab/include)
IF(CMAKE_CL_64)
- SET(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib;MSVCRT.lib ")
+ SET(PLATFORM_LINKFLAGS "/MACHINE:X64 /NODEFAULTLIB:libc.lib;MSVCRT.lib ")
ELSE(CMAKE_CL_64)
SET(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib ")
ENDIF(CMAKE_CL_64)
Modified: branches/apricot/release/scripts/bpymodules/colladaImEx/cstartup.py
===================================================================
--- branches/apricot/release/scripts/bpymodules/colladaImEx/cstartup.py 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/release/scripts/bpymodules/colladaImEx/cstartup.py 2008-09-01 07:03:09 UTC (rev 16328)
@@ -53,6 +53,7 @@
# Check if full version of python is installed.
try:
import os
+ import xml
except ImportError:
print"Error! Could not find full version of Python..."
_ERROR = True
Modified: branches/apricot/source/blender/blenkernel/intern/ipo.c
===================================================================
--- branches/apricot/source/blender/blenkernel/intern/ipo.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/blenkernel/intern/ipo.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -1695,6 +1695,8 @@
icu->ymax= 5.0; break;
case MA_ADD:
icu->ymax= 1.0; break;
+ case MA_EMIT:
+ icu->ymax= 2.0; break;
default:
icu->ymax= 1.0; break;
}
Modified: branches/apricot/source/blender/include/BIF_editarmature.h
===================================================================
--- branches/apricot/source/blender/include/BIF_editarmature.h 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/include/BIF_editarmature.h 2008-09-01 07:03:09 UTC (rev 16328)
@@ -100,13 +100,14 @@
void make_editArmature(void);
void make_trans_bones (char mode);
+void remake_editArmature(void);
+void editbones_to_armature(struct ListBase *list, struct Object *ob);
int do_pose_selectbuffer(struct Base *base, unsigned int *buffer, short hits);
void generateSkeleton(void);
void mouse_armature(void);
-void remake_editArmature(void);
void selectconnected_armature(void);
void selectconnected_posearmature(void);
void armature_select_hierarchy(short direction, short add_to_sel);
Modified: branches/apricot/source/blender/makesdna/DNA_sensor_types.h
===================================================================
--- branches/apricot/source/blender/makesdna/DNA_sensor_types.h 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/makesdna/DNA_sensor_types.h 2008-09-01 07:03:09 UTC (rev 16328)
@@ -164,7 +164,7 @@
typedef struct bJoystickSensor {
char name[32];
short type;
- short pad;
+ short joyindex;
int axis;
int axisf;
int button;
@@ -266,6 +266,7 @@
#define SENS_JOY_HAT_DIR 0
#define SENS_DELAY_REPEAT 1
-
+// should match JOYINDEX_MAX in SCA_JoystickDefines.h */
+#define SENS_JOY_MAXINDEX 8
#endif
Modified: branches/apricot/source/blender/src/buttons_logic.c
===================================================================
--- branches/apricot/source/blender/src/buttons_logic.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/src/buttons_logic.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -1444,10 +1444,13 @@
draw_default_sensor_header(sens, block, xco, yco, width);
joy= sens->data;
-
+ uiDefButS(block, NUM, 1, "Index:", xco+10, yco-44, 0.6 * (width-120), 19,
+ &joy->joyindex, 0, SENS_JOY_MAXINDEX-1, 100, 0,
+ "Spesify which joystick to use");
+
str= "Type %t|Button %x0|Axis %x1|Hat%x2";
- uiDefButS(block, MENU, B_REDR, str, xco+10, yco-44, 0.6 * (width-20), 19,
+ uiDefButS(block, MENU, B_REDR, str, xco+87, yco-44, 0.6 * (width-150), 19,
&joy->type, 0, 31, 0, 0,
"The type of event this joystick sensor is triggered on.");
Modified: branches/apricot/source/blender/src/drawgpencil.c
===================================================================
--- branches/apricot/source/blender/src/drawgpencil.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/src/drawgpencil.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -145,6 +145,13 @@
allqueue(REDRAWACTION, 0);
}
+/* convert the active layer to geometry */
+void gp_ui_convertlayer_cb (void *gpd, void *gpl)
+{
+ gpencil_layer_setactive(gpd, gpl);
+ gpencil_convert_menu();
+}
+
/* ------- Drawing Code ------- */
/* draw the controls for a given layer */
@@ -166,7 +173,7 @@
/* rounded header */
if (active) uiBlockSetCol(block, TH_BUT_ACTION);
rb_col= (active)?-20:20;
- uiDefBut(block, ROUNDBOX, B_DIFF, "", *xco-8, *yco-2, width, 24, NULL, 5.0, 0.0, 15 , rb_col-20, "");
+ uiDefBut(block, ROUNDBOX, B_REDR, "", *xco-8, *yco-2, width, 24, NULL, 5.0, 0.0, 15 , rb_col-20, "");
if (active) uiBlockSetCol(block, TH_AUTO);
/* lock toggle */
@@ -249,8 +256,14 @@
/* options */
uiBlockBeginAlign(block);
- but= uiDefBut(block, BUT, B_REDR, "Del Active Frame", *xco+160, *yco-75, 140, 20, NULL, 0, 0, 0, 0, "Erases the the active frame for this layer (Hotkey = Alt-XKEY/DEL)");
- uiButSetFunc(but, gp_ui_delframe_cb, gpd, gpl);
+ if (curarea->spacetype == SPACE_VIEW3D) {
+ but= uiDefBut(block, BUT, B_REDR, "Convert to...", *xco+160, *yco-75, 140, 20, NULL, 0, 0, 0, 0, "Converts this layer's strokes to geometry (Hotkey = Alt-Shift-C)");
+ uiButSetFunc(but, gp_ui_convertlayer_cb, gpd, gpl);
+ }
+ else {
+ but= uiDefBut(block, BUT, B_REDR, "Del Active Frame", *xco+160, *yco-75, 140, 20, NULL, 0, 0, 0, 0, "Erases the the active frame for this layer (Hotkey = Alt-XKEY/DEL)");
+ uiButSetFunc(but, gp_ui_delframe_cb, gpd, gpl);
+ }
but= uiDefBut(block, BUT, B_REDR, "Del Last Stroke", *xco+160, *yco-95, 140, 20, NULL, 0, 0, 0, 0, "Erases the last stroke from the active frame (Hotkey = Alt-XKEY/DEL)");
uiButSetFunc(but, gp_ui_delstroke_cb, gpd, gpl);
Modified: branches/apricot/source/blender/src/editarmature.c
===================================================================
--- branches/apricot/source/blender/src/editarmature.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/src/editarmature.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -440,9 +440,23 @@
}
/* helper for apply_armature_pose2bones - fixes parenting of objects that are bone-parented to armature */
-static void applyarmature_fix_boneparents (Object *ob)
+static void applyarmature_fix_boneparents (Object *armob)
{
+ Object *ob;
+ /* go through all objects in database */
+ for (ob= G.main->object.first; ob; ob= ob->id.next) {
+ /* if parent is bone in this armature, apply corrections */
+ if ((ob->parent == armob) && (ob->partype == PARBONE)) {
+ /* apply current transform from parent (not yet destroyed),
+ * then calculate new parent inverse matrix
+ */
+ apply_obmat(ob);
+
+ what_does_parent(ob);
+ Mat4Invert(ob->parentinv, workob.obmat);
+ }
+ }
}
/* set the current pose as the restpose */
@@ -463,6 +477,9 @@
}
arm= get_armature(ob);
+ /* helpful warnings... */
+ // TODO: add warnings to be careful about actions, applying deforms first, etc.
+
/* Get editbones of active armature to alter */
if (G.edbo.first) BLI_freelistN(&G.edbo);
make_boneList(&G.edbo, &arm->bonebase, NULL);
@@ -485,9 +502,9 @@
float premat[3][3], imat[3][3],pmat[3][3], tmat[3][3];
float delta[3], eul[3];
- /* obtain new auto-yrotation */
+ /* obtain new auto y-rotation */
VecSubf(delta, curbone->tail, curbone->head);
- vec_roll_to_mat3(delta, curbone->roll, premat);
+ vec_roll_to_mat3(delta, 0.0, premat);
Mat3Inv(imat, premat);
/* get pchan 'visual' matrix */
@@ -503,9 +520,11 @@
/* clear transform values for pchan */
pchan->loc[0]= pchan->loc[1]= pchan->loc[2]= 0;
- pchan->size[0]= pchan->size[1]= pchan->size[2]= 1;
pchan->quat[1]= pchan->quat[2]= pchan->quat[3]= 0;
- pchan->quat[0]= 1;
+ pchan->quat[0]= pchan->size[0]= pchan->size[1]= pchan->size[2]= 1;
+
+ /* set anim lock */
+ curbone->flag |= BONE_UNKEYED;
}
/* convert editbones back to bones */
Modified: branches/apricot/source/blender/src/editnode.c
===================================================================
--- branches/apricot/source/blender/src/editnode.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/src/editnode.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -2001,7 +2001,10 @@
void node_insert_key(SpaceNode *snode)
{
bNode *node= editnode_get_active(snode->edittree);
-
+
+ if(node == NULL)
+ return;
+
if(node->type==CMP_NODE_TIME) {
if(node->custom1<node->custom2) {
Modified: branches/apricot/source/blender/src/editobject.c
===================================================================
--- branches/apricot/source/blender/src/editobject.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/src/editobject.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -2828,6 +2828,7 @@
if(G.scene->id.lib) return;
obact= OBACT;
+ if (obact == NULL) return;
if(!obact->flag & SELECT) return;
if(G.obedit) return;
Modified: branches/apricot/source/blender/src/gpencil.c
===================================================================
--- branches/apricot/source/blender/src/gpencil.c 2008-09-01 06:25:13 UTC (rev 16327)
+++ branches/apricot/source/blender/src/gpencil.c 2008-09-01 07:03:09 UTC (rev 16328)
@@ -46,6 +46,7 @@
#include "BLI_blenlib.h"
#include "DNA_listBase.h"
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list