[Python-ogre-commit] SF.net SVN: python-ogre: [572] trunk/python-ogre
Brought to you by:
andy_miller,
roman_yakovenko
From: <and...@us...> - 2008-02-16 01:57:31
|
Revision: 572 http://python-ogre.svn.sourceforge.net/python-ogre/?rev=572&view=rev Author: andy_miller Date: 2008-02-15 17:57:37 -0800 (Fri, 15 Feb 2008) Log Message: ----------- Various 1.2 Updates Modified Paths: -------------- trunk/python-ogre/ChangeLog.txt trunk/python-ogre/PythonOgreConfig_nt.py trunk/python-ogre/PythonOgreConfig_posix.py trunk/python-ogre/PythonOgreInstallCreator.iss trunk/python-ogre/environment.py trunk/python-ogre/installWarning.rtf trunk/python-ogre/packages_2.5/ogre/renderer/OGRE/sf_OIS.py trunk/python-ogre/patch/ogre.patch trunk/python-ogre/scripts/updatesource.bat trunk/python-ogre/setup.py Added Paths: ----------- trunk/python-ogre/BuildModule.py trunk/python-ogre/demos/ogre/tests/Test_DataStream.py Removed Paths: ------------- trunk/python-ogre/BuildModule.py trunk/python-ogre/ThirdParty/caelum/CaelumPrerequisites.h.bak trunk/python-ogre/ThirdParty/quickgui/QuickGUIExportDLL.h.bak Deleted: trunk/python-ogre/BuildModule.py =================================================================== --- trunk/python-ogre/BuildModule.py 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/BuildModule.py 2008-02-16 01:57:37 UTC (rev 572) @@ -1,202 +0,0 @@ -# -# BuildModule will build a Python-Ogre module. -# - -## Curent - -from optparse import OptionParser -import subprocess -import environment -import logging -import sys -import types -import os - -logger = None - -def setupLogging (logfilename): - # set up logging to file - logging.basicConfig(level=logging.DEBUG, - format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s', - datefmt='%m-%d %H:%M', - filename=logfilename, - filemode='w') - # define a Handler which writes INFO messages or higher to the sys.stderr - console = logging.StreamHandler() - console.setLevel(logging.INFO) - # set a format which is simpler for console use - formatter = logging.Formatter('%(name)-12s: %(levelname)-8s %(message)s') - # tell the handler to use this format - console.setFormatter(formatter) - # add the handler to the root logger - logging.getLogger('').addHandler(console) - - -def getClassList (): - """ create a dictionary of classes from the environment modules - """ - dict = {} - for c in dir(environment): - var = environment.__dict__[c] - if isinstance ( var, types.ClassType ) : ## OK so we know it's a class -# logger.debug ( "getClassList: Checking %s" % c ) - if hasattr(var, 'active') and hasattr(var, 'pythonModule'): # and it looks like one we care about -# logger.debug ( "getClassList: it's one of ours") - dict[c] = var - return dict - -def exit( ExitMessage ): - logger.error( ExitMessage ) - sys.exit( -1 ) - - -## This stuff has to be in my spawing sub process -# # export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$PREFIX/lib/pkgconfig -# # export LD_LIBRARY_PATH=$PREFIX/lib -# # export CFLAGS="-I$PREFIX/include -L$PREFIX/lib" -# # export CXXFLAGS=$CFLAGS -# # export LDFLAGS="-Wl,-rpath='\$\$ORIGIN/../../lib' -Wl,-rpath='\$\$ORIGIN' -Wl,-z,origin" -# # export PATH=$PREFIX/bin:$PATH -# # export PYTHONPATH=$PREFIX/lib/python$PYTHONVERSION/site-packages - - -def spawnTask ( task, cwdin = '' ): - """Execute a command line task and manage the return code etc - """ - PREFIX = environment.PREFIX - PATH = os.environ["PATH"] - env = os.environ - env["PKG_CONFIG_PATH"]=os.path.join(PREFIX,"lib/pkgconfig") - env["LD_LIBRARY_PATH"]=os.path.join(PREFIX,"lib") - if environment.isMac(): - env["CFLAGS"]="-I"+PREFIX+"/include -L"+PREFIX+"/lib" - env["CXXFLAGS"]="-I"+PREFIX+"/include -L"+PREFIX+"/lib" - ##env["LDFLAGS"]="-Wl,-rpath='\$\$ORIGIN/../../lib' -Wl,-rpath='\$\$ORIGIN' -Wl,-z,origin" ### Mac GCC 4.0.1 doesn't support rpath - env["PYTHONPATH"]=PREFIX+"/lib/python"+environment.PythonVersionString+"/site-packages" - else: - env["CFLAGS"]="-I"+os.path.join(PREFIX,"include")+ " -L"+os.path.join(PREFIX,"lib") - env["CXXFLAGS"]=env["CFLAGS"] - env["LDFLAGS"]="-Wl,-rpath='$$ORIGIN/../../lib' -Wl,-rpath='$$ORIGIN' -Wl,-z,origin" - env["PYTHONPATH"]=PREFIX+"/lib/python"+environment.PythonVersionString+"/site-packages" - env["ZZIPLIB_LIBS"]="-lzzip" - - env["PATH"]=PREFIX+"/bin:" + PATH - - - logger.debug ( "Spawning '%s' in '%s'" % (task,cwdin) ) - process = subprocess.Popen (task, shell=True,stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd = cwdin, env=env) - try: - out,err = process.communicate() - returncode = process.returncode - except: - returncode = -1 - - if returncode != 0: - logger.warning ( "Task Failed" ) - logger.debug ( out ) - logger.debug ( err ) - return returncode - -def retrieveSource ( module ): - """ Here's we we retrieve the necessary source files - """ - for cmd,args,cwd in module.source: - logger.info ("Retrieving %s" % args ) - ret = spawnTask ( cmd+ " " + args, cwd ) - -def buildModule ( module ): - """ Execute the build commands for the module - """ - for type_,cmd,path in module.buildCmds: - if path =='': - path = os.getcwd() - if type_ == 0 : # it's a shell command - logger.info ("Build Command %s " % cmd) - ret = spawnTask ( cmd, path ) - elif type_ == 1 : - logger.debug ("Compiling %s " % cmd ) - code = compile ( cmd, '<string>', 'exec' ) - logger.debug ("executing codeblock " ) - exec code - logger.debug ( "Exec done") - -def generateCode ( module ): - """ Generate the C++ wrapper code - """ - logger.info ( "Building Source code for " + module.name ) - ### AJM -- note the assumption that environment.py is sitting in the 'python-ogre' directory... - ret = spawnTask ( 'python generate_code.py', os.path.join(environment.root_dir, 'code_generators', module.name) ) - -def compileCode ( module ): - """ Compile the wrapper code and make the modules - """ - logger.info ( "Compiling Source code for " + module.name ) - ### AJM -- note the assumption that environment.py is sitting in the 'python-ogre' directory... - ret = spawnTask ( 'scons PROJECTS='+module.name, os.path.join(environment.root_dir) ) - - - -def parseInput(): - """Handle command line input """ - usage = "usage: %prog [options] moduleName" - parser = OptionParser(usage=usage, version="%prog 1.0") - parser.add_option("-r", "--retrieve", action="store_true", default=False,dest="retrieve", help="Retrieve the appropiate source before building") - parser.add_option("-b", "--build", action="store_true", default=False ,dest="build", help="Build the appropiate module") - parser.add_option("-g", "--gen", action="store_true", default=False ,dest="gencode", help="Generate Source Code for the module") - parser.add_option("-c", "--compile", action="store_true", default=False ,dest="compilecode", help="Compile Source Code for the module") - parser.add_option("-l", "--logfilename", default="log.out" ,dest="logfilename", help="Override the default log file name") - parser.add_option("-G", "--genall", action="store_true", default=False ,dest="gencodeall", help="Generate Source Code for all possible modules") - parser.add_option("-C", "--compileall", action="store_true", default=False ,dest="compilecodeall", help="Compile Source Code for all posssible modules") - - (options, args) = parser.parse_args() - return (options,args) - -if __name__ == '__main__': - classList = getClassList () - - (options, args) = parseInput() - if len(args) == 0 and not (options.compilecodeall or options.gencodeall): - exit("The module to build wasn't specified. Use -h for help") - - if options.retrieve==False and options.build==False and options.gencode==False and options.compilecode==False\ - and options.compilecodeall==False and options.gencodeall==False: - exit ( "You need to specific at least one option. Use -h for help") - - setupLogging(options.logfilename) - logger = logging.getLogger('PythonOgre.BuildModule') - - if not os.path.exists( environment.downloadPath ): - os.mkdir ( environment.downloadPath ) - - if not os.path.exists( environment.Config.ROOT_DIR ): - os.mkdir ( environment.Config.ROOT_DIR ) - if not os.path.exists( os.path.join(environment.Config.ROOT_DIR, 'usr' ) ): - os.mkdir ( os.path.join(environment.Config.ROOT_DIR, 'usr' ) ) - if options.gencodeall or options.compilecodeall: - for name,cls in environment.projects.items(): - if cls.active and cls.pythonModule: - if options.gencodeall: - generateCode( cls ) - if options.compilecodeall: - compileCode( cls ) - - else: - for moduleName in args: - if not classList.has_key( moduleName ): - exit("Module specificed was not found (%s is not in environment.py) " % moduleName ) - if options.retrieve: - retrieveSource ( classList[ moduleName ] ) - if options.build : - buildModule ( classList[ moduleName ] ) - if options.gencode : - if classList[ moduleName ].pythonModule == True: - generateCode ( classList[ moduleName ] ) - else: - print ( "Module specificed does not generate source code (%s is a supporting module)" % moduleName ) - if options.compilecode : - if classList[ moduleName ].pythonModule == True: - compileCode ( classList[ moduleName ] ) - else: - print ( "Module specificed does not need compiling (%s is a supporting module)" % moduleName ) - - Added: trunk/python-ogre/BuildModule.py =================================================================== --- trunk/python-ogre/BuildModule.py (rev 0) +++ trunk/python-ogre/BuildModule.py 2008-02-16 01:57:37 UTC (rev 572) @@ -0,0 +1,214 @@ +# +# BuildModule will build a Python-Ogre module. +# + +## Curent + +from optparse import OptionParser +import subprocess +import environment +import logging +import sys +import types +import os +import time + +logger = None +FULL_LOGGING = False # Set to true to log everything, even if successful +ENV_SET = False # global to ensure we don't set the environment too many times and break the shell. + +def setupLogging (logfilename): + # set up logging to file + logging.basicConfig(level=logging.DEBUG, + format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s', + datefmt='%m-%d %H:%M', + filename=logfilename, + filemode='w') + # define a Handler which writes INFO messages or higher to the sys.stderr + console = logging.StreamHandler() + console.setLevel(logging.INFO) + # set a format which is simpler for console use + formatter = logging.Formatter('%(name)-12s: %(levelname)-8s %(message)s') + # tell the handler to use this format + console.setFormatter(formatter) + # add the handler to the root logger + logging.getLogger('').addHandler(console) + + +def getClassList (): + """ create a dictionary of classes from the environment modules + """ + dict = {} + for c in dir(environment): + var = environment.__dict__[c] + if isinstance ( var, types.ClassType ) : ## OK so we know it's a class +# logger.debug ( "getClassList: Checking %s" % c ) + if hasattr(var, 'active') and hasattr(var, 'pythonModule'): # and it looks like one we care about +# logger.debug ( "getClassList: it's one of ours") + dict[c] = var + return dict + +def exit( ExitMessage ): + logger.error( ExitMessage ) + sys.exit( -1 ) + + +## This stuff has to be in my spawing sub process +# # export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$PREFIX/lib/pkgconfig +# # export LD_LIBRARY_PATH=$PREFIX/lib +# # export CFLAGS="-I$PREFIX/include -L$PREFIX/lib" +# # export CXXFLAGS=$CFLAGS +# # export LDFLAGS="-Wl,-rpath='\$\$ORIGIN/../../lib' -Wl,-rpath='\$\$ORIGIN' -Wl,-z,origin" +# # export PATH=$PREFIX/bin:$PATH +# # export PYTHONPATH=$PREFIX/lib/python$PYTHONVERSION/site-packages + + +def spawnTask ( task, cwdin = '' ): + """Execute a command line task and manage the return code etc + """ + global ENV_SET + PREFIX = environment.PREFIX + PATH = os.environ["PATH"] + env = os.environ + if not ENV_SET: # this actually changes the environment so we shouldn't do it more than once + env["PKG_CONFIG_PATH"]=os.path.join(PREFIX,"lib/pkgconfig") + env["LD_LIBRARY_PATH"]=os.path.join(PREFIX,"lib") + if environment.isMac(): + env["CFLAGS"]="-I"+PREFIX+"/include -L"+PREFIX+"/lib" + env["CXXFLAGS"]="-I"+PREFIX+"/include -L"+PREFIX+"/lib" + ##env["LDFLAGS"]="-Wl,-rpath='\$\$ORIGIN/../../lib' -Wl,-rpath='\$\$ORIGIN' -Wl,-z,origin" ### Mac GCC 4.0.1 doesn't support rpath + env["PYTHONPATH"]=PREFIX+"/lib/python"+environment.PythonVersionString+"/site-packages" + else: + env["CFLAGS"]="-I"+os.path.join(PREFIX,"include")+ " -L"+os.path.join(PREFIX,"lib") + env["CXXFLAGS"]=env["CFLAGS"] + env["LDFLAGS"]="-Wl,-rpath='$$ORIGIN/../../lib' -Wl,-rpath='$$ORIGIN' -Wl,-z,origin" + env["PYTHONPATH"]=PREFIX+"/lib/python"+environment.PythonVersionString+"/site-packages" + env["ZZIPLIB_LIBS"]="-lzzip" + + env["PATH"]=PREFIX+"/bin:" + PATH + ENV_SET=True + + logger.debug ( "Spawning '%s' in '%s'" % (task,cwdin) ) + process = subprocess.Popen (task, shell=True,stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd = cwdin, env=env) + try: + out,err = process.communicate() + returncode = process.returncode + except: + returncode = -1 + + if returncode != 0: + logger.warning ( "Task Failed" ) + logger.debug ( out ) + logger.debug ( err ) + elif FULL_LOGGING: + logger.warning ( "Full Logging ON" ) + logger.debug ( out ) + logger.debug ( err ) + + return returncode + +def retrieveSource ( module ): + """ Here's we we retrieve the necessary source files + """ + for cmd,args,cwd in module.source: + logger.info ("Retrieving %s" % args ) + ret = spawnTask ( cmd+ " " + args, cwd ) + +def buildModule ( module ): + """ Execute the build commands for the module + """ + for type_,cmd,path in module.buildCmds: + if path =='': + path = os.getcwd() + if type_ == 0 : # it's a shell command + logger.info ("Build Command %s " % cmd) + ret = spawnTask ( cmd, path ) + elif type_ == 1 : + logger.debug ("Compiling %s " % cmd ) + code = compile ( cmd, '<string>', 'exec' ) + logger.debug ("executing codeblock " ) + exec code + logger.debug ( "Exec done") + +def generateCode ( module ): + """ Generate the C++ wrapper code + """ + logger.info ( "Building Source code for " + module.name ) + ### AJM -- note the assumption that environment.py is sitting in the 'python-ogre' directory... + ret = spawnTask ( 'python generate_code.py', os.path.join(environment.root_dir, 'code_generators', module.name) ) + +def compileCode ( module ): + """ Compile the wrapper code and make the modules + """ + logger.info ( "Compiling Source code for " + module.name ) + ### AJM -- note the assumption that environment.py is sitting in the 'python-ogre' directory... + ret = spawnTask ( 'scons PROJECTS='+module.name, os.path.join(environment.root_dir) ) + if ret != 0 : + time.sleep(5) ## not sure why scons doesn't work after first failure + + + +def parseInput(): + """Handle command line input """ + usage = "usage: %prog [options] moduleName" + parser = OptionParser(usage=usage, version="%prog 1.0") + parser.add_option("-r", "--retrieve", action="store_true", default=False,dest="retrieve", help="Retrieve the appropiate source before building") + parser.add_option("-b", "--build", action="store_true", default=False ,dest="build", help="Build the appropiate module") + parser.add_option("-g", "--gen", action="store_true", default=False ,dest="gencode", help="Generate Source Code for the module") + parser.add_option("-c", "--compile", action="store_true", default=False ,dest="compilecode", help="Compile Source Code for the module") + parser.add_option("-l", "--logfilename", default="log.out" ,dest="logfilename", help="Override the default log file name") + parser.add_option("-G", "--genall", action="store_true", default=False ,dest="gencodeall", help="Generate Source Code for all possible modules") + parser.add_option("-C", "--compileall", action="store_true", default=False ,dest="compilecodeall", help="Compile Source Code for all posssible modules") + + (options, args) = parser.parse_args() + return (options,args) + +if __name__ == '__main__': + classList = getClassList () + + (options, args) = parseInput() + if len(args) == 0 and not (options.compilecodeall or options.gencodeall): + exit("The module to build wasn't specified. Use -h for help") + + if options.retrieve==False and options.build==False and options.gencode==False and options.compilecode==False\ + and options.compilecodeall==False and options.gencodeall==False: + exit ( "You need to specific at least one option. Use -h for help") + + setupLogging(options.logfilename) + logger = logging.getLogger('PythonOgre.BuildModule') + + if not os.path.exists( environment.downloadPath ): + os.mkdir ( environment.downloadPath ) + + if not os.path.exists( environment.Config.ROOT_DIR ): + os.mkdir ( environment.Config.ROOT_DIR ) + if not os.path.exists( os.path.join(environment.Config.ROOT_DIR, 'usr' ) ): + os.mkdir ( os.path.join(environment.Config.ROOT_DIR, 'usr' ) ) + if options.gencodeall or options.compilecodeall: + for name,cls in environment.projects.items(): + if cls.active and cls.pythonModule: + if options.gencodeall: + generateCode( cls ) + if options.compilecodeall: + compileCode( cls ) + + else: + for moduleName in args: + if not classList.has_key( moduleName ): + exit("Module specificed was not found (%s is not in environment.py) " % moduleName ) + if options.retrieve: + retrieveSource ( classList[ moduleName ] ) + if options.build : + buildModule ( classList[ moduleName ] ) + if options.gencode : + if classList[ moduleName ].pythonModule == True: + generateCode ( classList[ moduleName ] ) + else: + print ( "Module specificed does not generate source code (%s is a supporting module)" % moduleName ) + if options.compilecode : + if classList[ moduleName ].pythonModule == True: + compileCode ( classList[ moduleName ] ) + else: + print ( "Module specificed does not need compiling (%s is a supporting module)" % moduleName ) + + Modified: trunk/python-ogre/ChangeLog.txt =================================================================== --- trunk/python-ogre/ChangeLog.txt 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/ChangeLog.txt 2008-02-16 01:57:37 UTC (rev 572) @@ -1,3 +1,27 @@ +Feb 2008: Release +================= +Code Generation: +* Fix to the Automatic Function transformation code as it wasn't picking up constant void pointers. + This fixes PixelUtil::unpackColour and a number of other functions +* Fix to addPoly function in OgreNewt (takes an array of vertices) +* Fix to OgreForests as the API had changed in base C++ library +* Fix to Py++ to remove reference when building wrapper code in "transformers.py" - bug showed in renderQueueListener +* Fix to BuildModule.py to only set the environment once (-C now works for compiling everything) +* Fix to ComonUtils/__init__.py - Free Functions wheren't being handled by Futional Transformation or Return Pointer fixing. +* Enhancements to MemoryDataStream to make it simplier to use (can be used for any 'DataStream' requirements) + +Updates and General Library Improvements to: +* NxOgre_09 +* QuickGui, Caelum, OgreForests +* Particle Universe 0.6 +* Bullet 2.66 +* Caelum Rev 127 and updated media. +* Physx - free functions are now exposed so should work as an independ library + +New Modules: +* Hydrax 0.1 +* opensteer + Janurary 08 2008: Snapshot ========================== New Modules: Modified: trunk/python-ogre/PythonOgreConfig_nt.py =================================================================== --- trunk/python-ogre/PythonOgreConfig_nt.py 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/PythonOgreConfig_nt.py 2008-02-16 01:57:37 UTC (rev 572) @@ -62,10 +62,10 @@ PATH_ogrevideoffmpeg = os.path.join(PATH_THIRDPARTY,'ffmpeg') -PATH_Bullet= os.path.join(BASE_DIR, 'bullet-2.64') +PATH_Bullet= os.path.join(BASE_DIR, 'bullet-2.66') PATH_PhysX= "c:/program files/AGEIA Technologies/SDK/v2.7.3/SDKs" PATH_Theora= os.path.join(PATH_OgreAddons,'videoplugin','TheoraVideo') -PATH_ffmpeg= os.path.join(BASE_DIR, 'ffmpeg') +PATH_ffmpeg= os.path.join(PATH_THIRDPARTY,'extra') PATH_navi = os.path.join(BASE_DIR, 'navi','Navi') PATH_particleuniverse = os.path.join(PATH_Ogre, 'PlugIns', 'ParticleUniverse' ) @@ -158,7 +158,8 @@ PATH_INCLUDE_OggVorbisTheora = [ os.path.join(BASE_DIR,'ogg','include') ,os.path.join(BASE_DIR, 'vorbis', 'include') - ,os.path.join(PATH_OgreAddons,'videoplugin','theora','include') + ,os.path.join(BASE_DIR, 'libtheora-1.0beta2', 'include') +# ,os.path.join(PATH_OgreAddons,'videoplugin','theoravideo','include') # ,os.path.join(PATH_OgreAddons,'videoplugin','ptypes-2.1.1','include') ,os.path.join(PATH_THIRDPARTY,'ptypes','include') ] Modified: trunk/python-ogre/PythonOgreConfig_posix.py =================================================================== --- trunk/python-ogre/PythonOgreConfig_posix.py 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/PythonOgreConfig_posix.py 2008-02-16 01:57:37 UTC (rev 572) @@ -70,7 +70,7 @@ PATH_NxOgre= os.path.join(PATH_THIRDPARTY, 'nxogre') PATH_NxOgre_09= os.path.join(PATH_THIRDPARTY, 'nxogre_0.9') # PATH_NxOgre= os.path.join(BASE_DIR, 'nxogre/NxOgre') -PATH_Bullet= os.path.join(BASE_DIR, 'bullet-2.64') +PATH_Bullet= os.path.join(BASE_DIR, 'bullet-2.66') ###PATH_PhysX= os.path.join(BASE_DIR, 'Physx/v2.7.3/SDKs') PATH_Theora= os.path.join(PATH_OgreAddons,'videoplugin','TheoraVideo') PATH_ffmpeg= os.path.join(BASE_DIR, 'ffmpeg') Modified: trunk/python-ogre/PythonOgreInstallCreator.iss =================================================================== --- trunk/python-ogre/PythonOgreInstallCreator.iss 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/PythonOgreInstallCreator.iss 2008-02-16 01:57:37 UTC (rev 572) @@ -3,33 +3,33 @@ ; [Setup] AppName=Python-Ogre -AppVerName=Python-Ogre 1.1 +AppVerName=Python-Ogre 1.2 DefaultDirName=C:\PythonOgre DefaultGroupName=Python-Ogre OutputBaseFilename=PythonOgreInstaller OutputDir=C:\temp SourceDir=C:\Development\PythonOgreRelease -VersionInfoDescription=Release 1.1 of Python-Ogre +VersionInfoDescription=Release 1.2 of Python-Ogre AllowNoIcons=true -AppPublisher=OpenSource +AppPublisher=OpenSource (Andy and Team) AppPublisherURL=http://www.python-ogre.org AppSupportURL=http://www.python-ogre.org AppUpdatesURL=http://www.python-ogre.org -AppVersion=1.1.0 +AppVersion=1.2.0 LicenseFile=LICENSE.GPL Compression=lzma InfoBeforeFile=InstallWarning.rtf InfoAfterFile=postinstall.rtf SolidCompression=true AppCopyright=LPGL -VersionInfoCompany=OpenSource -VersionInfoTextVersion=1.1.0 +VersionInfoCompany=OpenSource (Andy and Team) +VersionInfoTextVersion=1.2.0 VersionInfoCopyright=PythonOgre Development Team RestartIfNeededByRun=false UninstallDisplayName=PythonOgre WizardImageFile=compiler:WizModernImage-IS.bmp WizardSmallImageFile=compiler:WizModernSmallImage-IS.bmp -VersionInfoVersion=1.1.0 +VersionInfoVersion=1.2.0 [Files] ; base files, demos and tools Source: *; DestDir: {app} Deleted: trunk/python-ogre/ThirdParty/caelum/CaelumPrerequisites.h.bak =================================================================== --- trunk/python-ogre/ThirdParty/caelum/CaelumPrerequisites.h.bak 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/ThirdParty/caelum/CaelumPrerequisites.h.bak 2008-02-16 01:57:37 UTC (rev 572) @@ -1,71 +0,0 @@ -/* -This file is part of Caelum. -See http://www.ogre3d.org/wiki/index.php/Caelum - -Copyright (c) 2006-2008 Caelum team. See Contributors.txt for details. - -Caelum 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 3 of the License, or -(at your option) any later version. - -Caelum 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 Caelum. If not, see <http://www.gnu.org/licenses/>. -*/ - -#ifndef CAELUMPREREQUISITES_H -#define CAELUMPREREQUISITES_H - -// Include external headers -#include "Ogre.h" - -// Define the dll export qualifier if compiling for Windows -#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 - #ifdef CAELUM_LIB - #define DllExport __declspec (dllexport) - #else - #ifdef __MINGW32__ - #define DllExport - #else - #define DllExport __declspec (dllimport) - #endif - #endif -#else - #define DllExport -#endif - -// Define the version code -#define CAELUM_VERSION_MAIN 0 -#define CAELUM_VERSION_SEC 2 -#define CAELUM_VERSION_TER 1 -#define CAELUM_VERSION = (CAELUM_VERSION_MAIN << 16) | (CAELUM_VERSION_SEC << 8) | CAELUM_VERSION_TER - -namespace caelum { - /// Resource group name for caelum resources. - extern DllExport Ogre::String RESOURCE_GROUP_NAME; - - // Render group for caelum stuff - // It's best to have them all together - enum CaelumRenderQueueGroupId - { - CAELUM_RENDER_QUEUE_STARFIELD = Ogre::RENDER_QUEUE_SKIES_EARLY + 0, - CAELUM_RENDER_QUEUE_SKYDOME = Ogre::RENDER_QUEUE_SKIES_EARLY + 1, - CAELUM_RENDER_QUEUE_SUN = Ogre::RENDER_QUEUE_SKIES_EARLY + 2, - CAELUM_RENDER_QUEUE_CLOUDS = Ogre::RENDER_QUEUE_SKIES_EARLY + 3, - CAELUM_RENDER_QUEUE_GROUND_FOG = Ogre::RENDER_QUEUE_SKIES_EARLY + 4, - }; - - // Caelum needs a lot of precission for astronomical calculations. - // Very few calculations use it, and the precission IS required. - typedef double LongReal; -} - -// Log macro -#define LOG(msg) Ogre::LogManager::getSingleton().logMessage(msg); - -#endif //CAELUMPREREQUISITES_H Deleted: trunk/python-ogre/ThirdParty/quickgui/QuickGUIExportDLL.h.bak =================================================================== --- trunk/python-ogre/ThirdParty/quickgui/QuickGUIExportDLL.h.bak 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/ThirdParty/quickgui/QuickGUIExportDLL.h.bak 2008-02-16 01:57:37 UTC (rev 572) @@ -1,22 +0,0 @@ -#ifndef QUICKGUIEXPORTDLL_H -#define QUICKGUIEXPORTDLL_H - -#include "OgrePlatform.h" - -#ifndef _QuickGUIExport - #if defined(OGRE_PLATFORM) -// #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 && !defined ( __MINGW32__ ) -// # if defined( QUICKGUI_EXPORTS ) -// # define _QuickGUIExport __declspec( dllexport ) -// # else -// # define _QuickGUIExport __declspec( dllimport ) -// # endif -// #else -// # define _QuickGUIExport -// #endif -// #else - #define _QuickGUIExport -// #endif - -#endif -#endif Added: trunk/python-ogre/demos/ogre/tests/Test_DataStream.py =================================================================== --- trunk/python-ogre/demos/ogre/tests/Test_DataStream.py (rev 0) +++ trunk/python-ogre/demos/ogre/tests/Test_DataStream.py 2008-02-16 01:57:37 UTC (rev 572) @@ -0,0 +1,105 @@ +import os,sys, ctypes +if sys.platform == 'win32': + os.environ['PATH'] += ';' + __file__[0] + + + +import ogre.renderer.OGRE as ogre +import SampleFramework +import math + +## +# OK so this doesn't work !!! The problem is that we can't override "size" in OgreDataStream as it isn't virtual +## +class FilePtr ( ogre.DataStream ): + + def __init__ ( self, filename ): + ogre.DataStream.__init__(self) + datain = file(filename, 'r').read() # should put error checking etc here + self.length = len ( datain ) + self.source = ctypes.create_string_buffer( datain ) ## Note it allocates one extra byte + + def read ( self, dest, size ): + if size <= self.length: + print ogre.CastInt(dest) + print "DEST:", dest +# ctypes.memmove ( ogre.CastInt(dest), self.source, size ) # again should check here for +# print self.source.raw + + + return size + + def size ( self ): + return self.length + +class TutorialApplication(SampleFramework.Application): + + + def _createScene(self): + sm = self.sceneManager + + ## a couple of tests to shown memory data stream usage.. + + ## This is one way to use ctypes + f= file("test.material", 'r') + MatString = f.read() + f.close() + RawMemBuffer = ctypes.create_string_buffer( MatString ) ## Note it allocates one extra byte + ## Now we create the MemoryDataStream using the void pointer to the ctypes buffer + dataptr = ogre.MemoryDataStream ( pMem = ogre.CastVoidPtr(ctypes.addressof ( RawMemBuffer )), + size = len (MatString) + 1 ) + ## Now lets get the string and print it... + p = dataptr.getAsString() + print len(p) + print p + + ## if you want you can confirm this + ogre.MaterialManager.getSingleton().parseScript( dataptr, "General" ) + print "MATERIAL OK using Ctypes" + + ## test iterator + print "Using special iterator" + for d in dataptr.getPtr(): + print chr(d), + + ## This is one way to use helper functions -- first with a list + f= file("test.material", 'r') + MatString = f.read() + f.close() + buf = [] + for c in MatString: + buf.append( ord ( c ) ) + memDataStream = ogre.MemoryDataStream ( "MyBuffer", len (buf) ) + memDataStream.setData ( buf ) + p = memDataStream.getAsString() + print len(p) + print p + print "MemoryBuffer OK using helper functions with a list" + + f= file("test.material", 'r') + MatString = f.read() + f.close() + memDataStream = ogre.MemoryDataStream ( "MyBuffer", len (buf) ) + memDataStream.setData ( MatString ) + p = memDataStream.getAsString() + print len(p) + print p + print "MemoryBuffer OK using helper functions with a string" + + +# # # fp = FilePtr ( "test.material") +# # # dataptr = ogre.MemoryDataStream ( "Testing", sourceStream=fp ) +# # # p = dataptr.getDataPointer() +# # # print "DataPointer", p +# # # # print ogre.CastInt ( p ) +# # # sys.exit() +# # # p=dataptr.getAsString() +# # # print len ( p ) +# # # print p +# # # + + sys.exit() + +if __name__ == '__main__': + ta = TutorialApplication() + ta.go() Modified: trunk/python-ogre/environment.py =================================================================== --- trunk/python-ogre/environment.py 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/environment.py 2008-02-16 01:57:37 UTC (rev 572) @@ -546,6 +546,17 @@ [wget, "http://prdownloads.sourceforge.net/wgois/ois-1.0RC1.tar.gz", downloadPath] ] buildCmds = [ + [0, tar + " zxf " + os.path.join(downloadPath,base)+".tar.gz --overwrite",os.getcwd() ], + [0, "rm -rf autom4te.cache", os.path.join(os.getcwd(), base )], + [0, "libtoolize --force && aclocal $ACLOCAL_FLAGS && autoheader &&\ + automake --include-deps --add-missing --foreign && autoconf", + os.path.join(os.getcwd(), base )], + [0,"./configure --prefix=%s --includedir=%s/include" % (PREFIX,PREFIX) ,os.path.join(os.getcwd(), base )], + [0,'make', os.path.join(os.getcwd(), base )], + [0,'make install', os.path.join(os.getcwd(), base )] + ] + + buildCmds = [ [0, tar + " zxf " + os.path.join(downloadPath,base)+".tar.gz --overwrite",os.getcwd() ], [0, "./bootstrap" ,os.path.join(os.getcwd(), base )], [0,"./configure --prefix=%s --includedir=%s/include" %(PREFIX,PREFIX) ,os.path.join(os.getcwd(), base )], @@ -905,7 +916,7 @@ class particleuniverse: active = True pythonModule = True - version="0.5" + version="0.6" name='particleuniverse' parent="ogre/addons" CCFLAGS = ' ' @@ -925,7 +936,7 @@ class nxogre: active = True pythonModule = True - version="1.0a" + version="1.0-19" name='nxogre' parent="ogre/physics" cflags="" @@ -966,7 +977,7 @@ cflags="" include_dirs = [ Config.PATH_Boost, Config.PATH_INCLUDE_Ogre, - Config.PATH_INCLUDE_NxOgre, + Config.PATH_INCLUDE_NxOgre_09, ] for d in Config.PATH_INCLUDE_PhysX: include_dirs.append( d ) @@ -1186,9 +1197,9 @@ class bullet: active = True pythonModule = True - version= "2.64" + version= "2.66" name='bullet' - base = "bullet-2.64" + base = "bullet-2.66" baseDir = os.path.join(os.getcwd(), base) parent = "ogre/physics" libs=[Config.LIB_Boost, 'LibBulletCollision', 'LibBulletDynamics'] @@ -1201,7 +1212,7 @@ , Config.PATH_INCLUDE_Bullet ] source=[ - [wget, "http://downloads.sourceforge.net/bullet/"+base+".tgz", downloadPath] + [wget, "http://downloads.sourceforge.net/bullet/"+base+"A.tgz", downloadPath] ] buildCmds = [ [0, "tar zxf " +os.path.join(downloadPath, base)+".tgz", ''], Modified: trunk/python-ogre/installWarning.rtf =================================================================== --- trunk/python-ogre/installWarning.rtf 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/installWarning.rtf 2008-02-16 01:57:37 UTC (rev 572) @@ -1,60 +1,66 @@ -{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch13\stshfloch0\stshfhich0\stshfbi0\deflang2057\deflangfe2052{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;} -{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f13\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ??\'a8\'ac?};}{\f37\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}@SimSun;} -{\f101\fscript\fcharset0\fprq2{\*\panose 030f0702030302020204}Comic Sans MS;}{\f371\froman\fcharset238\fprq2 Times New Roman CE;}{\f372\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f374\froman\fcharset161\fprq2 Times New Roman Greek;} -{\f375\froman\fcharset162\fprq2 Times New Roman Tur;}{\f376\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f377\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f378\froman\fcharset186\fprq2 Times New Roman Baltic;} -{\f379\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f381\fswiss\fcharset238\fprq2 Arial CE;}{\f382\fswiss\fcharset204\fprq2 Arial Cyr;}{\f384\fswiss\fcharset161\fprq2 Arial Greek;}{\f385\fswiss\fcharset162\fprq2 Arial Tur;} -{\f386\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f387\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\f388\fswiss\fcharset186\fprq2 Arial Baltic;}{\f389\fswiss\fcharset163\fprq2 Arial (Vietnamese);} -{\f391\fmodern\fcharset238\fprq1 Courier New CE;}{\f392\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f394\fmodern\fcharset161\fprq1 Courier New Greek;}{\f395\fmodern\fcharset162\fprq1 Courier New Tur;} -{\f396\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f397\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f398\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f399\fmodern\fcharset163\fprq1 Courier New (Vietnamese);} -{\f503\fnil\fcharset0\fprq2 SimSun Western{\*\falt ??\'a8\'ac?};}{\f743\fnil\fcharset0\fprq2 @SimSun Western;}{\f1381\fscript\fcharset238\fprq2 Comic Sans MS CE;}{\f1382\fscript\fcharset204\fprq2 Comic Sans MS Cyr;} -{\f1384\fscript\fcharset161\fprq2 Comic Sans MS Greek;}{\f1385\fscript\fcharset162\fprq2 Comic Sans MS Tur;}{\f1388\fscript\fcharset186\fprq2 Comic Sans MS Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255; -\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0; -\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 -\fs24\lang3081\langfe2052\loch\f0\hich\af0\dbch\af13\cgrid\langnp3081\langfenp2052 \snext0 Normal;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\* +{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch13\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe1041{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;} +{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f13\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ??\'a1\'a7??};}{\f37\fscript\fcharset0\fprq2{\*\panose 030f0702030302020204}Comic Sans MS;} +{\f38\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}@SimSun;}{\f229\froman\fcharset238\fprq2 Times New Roman CE;}{\f230\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f232\froman\fcharset161\fprq2 Times New Roman Greek;} +{\f233\froman\fcharset162\fprq2 Times New Roman Tur;}{\f234\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f235\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f236\froman\fcharset186\fprq2 Times New Roman Baltic;} +{\f237\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f239\fswiss\fcharset238\fprq2 Arial CE;}{\f240\fswiss\fcharset204\fprq2 Arial Cyr;}{\f242\fswiss\fcharset161\fprq2 Arial Greek;}{\f243\fswiss\fcharset162\fprq2 Arial Tur;} +{\f244\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f245\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\f246\fswiss\fcharset186\fprq2 Arial Baltic;}{\f247\fswiss\fcharset163\fprq2 Arial (Vietnamese);} +{\f249\fmodern\fcharset238\fprq1 Courier New CE;}{\f250\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f252\fmodern\fcharset161\fprq1 Courier New Greek;}{\f253\fmodern\fcharset162\fprq1 Courier New Tur;} +{\f254\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f255\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f256\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f257\fmodern\fcharset163\fprq1 Courier New (Vietnamese);} +{\f361\fnil\fcharset0\fprq2 SimSun Western{\*\falt ??\'a1\'a7??};}{\f599\fscript\fcharset238\fprq2 Comic Sans MS CE;}{\f600\fscript\fcharset204\fprq2 Comic Sans MS Cyr;}{\f602\fscript\fcharset161\fprq2 Comic Sans MS Greek;} +{\f603\fscript\fcharset162\fprq2 Comic Sans MS Tur;}{\f606\fscript\fcharset186\fprq2 Comic Sans MS Baltic;}{\f611\fnil\fcharset0\fprq2 @SimSun Western;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0; +\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128; +\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang3081\langfe2052\loch\f0\hich\af0\dbch\af13\cgrid\langnp3081\langfenp2052 +\snext0 Normal;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\* \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\loch\f0\hich\af0\dbch\af13\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{ \s15\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af2\afs20\alang1025 \ltrch\fcs0 \fs20\lang3081\langfe2052\loch\f2\hich\af2\dbch\af13\cgrid\langnp3081\langfenp2052 \sbasedon0 \snext15 \styrsid746239 -Plain Text;}}{\*\latentstyles\lsdstimax156\lsdlockeddef0}{\*\rsidtbl \rsid27887\rsid746239\rsid1659429\rsid2193901\rsid5061328\rsid13635829\rsid16395146}{\*\generator Microsoft Word 11.0.8026;}{\info{\title WARNING}{\author Andy Miller} -{\operator Andy Miller}{\creatim\yr2007\mo4\dy1\hr11\min36}{\revtim\yr2007\mo4\dy1\hr12\min12}{\version5}{\edmins15}{\nofpages1}{\nofwords146}{\nofchars835}{\*\company Juniper Networks, Inc.}{\nofcharsws980}{\vern24609}{\*\password 00000000}} -{\*\xmlnstbl }\paperw11906\paperh16838\margl1152\margr1152\margt1440\margb1440\gutter0\ltrsect \widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1152\dgvorigin1440 -\dghshow1\dgvshow1\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct +Plain Text;}{\*\cs16 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid1599737 Hyperlink;}}{\*\latentstyles\lsdstimax156\lsdlockeddef0}{\*\rsidtbl \rsid27887\rsid746239\rsid1599737\rsid1659429\rsid2193901\rsid5061328\rsid13635829 +\rsid16395146}{\*\generator Microsoft Word 11.0.0000;}{\info{\title WARNING}{\author Andy Miller}{\operator amiller}{\creatim\yr2007\mo4\dy1\hr11\min36}{\revtim\yr2008\mo2\dy10\hr9\min25}{\version6}{\edmins23}{\nofpages1}{\nofwords127}{\nofchars728} +{\*\company Juniper Networks, Inc.}{\nofcharsws854}{\vern24611}{\*\password 00000000}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw11906\paperh16838\margl1152\margr1152\margt1440\margb1440\gutter0\ltrsect +\widowctrl\ftnbj\aenddoc\donotembedsysfont0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180 +\dgvspace180\dghorigin1152\dgvorigin1440\dghshow1\dgvshow1 +\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct \asianbrkrule\rsidroot27887\newtblstyruls\nogrowautofit \fet0{\*\wgrffmtfilter 013f}\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sectrsid746239\sftnbj {\*\pnseclvl1\pnucrm\pnqc\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnqc\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnqc\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnqc\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5 \pndec\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8 \pnlcltr\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar \s15\qc \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5061328 \rtlch\fcs1 \af2\afs20\alang1025 \ltrch\fcs0 \fs20\lang3081\langfe2052\loch\af2\hich\af2\dbch\af13\cgrid\langnp3081\langfenp2052 {\rtlch\fcs1 -\ab\af2\afs24 \ltrch\fcs0 \b\f101\fs24\ul\insrsid5061328\charrsid1659429 \hich\af101\dbch\af13\loch\f101 WARNING \hich\f101 \endash \loch\f101 Change to Python-Ogre +\ab\af2\afs28 \ltrch\fcs0 \b\f37\fs28\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 W\hich\af37\dbch\af13\loch\f37 elcom\hich\af37\dbch\af13\loch\f37 e\hich\af37\dbch\af13\loch\f37 to }{\rtlch\fcs1 \ab\af2\afs28 \ltrch\fcs0 +\b\f37\fs28\insrsid5061328\charrsid1599737 \hich\af37\dbch\af13\loch\f37 Python-Ogre \par }\pard \ltrpar\s15\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid746239 {\rtlch\fcs1 \af2 \ltrch\fcs0 \insrsid5061328\charrsid746239 \par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1659429 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang3081\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp3081\langfenp2052 { -\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 \hich\f1 The module layout for Python-Ogre has changed. Previous versions had multiple separate modules, each sitting at the same \'93\loch\f1 -\hich\f1 level\'94\loch\f1 . This \hich\af1\dbch\af13\loch\f1 has been changed to a hierarchical structure: -\par }{\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\insrsid5061328\charrsid1659429 -\par }\pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1659429 \rtlch\fcs1 \af2\afs20\alang1025 \ltrch\fcs0 \fs20\lang3081\langfe2052\loch\af2\hich\af2\dbch\af13\cgrid\langnp3081\langfenp2052 -{\rtlch\fcs1 \af2\afs16 \ltrch\fcs0 \fs16\insrsid5061328\charrsid1659429 \hich\af2\dbch\af13\loch\f2 /PythonXX/lib/site-packages/ogre/.. -\par }\pard \ltrpar\s15\ql \fi720\li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid2193901 {\rtlch\fcs1 \af2\afs16 \ltrch\fcs0 \fs16\insrsid5061328\charrsid1659429 \hich\af2\dbch\af13\loch\f2 /renderer/OGRE -\par \hich\af2\dbch\af13\loch\f2 /io/OIS -\par \hich\af2\dbch\af13\loch\f2 /gui/CEGUI -\par \hich\af2\dbch\af13\loch\f2 /sound/O\hich\af2\dbch\af13\loch\f2 greAL -\par \hich\af2\dbch\af13\loch\f2 /physics/ODE -\par \hich\af2\dbch\af13\loch\f2 /physics/OgreRefApp -\par \hich\af2\dbch\af13\loch\f2 /physics/OgreOde -\par \hich\af2\dbch\af13\loch\f2 /physics/OgreNewt -\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid1659429 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang3081\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp3081\langfenp2052 { -\rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\insrsid5061328\charrsid1659429 -\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 Due to this change }{\rtlch\fcs1 \ab\ai\af1\afs18 \ltrch\fcs0 \b\i\f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 import}{ -\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 statements in existing Pyt\hich\af1\dbch\af13\loch\f1 hon-Ogre code will need to be updated \hich\f1 \endash \loch\f1 }{\rtlch\fcs1 \ab\af1\afs18 -\ltrch\fcs0 \b\f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 this will (initially) break existing code}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 -. You can refer to the updated demos as reference on how to use the new module layout. +\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 Python-Ogre is about to be installed on your system. \hich\af37\dbch\af13\loch\f37 \par -\par \hich\af1\dbch\af13\loch\f1 Also during installation \hich\af1\dbch\af13\loch\f1 we will remove any existing (previous) versions of Python-Ogr\hich\af1\dbch\af13\loch\f1 e\hich\af1\dbch\af13\loch\f1 . -\par -\par \hich\af1\dbch\af13\loch\f1 This \hich\af1\dbch\af13\loch\f1 will involve\hich\af1\dbch\af13\loch\f1 deleting the Ogre, OIS, CEGUI, OgreRefApp, ODE, OgreNewt,\hich\af1\dbch\af13\loch\f1 FMOD,\hich\af1\dbch\af13\loch\f1 and OgreOde directories in -\hich\af1\dbch\af13\loch\f1 the }{\rtlch\fcs1 \ai\af1\afs18 \ltrch\fcs0 \i\f1\fs18\insrsid5061328\charrsid1659429 \hich\af1\dbch\af13\loch\f1 site-packages}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid5061328\charrsid1659429 -\hich\af1\dbch\af13\loch\f1 directory of your Python installation. -\par -\par \hich\af1\dbch\af13\loch\f1 If you have made changes to your lib/site-packages/orge (etc) directories you may w\hich\af1\dbch\af13\loch\f1 ish to back them up before continuing.}{\rtlch\fcs1 \af0\afs18 \ltrch\fcs0 \fs18\insrsid5061328\charrsid1659429 -\hich\af0\dbch\af13\loch\f0 }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid5061328\charrsid746239 +\par \hich\af37\dbch\af13\loch\f37 P\hich\af37\dbch\af13\loch\f37 lease ensure that you have }{\rtlch\fcs1 \af1 \ltrch\fcs0 \b\f37\insrsid1599737 \hich\af37\dbch\af13\loch\f37 Python 2.5.1}{\rtlch\fcs1 \af1 \ltrch\fcs0 \b\f37\insrsid1599737\charrsid1599737 +\hich\af37\dbch\af13\loch\f37 already installed}{\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 \loch\af37\dbch\af13\hich\f37 \endash \hich\af37\dbch\af13\loch\f37 if \hich\af37\dbch\af13\loch\f37 +not cancel the installation now and visit }{\field\flddirty{\*\fldinst {\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 \hich\af37\dbch\af13\loch\f37 HYPERLINK \hich\af37\dbch\af13\loch\f37 " +\hich\af37\dbch\af13\loch\f37 http://\hich\af37\dbch\af13\loch\f37 www.python.org\hich\af37\dbch\af13\loch\f37 "\hich\af37\dbch\af13\loch\f37 }{\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 {\*\datafield +00d0c9ea79f9bace118c8200aa004ba90b02000000170000001600000068007400740070003a002f002f007700770077002e0070007900740068006f006e002e006f00720067000000e0c9ea79f9bace118c8200aa004ba90b4600000068007400740070003a002f002f007700770077002e0070007900740068006f006e00 +2e006f00720067002f000000795881f43b1d7f48af2c825dc485276300000000a5ab0000}}}{\fldrslt {\rtlch\fcs1 \af1 \ltrch\fcs0 \cs16\f37\ul\cf2\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 http://\hich\af37\dbch\af13\loch\f37 www.python.org}}}\sectd +\linex0\endnhere\sectlinegrid360\sectdefaultcl\sectrsid746239\sftnbj {\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 \hich\af37\dbch\af13\loch\f37 and download the latest Python binary}{\rtlch\fcs1 \af1 +\ltrch\fcs0 \f37\insrsid1599737 \hich\af37\dbch\af13\loch\f37 (or directly\hich\af37\dbch\af13\loch\f37 from\hich\af37\dbch\af13\loch\f37 }{\field{\*\fldinst {\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737 \hich\af37\dbch\af13\loch\f37 +\hich\af37\dbch\af13\loch\f37 HYPERLINK \hich\af37\dbch\af13\loch\f37 "}{\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 http://www.python.org/ftp/python/2.5.1/python-2.5.1.msi}{\rtlch\fcs1 \af1 \ltrch\fcs0 +\f37\insrsid1599737 \hich\af37\dbch\af13\loch\f37 "\hich\af37\dbch\af13\loch\f37 }{\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid13506258 {\*\datafield +00d0c9ea79f9bace118c8200aa004ba90b02000000170000003800000068007400740070003a002f002f007700770077002e0070007900740068006f006e002e006f00720067002f006600740070002f0070007900740068006f006e002f0032002e0035002e0031002f0070007900740068006f006e002d0032002e003500 +2e0031002e006d00730069000000e0c9ea79f9bace118c8200aa004ba90b8800000068007400740070003a002f002f007700770077002e0070007900740068006f006e002e006f00720067002f006600740070002f0070007900740068006f006e002f0032002e0035002e0031002f0070007900740068006f006e002d0032 +002e0035002e0031002e006d00730069000000795881f43b1d7f48af2c825dc485276300000000a5ab0000}}}{\fldrslt {\rtlch\fcs1 \af1 \ltrch\fcs0 \cs16\f37\ul\cf2\insrsid1599737\charrsid13506258 \hich\af37\dbch\af13\loch\f37 +http://www.python.org/ftp/python/2.5.1/python-2.5.1.msi}}}\sectd \linex0\endnhere\sectlinegrid360\sectdefaultcl\sectrsid746239\sftnbj {\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737 \hich\af37\dbch\af13\loch\f37 ) +\par }{\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737\charrsid1599737 +\par \hich\af37\dbch\af13\loch\f37 M\hich\af37\dbch\af13\loch\f37 any of the demos will be installed as start menu items}{\rtlch\fcs1 \af1 \ltrch\fcs0 \f37\insrsid1599737 \hich\af37\dbch\af13\loch\f37 . \hich\af37\dbch\af13\loch\f37 +It is likely you will most often run them from the command prompt like: +\par }\pard \ltrpar\ql \li720\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0\pararsid1599737 {\rtlch\fcs1 \af2 \ltrch\fcs0 \f2\insrsid1599737\charrsid1599737 \hich\af2\dbch\af13\loch\f2 c\hich\af2\dbch\af13\loch\f2 d +\hich\af2\dbch\af13\loch\f2 c:\\PythonOgre\\demos\\ogre +\par \hich\af2\dbch\af13\loch\f2 python Demo_Smoke.py}{\rtlch\fcs1 \af2 \ltrch\fcs0 \f2\insrsid1599737 +\par }{\rtlch\fcs1 \af2 \ltrch\fcs0 \f2\insrsid1599737\charrsid1599737 \par }\pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid746239 \rtlch\fcs1 \af2\afs20\alang1025 \ltrch\fcs0 \fs20\lang3081\langfe2052\loch\af2\hich\af2\dbch\af13\cgrid\langnp3081\langfenp2052 { -\rtlch\fcs1 \af2 \ltrch\fcs0 \insrsid5061328\charrsid746239 +\rtlch\fcs1 \af2\afs24 \ltrch\fcs0 \f37\fs24\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 There are }{\rtlch\fcs1 \af2\afs24 \ltrch\fcs0 \f37\fs24\insrsid1599737 \hich\af37\dbch\af13\loch\f37 more than 20 }{\rtlch\fcs1 \af2\afs24 +\ltrch\fcs0 \f37\fs24\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 libraries \hich\af37\dbch\af13\loch\f37 included\hich\af37\dbch\af13\loch\f37 \hich\af37\dbch\af13\loch\f37 +with this binary release and it is almost certain that bugs are still to be found \loch\af37\dbch\af13\hich\f37 \endash \hich\af37\dbch\af13\loch\f37 please \hich\af37\dbch\af13\loch\f37 report these via the user forum\hich\af37\dbch\af13\loch\f37 at } +{\field\flddirty{\*\fldinst {\rtlch\fcs1 \af2\afs24 \ltrch\fcs0 \f37\fs24\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 \hich\af37\dbch\af13\loch\f37 HYPERLINK \hich\af37\dbch\af13\loch\f37 "\hich\af37\dbch\af13\loch\f37 +http://www.python-ogre.org\hich\af37\dbch\af13\loch\f37 "\hich\af37\dbch\af13\loch\f37 }{\rtlch\fcs1 \af2\afs24 \ltrch\fcs0 \f37\fs24\insrsid1599737\charrsid1599737 {\*\datafield +00d0c9ea79f9bace118c8200aa004ba90b02000000170000001b00000068007400740070003a002f002f007700770077002e0070007900740068006f006e002d006f006700720065002e006f00720067000000e0c9ea79f9bace118c8200aa004ba90b5000000068007400740070003a002f002f007700770077002e007000 +7900740068006f006e002d006f006700720065002e006f00720067002f000000795881f43b1d7f48af2c825dc485276300000000a5ab0000}}}{\fldrslt {\rtlch\fcs1 \af2\afs24 \ltrch\fcs0 \cs16\f37\fs24\ul\cf2\insrsid1599737\charrsid1599737 \hich\af37\dbch\af13\loch\f37 +http://www.python-ogre.org}}}\sectd \linex0\endnhere\sectlinegrid360\sectdefaultcl\sectrsid746239\sftnbj {\rtlch\fcs1 \af2\afs24 \ltrch\fcs0 \f37\fs24\insrsid5061328\charrsid1599737 +\par }{\rtlch\fcs1 \af2 \ltrch\fcs0 \insrsid1599737\charrsid746239 \par }\pard \ltrpar\s15\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5061328 {\rtlch\fcs1 \af2 \ltrch\fcs0 \insrsid5061328\charrsid746239 \par }} \ No newline at end of file Modified: trunk/python-ogre/packages_2.5/ogre/renderer/OGRE/sf_OIS.py =================================================================== --- trunk/python-ogre/packages_2.5/ogre/renderer/OGRE/sf_OIS.py 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/packages_2.5/ogre/renderer/OGRE/sf_OIS.py 2008-02-16 01:57:37 UTC (rev 572) @@ -19,8 +19,8 @@ import os import os.path - paths = [os.path.join(os.getcwd(), '../plugins.cfg'), - os.path.join(os.getcwd(), 'plugins.cfg'), + paths = [os.path.join(os.getcwd(), 'plugins.cfg'), + os.path.join(os.getcwd(), '../plugins.cfg'), '/etc/OGRE/plugins.cfg', os.path.join(os.path.dirname(os.path.abspath(__file__)), 'plugins.cfg')] Modified: trunk/python-ogre/patch/ogre.patch =================================================================== --- trunk/python-ogre/patch/ogre.patch 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/patch/ogre.patch 2008-02-16 01:57:37 UTC (rev 572) @@ -27,7 +27,16 @@ /** Get a single line from the stream. @remarks The delimiter character is not included in the data - +@@ -146,7 +147,7 @@ + /** Returns the total size of the data to be read from the stream, + or 0 if this is indeterminate for this stream. + */ +- size_t size(void) const { return mSize; } ++ virtual size_t size(void) const { return mSize; } + + /** Close the stream; this makes further operations invalid. */ + virtual void close(void) = 0; + --- ogrenew/OgreMain/include/OgreHardwareBuffer.h 23 Aug 2006 08:18:33 -0000 1.17 +++ ogrenew/OgreMain/include/OgreHardwareBuffer.h 24 Nov 2007 00:37:00 -0000 @@ -31,6 +31,8 @@ Modified: trunk/python-ogre/scripts/updatesource.bat =================================================================== --- trunk/python-ogre/scripts/updatesource.bat 2008-02-16 01:46:30 UTC (rev 571) +++ trunk/python-ogre/scripts/updatesource.bat 2008-02-16 01:57:37 UTC (rev 572) @@ -14,8 +14,8 @@ cd %_ROOT%\NxOgre %_SVN% up del /q %_TP%\nxogre -xcopy /s /y NxOgre\include %_TP%\nxogre -xcopy /s /y NxOgre\source %_TP%\nxogre +xcopy /s /y include %_TP%\nxogre +xcopy /s /y source %_TP%\nxogre cd %_ROOT%\ogreal %_SVN% up @@ -50,5 +50,13 @@ copy include\*.h %_TP%\forests copy source\*.cpp %_TP%\forests +cd %_ROOT%\opensteer +%_SVN% up +cd trunk +xcopy /s include\* %_TP%\opensteer +copy src\*.cpp %_TP%\opensteer +copy include\OpenSteer\*.h %_TP%\opensteer + + popd endlocal Modified: trunk/python-ogre/setup.py =================================================================== --- trunk/python-ogre/setup.py 2008-02-1... [truncated message content] |