Latest SDK [ 27 october 2007]

tuan kuranes

23-08-2006 15:40:00

Download latest SDK here

CVS Changelog (not in SDK):
-------------
- Fix Ragdoll. Now usable on all skeletal mesh, not only zombie. and better on zombie too.
- internal collision patch
- x64 patch

SDK : 27 october 2007.

Latest Changelog:
-------------
- Added cloud9 user collision callback, new balljoint, new slider joint parameters.
- updated to Ode 0.9. (but heightfield is bad due to my ODE heightfield code being corrupted on their svn by user patches...)



Previous Changelog:
-------------
- Zip missing files fixed.
- Linux Build Fixes.
- Ode version in SDK is with latest dHeightField speed patch applied
- add new terrain for ogreode demos landscape (need CPP define change to switch terrain, but if anyone want to make it real time, patch welcome.)
- and some explosions ugly but visible particle for samples_crash.
- Fix debug sleep showing
- Added setAutoSleepAverageSamplesCount and enabled it in samples_scenes
- Added explosion on rockets (area effect instead of just sphere colliding)
- Now sleeping cars are awaken on user input.
- linux build patch from Ceacy
- add StepListener midStep and postStep for better contact handling client side.
- Add timescale
- fix forwardinterpolated stepper + fixed frame rate
- fix OIS need from simple scene, now dagon and eihort compatible using ifdef, only Simples_Scenes
- ceacy patch. (add OgreBody::setTorque() and OgreBody::setForce())
- stepper update = independant of stepmode (quickstep, stepFast, step)
- Remove Singleton from World. now multiples world are possible
- Add a DebugContact facility ("B" keycode in demos)
- Separated loader from prefab in "ogreode_loader.dll"
- Added some more contact getter
- Prefab: Separated Loaders from code. (Interface Breaking Change.)
- Prefab, Core: Added getters and setters.
- Prefab: Updated TinyXML to latest Version (bugfix and memleak fixes.)
- Core: EntityInformer can now aggregate multiples entities into a single TriangleMeshGeometry (reported to be faster than multiple trimesh if static.)
- Core, Prefab: added CodeBlock updated by Alberto Rubinato
- Core: Added GeomOffset Support.
- Core: Added Cylinder support.
- Core: Added Preliminary Convex Support just in case. (not working)
- Core, Prefab: Some Code formatting.
- Core: removed unused MeshInformer (is now EntityInformer)
- Core, Prefab: added Nsis Installer files binary and source Exe for windows. (CVS only)
- Core, Prefab: added Premake Build scripts file (premake.sourceforge.net) should work for VS6, VS2002, VS003, VS2005 and Linux. (CVS only)
- Core: Re-enabled preliminary Monster Work on Materials inside OgreOde.
- Demo: Fix Car Info displayed in Both Car demo. (Landscape and GranTurismo)
- Prefab: antisway is now at fixed rate controllable by XML
- Prefab: antisway is controlable by c++
- Core, Prefab: Seperate totally OgreOdePrefab and OgreOdeCore now. (VehicleSuspensionJoint is now called SuspensionJoint. )
- Add "Antisway" to car : a luis contribution.
- Prefab: Fix some _Source.vcproj problems.
- Prefab: Added an exception if car file not found.
- Demos: Now can hit N to change car in any car demo
- Demos: updated GUI to be in sync with demos (in fact added it to landscape and GranTurismo.)
- Core: fixed a HeightField collision bug.
- Core: Add Terrain thickness parameter in terrain geometry
- Prefab: Fix OgreOde_Prefab_Source.vcproj bad include folders.
- Core: fMake OgreOde use vanilla ODE (from subversion, not 0.6) without any patch by default using the new heighfield collider now inside ODE.
- Core: fMake Heighfield collider more Scene manager indepedent, so that other Terrain Scene Manager (like PLSM2) can be used in a clean way.
- Core: fAdded BodyState and _history on each body. Give the ability to rewind or to interpolate between two State.
- Core: fAdded FixedForwardInterpolated Stepper ( see http://www.gaffer.org/articles/Timestep.html ).
- Core, Prefab: Few constness fixes.

Dirso

12-02-2007 19:24:10

It doesn't compile with Eihort.
I starting a new instalation in another PC and I couldn't make it works.

Dirso

deathunt

23-02-2007 21:11:29

1)What the lasted version of ode ogreOde did use ?

2)What the current version of ode ogreOde using ?


3)While being at it. It is possible to update ogreODE projects with environnement variable for ogre_Source (just like OGRE_HOME for ogreSDK) ?

OGRE_SRC

tuan kuranes

24-02-2007 11:04:34

CVS version now is Eihort compatible.

1) & 2 ) OgreOde use 0.8

3) vc8 ? Feel free to submit a patch or a zip file containing the .sln and vcproj. Ideally, a premakescript should be done to do that. (ode and cegui does use premake.)

deathunt

24-02-2007 18:07:27

1)What the lasted version of ode ogreOde did use ?

???-->The binary file is from august 2006. I doubt is use ODE 0.8.


3)While being at it. It is possible to update ogreODE projects with environnement variable for ogre_Source (just like OGRE_HOME for ogreSDK) ?
/////////////////////////////////////////////////////////////
OGRE_SRC

I'll check what i can do on this side. Gona take a while to verify that source point to good directory of ogreSource. SDK vs source, some directory change a bit...
Many directory to

"..\..\OgreMain"
"..\..\Samples\Common\bin"

going to be replaced by
"$(OGRE_src)\OgreMain"
"$(OGRE_src)\Samples\Common\bin"

Following files will be modified (11 files):
ode_Source.vcproj (vc8)
OgreOde_Core_Source.vcproj (vc8 & vc7.1)
OgreOde_Prefab_Source.vcproj (vc8 & vc7.1)
Demo_SimpleScenes_Source.vcproj (vc8 & vc7.1)
Demo_Landscape_Source.vcproj (vc8 & vc7.1)
DemoGrandTurismOgre_Source.vcproj (vc8 & vc7.1)

Replaced ode_source.vcproj (vc8)-->BuildEvent - PostBuild:
$(OGRE_HOME)\bin\
with (the file didn't copy the dll at the good directory !!!)
"$(OGRE_src)\Samples\Common\bin


ogreOde_Core didn't build with correct ode.lib (using debug in the release mode)


I can only verify that vc8 work.


how to install the .zip package:
OgreSource = "c:\ogrenew\samples"
OgreOde root= OgreSource +"OgreOde"= "c:\ogrenew\samples\OgreOde"

If ogreOde is not in sample folder, it won't find the media ressource from the .cfg file.

4)By the way where do you hang out. I'll like to have a quick chat with you.

deathunt

25-02-2007 05:17:47

Finished.

Tester are welcome to try out new ogreODE with better
.vcproj


http://sunens.uqac.ca/~rpgcommun/developpement/applicationsUtilise/ODE/OgreOde_SourceCode.zip

The file will be there for a week.

install in the samples folder of "c:\ogrenew\" :
"c:\ogrenew\samples\ogreOde"



I put 8h to make & test this !

rewb0rn

25-02-2007 10:23:51

ok that means the install paths look something like
c:\ogrenew\ogresdk
c:\ogrenew\ogreode

right?

deathunt

25-02-2007 17:11:07

ok that means the install paths look something like
c:\ogrenew\ogresdk //sdk
c:\ogrenew\ogreode //source

right?


I don't know about ogre sdk. Didn't try it. I fixed ogreOde source with ogre source. You cannot combine ogreOde sdk with ogre source and vice verca...

I know that the .zip package contain the ms vc [7|8] [sdk | source].

tone

05-03-2007 17:14:58

My head is swimming with this. I'm trying to compile this with Eihort

If my ogrenew is in C:\foo\ogrenew , what should be the FULL path of the ogreode directory?

The README's seem wrong, implying that it should be a sibling directory to a non-existent ogresdk directory (I have an ogrenew directory and an ogrenew\SDK directory, but no ogresdk anywhere in the tree).

Thanks in advance.

tone

rewb0rn

05-03-2007 19:43:01

if you have c:\foo\ogresdk than it will be c:\foo\ogreode

in fact i were not able to compile all the solutions shipped with ogreode, only the sdk solution (independent if i downloaded the ogreode sdk or not), so try this. also when able to compile, i still had to copy the exes of the demos by hand to the ogresdk/bin/release (or debug) directory to test them.

deathunt

06-03-2007 15:26:51

Problem is that ogre_SDK and ogre_SRC use different folder tree.

Int the .zip files
The sdk path seem the same than the source path. Like I just said, ogreSDK and ogreSRC have different arboresence...

.zip file do not compile with lastest 1.4 Eihort.
Tested in c:\ogrenew\samples\ogreODE
so it can find the media folder for the demo, but have problem with ode linking...

tone

10-03-2007 16:41:12

There are references to DebugContact, and yet there is no implementation provided for this class.

edit: found it. It was not in the project for some reason. I am trying the CVS version of OgreOde now, as even when I added the DebugContact.cpp, it had obsolete versions of material-setting methods for Ogre.

tone

tgraupmann2

07-10-2007 21:08:49

After getting the latest from CVS, I'm getting a compile error:
1>OgreOdeWorld.cpp
1>c:\svn_root\sector13_ogre\dependencies2005\ogreode\src\ogreodeworld.cpp(146) : error C3861: 'dWorldSetAutoDisableAverageSamplesCount': identifier not found
1>c:\svn_root\sector13_ogre\dependencies2005\ogreode\src\ogreodeworld.cpp(151) : error C3861: 'dWorldGetAutoDisableAverageSamplesCount': identifier not found


And realized that I have to upgrade ode.

tgraupmann2

07-10-2007 21:39:28

I can compile debug.

I get this error when compiling release:
These projects will be labeled as unavailable in Solution Explorer. Expand the p
roject node to show the reason the project could not be loaded.1>------ Build st
arted: Project: OgreOde_Core, Configuration: Release Win32 ------
1>Compiling...
1>OgreOdePrecompiledHeaders.cpp
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xtree(365) : error C3859
: virtual memory range for PCH exceeded; please recompile with a command line op
tion of '-Zm111' or greater
1>C:\Program Files\Microsoft Visual Studio 8\VC\include\xtree(365) : fatal error
C1076: compiler limit : internal heap limit reached; use /Zm to specify a highe
r limit
1>Build log was saved at "file://c:\SVN_ROOT\Sector13_Ogre\dependencies2005\ogre
ode\obj\Release\BuildLog.htm"
1>OgreOde_Core - 2 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

tgraupmann2

07-10-2007 23:45:06

I don't this option working to increase the heap limit:
http://msdn2.microsoft.com/en-us/library/microsoft.visualstudio.vcprojectengine.vcclcompilertool(VS.80).aspx

tgraupmann2

08-10-2007 05:52:25

Be realistic -- it told you to increase it at least to 110, so why did you set it to 10000 (10GB in other words)? I personally would set it to 128 in this case.

This happens a lot with lots of precompiled headers in a single project.


I tried a variety of values before posting and just realized I was adding the option to the debug build and not the release build.

This did the trick:
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/Zm128"
InlineFunctionExpansion="1"
FavorSizeOrSpeed="1"
EnableFiberSafeOptimizations="false"
AdditionalIncludeDirectories="..\..\include;$(SolutionDir)\..\..\..\ode\include;$(SolutionDir)\..\..\..\Ogrenew\OgreMain\include"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;OGREODE_EXPORTS;_PRECOMP"
StringPooling="true"
RuntimeLibrary="2"
BufferSecurityCheck="false"
EnableFunctionLevelLinking="false"
FloatingPointModel="2"
UsePrecompiledHeader="2"
PrecompiledHeaderThrough="OgreOdePrecompiledHeaders.h"
WarningLevel="3"
Detect64BitPortabilityProblems="true"
DebugInformationFormat="3"
/>

mesh

25-10-2007 09:16:50

How would this be installed with OgreSDK?

Is there a link to a guide?

I looked and I couldnt find one.

When I tried to run OgreOde I had all sorts of errors.

Aquatix

25-10-2007 16:28:46

mesh, DON'T use SKD, get the CVS version. There have been way too many changes since that time.

mesh

26-10-2007 05:42:47

mesh, DON'T use SKD, get the CVS version. There have been way too many changes since that time.

OgreSDK or do you mean OdeSDK or both?

Aquatix

26-10-2007 06:06:21

I meant OgreOde SDK. Its outdated. Need to use the CVS instead. As far as Ogre goes, use whichever one you like, it doesn't matter.

mesh

26-10-2007 06:07:39

Ah okies thanks for the info Aquatix :)

kungfoomasta

04-11-2007 01:56:43

I downloaded the SDK, and installed it, but I see no *.lib or *.dll files? What an odd SDK... :P

Do I have to download ODE separately? Anybody have a quick link, or I guess I'll just hop over to the ODE page and find it..

Should I go ahead and rebuild Ogre using the latest ODE, and then build OgreODE using the latest ODE? I was really hoping to find some binaries in the SDK, so I wouldn't have to do this..

kungfoomasta

04-11-2007 02:06:34

I thought ode was a dependency of Ogre, but it looks like the only project that lists it as a dependency is the ref app layer project. So I guess I don't need to rebuild Ogre. I downloaded the sept 26th release of ode v0.9 from source forge, I hope this is fine. I'll build OgreOde now..

kungfoomasta

04-11-2007 02:32:48

Lots of linker errors building OgreOde_Core..

1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(char const *)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z) already defined in ode.lib(convex.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z) already defined in ode.lib(convex.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::~basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(void)" (??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ) already defined in ode.lib(convex.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: unsigned int __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::size(void)const " (?size@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIXZ) already defined in ode.lib(convex.obj)
1>LIBCMT.lib(crtheap.obj) : error LNK2005: __malloc_crt already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __amsg_exit already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(crt0dat.obj) : error LNK2005: __initterm_e already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(crt0dat.obj) : error LNK2005: _exit already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(fflush.obj) : error LNK2005: _fflush already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(realloc.obj) : error LNK2005: _realloc already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(invarg.obj) : error LNK2005: __invalid_parameter_noinfo already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xi_a already defined in MSVCRT.lib(cinitexe.obj)
1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xi_z already defined in MSVCRT.lib(cinitexe.obj)
1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xc_a already defined in MSVCRT.lib(cinitexe.obj)
1>LIBCMT.lib(crt0init.obj) : error LNK2005: ___xc_z already defined in MSVCRT.lib(cinitexe.obj)
1>LIBCMT.lib(hooks.obj) : error LNK2005: "void __cdecl terminate(void)" (?terminate@@YAXXZ) already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(winxfltr.obj) : error LNK2005: ___CppXcptFilter already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(tidtable.obj) : error LNK2005: __encode_pointer already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(tidtable.obj) : error LNK2005: __encoded_null already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(tidtable.obj) : error LNK2005: __decode_pointer already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(mlock.obj) : error LNK2005: __unlock already defined in MSVCRT.lib(MSVCR80.dll)
1>LIBCMT.lib(mlock.obj) : error LNK2005: __lock already defined in MSVCRT.lib(MSVCR80.dll)
1> Creating library ..\..\lib\Release/OgreOde_Core.lib and object ..\..\lib\Release/OgreOde_Core.exp
1>LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
1>LINK : warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library
1>ode.lib(convex.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xran(void)const " (?_Xran@_String_base@std@@QBEXXZ)
1>ode.lib(convex.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_String_base::_Xlen(void)const " (?_Xlen@_String_base@std@@QBEXXZ)
1>LIBCMT.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
1>..\..\lib\Release/OgreOde_Core.dll : fatal error LNK1120: 3 unresolved externals
1>Build log was saved at "file://d:\GAME_DEV2\OgreOde\obj\Release\BuildLog.htm"
1>OgreOde_Core - 26 error(s), 4 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


Does anybody have an SDK with prebuilt binaries, or is it in the SDK and I missed it somewhere? Would be much appreciated.

nitsuj33

05-11-2007 16:39:21

I had the same errors and got around them by downloading the latest version of ODE off the webpage, (source, not pre-built!) building that, and then building ogreOde. With the pre built ODE I had the same issues as you. Make sure you set ODE_HOME to the new directory if you build ODE in a different location.

kungfoomasta

05-11-2007 17:09:30

Thanks for the information!

I saw in another thread Aquatix posted pre built binaries. Maybe I can get those off him, or I'll build from source like you suggested. Can you confirm that Ogre doesn't depend on ode, even though ode.lib is found in the dependencies/lib folder?

Aquatix

05-11-2007 21:09:30

Yes. It's there for 1 demo (where u get to throw the balls). AFAIK it was sinbad, who made a simple wrapper long time ago and used ODE directly (no OgreOde back then). So, the ode.lib which comes with Ogre must be ignored (and even deleted from any common folders)!

markjco

04-02-2010 14:59:39

Hi,

does the latest SDK work with ODE 0.11.1 and VC++ Express 2008 and Ogre3d 1.65 SDK?

tuan kuranes

04-02-2010 15:53:43

not sure if it works with ODE 0.11.1. OgreOde SVN does.

Bludo

18-02-2010 08:22:20

Hi,

does the latest SDK work with ODE 0.11.1 and VC++ Express 2008 and Ogre3d 1.65 SDK?


There is no longer an "OgreOde SDK" in the source project. The "Source" and "SDK" projects were replaced by a single OgreOde project. We're currently working on an NSIS installer package, but it's not quite ready.

As for compatibility, the current OgreOde in the source repository is fully compatible with ODE 0.11.1. It should also work with the other components you've mentioned. You will need to compile the ODE and OPCODE libraries ahead of time with the preprocessor defines dTRIMESH_ENABLED and dTRIMESH_OPCODE for linking. Checking out the source from SVN would be your best bet.

Bludo

Jack000

06-03-2010 07:50:56

it seems that my compile errors were caused by newton. The current svn version of OgreNewt needs at least newton 2.16.