[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17283] branches/animsys2/source/blender/ python/api2_2x: AnimSys2: PyAPI Access for Per-Segment Interpolation

2008-11-01 Thread Joshua Leung
Revision: 17283
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17283
Author:   aligorith
Date: 2008-11-02 04:02:58 +0100 (Sun, 02 Nov 2008)

Log Message:
---
AnimSys2: PyAPI Access for Per-Segment Interpolation

Modified Paths:
--
branches/animsys2/source/blender/python/api2_2x/BezTriple.c
branches/animsys2/source/blender/python/api2_2x/doc/BezTriple.py

Modified: branches/animsys2/source/blender/python/api2_2x/BezTriple.c
===
--- branches/animsys2/source/blender/python/api2_2x/BezTriple.c 2008-11-02 
00:25:39 UTC (rev 17282)
+++ branches/animsys2/source/blender/python/api2_2x/BezTriple.c 2008-11-02 
03:02:58 UTC (rev 17283)
@@ -54,6 +54,8 @@
 static int BezTriple_setPoints( BPy_BezTriple * self, PyObject * args );
 static PyObject *BezTriple_getPoints( BPy_BezTriple * self );
 static PyObject *BezTriple_getTriple( BPy_BezTriple * self );
+static PyObject *BezTriple_setInterpolation( BPy_BezTriple * self, PyObject * 
value );
+static PyObject *BezTriple_getInterpolation( BPy_BezTriple * self );
 
 /
  Python method structure definition for Blender.BezTriple module:  
@@ -79,6 +81,10 @@
 "() - return BezTriple knot point x and y coordinates"},
{"getTriple", ( PyCFunction ) BezTriple_getTriple, METH_NOARGS,
 "() - return list of 3 floating point triplets.  order is H1, knot, 
H2"},
+   {"setInterpolation", ( PyCFunction ) BezTriple_setInterpolation,
+METH_O, "(str) - Sets the interpolation type of the segment starting 
from this BezTriple"},
+   {"getInterpolation", ( PyCFunction ) BezTriple_getInterpolation,
+METH_NOARGS, "() - Gets the interpolation type of the segment starting 
from this BezTriple"},
{NULL, NULL, 0, NULL}
 };
 
@@ -401,6 +407,53 @@
return 0;
 }
 
+static PyObject *BezTriple_getInterpolation( BPy_BezTriple * self )
+{
+   char *str = 0;
+   BezTriple *bezt = self->beztriple;
+
+   switch( bezt->ipo ) {
+   case IPO_BEZ:
+   str = "Bezier";
+   break;
+   case IPO_CONST:
+   str = "Constant";
+   break;
+   case IPO_LIN:
+   str = "Linear";
+   break;
+   default:
+   return EXPP_ReturnPyObjError( PyExc_TypeError,
+   "unknown interpolation type" );
+   }
+
+   return PyString_FromString( str );
+}
+
+static PyObject *BezTriple_setInterpolation( BPy_BezTriple * self, PyObject 
*value )
+{
+   char *interpolationtype = PyString_AsString(value);
+   short id= IPO_BEZ;
+
+   if( !interpolationtype )
+   return EXPP_ReturnPyObjError( PyExc_TypeError,
+   "expected string argument" );
+
+   if( !strcmp( interpolationtype, "Bezier" ) )
+   id = IPO_BEZ;
+   else if( !strcmp( interpolationtype, "Constant" ) )
+   id = IPO_CONST;
+   else if( !strcmp( interpolationtype, "Linear" ) )
+   id = IPO_LIN;
+   else
+   return EXPP_ReturnPyObjError( PyExc_TypeError,
+   "bad interpolation type" );
+   
+   self->beztriple->ipo= id;
+   Py_RETURN_NONE;
+}
+
+
 static PyObject *BezTriple_getHandles( BPy_BezTriple * self )
 {
BezTriple *bezt = self->beztriple;

Modified: branches/animsys2/source/blender/python/api2_2x/doc/BezTriple.py
===
--- branches/animsys2/source/blender/python/api2_2x/doc/BezTriple.py
2008-11-02 00:25:39 UTC (rev 17282)
+++ branches/animsys2/source/blender/python/api2_2x/doc/BezTriple.py
2008-11-02 03:02:58 UTC (rev 17283)
@@ -60,6 +60,9 @@
   @ivar handleTypes: the types of the point's two handles.  See 
   L{HandleTypes} for a complete description.
   @type handleTypes list of two ints
+  @ivar interpolation: The BezTriple's interpolation mode.  See L{InterpTypes} 
for
+  values.
+  @type interpolation: int
   @ivar selects: the select status for [handle, knot, handle].  True/nonzero
   if the point is selected.
   @type selects: list of three ints


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17282] trunk/blender/source/blender: Fix for two proxy + undo related crashes:

2008-11-01 Thread Brecht Van Lommel
Revision: 17282
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17282
Author:   blendix
Date: 2008-11-02 01:25:39 +0100 (Sun, 02 Nov 2008)

Log Message:
---
Fix for two proxy + undo related crashes:

* When making a proxy, the lib linked IPO driver was also changed to
  point to the proxy object, and after undo this local proxy object
  was replaced so the pointer became invalid. In fact it is not needed
  at all to change this because the IPO code maps the pointer to the
  local proxy object already.
* Undoing the make proxy operation would crash because the proxy_from
  pointer in the library linked object would still point to the removed
  object. Now it clears all these pointers before undo, because on each
  undo memory file read they will be set again anyway.

Modified Paths:
--
trunk/blender/source/blender/blenkernel/intern/object.c
trunk/blender/source/blender/blenloader/intern/readblenentry.c
trunk/blender/source/blender/blenloader/intern/readfile.c
trunk/blender/source/blender/blenloader/intern/readfile.h

Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===
--- trunk/blender/source/blender/blenkernel/intern/object.c 2008-11-01 
22:28:27 UTC (rev 17281)
+++ trunk/blender/source/blender/blenkernel/intern/object.c 2008-11-02 
00:25:39 UTC (rev 17282)
@@ -1163,7 +1163,10 @@
ListBase targets = {NULL, NULL};
bConstraintTarget *ct;

-   if(con->ipo) {
+   /* note that we can't change lib linked ipo blocks. for 
making
+* proxies this still works correct however because the 
object
+* is changed to object->proxy_from when evaluating the 
driver. */
+   if(con->ipo && !con->ipo->id.lib) {
IpoCurve *icu;
for(icu= con->ipo->curve.first; icu; icu= 
icu->next) {
if(icu->driver && icu->driver->ob==ob)

Modified: trunk/blender/source/blender/blenloader/intern/readblenentry.c
===
--- trunk/blender/source/blender/blenloader/intern/readblenentry.c  
2008-11-01 22:28:27 UTC (rev 17281)
+++ trunk/blender/source/blender/blenloader/intern/readblenentry.c  
2008-11-02 00:25:39 UTC (rev 17282)
@@ -364,6 +364,9 @@
if (fd) {
strcpy(fd->filename, filename);

+   /* clear ob->proxy_from pointers in G.main */
+   blo_clear_proxy_pointers_from_lib(fd);
+
/* separate libraries from G.main */
blo_split_main(&mainlist, G.main);
/* add the library pointers in oldmap lookup */

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===
--- trunk/blender/source/blender/blenloader/intern/readfile.c   2008-11-01 
22:28:27 UTC (rev 17281)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c   2008-11-02 
00:25:39 UTC (rev 17282)
@@ -1130,6 +1130,19 @@
}
 }
 
+/* lib linked proxy objects point to our local data, we need
+ * to clear that pointer before reading the undo memfile since
+ * the object might be removed, it is set again in reading
+ * if the local object still exists */
+void blo_clear_proxy_pointers_from_lib(FileData *fd)
+{
+   Object *ob= G.main->object.first;
+   
+   for(;ob; ob= ob->id.next)
+   if(ob->id.lib)
+   ob->proxy_from= NULL;
+}
+
 /* assumed; G.main still exists */
 void blo_make_image_pointer_map(FileData *fd)
 {

Modified: trunk/blender/source/blender/blenloader/intern/readfile.h
===
--- trunk/blender/source/blender/blenloader/intern/readfile.h   2008-11-01 
22:28:27 UTC (rev 17281)
+++ trunk/blender/source/blender/blenloader/intern/readfile.h   2008-11-02 
00:25:39 UTC (rev 17282)
@@ -112,6 +112,7 @@
 FileData *blo_openblendermemory( void *buffer, int buffersize, BlendReadError 
*error_r);
 FileData *blo_openblendermemfile(struct MemFile *memfile, BlendReadError 
*error_r);
 
+void blo_clear_proxy_pointers_from_lib(FileData *fd);
 void blo_make_image_pointer_map(FileData *fd);
 void blo_end_image_pointer_map(FileData *fd);
 void blo_add_library_pointer_map(ListBase *mainlist, FileData *fd);


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17281] trunk/blender/source/gameengine/ VideoTexture/blendVideoTex.cpp: VideoTexture: remove numpy dependency.

2008-11-01 Thread Benoit Bolsee
Revision: 17281
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17281
Author:   ben2610
Date: 2008-11-01 23:28:27 +0100 (Sat, 01 Nov 2008)

Log Message:
---
VideoTexture: remove numpy dependency.

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/blendVideoTex.cpp

Modified: trunk/blender/source/gameengine/VideoTexture/blendVideoTex.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/blendVideoTex.cpp  
2008-11-01 22:26:58 UTC (rev 17280)
+++ trunk/blender/source/gameengine/VideoTexture/blendVideoTex.cpp  
2008-11-01 22:28:27 UTC (rev 17281)
@@ -20,16 +20,12 @@
 -
 */
 
-#define PY_ARRAY_UNIQUE_SYMBOL numpyPtr
-
 #include 
 
 #include 
 
 #include 
 
-#include 
-
 //Old API
 //#include "TexPlayer.h"
 //#include "TexImage.h"
@@ -85,15 +81,6 @@
 }
 
 
-// function to initialize numpy structures
-static bool initNumpy (void)
-{
-   // init module and report failure
-   import_array1(false);
-   // report success
-   return true;
-}
-
 // image to numpy array
 static PyObject * imageToArray (PyObject * self, PyObject *args)
 {
@@ -107,15 +94,14 @@
}
// get image structure
PyImage * img = reinterpret_cast(pyImg);
-   // check initialization of numpy interface, and initialize it if needed
-   if (numpyPtr == NULL && !initNumpy()) Py_RETURN_NONE;
// create array object
-   npy_intp dim[1];
-   dim[0] = img->m_image->getBuffSize() / sizeof(unsigned int);
unsigned int * imgBuff = img->m_image->getImage();
// if image is available, convert it to array
if (imgBuff != NULL)
-   return PyArray_SimpleNewFromData(1, dim, NPY_UBYTE, imgBuff);
+// Nasty problem here: the image buffer is an array of integers 
+// in the processor endian format. The user must take care of that in 
the script. 
+// Need to find an elegant solution to this problem 
+return Py_BuildValue("s#", imgBuff, img->m_image->getBuffSize());
// otherwise return None
Py_RETURN_NONE;
 }
@@ -189,9 +175,6 @@
if (m == NULL) 
return NULL;
 
-   // prepare numpy array
-   numpyPtr = NULL;
-
// initialize classes
pyImageTypes.reg(m);
pyFilterTypes.reg(m);


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17280] trunk/lib/windows/python/include/ python2.5/numpy/: VideoTexture: remove numpy dependency, the VideoTexture. imageToArray() function returns n

2008-11-01 Thread Benoit Bolsee
Revision: 17280
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17280
Author:   ben2610
Date: 2008-11-01 23:26:58 +0100 (Sat, 01 Nov 2008)

Log Message:
---
VideoTexture: remove numpy dependency, the VideoTexture.imageToArray() function 
returns now a simple string. If the user wants to process the image data with 
some of the numpy algorithms, he will need to convert the string into a ndarray 
object in his script.

Removed Paths:
-
trunk/lib/windows/python/include/python2.5/numpy/


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17279] branches/projection-paint: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r17236 :HEAD

2008-11-01 Thread Campbell Barton
Revision: 17279
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17279
Author:   campbellbarton
Date: 2008-11-01 23:04:41 +0100 (Sat, 01 Nov 2008)

Log Message:
---
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r17236:HEAD

Modified Paths:
--
branches/projection-paint/config/darwin-config.py
branches/projection-paint/config/openbsd3-config.py
branches/projection-paint/config/sunos5-config.py
branches/projection-paint/config/win32-mingw-config.py
branches/projection-paint/config/win32-vc-config.py
branches/projection-paint/doc/blender-scons.txt
branches/projection-paint/extern/ffmpeg/Makefile
branches/projection-paint/extern/ffmpeg/SConscript
branches/projection-paint/intern/ghost/intern/GHOST_WindowWin32.cpp
branches/projection-paint/projectfiles_vc7/blender/blender.sln
branches/projection-paint/projectfiles_vc7/blender/blender.vcproj

branches/projection-paint/projectfiles_vc7/blender/blenlib/BLI_blenlib.vcproj
branches/projection-paint/projectfiles_vc7/blender/src/BL_src.vcproj
branches/projection-paint/source/blender/blenkernel/intern/CCGSubSurf.c
branches/projection-paint/source/blender/imbuf/intern/util.c
branches/projection-paint/source/blender/python/api2_2x/matrix.c
branches/projection-paint/source/blender/render/intern/source/envmap.c
branches/projection-paint/source/blender/render/intern/source/sss.c
branches/projection-paint/source/blender/src/interface.c

branches/projection-paint/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
branches/projection-paint/source/gameengine/CMakeLists.txt
branches/projection-paint/source/gameengine/Ketsji/BL_Texture.h
branches/projection-paint/source/gameengine/Ketsji/KX_BlenderMaterial.h
branches/projection-paint/source/gameengine/Ketsji/KX_Camera.cpp
branches/projection-paint/source/gameengine/Ketsji/KX_GameObject.cpp
branches/projection-paint/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
branches/projection-paint/source/gameengine/Ketsji/KX_KetsjiEngine.h
branches/projection-paint/source/gameengine/Ketsji/KX_ParentActuator.cpp
branches/projection-paint/source/gameengine/Ketsji/KX_PythonInit.cpp
branches/projection-paint/source/gameengine/Ketsji/KX_PythonInit.h

branches/projection-paint/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp
branches/projection-paint/source/gameengine/Rasterizer/RAS_2DFilterManager.h
branches/projection-paint/source/gameengine/SConscript

Added Paths:
---
branches/projection-paint/extern/ffmpeg/libavdevice/
branches/projection-paint/extern/ffmpeg/libavdevice/Makefile
branches/projection-paint/extern/ffmpeg/libavdevice/alldevices.c
branches/projection-paint/extern/ffmpeg/libavdevice/audio.c
branches/projection-paint/extern/ffmpeg/libavdevice/avdevice.h
branches/projection-paint/extern/ffmpeg/libavdevice/beosaudio.cpp
branches/projection-paint/extern/ffmpeg/libavdevice/bktr.c
branches/projection-paint/extern/ffmpeg/libavdevice/dv1394.c
branches/projection-paint/extern/ffmpeg/libavdevice/dv1394.h
branches/projection-paint/extern/ffmpeg/libavdevice/libdc1394.c
branches/projection-paint/extern/ffmpeg/libavdevice/v4l.c
branches/projection-paint/extern/ffmpeg/libavdevice/v4l2.c
branches/projection-paint/extern/ffmpeg/libavdevice/x11grab.c
branches/projection-paint/scons/
branches/projection-paint/scons/scons-LICENSE
branches/projection-paint/scons/scons-README
branches/projection-paint/scons/scons-local-1.1.0/
branches/projection-paint/scons/scons-local-1.1.0/SCons/
branches/projection-paint/scons/scons-local-1.1.0/SCons/Action.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Builder.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/CacheDir.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Conftest.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Debug.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Defaults.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Environment.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Errors.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Executor.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Job.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Memoize.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Node/
branches/projection-paint/scons/scons-local-1.1.0/SCons/Node/Alias.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Node/FS.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Node/Python.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Node/__init__.py
branches/projection-paint/scons/scons-local-1.1.0/SCons/Options/

branches/projection-paint/scons/scons-local-1.1.0/SCons/Options/Bo

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17278] trunk/blender: === SCons ===

2008-11-01 Thread Nathan Letwory
Revision: 17278
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17278
Author:   jesterking
Date: 2008-11-01 22:41:22 +0100 (Sat, 01 Nov 2008)

Log Message:
---
=== SCons ===

Add scons-local of the latest version.

This means that from now on one doesn't need to install SCons explicitely. 
Instead,
the user can now start a build by doing:
  D:\blenderdev\currentsvn>python scons\scons.py

This way people won't have to worry about what their OS of choice offers for 
SCons
support - they will always have the latest supported SCons version at their 
disposal.

If necessary, one can always keep using their own install (provided it is 
supported
by our build scripts), by giving the normal scons command.

Added Paths:
---
trunk/blender/scons/
trunk/blender/scons/scons-LICENSE
trunk/blender/scons/scons-README
trunk/blender/scons/scons-local-1.1.0/
trunk/blender/scons/scons-local-1.1.0/SCons/
trunk/blender/scons/scons-local-1.1.0/SCons/Action.py
trunk/blender/scons/scons-local-1.1.0/SCons/Builder.py
trunk/blender/scons/scons-local-1.1.0/SCons/CacheDir.py
trunk/blender/scons/scons-local-1.1.0/SCons/Conftest.py
trunk/blender/scons/scons-local-1.1.0/SCons/Debug.py
trunk/blender/scons/scons-local-1.1.0/SCons/Defaults.py
trunk/blender/scons/scons-local-1.1.0/SCons/Environment.py
trunk/blender/scons/scons-local-1.1.0/SCons/Errors.py
trunk/blender/scons/scons-local-1.1.0/SCons/Executor.py
trunk/blender/scons/scons-local-1.1.0/SCons/Job.py
trunk/blender/scons/scons-local-1.1.0/SCons/Memoize.py
trunk/blender/scons/scons-local-1.1.0/SCons/Node/
trunk/blender/scons/scons-local-1.1.0/SCons/Node/Alias.py
trunk/blender/scons/scons-local-1.1.0/SCons/Node/FS.py
trunk/blender/scons/scons-local-1.1.0/SCons/Node/Python.py
trunk/blender/scons/scons-local-1.1.0/SCons/Node/__init__.py
trunk/blender/scons/scons-local-1.1.0/SCons/Options/
trunk/blender/scons/scons-local-1.1.0/SCons/Options/BoolOption.py
trunk/blender/scons/scons-local-1.1.0/SCons/Options/EnumOption.py
trunk/blender/scons/scons-local-1.1.0/SCons/Options/ListOption.py
trunk/blender/scons/scons-local-1.1.0/SCons/Options/PackageOption.py
trunk/blender/scons/scons-local-1.1.0/SCons/Options/PathOption.py
trunk/blender/scons/scons-local-1.1.0/SCons/Options/__init__.py
trunk/blender/scons/scons-local-1.1.0/SCons/PathList.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/__init__.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/aix.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/cygwin.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/darwin.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/hpux.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/irix.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/os2.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/posix.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/sunos.py
trunk/blender/scons/scons-local-1.1.0/SCons/Platform/win32.py
trunk/blender/scons/scons-local-1.1.0/SCons/SConf.py
trunk/blender/scons/scons-local-1.1.0/SCons/SConsign.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/C.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/D.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/Dir.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/Fortran.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/IDL.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/LaTeX.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/Prog.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/RC.py
trunk/blender/scons/scons-local-1.1.0/SCons/Scanner/__init__.py
trunk/blender/scons/scons-local-1.1.0/SCons/Script/
trunk/blender/scons/scons-local-1.1.0/SCons/Script/Interactive.py
trunk/blender/scons/scons-local-1.1.0/SCons/Script/Main.py
trunk/blender/scons/scons-local-1.1.0/SCons/Script/SConsOptions.py
trunk/blender/scons/scons-local-1.1.0/SCons/Script/SConscript.py
trunk/blender/scons/scons-local-1.1.0/SCons/Script/__init__.py
trunk/blender/scons/scons-local-1.1.0/SCons/Sig.py
trunk/blender/scons/scons-local-1.1.0/SCons/Subst.py
trunk/blender/scons/scons-local-1.1.0/SCons/Taskmaster.py
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/386asm.py
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/BitKeeper.py
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/CVS.py
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/FortranCommon.py
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/JavaCommon.py
trunk/blender/scons/scons-local-1.1.0/SCons/Tool/Perforce.py
trunk/blender/scons/scons-local-1.1.

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17277] trunk/blender/source/gameengine/ VideoTexture/Texture.cpp: VideoTexture: fix NULL pointer crash when material name is not found.

2008-11-01 Thread Benoit Bolsee
Revision: 17277
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17277
Author:   ben2610
Date: 2008-11-01 21:18:15 +0100 (Sat, 01 Nov 2008)

Log Message:
---
VideoTexture: fix NULL pointer crash when material name is not found.

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/Texture.cpp

Modified: trunk/blender/source/gameengine/VideoTexture/Texture.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/Texture.cpp2008-11-01 
17:44:12 UTC (rev 17276)
+++ trunk/blender/source/gameengine/VideoTexture/Texture.cpp2008-11-01 
20:18:15 UTC (rev 17277)
@@ -96,7 +96,7 @@
// get material from mesh
RAS_MeshObject * mesh = gameObj->GetMesh(0);
RAS_MeshMaterial *meshMat = 
mesh->GetMeshMaterial(matID);
-   if (meshMat->m_bucket != NULL)
+   if (meshMat != NULL && meshMat->m_bucket != NULL)
// return pointer to polygon or blender material
return meshMat->m_bucket->GetPolyMaterial();
}


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17276] trunk/blender/source/gameengine/ VideoTexture/SConscript: Adding include path for numpy to sconscript.

2008-11-01 Thread Martin Poirier
Revision: 17276
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17276
Author:   theeth
Date: 2008-11-01 18:44:12 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Adding include path for numpy to sconscript. There must be a better way to do 
this.

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/SConscript

Modified: trunk/blender/source/gameengine/VideoTexture/SConscript
===
--- trunk/blender/source/gameengine/VideoTexture/SConscript 2008-11-01 
17:26:34 UTC (rev 17275)
+++ trunk/blender/source/gameengine/VideoTexture/SConscript 2008-11-01 
17:44:12 UTC (rev 17276)
@@ -21,6 +21,7 @@
cflags.append('/GR')
cflags.append('/Ox')
 
+incs += ' ' + env['BF_PYTHON'] + '/lib/python' + env['BF_PYTHON_VERSION'] + 
"/site-packages/numpy/core/include"
 incs += ' ' + env['BF_PYTHON_INC']
 #incs += ' ' + env['BF_OPENGL_INC']
 


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17275] trunk/blender/source/gameengine/ VideoTexture/VideoFFmpeg.cpp: VideoTexture: typo in linux code

2008-11-01 Thread Benoit Bolsee
Revision: 17275
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17275
Author:   ben2610
Date: 2008-11-01 18:26:34 +0100 (Sat, 01 Nov 2008)

Log Message:
---
VideoTexture: typo in linux code

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp

Modified: trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
2008-11-01 17:15:17 UTC (rev 17274)
+++ trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
2008-11-01 17:26:34 UTC (rev 17275)
@@ -319,7 +319,7 @@
if ((p = strchr(filename, ':')) != 0)
*p = 0;
}
-   if (file && (p = strchr(file, ":")) != NULL)
+   if (file && (p = strchr(file, ':')) != NULL)
formatParams.standard = p+1;
 #endif
//frame rate


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17274] trunk/blender/source/gameengine/ VideoTexture: VideoTexture: AVFormatContext:: pb is not a pointer for avformat library older than 52 (linux u

2008-11-01 Thread Benoit Bolsee
Revision: 17274
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17274
Author:   ben2610
Date: 2008-11-01 18:15:17 +0100 (Sat, 01 Nov 2008)

Log Message:
---
VideoTexture: AVFormatContext::pb is not a pointer for avformat library older 
than 52 (linux uses 51)

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.h

Modified: trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
2008-11-01 17:07:24 UTC (rev 17273)
+++ trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
2008-11-01 17:15:17 UTC (rev 17274)
@@ -248,7 +248,13 @@
// open base class
VideoBase::openFile(filename);
 
-   if (m_formatCtx->pb->is_streamed)
+   if (
+#ifdef FFMPEG_PB_IS_POINTER
+m_formatCtx->pb->is_streamed
+#else
+m_formatCtx->pb.is_streamed
+#endif
+)
{
// the file is in fact a streaming source, prevent seeking
m_isFile = false;
@@ -265,7 +271,7 @@
AVInputFormat   *inputFormat;
AVFormatParameters  formatParams;
AVRational  frameRate;
-   charfilename[28], rateStr[20];
+   char*p, filename[28], rateStr[20];
 
do_init_ffmpeg();
 

Modified: trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.h
===
--- trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.h  2008-11-01 
17:07:24 UTC (rev 17273)
+++ trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.h  2008-11-01 
17:15:17 UTC (rev 17274)
@@ -36,6 +36,10 @@
 #define FFMPEG_CODEC_IS_POINTER 1
 #endif
 
+#if LIBAVFORMAT_VERSION_INT >= (52 << 16)
+#define FFMPEG_PB_IS_POINTER 1
+#endif
+
 #ifdef FFMPEG_CODEC_IS_POINTER
 static inline AVCodecContext* get_codec_from_stream(AVStream* stream)
 {


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17273] trunk/blender/source/blender: Bug #17912: fix for some SSS floating point precision issues, and also

2008-11-01 Thread Brecht Van Lommel
Revision: 17273
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17273
Author:   blendix
Date: 2008-11-01 18:07:24 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Bug #17912: fix for some SSS floating point precision issues, and also
fix a divide by zero in the subsurf code found in the process.

Modified Paths:
--
trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c
trunk/blender/source/blender/render/intern/source/sss.c

Modified: trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c
===
--- trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c 2008-11-01 
17:06:36 UTC (rev 17272)
+++ trunk/blender/source/blender/blenkernel/intern/CCGSubSurf.c 2008-11-01 
17:07:24 UTC (rev 17273)
@@ -1245,9 +1245,11 @@
}
}
 
-   avgSharpness /= sharpCount;
-   if (avgSharpness>1.0) {
-   avgSharpness = 1.0;
+   if(sharpCount) {
+   avgSharpness /= sharpCount;
+   if (avgSharpness>1.0) {
+   avgSharpness = 1.0;
+   }
}
 
if (seam && seamEdges < 2)
@@ -1543,9 +1545,11 @@
}
}
 
-   avgSharpness /= sharpCount;
-   if (avgSharpness>1.0) {
-   avgSharpness = 1.0;
+   if(sharpCount) {
+   avgSharpness /= sharpCount;
+   if (avgSharpness>1.0) {
+   avgSharpness = 1.0;
+   }
}
 
if (seam && seamEdges < 2)

Modified: trunk/blender/source/blender/render/intern/source/sss.c
===
--- trunk/blender/source/blender/render/intern/source/sss.c 2008-11-01 
17:06:36 UTC (rev 17272)
+++ trunk/blender/source/blender/render/intern/source/sss.c 2008-11-01 
17:07:24 UTC (rev 17273)
@@ -451,13 +451,13 @@
VECCOPY(rdsum, result.rdsum);
VECADD(backrdsum, result.rdsum, result.backrdsum);
 
-   if(rdsum[0] > 0.0f) rad[0]= tree->ss[0]->color*rad[0]/rdsum[0];
-   if(rdsum[1] > 0.0f) rad[1]= tree->ss[1]->color*rad[1]/rdsum[1];
-   if(rdsum[2] > 0.0f) rad[2]= tree->ss[2]->color*rad[2]/rdsum[2];
+   if(rdsum[0] > 1e-16f) rad[0]= tree->ss[0]->color*rad[0]/rdsum[0];
+   if(rdsum[1] > 1e-16f) rad[1]= tree->ss[1]->color*rad[1]/rdsum[1];
+   if(rdsum[2] > 1e-16f) rad[2]= tree->ss[2]->color*rad[2]/rdsum[2];
 
-   if(backrdsum[0] > 0.0f) backrad[0]= 
tree->ss[0]->color*backrad[0]/backrdsum[0];
-   if(backrdsum[1] > 0.0f) backrad[1]= 
tree->ss[1]->color*backrad[1]/backrdsum[1];
-   if(backrdsum[2] > 0.0f) backrad[2]= 
tree->ss[2]->color*backrad[2]/backrdsum[2];
+   if(backrdsum[0] > 1e-16f) backrad[0]= 
tree->ss[0]->color*backrad[0]/backrdsum[0];
+   if(backrdsum[1] > 1e-16f) backrad[1]= 
tree->ss[1]->color*backrad[1]/backrdsum[1];
+   if(backrdsum[2] > 1e-16f) backrad[2]= 
tree->ss[2]->color*backrad[2]/backrdsum[2];
 
rad[0]= MAX2(rad[0], backrad[0]);
rad[1]= MAX2(rad[1], backrad[1]);
@@ -504,20 +504,20 @@
}
}
 
-   if(node->area > 0) {
+   if(node->area > 1e-16f) {
inv= 1.0/node->area;
node->rad[0] *= inv;
node->rad[1] *= inv;
node->rad[2] *= inv;
}
-   if(node->backarea > 0) {
+   if(node->backarea > 1e-16f) {
inv= 1.0/node->backarea;
node->backrad[0] *= inv;
node->backrad[1] *= inv;
node->backrad[2] *= inv;
}
 
-   if(totrad > 0.0f) {
+   if(totrad > 1e-16f) {
inv= 1.0/totrad;
node->co[0] *= inv;
node->co[1] *= inv;
@@ -578,20 +578,20 @@
node->backarea += subnode->backarea;
}
 
-   if(node->area > 0) {
+   if(node->area > 1e-16f) {
inv= 1.0/node->area;
node->rad[0] *= inv;
node->rad[1] *= inv;
node->rad[2] *= inv;
}
-   if(node->backarea > 0) {
+   if(node->backarea > 1e-16f) {
inv= 1.0/node->backarea;
node->backrad[0] *= inv;
node->backrad[1] *= inv;
node->backrad[2] *= inv;
}
 
-   if(totrad > 0.0f) {
+   if(totrad > 1e-16f) {
inv= 1.0/totrad;
node->co[0] *= inv;
node->co[1] *= inv;


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17272] trunk/blender/source/gameengine/ VideoTexture/SConscript: Getting video texture closer to compiling under linux

2008-11-01 Thread Martin Poirier
Revision: 17272
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17272
Author:   theeth
Date: 2008-11-01 18:06:36 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Getting video texture closer to compiling under linux

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/SConscript

Modified: trunk/blender/source/gameengine/VideoTexture/SConscript
===
--- trunk/blender/source/gameengine/VideoTexture/SConscript 2008-11-01 
16:09:36 UTC (rev 17271)
+++ trunk/blender/source/gameengine/VideoTexture/SConscript 2008-11-01 
17:06:36 UTC (rev 17272)
@@ -20,7 +20,6 @@
 if env['OURPLATFORM'] == 'win32-vc':
cflags.append('/GR')
cflags.append('/Ox')
-   defs += ' __STDC_CONSTANT_MACROS'
 
 incs += ' ' + env['BF_PYTHON_INC']
 #incs += ' ' + env['BF_OPENGL_INC']
@@ -28,5 +27,6 @@
 if env['WITH_BF_FFMPEG']:
 defs += ' WITH_FFMPEG'
 incs += ' ' + env['BF_FFMPEG_INC']
+defs += ' __STDC_CONSTANT_MACROS'
 
 env.BlenderLib ( 'bf_videotex', sources, Split(incs), Split(defs), 
libtype=['game','player'], priority=[25, 72], compileflags = cflags )


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17271] trunk/blender/source/blender/ render/intern/source/envmap.c: Bugfix #17913

2008-11-01 Thread Ton Roosendaal
Revision: 17271
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17271
Author:   ton
Date: 2008-11-01 17:09:36 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Bugfix #17913

Bah... fix for envmaps just before 2.48 release gave good looking envmaps 
only when there was no sky involved...

The alpha in environment maps should be reset to 255... something that was 
never done before, but also didn't show errors until other fixes in image 
rendering were done.

Modified Paths:
--
trunk/blender/source/blender/render/intern/source/envmap.c

Modified: trunk/blender/source/blender/render/intern/source/envmap.c
===
--- trunk/blender/source/blender/render/intern/source/envmap.c  2008-11-01 
15:58:49 UTC (rev 17270)
+++ trunk/blender/source/blender/render/intern/source/envmap.c  2008-11-01 
16:09:36 UTC (rev 17271)
@@ -439,12 +439,19 @@
 
if(re->test_break()==0) {
RenderLayer *rl= envre->result->layers.first;
+   int y;
+   char *alpha;

ibuf= IMB_allocImBuf(envre->rectx, envre->recty, 24, 
IB_rect, 0);
ibuf->rect_float= rl->rectf;
IMB_rect_from_float(ibuf);
ibuf->rect_float= NULL;
-   
+   
+   /* envmap renders without alpha */
+   alpha= ((char *)ibuf->rect)+3;
+   for(y= ibuf->x*ibuf->y - 1; y>=0; y--, alpha+=4)
+   *alpha= 255;
+   
env->cube[part]= ibuf;
}



___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17270] trunk/blender/source/gameengine/ VideoTexture: Video Texture: missing newlines at the end of several files.

2008-11-01 Thread Benoit Bolsee
Revision: 17270
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17270
Author:   ben2610
Date: 2008-11-01 16:58:49 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Video Texture: missing newlines at the end of several files.

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/FilterBase.h
trunk/blender/source/gameengine/VideoTexture/FilterBlueScreen.h
trunk/blender/source/gameengine/VideoTexture/FilterColor.h
trunk/blender/source/gameengine/VideoTexture/FilterNormal.h
trunk/blender/source/gameengine/VideoTexture/FilterSource.h
trunk/blender/source/gameengine/VideoTexture/ImageBase.cpp
trunk/blender/source/gameengine/VideoTexture/ImageBase.h
trunk/blender/source/gameengine/VideoTexture/PyTypeList.h

Modified: trunk/blender/source/gameengine/VideoTexture/FilterBase.h
===
--- trunk/blender/source/gameengine/VideoTexture/FilterBase.h   2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/FilterBase.h   2008-11-01 
15:58:49 UTC (rev 17270)
@@ -129,4 +129,4 @@
 int Filter_setPrevious (PyFilter * self, PyObject * value, void * closure);
 
 
-#endif
\ No newline at end of file
+#endif

Modified: trunk/blender/source/gameengine/VideoTexture/FilterBlueScreen.h
===
--- trunk/blender/source/gameengine/VideoTexture/FilterBlueScreen.h 
2008-11-01 15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/FilterBlueScreen.h 
2008-11-01 15:58:49 UTC (rev 17270)
@@ -95,4 +95,4 @@
 };
 
 
-#endif
\ No newline at end of file
+#endif

Modified: trunk/blender/source/gameengine/VideoTexture/FilterColor.h
===
--- trunk/blender/source/gameengine/VideoTexture/FilterColor.h  2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/FilterColor.h  2008-11-01 
15:58:49 UTC (rev 17270)
@@ -161,4 +161,4 @@
 };
 
 
-#endif
\ No newline at end of file
+#endif

Modified: trunk/blender/source/gameengine/VideoTexture/FilterNormal.h
===
--- trunk/blender/source/gameengine/VideoTexture/FilterNormal.h 2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/FilterNormal.h 2008-11-01 
15:58:49 UTC (rev 17270)
@@ -95,4 +95,4 @@
 };
 
 
-#endif
\ No newline at end of file
+#endif

Modified: trunk/blender/source/gameengine/VideoTexture/FilterSource.h
===
--- trunk/blender/source/gameengine/VideoTexture/FilterSource.h 2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/FilterSource.h 2008-11-01 
15:58:49 UTC (rev 17270)
@@ -230,4 +230,4 @@
 };
 
 
-#endif
\ No newline at end of file
+#endif

Modified: trunk/blender/source/gameengine/VideoTexture/ImageBase.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/ImageBase.cpp  2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/ImageBase.cpp  2008-11-01 
15:58:49 UTC (rev 17270)
@@ -526,4 +526,4 @@
}
// return success
return 0;
-}
\ No newline at end of file
+}

Modified: trunk/blender/source/gameengine/VideoTexture/ImageBase.h
===
--- trunk/blender/source/gameengine/VideoTexture/ImageBase.h2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/ImageBase.h2008-11-01 
15:58:49 UTC (rev 17270)
@@ -346,4 +346,4 @@
 int Image_setFilter (PyImage * self, PyObject * value, void * closure);
 
 
-#endif
\ No newline at end of file
+#endif

Modified: trunk/blender/source/gameengine/VideoTexture/PyTypeList.h
===
--- trunk/blender/source/gameengine/VideoTexture/PyTypeList.h   2008-11-01 
15:42:03 UTC (rev 17269)
+++ trunk/blender/source/gameengine/VideoTexture/PyTypeList.h   2008-11-01 
15:58:49 UTC (rev 17270)
@@ -82,4 +82,4 @@
 };
 
 
-#endif
\ No newline at end of file
+#endif


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17269] trunk/blender: Video Texture: remove support for capture device, the linux ffmpeg repository is not ready yet.

2008-11-01 Thread Benoit Bolsee
Revision: 17269
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17269
Author:   ben2610
Date: 2008-11-01 16:42:03 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Video Texture: remove support for capture device, the linux ffmpeg repository 
is not ready yet.

Modified Paths:
--
trunk/blender/extern/ffmpeg/Makefile
trunk/blender/extern/ffmpeg/SConscript
trunk/blender/source/blender/imbuf/intern/util.c

Modified: trunk/blender/extern/ffmpeg/Makefile
===
--- trunk/blender/extern/ffmpeg/Makefile2008-11-01 15:35:07 UTC (rev 
17268)
+++ trunk/blender/extern/ffmpeg/Makefile2008-11-01 15:42:03 UTC (rev 
17269)
@@ -32,7 +32,7 @@
 
 include nan_subdirs.mk
 
-ALLDIRS = libavcodec libavformat libavutil libswscale libavdevice
+ALLDIRS = libavcodec libavformat libavutil libswscale
 
 config::
./configure --disable-shared --enable-liba52bin --enable-gpl 
--disable-zlib --disable-vhook --disable-ffserver --disable-ffplay 
--enable-swscaler --enable-pthreads 

Modified: trunk/blender/extern/ffmpeg/SConscript
===
--- trunk/blender/extern/ffmpeg/SConscript  2008-11-01 15:35:07 UTC (rev 
17268)
+++ trunk/blender/extern/ffmpeg/SConscript  2008-11-01 15:42:03 UTC (rev 
17269)
@@ -3,7 +3,7 @@
 
 Import('env')
 
-all_libs = ['libavformat', 'libavcodec', 'libswscale', 'libavutil', 
'libavdevice']
+all_libs = ['libavformat', 'libavcodec', 'libswscale', 'libavutil']
 root = "extern/ffmpeg"
 
 if env['OURPLATFORM'] == 'win32-mingw':

Modified: trunk/blender/source/blender/imbuf/intern/util.c
===
--- trunk/blender/source/blender/imbuf/intern/util.c2008-11-01 15:35:07 UTC 
(rev 17268)
+++ trunk/blender/source/blender/imbuf/intern/util.c2008-11-01 15:42:03 UTC 
(rev 17269)
@@ -64,7 +64,7 @@
 #ifdef WITH_FFMPEG
 #include 
 #include 
-#include 
+//#include 
 
 #if LIBAVFORMAT_VERSION_INT < (49 << 16)
 #define FFMPEG_OLD_FRAME_RATE 1
@@ -237,7 +237,7 @@
if (!ffmpeg_init) {
ffmpeg_init = 1;
av_register_all();
-   avdevice_register_all();
+   //avdevice_register_all();
}
 }
 


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17268] branches/projection-paint/source/ blender/src/imagepaint.c: Speedup collecting pixels from a faces UV, was using 'point-in-tri' (IsectPQ2Df) f

2008-11-01 Thread Campbell Barton
Revision: 17268
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17268
Author:   campbellbarton
Date: 2008-11-01 16:35:07 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Speedup collecting pixels from a faces UV, was using 'point-in-tri' 
(IsectPQ2Df) for every pixel in the UV Bounds of a face, replace this with 
intersection tests that use scanlines to get the x-range of pixels for each Y 
increment.

Modified Paths:
--
branches/projection-paint/source/blender/src/imagepaint.c

Modified: branches/projection-paint/source/blender/src/imagepaint.c
===
--- branches/projection-paint/source/blender/src/imagepaint.c   2008-11-01 
14:00:16 UTC (rev 17267)
+++ branches/projection-paint/source/blender/src/imagepaint.c   2008-11-01 
15:35:07 UTC (rev 17268)
@@ -134,7 +134,7 @@
 /* testing options */
 #define PROJ_BUCKET_DIV 128 /* TODO - test other values, this is a guess, 
seems ok */
 
-// #define PROJ_PAINT_DEBUG 1
+// #define PROJ_DEBUG_PAINT 1
 
 /* projectFaceFlags options */
 #define PROJ_FACE_IGNORE   1<<0/* When the face is hidden, backfacing 
or occluded */
@@ -163,7 +163,7 @@

/* projection painting only */
MemArena *projectArena; /* use for alocating many pixel structs 
and link-lists */
-   LinkNode **projectBuckets;  /* screen sized 2D array, each pixel 
has a linked list of ImagePaintProjectPixel's */
+   LinkNode **projectBuckets;  /* screen sized 2D array, each pixel 
has a linked list of ProjectPixel's */
LinkNode **projectFaces;/* projectBuckets alligned array 
linkList of faces overlapping each bucket */
char *projectBucketFlags;   /* store if the bucks have been 
initialized  */
char *projectFaceFlags; /* store info about faces, if they are 
initialized etc*/
@@ -191,11 +191,16 @@
float viewHeight;
 } ProjectPaintState;
 
-typedef struct ImagePaintProjectPixel {
+typedef struct ProjectScanline {
+   int v[3]; /* verts for this scanline, 0,1,2 or 0,2,3 */
+   float x_limits[2]; /* UV min|max for this scanline */
+} ProjectScanline;
+
+typedef struct ProjectPixel {
float projCo2D[2]; /* the floating point screen projection of this 
pixel */
char *pixel;
int image_index;
-} ImagePaintProjectPixel;
+} ProjectPixel;
 
 /* Finish projection painting structs */
 
@@ -414,11 +419,13 @@
 static int project_bucket_point_occluded(ProjectPaintState *ps, int 
bucket_index, int orig_face, float pixelScreenCo[3])
 {
LinkNode *node = ps->projectFaces[bucket_index];
-   LinkNode *prev_node = NULL;
MFace *mf;
int face_index;
int isect_ret;

+   /* we could return 0 for 1 face buckets, as long as this function 
assumes
+* that the point its testing is only every originated from an existing 
face */
+   
while (node) {
face_index = (int)node->link;

@@ -461,17 +468,56 @@
return 1; 
}
}
-   prev_node = node;
node = node->next;
}

return 0;
 }
 
+/* basic line intersection, could move to arithb.c, 2 points with a horiz line 
*/
+static int project_scanline_isect(float *p1, float *p2, float y_level, float 
*y_isect)
+{
+   if (p1[1] > y_level && p2[1] < y_level) {
+   *y_isect = (p2[0]*(p1[1]-y_level) + p1[0]*(y_level-p2[1])) / 
(p1[1]-p2[1]);
+   return 1;
+   } else if (p1[1] < y_level && p2[1] > y_level) {
+   *y_isect = (p2[0]*(y_level-p1[1]) + p1[0]*(p2[1]-y_level)) / 
(p2[1]-p1[1]);
+   return 1;
+   } else {
+   return 0;
+   }
+}
+
+/* take 3 uv coords, a horizontal x_limits and set the min|max intersections 
points here */
+static int project_uv_scanline(float *uv1, float *uv2, float *uv3, float 
y_level, float x_limits[2])
+{
+   int i = 0;
+   
+   if (project_scanline_isect(uv1, uv2, y_level, &x_limits[0])) i++;
+   if (project_scanline_isect(uv2, uv3, y_level, &x_limits[i])) i++;
+   /* if the triangle intersects then the first 2 lines must */
+   if (i==0) {
+   return 0;
+   } else if (i!=2) {
+   /* if we are here then this really should not fail since 2 
edges MUST intersect  */
+   if (project_scanline_isect(uv3, uv1, y_level, &x_limits[i])) 
i++;
+   }
+   
+   if (i==2) {
+   if (x_limits[0] > x_limits[1]) {
+   SWAP(float, x_limits[0], x_limits[1]);
+   }
+   return 1;
+   } else {
+   return 0;
+   }
+}
+
+
 static void project_paint_face_init(ProjectPaintState *ps, int face_index, 
ImBuf *ibuf)
 {
/* Projection vars, to get the 3D locations into screen space  */
-   I

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17267] trunk/blender/source/gameengine/ Rasterizer: Patch 17909: 2D Filter texture coordinates changes, by Dalai Felinto:

2008-11-01 Thread Brecht Van Lommel
Revision: 17267
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17267
Author:   blendix
Date: 2008-11-01 15:00:16 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Patch 17909: 2D Filter texture coordinates changes, by Dalai Felinto:

* The second opengl texture coordinate (gl_TexCoord[1]) are now filled
  in as well, and will give canvas coordinates from 0.0 to 1.0. The
  first texture coordinates still give the coordinates in the texture
  that is being used, which may not match the canvas exactly, so both
  coordinates are needed.
* Also optimization to allow using smaller texture sizes with multiple
  smaller viewports.
* Print the detailed GLSL shader errors (once), for easier debugging.

Modified Paths:
--
trunk/blender/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp
trunk/blender/source/gameengine/Rasterizer/RAS_2DFilterManager.h

Modified: trunk/blender/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp
===
--- trunk/blender/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp  
2008-11-01 13:37:04 UTC (rev 17266)
+++ trunk/blender/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp  
2008-11-01 14:00:16 UTC (rev 17267)
@@ -78,6 +78,7 @@
m_gameObjects[passindex] = NULL;
}
texname[0] = texname[1] = texname[2] = -1;
+   errorprinted= false;
 }
 
 RAS_2DFilterManager::~RAS_2DFilterManager()
@@ -85,76 +86,107 @@
FreeTextures();
 }
 
+void RAS_2DFilterManager::PrintShaderErrors(unsigned int shader, const char 
*task, const char *code)
+{
+   GLcharARB log[5000];
+   GLsizei length = 0;
+   const char *c, *pos, *end;
+   int line = 1;
+
+   if(errorprinted)
+   return;
+   
+   errorprinted= true;
+
+   glGetInfoLogARB(shader, sizeof(log), &length, log);
+   end = code + strlen(code);
+
+   printf("2D Filter GLSL Shader: %s error:\n", task);
+
+   c = code;
+   while ((c < end) && (pos = strchr(c, '\n'))) {
+   printf("%2d  ", line);
+   fwrite(c, (pos+1)-c, 1, stdout);
+   c = pos+1;
+   line++;
+   }
+   printf("%s", c);
+
+   printf("%s\n", log);
+}
+
 unsigned int RAS_2DFilterManager::CreateShaderProgram(const char* shadersource)
 {
-   GLuint program = 0; 
-   GLuint fShader = glCreateShaderObjectARB(GL_FRAGMENT_SHADER);
-GLint success;
+   GLuint program = 0; 
+   GLuint fShader = glCreateShaderObjectARB(GL_FRAGMENT_SHADER);
+   GLint success;
 
-   glShaderSourceARB(fShader, 1, (const char**)&shadersource, 
NULL);
+   glShaderSourceARB(fShader, 1, (const char**)&shadersource, NULL);
 
-   glCompileShaderARB(fShader);
+   glCompileShaderARB(fShader);
 
-   glGetObjectParameterivARB(fShader, GL_COMPILE_STATUS, &success);
-   if(!success)
-   {
-   /*Shader Comile Error*/
-   std::cout << "2dFilters - Shader compile error" << 
std::endl;
-   return 0;
-   }
-   
-   program = glCreateProgramObjectARB();
-   glAttachObjectARB(program, fShader);
 
-   glLinkProgramARB(program);
-   glGetObjectParameterivARB(program, GL_LINK_STATUS, &success);
-   if (!success)
-   {
-   /*Program Link Error*/
-   std::cout << "2dFilters - Shader program link error" << 
std::endl;
-   return 0;
-   }
-   
-   glValidateProgramARB(program);
-   glGetObjectParameterivARB(program, GL_VALIDATE_STATUS, 
&success);
-if (!success)
-   {
-   /*Program Validation Error*/
-   std::cout << "2dFilters - Shader program validation 
error" << std::endl;
-   return 0;
-   }
+   glGetObjectParameterivARB(fShader, GL_COMPILE_STATUS, &success);
+   if(!success)
+   {
+   /*Shader Comile Error*/
+   PrintShaderErrors(fShader, "compile", shadersource);
+   return 0;
+   }
+   
+   program = glCreateProgramObjectARB();
+   glAttachObjectARB(program, fShader);
 
-   return program;
+   glLinkProgramARB(program);
+   glGetObjectParameterivARB(program, GL_LINK_STATUS, &success);
+   if (!success)
+   {
+   /*Program Link Error*/
+   PrintShaderErrors(fShader, "link", shadersource);
+   return 0;
+   }
+   
+   glValidateProgramARB(program);
+   glGetObjectParameterivARB(program, GL_VALIDATE_STATUS, &success);
+   if (!success)
+   {
+   /*Program Validation Error*/
+   PrintShaderErrors

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17266] trunk/blender/extern/ffmpeg/ Makefile: Video Texture: add libadevice to extern\ffmpeg, forgot to update the Makefile.

2008-11-01 Thread Benoit Bolsee
Revision: 17266
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17266
Author:   ben2610
Date: 2008-11-01 14:37:04 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Video Texture: add libadevice to extern\ffmpeg, forgot to update the Makefile.

Modified Paths:
--
trunk/blender/extern/ffmpeg/Makefile

Modified: trunk/blender/extern/ffmpeg/Makefile
===
--- trunk/blender/extern/ffmpeg/Makefile2008-11-01 13:31:32 UTC (rev 
17265)
+++ trunk/blender/extern/ffmpeg/Makefile2008-11-01 13:37:04 UTC (rev 
17266)
@@ -32,7 +32,7 @@
 
 include nan_subdirs.mk
 
-ALLDIRS = libavcodec libavformat libavutil libswscale
+ALLDIRS = libavcodec libavformat libavutil libswscale libavdevice
 
 config::
./configure --disable-shared --enable-liba52bin --enable-gpl 
--disable-zlib --disable-vhook --disable-ffserver --disable-ffplay 
--enable-swscaler --enable-pthreads 


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17265] trunk/blender/extern/ffmpeg: Video Texture: add libadevice to extern\ffmpeg for Linux build.

2008-11-01 Thread Benoit Bolsee
Revision: 17265
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17265
Author:   ben2610
Date: 2008-11-01 14:31:32 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Video Texture: add libadevice to extern\ffmpeg for Linux build. I took the 
files from a ffmpeg revision that matches the rest of ffmpeg file (revision 
12121 2008-02-15). It might be useful to update the whole ffmpeg directory.

Revision Links:
--

http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12121

Modified Paths:
--
trunk/blender/extern/ffmpeg/SConscript

Added Paths:
---
trunk/blender/extern/ffmpeg/libavdevice/
trunk/blender/extern/ffmpeg/libavdevice/Makefile
trunk/blender/extern/ffmpeg/libavdevice/alldevices.c
trunk/blender/extern/ffmpeg/libavdevice/audio.c
trunk/blender/extern/ffmpeg/libavdevice/avdevice.h
trunk/blender/extern/ffmpeg/libavdevice/beosaudio.cpp
trunk/blender/extern/ffmpeg/libavdevice/bktr.c
trunk/blender/extern/ffmpeg/libavdevice/dv1394.c
trunk/blender/extern/ffmpeg/libavdevice/dv1394.h
trunk/blender/extern/ffmpeg/libavdevice/libdc1394.c
trunk/blender/extern/ffmpeg/libavdevice/v4l.c
trunk/blender/extern/ffmpeg/libavdevice/v4l2.c
trunk/blender/extern/ffmpeg/libavdevice/x11grab.c

Modified: trunk/blender/extern/ffmpeg/SConscript
===
--- trunk/blender/extern/ffmpeg/SConscript  2008-11-01 12:48:46 UTC (rev 
17264)
+++ trunk/blender/extern/ffmpeg/SConscript  2008-11-01 13:31:32 UTC (rev 
17265)
@@ -3,7 +3,7 @@
 
 Import('env')
 
-all_libs = ['libavformat', 'libavcodec', 'libswscale', 'libavutil']
+all_libs = ['libavformat', 'libavcodec', 'libswscale', 'libavutil', 
'libavdevice']
 root = "extern/ffmpeg"
 
 if env['OURPLATFORM'] == 'win32-mingw':

Added: trunk/blender/extern/ffmpeg/libavdevice/Makefile
===
--- trunk/blender/extern/ffmpeg/libavdevice/Makefile
(rev 0)
+++ trunk/blender/extern/ffmpeg/libavdevice/Makefile2008-11-01 13:31:32 UTC 
(rev 17265)
@@ -0,0 +1,32 @@
+include ../config.mak
+
+NAME=avdevice
+LIBVERSION=$(LAVDVERSION)
+LIBMAJOR=$(LAVDMAJOR)
+
+EXTRALIBS := -L$(BUILD_ROOT)/libavformat -lavformat$(BUILDSUF) \
+ -L$(BUILD_ROOT)/libavcodec  -lavcodec$(BUILDSUF) \
+ -L$(BUILD_ROOT)/libavutil   -lavutil$(BUILDSUF) $(EXTRALIBS)
+
+CFLAGS += -I$(SRC_PATH)/libavcodec -I$(SRC_PATH)/libavformat
+
+OBJS = alldevices.o
+
+HEADERS = avdevice.h
+
+# input/output devices
+OBJS-$(CONFIG_BKTR_DEMUXER)  += bktr.o
+OBJS-$(CONFIG_DV1394_DEMUXER)+= dv1394.o
+OBJS-$(CONFIG_OSS_DEMUXER)   += audio.o
+OBJS-$(CONFIG_OSS_MUXER) += audio.o
+OBJS-$(CONFIG_V4L2_DEMUXER)  += v4l2.o
+OBJS-$(CONFIG_V4L_DEMUXER)   += v4l.o
+OBJS-$(CONFIG_X11_GRAB_DEVICE_DEMUXER)   += x11grab.o
+
+# external libraries
+OBJS-$(CONFIG_LIBDC1394_DEMUXER) += libdc1394.o
+
+CPPOBJS-$(CONFIG_AUDIO_BEOS_DEMUXER) += beosaudio.o
+CPPOBJS-$(CONFIG_AUDIO_BEOS_MUXER)   += beosaudio.o
+
+include ../common.mak

Added: trunk/blender/extern/ffmpeg/libavdevice/alldevices.c
===
--- trunk/blender/extern/ffmpeg/libavdevice/alldevices.c
(rev 0)
+++ trunk/blender/extern/ffmpeg/libavdevice/alldevices.c2008-11-01 
13:31:32 UTC (rev 17265)
@@ -0,0 +1,50 @@
+/*
+ * Register all the grabbing devices.
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+#include "avformat.h"
+#include "avdevice.h"
+
+#define REGISTER_MUXER(X,x) { \
+  extern AVOutputFormat x##_muxer; \
+  if(ENABLE_##X##_MUXER)   av_register_output_format(&x##_muxer); }
+#define REGISTER_DEMUXER(X,x) { \
+  extern AVInputFormat x##_demuxer; \
+  if(ENABLE_##X##_DEMUXER) av_register_input_format(&x##_demuxer); }
+#define REGISTER_MUXDEMUX(X,x)  REGISTER_MUXER(X,x); REGISTER_DEMUXER(X,x)
+
+void avdevice_register_all(void)
+{
+static int initialized;
+
+if (initialized)
+return;
+initialized 

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17264] trunk/blender/source/gameengine/ VideoTexture: BGE Video Texture: fix constant initializer problem with Exception description.

2008-11-01 Thread Benoit Bolsee
Revision: 17264
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17264
Author:   ben2610
Date: 2008-11-01 13:48:46 +0100 (Sat, 01 Nov 2008)

Log Message:
---
BGE Video Texture: fix constant initializer problem with Exception description. 
Uniformized the line ending.

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/Exception.cpp
trunk/blender/source/gameengine/VideoTexture/Exception.h
trunk/blender/source/gameengine/VideoTexture/ImageMix.cpp
trunk/blender/source/gameengine/VideoTexture/ImageRender.cpp
trunk/blender/source/gameengine/VideoTexture/Texture.cpp
trunk/blender/source/gameengine/VideoTexture/Texture.h
trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.cpp
trunk/blender/source/gameengine/VideoTexture/VideoFFmpeg.h
trunk/blender/source/gameengine/VideoTexture/blendVideoTex.cpp

Modified: trunk/blender/source/gameengine/VideoTexture/Exception.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/Exception.cpp  2008-11-01 
12:45:19 UTC (rev 17263)
+++ trunk/blender/source/gameengine/VideoTexture/Exception.cpp  2008-11-01 
12:48:46 UTC (rev 17264)
@@ -44,7 +44,6 @@
 ExpDesc::ExpDesc (ExceptionID & exp, char * desc, RESULT hres) 
 : m_expID(exp), m_hRslt(hres), m_description(desc)
 {
-   m_expDescs.push_back(this);
 }
 
 // destructor
@@ -196,3 +195,15 @@
m_fileName = xpt.m_fileName;
m_line = xpt.m_line;
 }
+
+void registerAllExceptions(void)
+{
+errGenerDesc.registerDesc();
+errNFoundDesc.registerDesc();
+MaterialNotAvailDesc.registerDesc();
+ImageSizesNotMatchDesc.registerDesc();
+SceneInvalidDesc.registerDesc();
+CameraInvalidDesc.registerDesc();
+SourceVideoEmptyDesc.registerDesc();
+SourceVideoCreationDesc.registerDesc();
+}

Modified: trunk/blender/source/gameengine/VideoTexture/Exception.h
===
--- trunk/blender/source/gameengine/VideoTexture/Exception.h2008-11-01 
12:45:19 UTC (rev 17263)
+++ trunk/blender/source/gameengine/VideoTexture/Exception.h2008-11-01 
12:48:46 UTC (rev 17264)
@@ -27,6 +27,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "Common.h"
 
@@ -117,6 +118,11 @@
desc = m_description;
}
 
+void registerDesc(void)
+{
+if (std::find(m_expDescs.begin(), m_expDescs.end(), this) == 
m_expDescs.end())
+m_expDescs.push_back(this);
+}
// list of exception descriptions
static std::vector m_expDescs;
 
@@ -192,4 +198,13 @@
 
 };
 
+extern ExpDesc MaterialNotAvailDesc;
+extern ExpDesc ImageSizesNotMatchDesc;
+extern ExpDesc SceneInvalidDesc;
+extern ExpDesc CameraInvalidDesc;
+extern ExpDesc SourceVideoEmptyDesc;
+extern ExpDesc SourceVideoCreationDesc;
+
+
+void registerAllExceptions(void);
 #endif

Modified: trunk/blender/source/gameengine/VideoTexture/ImageMix.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/ImageMix.cpp   2008-11-01 
12:45:19 UTC (rev 17263)
+++ trunk/blender/source/gameengine/VideoTexture/ImageMix.cpp   2008-11-01 
12:48:46 UTC (rev 17264)
@@ -58,9 +58,9 @@
return true;
 }
 
-static ExceptionID ImageSizesNotMatch;
+ExceptionID ImageSizesNotMatch;
 
-static ExpDesc ImageSizesNotMatchDesc (ImageSizesNotMatch, "Image sizes of 
sources are different");
+ExpDesc ImageSizesNotMatchDesc (ImageSizesNotMatch, "Image sizes of sources 
are different");
 
 // calculate image from sources and set its availability
 void ImageMix::calcImage (unsigned int texId)

Modified: trunk/blender/source/gameengine/VideoTexture/ImageRender.cpp
===
--- trunk/blender/source/gameengine/VideoTexture/ImageRender.cpp
2008-11-01 12:45:19 UTC (rev 17263)
+++ trunk/blender/source/gameengine/VideoTexture/ImageRender.cpp
2008-11-01 12:48:46 UTC (rev 17264)
@@ -94,6 +94,10 @@
ImageViewport::calcImage(texId);
 }
 
+void ImageRender::Render()
+{
+//
+}
 
 // refresh lights
 void ImageRender::refreshLights (void)
@@ -120,9 +124,9 @@
 BlendType cameraType ("KX_Camera");
 
 
-static ExceptionID SceneInvalid, CameraInvalid;
-static ExpDesc SceneInvalidDesc (SceneInvalid, "Scene object is invalid");
-static ExpDesc CameraInvalidDesc (CameraInvalid, "Camera object is invalid");
+ExceptionID SceneInvalid, CameraInvalid;
+ExpDesc SceneInvalidDesc (SceneInvalid, "Scene object is invalid");
+ExpDesc CameraInvalidDesc (CameraInvalid, "Camera object is invalid");
 
 // object initialization
 static int ImageRender_init (PyObject * pySelf, PyObject * args, PyObject * 
kwds)

Modified: trunk/blender/source/gameengine/VideoTexture/Texture.cpp
===
--- trunk/blender/source/gameengine/VideoTextur

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17263] branches/sim_physics/source/ blender/blenkernel/intern/effect.c: * Tweaked the spin force field a bit.

2008-11-01 Thread Matt Ebb
Revision: 17263
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17263
Author:   broken
Date: 2008-11-01 13:45:19 +0100 (Sat, 01 Nov 2008)

Log Message:
---
* Tweaked the spin force field a bit. It worked great for its purpose 
before, but wasn't playing nice with the other force fields (was 
overwriting the velocity rather than acting as a force). This version is 
slightly different, but will work a lot better with other force fields too.

Modified Paths:
--
branches/sim_physics/source/blender/blenkernel/intern/effect.c

Modified: branches/sim_physics/source/blender/blenkernel/intern/effect.c
===
--- branches/sim_physics/source/blender/blenkernel/intern/effect.c  
2008-11-01 11:35:59 UTC (rev 17262)
+++ branches/sim_physics/source/blender/blenkernel/intern/effect.c  
2008-11-01 12:45:19 UTC (rev 17263)
@@ -422,18 +422,25 @@
 
break;
case PFIELD_SPIN:
+   {   
+   float inward[3];
+   
Projf(temp, velocity, eff_vel);
-   
Crossf(mag_vec,eff_vel,vec_to_part);
+   Crossf(inward, mag_vec, eff_vel);
 
Normalize(mag_vec);
 
+   VecSubf(mag_vec, mag_vec, inward);
+   
VecMulf(mag_vec,force_val*distance*falloff);
VecAddf(mag_vec, mag_vec, temp);
-   
-   VecCopyf(velocity, mag_vec);
-   
+
+   /* compensate for existing velocity */
+   VecSubf(mag_vec, mag_vec, velocity);
+   VecAddf(field,field,mag_vec);
break;
+   }
case PFIELD_MAGNET:
if(planar)
VecCopyf(temp,eff_vel);


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17262] branches/animsys2/source/blender/ src/editipo_mods.c: AnimSys2: IPO-Editor Borderselect

2008-11-01 Thread Joshua Leung
Revision: 17262
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17262
Author:   aligorith
Date: 2008-11-01 12:35:59 +0100 (Sat, 01 Nov 2008)

Log Message:
---
AnimSys2: IPO-Editor Borderselect

There seems to be a consensus that the behaviour of the IPO-borderselect tool 
was far too messy. 
1. "It's too easy to accidentally select tangents of other keys". 
2. "When moving multiple keys, the handles for the selected keys (and only 
those keys) should move automatically with them"

I've modified the behaviour so that the following occurs:
* Only keyframes can get selected by borderselect (i.e. only the coordinates of 
the keyframe but not its handles are tested if they lie within the box)
* Handles of a keyframe which lies within the borderselect region will inherit 
whatever selection status gets applied to that keyframe. This is consistent 
with clicking on the keyframes individually.

Modified Paths:
--
branches/animsys2/source/blender/src/editipo_mods.c

Modified: branches/animsys2/source/blender/src/editipo_mods.c
===
--- branches/animsys2/source/blender/src/editipo_mods.c 2008-11-01 11:35:08 UTC 
(rev 17261)
+++ branches/animsys2/source/blender/src/editipo_mods.c 2008-11-01 11:35:59 UTC 
(rev 17262)
@@ -1061,20 +1061,27 @@
int selflag= (val==LEFTMOUSE) ? SELECT : 0;

ei= G.sipo->editipo;
-   for(a=0; atotipo; a++, ei++) {
+   for (a=0; atotipo; a++, ei++) {
if (ISPOIN3(ei, flag & IPO_VISIBLE, flag & 
IPO_EDIT, icu)) {
-   if(ei->icu->bezt) {
-   b= ei->icu->totvert;
+   if (ei->icu->bezt) {
bezt= ei->icu->bezt;
-   while(b--) {
-   if(BLI_in_rctf(&rectf, 
bezt->vec[0][0], bezt->vec[0][1]))
-   bezt->f1 = 
selflag ? (bezt->f1 | SELECT) : (bezt->f1 & ~SELECT);
-   if(BLI_in_rctf(&rectf, 
bezt->vec[1][0], bezt->vec[1][1]))
-   bezt->f2 = 
selflag ? (bezt->f2 | SELECT) : (bezt->f2 & ~SELECT);
-   if(BLI_in_rctf(&rectf, 
bezt->vec[2][0], bezt->vec[2][1]))
-   bezt->f3 = 
selflag ? (bezt->f3 | SELECT) : (bezt->f3 & ~SELECT);
-
-   bezt++;
+   for (b=0; b < ei->icu->totvert; 
b++, bezt++) {
+   /* Borderselect only 
selects keyframes now, as overshooting handles often get caught too,
+* which means that 
they may be inadvertantly moved as well.
+* Also, for 
convenience, handles should get same status as keyframe (if it was within 
bounds)
+*/
+   if (BLI_in_rctf(&rectf, 
bezt->vec[1][0], bezt->vec[1][1])) {
+   if (selflag) {
+   
bezt->f1 |= SELECT;
+   
bezt->f2 |= SELECT;
+   
bezt->f3 |= SELECT;
+   }
+   else {
+   
bezt->f1 &= ~SELECT;
+   
bezt->f2 &= ~SELECT;
+   
bezt->f3 &= ~SELECT;
+   }
+   }
}
}
}


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17261] trunk/blender/source/blender/ python/api2_2x/matrix.c: fix a bug in matrix.invert() for 2x2 matrices

2008-11-01 Thread Remigiusz Fiedler
Revision: 17261
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17261
Author:   migius
Date: 2008-11-01 12:35:08 +0100 (Sat, 01 Nov 2008)

Log Message:
---
fix a bug in matrix.invert() for 2x2 matrices
reported by Hans in http://blenderartists.org/forum/showthread.php?t=139748

Modified Paths:
--
trunk/blender/source/blender/python/api2_2x/matrix.c

Modified: trunk/blender/source/blender/python/api2_2x/matrix.c
===
--- trunk/blender/source/blender/python/api2_2x/matrix.c2008-11-01 
11:15:13 UTC (rev 17260)
+++ trunk/blender/source/blender/python/api2_2x/matrix.c2008-11-01 
11:35:08 UTC (rev 17261)
@@ -246,8 +246,8 @@
/*calculate the classical adjoint*/
if(self->rowSize == 2) {
mat[0] = self->matrix[1][1];
-   mat[1] = -self->matrix[1][0];
-   mat[2] = -self->matrix[0][1];
+   mat[1] = -self->matrix[0][1];
+   mat[2] = -self->matrix[1][0];
mat[3] = self->matrix[0][0];
} else if(self->rowSize == 3) {
Mat3Adj((float (*)[3]) mat,(float (*)[3]) 
*self->matrix);


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17260] trunk/blender/source/gameengine/ VideoTexture/CMakeLists.txt: Fix Cmake for MSVC 32bit

2008-11-01 Thread Benoit Bolsee
Revision: 17260
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17260
Author:   ben2610
Date: 2008-11-01 12:15:13 +0100 (Sat, 01 Nov 2008)

Log Message:
---
Fix Cmake for MSVC 32bit

Modified Paths:
--
trunk/blender/source/gameengine/VideoTexture/CMakeLists.txt

Modified: trunk/blender/source/gameengine/VideoTexture/CMakeLists.txt
===
--- trunk/blender/source/gameengine/VideoTexture/CMakeLists.txt 2008-11-01 
11:14:05 UTC (rev 17259)
+++ trunk/blender/source/gameengine/VideoTexture/CMakeLists.txt 2008-11-01 
11:15:13 UTC (rev 17260)
@@ -54,6 +54,7 @@
 IF(WITH_FFMPEG)
   SET(INC ${INC} ${FFMPEG_INC})
   ADD_DEFINITIONS(-DWITH_FFMPEG)
+  ADD_DEFINITIONS(-D__STDC_CONSTANT_MACROS)
 ENDIF(WITH_FFMPEG)
 
 BLENDERLIB(bf_videotex "${SRC}" "${INC}")


___
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs


[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17259] branches/animsys2/source/blender: AnimSys2: Bone Roll Issues

2008-11-01 Thread Joshua Leung
Revision: 17259
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17259
Author:   aligorith
Date: 2008-11-01 12:14:05 +0100 (Sat, 01 Nov 2008)

Log Message:
---
AnimSys2: Bone Roll Issues

In this commit, I've attempted to improve the situation of bone roll problems 
that occur with the recalculate bone roll tool, and also when extruding/moving 
bones under certain conditions.

What's changed:
* When transforming bones, as part of the recalculations done on every update, 
the roll of bones who have their tip selected will be recalculated using the 
'z-axis up' method. Reported by Glenn Melenhorst on BA.org

* Split the 'z-axis up' and 'align z-axis to cursor' roll recalculation methods 
into separate functions that can act as callbacks. Refactored the 
auto_align_armature() function to support this. It was needed for the first 
major change to occur.

* As an experiment, I've changed the final step of the z-axis method to use 
mat3_to_vec_roll instead of atan2 directly. It currently seems to work better, 
but I'm not totally sure yet. Will check on this again another day...

Modified Paths:
--
branches/animsys2/source/blender/include/BIF_editarmature.h
branches/animsys2/source/blender/src/editarmature.c
branches/animsys2/source/blender/src/gpencil.c
branches/animsys2/source/blender/src/transform_generics.c

Modified: branches/animsys2/source/blender/include/BIF_editarmature.h
===
--- branches/animsys2/source/blender/include/BIF_editarmature.h 2008-11-01 
10:18:21 UTC (rev 17258)
+++ branches/animsys2/source/blender/include/BIF_editarmature.h 2008-11-01 
11:14:05 UTC (rev 17259)
@@ -117,7 +117,10 @@
 void   setflag_armature(short mode);
 voidunique_editbone_name (struct ListBase *ebones, char *name);
 
+void   auto_align_ebone_zaxisup(EditBone *ebone);
+void   auto_align_ebone_tocursor(EditBone *ebone);
 void   auto_align_armature(short mode);
+
 void   switch_direction_armature(void);
 
 void   create_vgroups_from_armature(struct Object *ob, struct Object *par);

Modified: branches/animsys2/source/blender/src/editarmature.c
===
--- branches/animsys2/source/blender/src/editarmature.c 2008-11-01 10:18:21 UTC 
(rev 17258)
+++ branches/animsys2/source/blender/src/editarmature.c 2008-11-01 11:14:05 UTC 
(rev 17259)
@@ -1818,6 +1818,74 @@
}
 }
 
+
+/* Set roll value for given bone -> Z-Axis Point up (original method) */
+void auto_align_ebone_zaxisup(EditBone *ebone)
+{
+   float   delta[3], curmat[3][3];
+   float   xaxis[3]={1.0, 0.0, 0.0}, yaxis[3], zaxis[3]={0.0f, 0.0f, 1.0f};
+   float   targetmat[3][3], imat[3][3], diffmat[3][3];
+   
+   /* Find the current bone matrix */
+   VecSubf(delta, ebone->tail, ebone->head);
+   vec_roll_to_mat3(delta, 0.0f, curmat);
+   
+   /* Make new matrix based on y axis & z-up */
+   VECCOPY (yaxis, curmat[1]);
+   
+   Mat3One(targetmat);
+   VECCOPY(targetmat[0], xaxis);
+   VECCOPY(targetmat[1], yaxis);
+   VECCOPY(targetmat[2], zaxis);
+   Mat3Ortho(targetmat);
+   
+   /* Find the difference between the two matrices */
+   Mat3Inv(imat, targetmat);
+   Mat3MulMat3(diffmat, imat, curmat);
+   
+   // old-method... let's see if using mat3_to_vec_roll is more accurate
+   //ebone->roll = atan2(diffmat[2][0], diffmat[2][2]);  
+   mat3_to_vec_roll(diffmat, delta, &ebone->roll);
+}
+
+/* Set roll value for given bone -> Z-Axis point towards cursor */
+void auto_align_ebone_tocursor(EditBone *ebone)
+{
+   float   delta[3], curmat[3][3];
+   float   *cursor= give_cursor();
+   float   mat[4][4], tmat[4][4], imat[4][4];
+   float   rmat[4][4], rot[3];
+   float   vec[3];
+   
+   /* find the current bone matrix as a 4x4 matrix (in Armature Space) */
+   VecSubf(delta, ebone->tail, ebone->head);
+   vec_roll_to_mat3(delta, ebone->roll, curmat);
+   Mat4CpyMat3(mat, curmat);
+   VECCOPY(mat[3], ebone->head);
+   
+   /* multiply bone-matrix by object matrix (so that bone-matrix is in 
WorldSpace) */
+   Mat4MulMat4(tmat, mat, G.obedit->obmat);
+   Mat4Invert(imat, tmat);
+   
+   /* find position of cursor relative to bone */
+   VecMat4MulVecfl(vec, imat, cursor);
+   
+   /* check that cursor is in usable position */
+   if ((IS_EQ(vec[0], 0)==0) && (IS_EQ(vec[2], 0)==0)) {
+   /* Compute a rotation matrix around y */
+   rot[1] = atan2(vec[0], vec[2]);
+   rot[0] = rot[2] = 0.0f;
+   EulToMat4(rot, rmat);
+   
+   /* Multiply the bone matrix by rotation matrix. This should be 
new bone-matrix */
+   Mat4MulMat4(tmat, rmat, mat);
+   Mat3CpyMat4(curmat, tmat);
+   
+

[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17258] branches/animsys2/source/blender/ src: AnimSys2: Bugfixes for code from past few days

2008-11-01 Thread Joshua Leung
Revision: 17258
  
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17258
Author:   aligorith
Date: 2008-11-01 11:18:21 +0100 (Sat, 01 Nov 2008)

Log Message:
---
AnimSys2: Bugfixes for code from past few days

* Fixed the causes of several crashes that occurred, also added checks for a 
few more potential ones (or errors)
* New keyframes on new IPO-curves were being added with constant interpolation 
only
* Removed debug code

Modified Paths:
--
branches/animsys2/source/blender/src/drawipo.c
branches/animsys2/source/blender/src/keyframing.c

Modified: branches/animsys2/source/blender/src/drawipo.c
===
--- branches/animsys2/source/blender/src/drawipo.c  2008-11-01 00:23:08 UTC 
(rev 17257)
+++ branches/animsys2/source/blender/src/drawipo.c  2008-11-01 10:18:21 UTC 
(rev 17258)
@@ -1230,7 +1230,7 @@
 *  - first handle only if previous 
beztriple was bezier-mode
 *  - second handle only if current 
beztriple is bezier-mode
 */
-   if ((!prevbezt && (bezt->ipo==IPO_BEZ)) || 
(prevbezt->ipo==IPO_BEZ)) {
+   if ( (!prevbezt && (bezt->ipo==IPO_BEZ)) || 
(prevbezt && (prevbezt->ipo==IPO_BEZ)) ) {
if ((bezt->f1 & SELECT) == sel)/* && 
G.v2d->cur.xmin < bezt->vec[0][0] < G.v2d->cur.xmax)*/
bglVertex3fv(bezt->vec[0]);
}
@@ -1326,7 +1326,8 @@
fp= bezt->vec[0];

/* only draw first handle if 
previous segment was had handles */
-   if ((!prevbezt && 
(bezt->ipo==IPO_BEZ)) || (prevbezt->ipo==IPO_BEZ)) {
+   if ( (!prevbezt && 
(bezt->ipo==IPO_BEZ)) || (prevbezt && (prevbezt->ipo==IPO_BEZ)) ) 
+   {
cpack(col[bezt->h1]);
glBegin(GL_LINE_STRIP); 
glVertex2fv(fp); 
glVertex2fv(fp+3); 
@@ -1335,7 +1336,8 @@
}

/* only draw second handle if 
this segment is bezier */
-   if (bezt->ipo == IPO_BEZ) {
+   if (bezt->ipo == IPO_BEZ) 
+   {
cpack(col[bezt->h2]);
glBegin(GL_LINE_STRIP); 
glVertex2fv(fp+3); 
glVertex2fv(fp+6); 
@@ -1345,7 +1347,7 @@
else {
/* only draw first handle if 
previous segment was had handles, and selection is ok */
if ( ((bezt->f1 & SELECT)==sel) 
&& 
-((!prevbezt && 
(bezt->ipo==IPO_BEZ)) || (prevbezt->ipo==IPO_BEZ)) ) 
+( (!prevbezt && 
(bezt->ipo==IPO_BEZ)) || (prevbezt && (prevbezt->ipo==IPO_BEZ)) ) ) 
{
fp= bezt->vec[0];
cpack(col[bezt->h1]);

Modified: branches/animsys2/source/blender/src/keyframing.c
===
--- branches/animsys2/source/blender/src/keyframing.c   2008-11-01 00:23:08 UTC 
(rev 17257)
+++ branches/animsys2/source/blender/src/keyframing.c   2008-11-01 10:18:21 UTC 
(rev 17258)
@@ -325,8 +325,12 @@

/* add temp beztriple to keyframes */
a= insert_bezt_icu(icu, &beztr);
-   if (!fast) calchandles_ipocurve(icu);

+   /* what if 'a' is a negative index? 
+* for now, just exit to prevent any segfaults
+*/
+   if (a < 0) return;
+   
/* set handletype and interpolation */
if (icu->totvert > 2) {
BezTriple *bezt= (icu->bezt + a);
@@ -347,13 +351,20 @@
}
else
bezt->ipo= icu->ipo;
+   }
+   else {
+   BezTriple *bezt= (icu->bezt + a);

-   /* don't recalculate handles if fast is set
-*  - this is a hack to make importers fast