blender/source/gameengine/Ketsji
Brecht Van Lommel e435fbc3c5 Added custom vertex/edge/face data for meshes:
All data layers, including MVert/MEdge/MFace, are now managed as custom
data layers. The pointers like Mesh.mvert, Mesh.dvert or Mesh.mcol are
still used of course, but allocating, copying or freeing these arrays
should be done through the CustomData API.

Work in progress documentation on this is here:
http://mediawiki.blender.org/index.php/BlenderDev/BlenderArchitecture/CustomData


Replaced TFace by MTFace:

This is the same struct, except that it does not contain color, that now
always stays separated in MCol. This was not a good design decision to
begin with, and it is needed for adding multiple color layers later. Note
that this does mean older Blender versions will not be able to read UV
coordinates from the next release, due to an SDNA limitation.


Removed DispListMesh:

This now fully replaced by DerivedMesh. To provide access to arrays of
vertices, edges and faces, like DispListMesh does. The semantics of the
DerivedMesh.getVertArray() and similar functions were changed to return
a pointer to an array if one exists, or otherwise allocate a temporary
one. On releasing the DerivedMesh, this temporary array will be removed
automatically.


Removed ssDM and meshDM DerivedMesh backends:

The ssDM backend was for DispListMesh, so that became obsolete automatically.
The meshDM backend was replaced by the custom data backend, that now figures
out which layers need to be modified, and only duplicates those.


This changes code in many places, and overall removes 2514 lines of code.
So, there's a good chance this might break some stuff, although I've been
testing it for a few days now. The good news is, adding multiple color and
uv layers should now become easy.
2006-11-20 04:28:02 +00:00
..
KXNetwork CMake lists initial submission. Documentationand further verification for different platforms will follow soon. This was just tested against current CVS on MSVC 2005 with Verse, QuickTime, OpenEXR, Player all on. 2006-11-17 02:27:12 +00:00
BL_Material.cpp Improved OpenGL Shader Language support for game engine. The python interface is much simplified. Drawback is that scripts need to be updated next release. Testfiles: 2006-02-13 05:45:32 +00:00
BL_Material.h Added custom vertex/edge/face data for meshes: 2006-11-20 04:28:02 +00:00
BL_Shader.cpp a lot of work in a few small changes to improve penetration depth. and some fixes in shaders from Charlie. 2006-04-13 05:11:34 +00:00
BL_Shader.h applied Charlies patch, reverted some GLSL shader stuff, improved penetration depth estimate. 2006-04-11 05:57:30 +00:00
BL_Texture.cpp patch from Charlie, bug fix (3795) , improves CubeMaps in game engine 2006-05-11 20:41:28 +00:00
BL_Texture.h applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
CMakeLists.txt CMake lists initial submission. Documentationand further verification for different platforms will follow soon. This was just tested against current CVS on MSVC 2005 with Verse, QuickTime, OpenEXR, Player all on. 2006-11-17 02:27:12 +00:00
KX_BlenderMaterial.cpp Added custom vertex/edge/face data for meshes: 2006-11-20 04:28:02 +00:00
KX_BlenderMaterial.h Added custom vertex/edge/face data for meshes: 2006-11-20 04:28:02 +00:00
KX_BulletPhysicsController.cpp bugfix:: added objects didn't have proper physics id (they used the physics id from the 'hidden layer' original. 2006-06-22 02:20:36 +00:00
KX_BulletPhysicsController.h bugfix/workaround for problem with hard-coded collision margins being too large. 2006-06-18 22:10:00 +00:00
KX_Camera.cpp Sorry to break the cvs-closed status, so if you really need to make a new 2.40 build, just disable the game engine if it doesn't compile for a platform. Again, sorry if this breaks non-windows platforms, but I hope people help to get this amazing fix working for all platforms. Armature-fixing contribution from Snailrose. Also lots of cool things from Snailrose and Lagan. 2006-01-06 03:46:54 +00:00
KX_Camera.h Sorry to break the cvs-closed status, so if you really need to make a new 2.40 build, just disable the game engine if it doesn't compile for a platform. Again, sorry if this breaks non-windows platforms, but I hope people help to get this amazing fix working for all platforms. Armature-fixing contribution from Snailrose. Also lots of cool things from Snailrose and Lagan. 2006-01-06 03:46:54 +00:00
KX_CameraActuator.cpp big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_CameraActuator.h Python methods for camera actuators (thanks snailrose) 2004-12-29 01:33:15 +00:00
KX_CameraIpoSGController.cpp applied the 64-bit pointer patch submitted by Ken Hughes 2005-11-28 06:51:54 +00:00
KX_CameraIpoSGController.h [GameEngine] Commit all Kester's changes made to the gameengine to restore 2.25 like physics. 2004-03-22 22:02:18 +00:00
KX_CDActuator.cpp Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_CDActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_ClientObjectInfo.h Speed up the physics engine: hook the SOLID broad phase, so we can either reject the test or request the penetration depth test as necessary. Previously we were doing the penetration depth test, as well as SOLID's intersection test. 2004-11-06 04:58:10 +00:00
KX_ConstraintActuator.cpp Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_ConstraintActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_ConstraintWrapper.cpp Changed Python _getattr/_setattr methods to use const STR_String& instead of char* - makes using these methods much nicer. 2004-05-16 13:05:15 +00:00
KX_ConstraintWrapper.h Changed Python _getattr/_setattr methods to use const STR_String& instead of char* - makes using these methods much nicer. 2004-05-16 13:05:15 +00:00
KX_ConvertPhysicsObject.h added 'disable sleeping' option for rigidbodies. + bugfix of out of sync wheels for vehicle 2006-02-22 06:58:05 +00:00
KX_ConvertPhysicsObjects.cpp upgraded Bullet rigidbody physics to latest version 1.9 2006-08-28 06:44:29 +00:00
KX_EmptyObject.cpp Fixed several bugs: python refcounting related and Bullet related (basic add/remove object support, bounding volume hierarchy). Added a few files, updated the Bullet scons. Vc6/7 Bullet projectfiles need to add a couple of files: 'Bullet/CollisionShapes/BvhTriangleMeshShape.cpp', 2005-12-31 07:20:08 +00:00
KX_EmptyObject.h Fixed several bugs: python refcounting related and Bullet related (basic add/remove object support, bounding volume hierarchy). Added a few files, updated the Bullet scons. Vc6/7 Bullet projectfiles need to add a couple of files: 'Bullet/CollisionShapes/BvhTriangleMeshShape.cpp', 2005-12-31 07:20:08 +00:00
KX_GameActuator.cpp big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_GameActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_GameObject.cpp bugfix/workaround for problem with hard-coded collision margins being too large. 2006-06-18 22:10:00 +00:00
KX_GameObject.h bugfix/workaround for problem with hard-coded collision margins being too large. 2006-06-18 22:10:00 +00:00
KX_IInterpolator.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_IPhysicsController.cpp Big patches: 2005-03-25 10:33:39 +00:00
KX_IPhysicsController.h bugfix/workaround for problem with hard-coded collision margins being too large. 2006-06-18 22:10:00 +00:00
KX_IPO_SGController.cpp applied the 64-bit pointer patch submitted by Ken Hughes 2005-11-28 06:51:54 +00:00
KX_IPO_SGController.h Big patches: 2005-03-25 10:33:39 +00:00
KX_IpoActuator.cpp applying Volker Mische engine patch 2005-12-18 19:10:26 +00:00
KX_IpoActuator.h Fix IPO actuator (Bug #1694) 2004-11-03 10:48:02 +00:00
KX_IPOTransform.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_IScalarInterpolator.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_ISceneConverter.h Sorry to break the cvs-closed status, so if you really need to make a new 2.40 build, just disable the game engine if it doesn't compile for a platform. Again, sorry if this breaks non-windows platforms, but I hope people help to get this amazing fix working for all platforms. Armature-fixing contribution from Snailrose. Also lots of cool things from Snailrose and Lagan. 2006-01-06 03:46:54 +00:00
KX_ISystem.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_KetsjiEngine.cpp (experimental) logic timestep to 60hertz instead of 30 hertz. 2006-05-10 02:04:21 +00:00
KX_KetsjiEngine.h Patch from Charlie: 2006-05-13 23:31:36 +00:00
KX_Light.cpp Port Python updates from Tuhopuu2: 2004-07-17 05:28:23 +00:00
KX_Light.h Added Python module for Lights. 2004-05-30 11:09:46 +00:00
KX_LightIpoSGController.cpp applied the 64-bit pointer patch submitted by Ken Hughes 2005-11-28 06:51:54 +00:00
KX_LightIpoSGController.h [GameEngine] Commit all Kester's changes made to the gameengine to restore 2.25 like physics. 2004-03-22 22:02:18 +00:00
KX_MaterialIpoController.cpp changed the size of some local vars for 64bit linux. 2006-01-06 15:29:11 +00:00
KX_MaterialIpoController.h Sorry to break the cvs-closed status, so if you really need to make a new 2.40 build, just disable the game engine if it doesn't compile for a platform. Again, sorry if this breaks non-windows platforms, but I hope people help to get this amazing fix working for all platforms. Armature-fixing contribution from Snailrose. Also lots of cool things from Snailrose and Lagan. 2006-01-06 03:46:54 +00:00
KX_MeshProxy.cpp applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
KX_MeshProxy.h applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
KX_MotionState.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_MotionState.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_MouseFocusSensor.cpp some more fixes in the raycast/mouse over 2005-08-17 19:52:56 +00:00
KX_MouseFocusSensor.h Getting blender to compile for IRIX, in particular: 2005-09-14 21:50:37 +00:00
KX_NearSensor.cpp -added basic support for GameActuator 'load game', relative paths were broken, just load file into memory and load blend from memory. 2006-05-22 21:03:43 +00:00
KX_NearSensor.h Big patches: 2005-03-25 10:33:39 +00:00
KX_ObColorIpoSGController.cpp applied the 64-bit pointer patch submitted by Ken Hughes 2005-11-28 06:51:54 +00:00
KX_ObColorIpoSGController.h [GameEngine] Commit all Kester's changes made to the gameengine to restore 2.25 like physics. 2004-03-22 22:02:18 +00:00
KX_ObjectActuator.cpp Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_ObjectActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_OdePhysicsController.cpp enable bullet for vc7 too by default (can be switched off easily) 2005-07-30 18:21:02 +00:00
KX_OdePhysicsController.h Big patches: 2005-03-25 10:33:39 +00:00
KX_OrientationInterpolator.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_OrientationInterpolator.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_PhysicsEngineEnums.h preparation for bullet physics 2005-07-16 21:47:54 +00:00
KX_PhysicsObjectWrapper.cpp Changed Python _getattr/_setattr methods to use const STR_String& instead of char* - makes using these methods much nicer. 2004-05-16 13:05:15 +00:00
KX_PhysicsObjectWrapper.h Changed Python _getattr/_setattr methods to use const STR_String& instead of char* - makes using these methods much nicer. 2004-05-16 13:05:15 +00:00
KX_PhysicsPropertiesobsolete.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_PolygonMaterial.cpp Added custom vertex/edge/face data for meshes: 2006-11-20 04:28:02 +00:00
KX_PolygonMaterial.h Added custom vertex/edge/face data for meshes: 2006-11-20 04:28:02 +00:00
KX_PositionInterpolator.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_PositionInterpolator.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_PyConstraintBinding.cpp debug lines / register the applied impulse for constraint (for breaking) 2006-07-03 05:58:23 +00:00
KX_PyConstraintBinding.h Big patches: 2005-03-25 10:33:39 +00:00
KX_PyMath.cpp big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_PyMath.h big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_PythonInit.cpp some minor webplugin changes, new loading .blend, upgraded version to 2.42, enabled PhysicsConstraints module within sandbox. 2006-07-06 07:58:07 +00:00
KX_PythonInit.h Patch from Charlie: 2006-05-13 23:31:36 +00:00
KX_RadarSensor.cpp fixed copy/paste bug in physicscontroller applyforce, and crashing radar sensor 2006-01-06 09:57:27 +00:00
KX_RadarSensor.h Big patches: 2005-03-25 10:33:39 +00:00
KX_RayCast.cpp fixed the mouse-over sensor, 2005-08-05 17:00:32 +00:00
KX_RayCast.h Big patches: 2005-03-25 10:33:39 +00:00
KX_RayEventManager.cpp Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_RayEventManager.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_RaySensor.cpp More simple fixes to cleanup warnings and what not: 2006-01-30 19:59:33 +00:00
KX_RaySensor.h Big patches: 2005-03-25 10:33:39 +00:00
KX_SCA_AddObjectActuator.cpp -added basic support for GameActuator 'load game', relative paths were broken, just load file into memory and load blend from memory. 2006-05-22 21:03:43 +00:00
KX_SCA_AddObjectActuator.h more Bullet physics improvements, mainly stability and performance related. 2006-04-01 03:30:15 +00:00
KX_SCA_EndObjectActuator.cpp big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_SCA_EndObjectActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_SCA_ReplaceMeshActuator.cpp big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_SCA_ReplaceMeshActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_ScalarInterpolator.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_ScalarInterpolator.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_ScalingInterpolator.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_ScalingInterpolator.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_Scene.cpp -added basic support for GameActuator 'load game', relative paths were broken, just load file into memory and load blend from memory. 2006-05-22 21:03:43 +00:00
KX_Scene.h -added basic support for GameActuator 'load game', relative paths were broken, just load file into memory and load blend from memory. 2006-05-22 21:03:43 +00:00
KX_SceneActuator.cpp big warning hunt commit 2005-03-09 19:45:59 +00:00
KX_SceneActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_SG_BoneParentNodeRelationship.cpp Added bone parent relationship. 2005-04-23 11:36:44 +00:00
KX_SG_BoneParentNodeRelationship.h Added bone parent relationship. 2005-04-23 11:36:44 +00:00
KX_SG_NodeRelationships.cpp Big patches: 2005-03-25 10:33:39 +00:00
KX_SG_NodeRelationships.h Added bone parent relationship. 2005-04-23 11:36:44 +00:00
KX_SoundActuator.cpp Big patches: 2005-03-25 10:33:39 +00:00
KX_SoundActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_SumoPhysicsController.cpp bugfix/workaround for problem with hard-coded collision margins being too large. 2006-06-18 22:10:00 +00:00
KX_SumoPhysicsController.h bugfix/workaround for problem with hard-coded collision margins being too large. 2006-06-18 22:10:00 +00:00
KX_TimeCategoryLogger.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_TimeCategoryLogger.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_TimeLogger.cpp [GameEngine] Commit all Kester's changes made to the gameengine to restore 2.25 like physics. 2004-03-22 22:02:18 +00:00
KX_TimeLogger.h Removed the config.h thing from the .h's in the source dir. 2002-12-27 13:11:01 +00:00
KX_TouchEventManager.cpp new round of warning fixes. we are now down to 24 with Xcode on blender 2005-06-04 16:22:50 +00:00
KX_TouchEventManager.h Big patches: 2005-03-25 10:33:39 +00:00
KX_TouchSensor.cpp fixed several internal Bullet rigidbody dynamics bugs: 2006-04-26 03:20:28 +00:00
KX_TouchSensor.h Big patches: 2005-03-25 10:33:39 +00:00
KX_TrackToActuator.cpp new game-menu option 'Record Game Physics to Ipo' 2005-08-23 13:16:02 +00:00
KX_TrackToActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_VehicleWrapper.cpp exposed a few more tuning paramters 2006-02-21 07:08:23 +00:00
KX_VehicleWrapper.h exposed a few more tuning paramters 2006-02-21 07:08:23 +00:00
KX_VertexProxy.cpp applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
KX_VertexProxy.h applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
KX_VisibilityActuator.cpp Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_VisibilityActuator.h Switch fixed time system. Logic updates should now happen at 30Hz, physics at 60Hz. (By default, use Python to set.) Some actuators still run at framerate (IPO, Action) for nice smooth animation, and an excuse to buy high end hardware. 2004-10-16 11:41:50 +00:00
KX_WorldInfo.cpp Last of the config.h mods... 2002-11-25 15:29:57 +00:00
KX_WorldInfo.h Sorry to break the cvs-closed status, so if you really need to make a new 2.40 build, just disable the game engine if it doesn't compile for a platform. Again, sorry if this breaks non-windows platforms, but I hope people help to get this amazing fix working for all platforms. Armature-fixing contribution from Snailrose. Also lots of cool things from Snailrose and Lagan. 2006-01-06 03:46:54 +00:00
KX_WorldIpoController.cpp applied the 64-bit pointer patch submitted by Ken Hughes 2005-11-28 06:51:54 +00:00
KX_WorldIpoController.h [GameEngine] Commit all Kester's changes made to the gameengine to restore 2.25 like physics. 2004-03-22 22:02:18 +00:00
Makefile At least FreeBSD needs to know where to find gl.h 2006-01-11 19:31:15 +00:00
SConscript Bugfix #4081: support for OpenBSD platform for scons. Big thanks to Nathan Houghton for this contribution. 2006-06-05 15:52:26 +00:00