[Python-ogre-commit] SF.net SVN: python-ogre: [603] trunk/python-ogre
Brought to you by:
andy_miller,
roman_yakovenko
|
From: <and...@us...> - 2008-06-22 11:58:54
|
Revision: 603
http://python-ogre.svn.sourceforge.net/python-ogre/?rev=603&view=rev
Author: andy_miller
Date: 2008-06-22 04:59:01 -0700 (Sun, 22 Jun 2008)
Log Message:
-----------
NXOgre builds and compiles :)
Modified Paths:
--------------
trunk/python-ogre/ChangeLog.txt
trunk/python-ogre/ThirdParty/nxogre/NxOgreShapeTerrain.h
trunk/python-ogre/code_generators/common_utils/extract_documentation.py
trunk/python-ogre/code_generators/navi/python_navi_aliases.h
trunk/python-ogre/code_generators/nxogre/customization_data.py
trunk/python-ogre/code_generators/nxogre/generate_code.py
trunk/python-ogre/code_generators/ogre/hand_made_wrappers.py
trunk/python-ogre/environment.py
Modified: trunk/python-ogre/ChangeLog.txt
===================================================================
--- trunk/python-ogre/ChangeLog.txt 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/ChangeLog.txt 2008-06-22 11:59:01 UTC (rev 603)
@@ -1,3 +1,45 @@
+June 20 2008: Release 1.2 RC2
+============================='
+OK, so it's been a while -- what can I say, I have to live in the real world as well as the opensource one :)
+There are some significant changes -- almost should be a 1.3 Rc1 release, however we'll stick with 1.2
+
+One major issue to be aware of -- the binaries for Windows are based upon the latest SVN versions
+of the underlying libraries - if you want Ogre 1.4 support you will need to build it yourself from the PythonOgre SVN.
+So - while the PythonOgre SVN will continue to automatically support 'stable/released' versions of libraries I personally
+am not going to make builds for these (as it doesn't keep my interest). Instead where possible everything will be based
+on the latest and greatest underlying library code.
+
+***** ISSUES *****
+Some API's have changed -- Have a look at the Demo_Grass for one example (search for PythonOgreVersion). The
+changes relate to where the underlying C++ function takes 'address references' as arguments and expects to modify
+the variables at these locations. ie:
+ bool suggestTangentVectorBuildParams(VertexElementSemantic targetSemantic,
+ unsigned short& outSourceCoordSet, unsigned short& outIndex);
+modifies inplace outSourceCoorSet and outIndex. This is something we fix when wrapping the library so you get a tupple
+as a return from the function:
+ ret, src, dest = m.suggestTangentVectorBuildParams(ogre.VES_TANGENT,1,1)
+In previous versions of PythonOgre you didn't need the 'dummy' arguments (in this example the '1,1') - however that meant
+that some overloaded functions we not accesable, so now you have to obey the full C++ calling format.
+
+There are also some properties that are no longer exposed as they were breaking the wrappers in certain areas. These
+were all 'additions' to the C++ library calls anyway so when in doubt look at the underlying library documentation..
+An example is
+ SceneManager.rootSceneNode.createChildSceneNode() will not longer work,
+instead it has to read
+ SceneManager.getRootSceneNode().createChildSceneNode()
+
+***** Libraries Wrapped *****
+ * OGRE 1.7 - SVN R7604
+ * OIS 1.6
+ * ODE 0.9
+ * Physx (NVIDIA) 2.8.1
+ * Bullet 2.69
+ * QuickGGUI SVN R350
+
+
+ and more :)
+
+
Feb 19 2008: Release 1.2 RC1
======================
ISSUES:
Modified: trunk/python-ogre/ThirdParty/nxogre/NxOgreShapeTerrain.h
===================================================================
--- trunk/python-ogre/ThirdParty/nxogre/NxOgreShapeTerrain.h 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/ThirdParty/nxogre/NxOgreShapeTerrain.h 2008-06-22 11:59:01 UTC (rev 603)
@@ -2,20 +2,20 @@
* \brief Header for the Terrain class.
* \version 1.0-21
*
- * \licence NxOgre a wrapper for the PhysX physics library.
- * Copyright (C) 2005-8 Robin Southern of NxOgre.org http://www.nxogre.org
- * This library 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.
- *
- * This library 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 this library; if not, write to the Free Software
+ * \licence NxOgre a wrapper for the PhysX physics library.
+ * Copyright (C) 2005-8 Robin Southern of NxOgre.org http://www.nxogre.org
+ * This library 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.
+ *
+ * This library 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 this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
@@ -154,32 +154,31 @@
/** \brief Terrain Constructor; loading a resource to use as a terrain.
*/
- Terrain(const Resources::ResourceIdentifier&, float3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
-
- /** \brief Terrain Constructor; loading a resource to use as a terrain.
- */
- Terrain(const Resources::ResourceIdentifier&, NxVec3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
-
-#if (NX_USE_OGRE == 1)
- /** \brief Terrain Constructor; loading a resource to use as a terrain.
- */
- Terrain(const Resources::ResourceIdentifier&, Ogre::Vector3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
-#endif
-
+// Terrain(const Resources::ResourceIdentifier&, float3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
+// // /** \brief Terrain Constructor; loading a resource to use as a terrain.
+// // */
+// // Terrain(const Resources::ResourceIdentifier&, NxVec3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
+// //
+// // #if (NX_USE_OGRE == 1)
+// // /** \brief Terrain Constructor; loading a resource to use as a terrain.
+// // */
+// // Terrain(const Resources::ResourceIdentifier&, Ogre::Vector3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
+// // #endif
+// //
/** \brief Terrain Constructor; using a direct terrain
*/
Terrain(Resources::Heightfield*, float3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
+// //
+// // /** \brief Terrain Constructor; using a direct terrain
+// // */
+// // Terrain(Resources::Heightfield*, NxVec3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
+// //
+// // #if (NX_USE_OGRE == 1)
+// // /** \brief Terrain Constructor; using a direct terrain
+// // */
+// // Terrain(Resources::Heightfield*, Ogre::Vector3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
+// // #endif
- /** \brief Terrain Constructor; using a direct terrain
- */
- Terrain(Resources::Heightfield*, NxVec3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
-
-#if (NX_USE_OGRE == 1)
- /** \brief Terrain Constructor; using a direct terrain
- */
- Terrain(Resources::Heightfield*, Ogre::Vector3 size, const ShapeParams& = ShapeParams(), const TerrainParams& = TerrainParams());
-#endif
-
/** \brief Terrain destructor
*/
~Terrain();
Modified: trunk/python-ogre/code_generators/common_utils/extract_documentation.py
===================================================================
--- trunk/python-ogre/code_generators/common_utils/extract_documentation.py 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/code_generators/common_utils/extract_documentation.py 2008-06-22 11:59:01 UTC (rev 603)
@@ -218,7 +218,10 @@
_str = clean(_str, "\\include", "Include: ") ## nxPhysics
_str = clean(_str, "\\image", "Image: ") ## nxPhysics
+ _str = clean(_str, "\\examples", "Examples: ") ## nxOgre
+ _str = clean(_str, "\\default", "Default: ") ## nxOgre
+
## now clean up the rest
_str = reduce(clean, [_str, '/', '*', '!', "\\brief", '\\fn',
"@brief", "@fn", '"', "@{", "\\c", "\\a"]) ## somtimes there are '"' in the doc strings and other "\\"...
Modified: trunk/python-ogre/code_generators/navi/python_navi_aliases.h
===================================================================
--- trunk/python-ogre/code_generators/navi/python_navi_aliases.h 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/code_generators/navi/python_navi_aliases.h 2008-06-22 11:59:01 UTC (rev 603)
@@ -6,3 +6,6 @@
typedef std::vector<std::string, std::allocator<std::string> > VectorString;
// typedef NaviLibrary::NaviUtilities::InlineVector<std::string> InlineVectorStrings;
typedef NaviLibrary::NaviUtilities::InlineVector<NaviLibrary::NaviUtilities::MultiValue> InlineVectorArgs;
+typedef NaviLibrary::Singleton< NaviLibrary::NaviManager > SingletonManager;
+typedef NaviLibrary::Singleton< NaviLibrary::NaviMouse > SingletonMouse;
+typedef NaviLibrary::FastDelegate1< NaviLibrary::NaviData const&, void > FastDelegateNaviData;
\ No newline at end of file
Modified: trunk/python-ogre/code_generators/nxogre/customization_data.py
===================================================================
--- trunk/python-ogre/code_generators/nxogre/customization_data.py 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/code_generators/nxogre/customization_data.py 2008-06-22 11:59:01 UTC (rev 603)
@@ -2,7 +2,6 @@
def header_files( version ):
return [ 'NxOgre.h'
,'NxOgreSkeleton.h'
- ,'NxOgreResourceMesh.h'
,'Ogre.h'
,'OgrePlugin.h'
,'NxPhysics.h'
Modified: trunk/python-ogre/code_generators/nxogre/generate_code.py
===================================================================
--- trunk/python-ogre/code_generators/nxogre/generate_code.py 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/code_generators/nxogre/generate_code.py 2008-06-22 11:59:01 UTC (rev 603)
@@ -157,26 +157,35 @@
,'::NxOgre::WheelSet::turn'
,'::NxOgre::Material::setDirOfAnisotropy'
,'::NxOgre::OgreNodeRenderable::addSceneNode'
-# ,'::NxOgre::ResourceStreamPtr::ResourceStreamPtr'
,'::NxOgre::MaterialAlias::generateConversionList'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidDrain*>::begin'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidDrain*>::get'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidDrain*>::getFirst'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidDrain*>::next'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidDrain*>::_begin'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidDrain*>::_next'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidEmitter*>::_begin'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidEmitter*>::_next'
-# ,'::NxOgre::Container<std::string, NxOgre::FluidEmitter*>::getFirst'
,'::NxOgre::Actor::getCompartment'
,'::NxOgre::Shape::getSkeleton'
-# ,'::NxOgre::Container< std::string, NxOgre::Cloth* >::begin'
-# ,'::NxOgre::Container< std::string, NxOgre::Cloth* >::get'
-# ,'::NxOgre::Container< std::string, NxOgre::Cloth* >::getFirst'
-# ,'::NxOgre::Container< std::string, NxOgre::Cloth* >::next'
-# ,'::NxOgre::Container< std::string, NxOgre::Cloth* >::CopyTo'
+ ,'::NxOgre::Resources::ResourceSystem::getCookingInterface'
+ ,'::NxOgre::ContactCallbackController::registerSimpleCallback'
+ ,'::NxOgre::ContactCallbackController::registerGroupCallback'
+ ,'::NxOgre::ForceFieldFunction::Tornado'
+ ,'::NxOgre::ForceFieldFunction::Explosion'
+ ,'::NxOgre::Resources::Heightfield::getReferenceCount'
+ ,'::NxOgre::Resources::ManualHeightfield::isValid'
+ ,'::NxOgre::Resources::ManualHeightfield::isNotValidReasons'
+ ,'::NxOgre::Resources::ManualMesh::material'
+ ,'::NxOgre::Resources::ManualMesh::getMaterialAlias'
+ ,'::NxOgre::Resources::ManualMesh::addMaterialAlias'
+ ,'::NxOgre::Resources::ManualMesh::isNotValidReasons'
+ ,'::NxOgre::Resources::MaterialAlias::save'
+ ,'::NxOgre::Resources::MaterialAlias::load'
+ ,'::NxOgre::Resources::Mesh::getType'
+ ,'::NxOgre::Resources::Mesh::getReferenceCount'
+ ,'::NxOgre::Resources::ResourceSystem::getMaterialAlias'
+ ,'::NxOgre::Resources::ResourceSystem::destroyMesh'
+ ,'::NxOgre::Resources::ResourceSystem::clearMesh'
+ ,'::NxOgre::Resources::ResourceSystem::clearMaterialAlais'
+ ,'::NxOgre::Resources::ResourceSystem::addMaterialAlias'
+ ,'::NxOgre::WheelSet::setBrakingTorque'
+
+
]
for e in excludes:
print "excluding ", e
@@ -205,15 +214,14 @@
'DistanceJoint' ## constructor issue TOFIX
,'JointCallback' ## also no suitable/defaul constructor TOFIX
,'Character' ## defined in header but not very much implementation
-# ,'RenderableSource'
,'ResourceManager'
,'::NxOgre::Container< std::string, NxConvexMesh* >' # issue with deleting protected classes
-# ,'ResourceStreamPtr'
-# ,'::NxOgre::Blueprints::ActorFactory'
-# ,'State'
-# ,'MeshResource'
-# ,'::NxOgre::Serialiser::SerialiserBase'
-# ,'BlueprintUserData'
+ ,'::NxOgre::Functions::Triggers::AddedGravity'
+ ,'::NxOgre::Resources::ManualMeshUtil'
+ ,'::NxOgre::Terrain::Terrain'
+ ,'::NxOgre::Functions::Triggers::NoGravity'
+ ,'::NxOgre::Functions::Triggers::ReplacementGravity'
+ ,'::NxOgre::Functions::Triggers::MoveToPosition'
]
for e in excludes:
print "Excluding", e
@@ -249,10 +257,13 @@
# # f.exclude()
### Variables
- excludes = ['::NxOgre::WheelSet::mEngine' # desctuctor in WheelSet is protected so can't wrap this..
+ excludes = [ ## '::NxOgre::WheelSet::mEngine' # desctuctor in WheelSet is protected so can't wrap this..
+ '::NxOgre::Shape::mSkeleton'
+ ,'::NxOgre::ShapeParams::mCCDSkeleton'
+ ,'::NxOgre::WheelParams::mWheelContactCallback'
]
-# for e in excludes:
-# main_ns.variable(e).exclude()
+ for e in excludes:
+ main_ns.variable(e).exclude()
### Typedefs
excludes = [
@@ -266,10 +277,13 @@
if o.decl_string.endswith('[]'):
print "Excluding Operator: ", o
o.exclude()
+ else:
+ print "Operator OK:",o
excludes=['::NxOgre::Container<std::string, NxOgre::FluidDrain*>::operator[]'
,'::NxOgre::Container<std::string, NxOgre::FluidEmitter*>::operator[]'
,'::NxOgre::Container< std::string, NxOgre::Cloth* >::operator[]'
,'::NxOgre::Container< std::string, NxOgre::Fluid* >::operator[]'
+ ,'::NxOgre::Container< std::string, NxOgre::SoftBody* >::operator[]'
]
for e in excludes:
print "Excluding operator:", e
Modified: trunk/python-ogre/code_generators/ogre/hand_made_wrappers.py
===================================================================
--- trunk/python-ogre/code_generators/ogre/hand_made_wrappers.py 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/code_generators/ogre/hand_made_wrappers.py 2008-06-22 11:59:01 UTC (rev 603)
@@ -365,7 +365,7 @@
"\"" + environment.PythonOgrePatchVersion + "\""
) );
}
-## Duplicating to get lower case 'get'
+// Duplicating to get lower case 'get'
boost::python::tuple
getOgreVersion () {
return ( boost::python::make_tuple( Ogre::StringConverter::toString(OGRE_VERSION_MAJOR),
Modified: trunk/python-ogre/environment.py
===================================================================
--- trunk/python-ogre/environment.py 2008-06-22 06:25:12 UTC (rev 602)
+++ trunk/python-ogre/environment.py 2008-06-22 11:59:01 UTC (rev 603)
@@ -972,7 +972,7 @@
,os.path.join(Config.PATH_navi,'..','Dependencies','win32','astral','lib')
]
CheckIncludes=[]
- libs=[ Config.LIB_Boost, 'Navi', 'OgreMain','Astral', 'user32',
+ libs=[ Config.LIB_Boost, 'Navi_DLL', 'OgreMain','Astral', 'user32',
'kernel32.lib', 'gdi32.lib', 'winspool.lib', 'comdlg32.lib', 'advapi32.lib',
'shell32.lib','ole32.lib','oleaut32.lib','uuid.lib' ]
ModuleName="navi"
@@ -1071,7 +1071,7 @@
CheckIncludes=[]
# libs=[ Config.LIB_Boost, 'NxOgre','NxCharacter', 'NxCooking', 'NxExtensions', 'PhysXLoader','OgreMain' ]
if os.name =='nt':
- libs=[ Config.LIB_Boost, 'NxCharacter', 'NxCooking', 'PhysXLoader','OgreMain' , 'NxOgreStatic'] #'NxExtensions',
+ libs=[ Config.LIB_Boost, 'NxCharacter', 'NxCooking', 'PhysXLoader','OgreMain' ] #, 'NxOgreStatic'] #'NxExtensions',
else:
libs=[ Config.LIB_Boost, 'NxCharacter', 'NxCooking', 'PhysXCore','PhysXLoader','OgreMain' ]
ModuleName="NxOgre"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|