Revision: 15905 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15905 Author: scourage Date: 2008-08-01 21:46:41 +0200 (Fri, 01 Aug 2008)
Log Message: ----------- not so daily merge with trunk Modified Paths: -------------- branches/sound-branch/bin/.blender/.Blanguages branches/sound-branch/extern/tinySND/core/SND_DataMultiplexer.cpp branches/sound-branch/extern/tinySND/core/SND_Defines.h branches/sound-branch/extern/tinySND/sdl/sdlDevice.cpp branches/sound-branch/intern/boolop/intern/BOP_Edge.cpp branches/sound-branch/intern/boolop/intern/BOP_Edge.h branches/sound-branch/intern/boolop/intern/BOP_Face.cpp branches/sound-branch/intern/boolop/intern/BOP_Face.h branches/sound-branch/intern/boolop/intern/BOP_Interface.cpp branches/sound-branch/intern/boolop/intern/BOP_Merge.cpp branches/sound-branch/intern/boolop/intern/BOP_Merge.h branches/sound-branch/intern/boolop/intern/BOP_Mesh.cpp branches/sound-branch/intern/boolop/intern/BOP_Mesh.h branches/sound-branch/intern/boolop/intern/BOP_Tag.h branches/sound-branch/intern/boolop/intern/BOP_Vertex.cpp branches/sound-branch/intern/boolop/intern/BOP_Vertex.h branches/sound-branch/projectfiles_vc7/blender/blender.vcproj branches/sound-branch/projectfiles_vc7/gameengine/blenderhook/KX_blenderhook.vcproj branches/sound-branch/release/scripts/bpymodules/colladaImEx/collada.py branches/sound-branch/release/scripts/bpymodules/colladaImEx/translator.py branches/sound-branch/release/scripts/bpymodules/colladaImEx/xmlUtils.py branches/sound-branch/source/blender/blenkernel/BKE_DerivedMesh.h branches/sound-branch/source/blender/blenkernel/BKE_blender.h branches/sound-branch/source/blender/blenkernel/BKE_texture.h branches/sound-branch/source/blender/blenkernel/intern/DerivedMesh.c branches/sound-branch/source/blender/blenkernel/intern/collision.c branches/sound-branch/source/blender/blenkernel/intern/customdata.c branches/sound-branch/source/blender/blenkernel/intern/texture.c branches/sound-branch/source/blender/blenlib/intern/freetypefont.c branches/sound-branch/source/blender/blenloader/intern/readfile.c branches/sound-branch/source/blender/include/BDR_gpencil.h branches/sound-branch/source/blender/include/BIF_editview.h branches/sound-branch/source/blender/makesdna/DNA_customdata_types.h branches/sound-branch/source/blender/makesdna/DNA_gpencil_types.h branches/sound-branch/source/blender/makesdna/DNA_meshdata_types.h branches/sound-branch/source/blender/src/buttons_editing.c branches/sound-branch/source/blender/src/buttons_logic.c branches/sound-branch/source/blender/src/drawgpencil.c branches/sound-branch/source/blender/src/editipo.c branches/sound-branch/source/blender/src/editobject.c branches/sound-branch/source/blender/src/editview.c branches/sound-branch/source/blender/src/gpencil.c branches/sound-branch/source/blender/src/header_ipo.c branches/sound-branch/source/blender/src/header_view3d.c branches/sound-branch/source/blender/src/meshlaplacian.c branches/sound-branch/source/blender/src/seqaudio2.c branches/sound-branch/source/blender/src/space.c branches/sound-branch/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp branches/sound-branch/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp branches/sound-branch/source/gameengine/Converter/BL_ActionActuator.cpp branches/sound-branch/source/gameengine/Converter/BL_ArmatureObject.cpp branches/sound-branch/source/gameengine/Converter/BL_BlenderDataConversion.cpp branches/sound-branch/source/gameengine/Converter/KX_ConvertSensors.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_ActuatorEventManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_ActuatorEventManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_AlwaysEventManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_AlwaysEventManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_EventManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_EventManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_IObject.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_ISensor.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_ISensor.h branches/sound-branch/source/gameengine/GameLogic/SCA_JoystickManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_JoystickManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_KeyboardManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_KeyboardManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_LogicManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_MouseManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_MouseManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_PropertyEventManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_PropertyEventManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_RandomEventManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_RandomEventManager.h branches/sound-branch/source/gameengine/GameLogic/SCA_TimeEventManager.cpp branches/sound-branch/source/gameengine/GameLogic/SCA_TimeEventManager.h branches/sound-branch/source/gameengine/Ketsji/BL_BlenderShader.cpp branches/sound-branch/source/gameengine/Ketsji/BL_BlenderShader.h branches/sound-branch/source/gameengine/Ketsji/BL_Material.h branches/sound-branch/source/gameengine/Ketsji/BL_Texture.cpp branches/sound-branch/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.cpp branches/sound-branch/source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h branches/sound-branch/source/gameengine/Ketsji/KX_BlenderMaterial.cpp branches/sound-branch/source/gameengine/Ketsji/KX_BlenderMaterial.h branches/sound-branch/source/gameengine/Ketsji/KX_GameObject.cpp branches/sound-branch/source/gameengine/Ketsji/KX_KetsjiEngine.cpp branches/sound-branch/source/gameengine/Ketsji/KX_NearSensor.cpp branches/sound-branch/source/gameengine/Ketsji/KX_NearSensor.h branches/sound-branch/source/gameengine/Ketsji/KX_PolygonMaterial.cpp branches/sound-branch/source/gameengine/Ketsji/KX_PolygonMaterial.h branches/sound-branch/source/gameengine/Ketsji/KX_RayEventManager.cpp branches/sound-branch/source/gameengine/Ketsji/KX_RayEventManager.h branches/sound-branch/source/gameengine/Ketsji/KX_Scene.cpp branches/sound-branch/source/gameengine/Ketsji/KX_TouchEventManager.cpp branches/sound-branch/source/gameengine/Ketsji/KX_TouchEventManager.h branches/sound-branch/source/gameengine/Ketsji/KX_TouchSensor.cpp branches/sound-branch/source/gameengine/Ketsji/KX_TouchSensor.h branches/sound-branch/source/gameengine/Ketsji/KX_TrackToActuator.cpp branches/sound-branch/source/gameengine/Physics/BlOde/OdePhysicsEnvironment.h branches/sound-branch/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp branches/sound-branch/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.h branches/sound-branch/source/gameengine/Physics/Dummy/DummyPhysicsEnvironment.h branches/sound-branch/source/gameengine/Physics/Sumo/Fuzzics/src/SM_Scene.cpp branches/sound-branch/source/gameengine/Physics/Sumo/SumoPhysicsEnvironment.cpp branches/sound-branch/source/gameengine/Physics/Sumo/SumoPhysicsEnvironment.h branches/sound-branch/source/gameengine/Physics/common/PHY_IPhysicsEnvironment.h branches/sound-branch/source/gameengine/Rasterizer/RAS_BucketManager.cpp branches/sound-branch/source/gameengine/Rasterizer/RAS_BucketManager.h branches/sound-branch/source/gameengine/Rasterizer/RAS_CameraData.h branches/sound-branch/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp branches/sound-branch/source/gameengine/Rasterizer/RAS_IPolygonMaterial.h branches/sound-branch/source/gameengine/Rasterizer/RAS_IRasterizer.h branches/sound-branch/source/gameengine/Rasterizer/RAS_MaterialBucket.cpp branches/sound-branch/source/gameengine/Rasterizer/RAS_MaterialBucket.h branches/sound-branch/source/gameengine/Rasterizer/RAS_MeshObject.cpp branches/sound-branch/source/gameengine/Rasterizer/RAS_MeshObject.h branches/sound-branch/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp branches/sound-branch/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h branches/sound-branch/source/gameengine/Rasterizer/RAS_Polygon.cpp Added Paths: ----------- branches/sound-branch/bin/.blender/locale/kr/ branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES/ branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES/blender.mo branches/sound-branch/intern/boolop/intern/BOP_Merge2.cpp branches/sound-branch/intern/boolop/intern/BOP_Merge2.h branches/sound-branch/intern/boolop/intern/BOP_Misc.h branches/sound-branch/po/kr.po Removed Paths: ------------- branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES/ branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES/blender.mo branches/sound-branch/source/gameengine/BlenderRoutines/KX_BlenderPolyMaterial.cpp branches/sound-branch/source/gameengine/BlenderRoutines/KX_BlenderPolyMaterial.h Modified: branches/sound-branch/bin/.blender/.Blanguages =================================================================== --- branches/sound-branch/bin/.blender/.Blanguages 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/bin/.blender/.Blanguages 2008-08-01 19:46:41 UTC (rev 15905) @@ -20,3 +20,4 @@ Arabic:ar Bulgarian:bg Greek:el +Korean:kr Copied: branches/sound-branch/bin/.blender/locale/kr (from rev 15904, trunk/blender/bin/.blender/locale/kr) Copied: branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES (from rev 15904, trunk/blender/bin/.blender/locale/kr/LC_MESSAGES) Deleted: branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES/blender.mo =================================================================== (Binary files differ) Copied: branches/sound-branch/bin/.blender/locale/kr/LC_MESSAGES/blender.mo (from rev 15904, trunk/blender/bin/.blender/locale/kr/LC_MESSAGES/blender.mo) =================================================================== (Binary files differ) Modified: branches/sound-branch/extern/tinySND/core/SND_DataMultiplexer.cpp =================================================================== --- branches/sound-branch/extern/tinySND/core/SND_DataMultiplexer.cpp 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/extern/tinySND/core/SND_DataMultiplexer.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -107,8 +107,8 @@ { if( mSounds[ i ] != 0 && mSounds[ i ]->isDataAvailable() ) { - mSoundBuffers[ i ] = mSounds[ i ]->getPCMDataPtr( framesNum ); - } + mSoundBuffers[ i ] = mSounds[ i ]->getPCMDataPtr( framesNum ); + } else { mSoundBuffers[ i ] = 0; @@ -227,7 +227,7 @@ { if( mSoundBuffers[j] != 0 ) { - dstBuffer[0] = (signed short)(32768.0 * mSoundBuffers[j][0]); + dstBuffer[0] = (signed short)(32767.0 * mSoundBuffers[j][0]); ++mSoundBuffers[j]; } else Modified: branches/sound-branch/extern/tinySND/core/SND_Defines.h =================================================================== --- branches/sound-branch/extern/tinySND/core/SND_Defines.h 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/extern/tinySND/core/SND_Defines.h 2008-08-01 19:46:41 UTC (rev 15905) @@ -48,6 +48,8 @@ #define SND_MIX_BUFFER_FRAMES (16*1024) +#define SND_BUFFER_SIZE 1024; + enum { SND_ENDIAN_LITTLE = 0x1000, Modified: branches/sound-branch/extern/tinySND/sdl/sdlDevice.cpp =================================================================== --- branches/sound-branch/extern/tinySND/sdl/sdlDevice.cpp 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/extern/tinySND/sdl/sdlDevice.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -47,7 +47,7 @@ wanted.freq = 44100; wanted.format = AUDIO_S16SYS; wanted.channels = 2; // 1 = mono, 2 = stereo - wanted.samples = 4096; // Good low-latency value for callback + wanted.samples = SND_BUFFER_SIZE; // Good low-latency value for callback wanted.callback = sdlDevice::fill_audio; wanted.userdata = this; @@ -90,8 +90,7 @@ int sdlDevice::getAudioBufferSize() { - // !!!! NOT IMPLEMENTED YET !!!! - return 4096; + return SND_BUFFER_SIZE; } void sdlDevice::setAudioBufferSize( int bufferSize ) @@ -106,6 +105,7 @@ void sdlDevice::fill_audio_do(Sint16 *stream, int len) { + //the 2 is the number of bytes per samples int framesNum = len / mAudioSpec.channels/ 2; // requested data len per channel // call callback if mCallbackRate == 0 Modified: branches/sound-branch/intern/boolop/intern/BOP_Edge.cpp =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Edge.cpp 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Edge.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -75,4 +75,47 @@ else if (m_vertexs[1] == oldIndex) m_vertexs[1] = newIndex; } +#ifdef BOP_NEW_MERGE +/** + * Returns if this edge contains the specified face index. + * @param i face index + * @return true if this edge contains the specified face index, false otherwise + */ +bool BOP_Edge::removeFace(BOP_Index i) +{ + int pos=0; + for(BOP_IT_Indexs it = m_faces.begin();it!=m_faces.end();pos++,it++) { + if ((*it) == i) { + m_faces.erase(it); + return true; + } + } + + return false; +} + +#endif + +#ifdef BOP_DEBUG + +#include <iostream> +using namespace std; + +/** + * Implements operator <<. + */ +ostream &operator<<(ostream &stream, BOP_Edge *e) +{ + stream << "Edge[" << e->getVertex1() << "," << e->getVertex2(); +#ifdef BOP_NEW_MERGE + if(e->m_used) + stream << "] (used)"; + else + stream << "] (unused)"; +#endif + return stream; +} +#endif + + Modified: branches/sound-branch/intern/boolop/intern/BOP_Edge.h =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Edge.h 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Edge.h 2008-08-01 19:46:41 UTC (rev 15905) @@ -29,12 +29,16 @@ #define BOP_EDGE_H #include "BOP_Indexs.h" +#include "BOP_Misc.h" class BOP_Edge { private: BOP_Index m_vertexs[2]; BOP_Indexs m_faces; +#ifdef BOP_NEW_MERGE + bool m_used; +#endif bool containsFace(BOP_Index i); @@ -47,6 +51,15 @@ inline unsigned int getNumFaces(){return m_faces.size();}; inline BOP_Indexs &getFaces(){return m_faces;}; void addFace(BOP_Index face); +#ifdef BOP_NEW_MERGE + bool removeFace(BOP_Index i); + bool getUsed() { return m_used;}; + void setUsed(bool setting) { m_used=setting;}; +#endif +#ifdef BOP_DEBUG + friend ostream &operator<<(ostream &stream, BOP_Edge *e); +#endif + }; #endif Modified: branches/sound-branch/intern/boolop/intern/BOP_Face.cpp =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Face.cpp 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Face.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -402,6 +402,7 @@ return true; } +#ifdef BOP_DEBUG /** * Implements operator <<. */ @@ -421,3 +422,4 @@ return stream; } +#endif Modified: branches/sound-branch/intern/boolop/intern/BOP_Face.h =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Face.h 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Face.h 2008-08-01 19:46:41 UTC (rev 15905) @@ -32,6 +32,7 @@ #include "MT_Plane3.h" #include "BOP_Indexs.h" #include "BOP_BBox.h" +#include "BOP_Misc.h" #include <iostream> #include <vector> using namespace std; @@ -80,7 +81,9 @@ virtual void replaceVertexIndex(BOP_Index oldIndex, BOP_Index newIndex) = 0; virtual bool containsVertex(BOP_Index v) = 0; +#ifdef BOP_DEBUG friend ostream &operator<<(ostream &stream, BOP_Face *f); +#endif }; class BOP_Face3: public BOP_Face Modified: branches/sound-branch/intern/boolop/intern/BOP_Interface.cpp =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Interface.cpp 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Interface.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -33,9 +33,12 @@ #include "BOP_Mesh.h" #include "BOP_Face2Face.h" #include "BOP_Merge.h" +#include "BOP_Merge2.h" #include "BOP_Chrono.h" -//#define DEBUG +#if defined(BOP_ORIG_MERGE) && defined(BOP_NEW_MERGE) +#include "../../source/blender/blenkernel/BKE_global.h" +#endif BoolOpState BOP_intersectionBoolOp(BOP_Mesh* meshC, BOP_Faces* facesA, @@ -208,8 +211,33 @@ #endif // Merge faces +#ifdef BOP_ORIG_MERGE +#ifndef BOP_NEW_MERGE BOP_Merge::getInstance().mergeFaces(meshC,numVertices); +#endif +#endif +#ifdef BOP_NEW_MERGE +#ifndef BOP_ORIG_MERGE + BOP_Merge2::getInstance().mergeFaces(meshC,numVertices); +#else + static int state = -1; + if (G.rt == 100) { + if( state != 1 ) { + cout << "Boolean code using old merge technique." << endl; + state = 1; + } + BOP_Merge::getInstance().mergeFaces(meshC,numVertices); + } else { + if( state != 0 ) { + cout << "Boolean code using new merge technique." << endl; + state = 0; + } + BOP_Merge2::getInstance().mergeFaces(meshC,numVertices); + } +#endif +#endif + #ifdef DEBUG c = chrono.stamp(); t += c; cout << "Merge faces " << c << endl; Modified: branches/sound-branch/intern/boolop/intern/BOP_Merge.cpp =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Merge.cpp 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Merge.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -30,6 +30,7 @@ #include "BOP_Merge.h" +#ifdef BOP_ORIG_MERGE #ifdef _MSC_VER #if _MSC_VER < 1300 @@ -802,3 +803,5 @@ } } } + +#endif /* BOP_ORIG_MERGE */ Modified: branches/sound-branch/intern/boolop/intern/BOP_Merge.h =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Merge.h 2008-08-01 13:00:53 UTC (rev 15904) +++ branches/sound-branch/intern/boolop/intern/BOP_Merge.h 2008-08-01 19:46:41 UTC (rev 15905) @@ -28,6 +28,9 @@ #ifndef BOP_MERGE_H #define BOP_MERGE_H +#include "BOP_Misc.h" + +#ifdef BOP_ORIG_MERGE #include "BOP_Mesh.h" #include "BOP_Tag.h" #include "BOP_MathUtils.h" @@ -68,4 +71,6 @@ void mergeFaces(BOP_Mesh *m, BOP_Index v); }; +#endif /* BOP_ORIG_MERGE */ + #endif Copied: branches/sound-branch/intern/boolop/intern/BOP_Merge2.cpp (from rev 15904, trunk/blender/intern/boolop/intern/BOP_Merge2.cpp) =================================================================== --- branches/sound-branch/intern/boolop/intern/BOP_Merge2.cpp (rev 0) +++ branches/sound-branch/intern/boolop/intern/BOP_Merge2.cpp 2008-08-01 19:46:41 UTC (rev 15905) @@ -0,0 +1,944 @@ +/** + * + * $Id: BOP_Merge22.cpp 14444 2008-04-16 22:40:48Z hos $ + * + * ***** BEGIN GPL LICENSE BLOCK ***** + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program 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 General Public License for more details. + * @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs