walaber
16-04-2006 05:18:37
have a look at the Raycast and Buoyancy demos to see how the new boost bindings work. they are very easy.
walaber
16-04-2006 05:18:37
BergBoy
16-04-2006 05:39:50
smirnof.pl
17-04-2006 09:34:13
OvermindDL1
17-04-2006 09:42:54
walaber
18-04-2006 00:17:24
walaber
18-04-2006 02:50:56
quadbyte
13-05-2006 23:53:05
Vectrex
14-05-2006 07:20:26
OvermindDL1
17-05-2006 23:32:38
walaber
21-05-2006 21:27:05
Vectrex
22-05-2006 08:44:43
walaber
27-05-2006 19:03:08
Gamey
28-05-2006 03:25:51
mysterycoder
28-05-2006 05:07:25
ISO C++ forbids declaration of `size' with no type
error: `size_t' has not been declared
posixninja
28-05-2006 17:22:26
mysterycoder
28-05-2006 17:45:16
walaber
28-05-2006 19:56:56
mysterycoder
28-05-2006 23:10:45
typedef unsigned long size_t;
pjcast
29-05-2006 01:48:47
pjcast
29-05-2006 02:10:56
mysterycoder
29-05-2006 04:03:47
Vectrex
01-06-2006 16:57:21
walaber
01-06-2006 17:23:52
Vectrex
01-06-2006 17:28:54
walaber
01-06-2006 19:40:17
walaber
02-06-2006 06:24:29
Vectrex
02-06-2006 17:13:47
walaber
02-06-2006 19:16:26
Vectrex
02-06-2006 19:32:55
mysterycoder
03-06-2006 00:29:25
../../../trunk/dependencies/includes/STLPort/stl/_string.c: In member function `stlp_std::basic_string<_CharT, _Traits, _Alloc>& stlp_std::basic_string<_CharT, _Traits, _Alloc>::_M_append(const _CharT*, const _CharT*) [with _CharT = char, _Traits = stlp_std::char_traits<char>, _Alloc = stlp_std::allocator<char>]':
../../../trunk/dependencies/includes/STLPort/stl/_string.c:171: instantiated from `stlp_std::basic_string<_CharT, _Traits, _Alloc>& stlp_std::basic_string<_CharT, _Traits, _Alloc>::append(const _CharT*, const _CharT*) [with _CharT = char, _Traits = stlp_std::char_traits<char>, _Alloc = stlp_std::allocator<char>]'
../../../trunk/dependencies/includes/STLPort/stl/_string_operators.h:58: instantiated from `stlp_std::basic_string<_CharT, _Traits, _Alloc> stlp_std::operator+(const _CharT*, const stlp_std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits = stlp_std::char_traits<char>, _Alloc = stlp_std::allocator<char>]'
../../../trunk/dependencies/includes/OGRE/OgreAnimable.h:283: instantiated from here
OGRE_EXCEPT(Ogre::Exception::ERR_INVALIDPARAMS, "Unable to open file " + filename + " for writing","TreeCollisionSerializer::exportTreeCollision");
persoontje
04-06-2006 08:07:26
had you pressed F3 to show the debug lines before quitting?
Unhandled exception at 0x00423d76 in newtontest.exe: 0xC0000005: Access violation reading location 0xfeef003e.
void Debugger::deInit()
{
if (m_debugnode)
{
m_debugnode->detachAllObjects();
if (m_debuglines) { delete m_debuglines; m_debuglines = NULL; }
m_debugnode->getParentSceneNode()->removeAndDestroyChild( m_debugnode->getName() );
m_debugnode = NULL;
}
}
persoontje
04-06-2006 08:16:20
had you pressed F3 to show the debug lines before quitting?
I have the same problem here, with the cvs version from yesterday.
I doesnt matter if I press F3 or not. Do you know how to fix this.
....
jtpsoft
04-06-2006 19:13:56
walaber
04-06-2006 20:26:22
jtpsoft
04-06-2006 21:34:22
walaber
05-06-2006 04:20:56
jtpsoft
05-06-2006 11:41:53
jtpsoft
05-06-2006 12:06:22
SFAOK
05-06-2006 18:28:55
walaber
05-06-2006 21:58:52
mysterycoder
09-06-2006 05:23:01
walaber
09-06-2006 07:57:40
Tyger
18-06-2006 02:45:50
big update!
Today I added a new class:
Ogre::CollisionPrimitives::TreeCollisionSceneParser().
this is a new way of generating scene geometry. it takes a start SceneNode, and parses through all of its children, making 1 big TreeCollision from all meshes attached.
this should be a big time-saver for those using dotScene, or other scene managers (oFusion?) that parse a file, and create a big tree of SceneNodes and Entities for you. in theory, you should be able to run this afterwards, and get a big TreeCollision for your entire scene.
*you can even inherit from this class, and by filling in 2 user functions, you can filter out Entities you don't want added to the collision, and also set a custom userID for each submesh of each Entity added.
I have updated demo02 to show how it works.
(updated CVS and the binary on my website.)
OvermindDL1
18-06-2006 04:00:59
walaber
18-06-2006 05:23:41
maxwave
09-07-2006 23:54:38
d:\programming\ogre\ogreaddons\ogrenewt\ogrenewt_main\src\ogrenewt_raycast.cpp(15) : error C2660: 'NewtonWorldRayCast' : function does not take 6 arguments
void Debugger::deInit()
{
if (m_debugnode)
{
m_debugnode->detachAllObjects(); <-----------------unhandled exception!!!
if (m_debuglines) { delete m_debuglines; m_debuglines = NULL; }
m_debugnode->getParentSceneNode()->removeAndDestroyChild( m_debugnode->getName() );
m_debugnode = NULL;
}
}
avee
10-07-2006 10:49:43
d:\programming\ogre\ogreaddons\ogrenewt\ogrenewt_main\src\ogrenewt_raycast.cpp(15) : error C2660: 'NewtonWorldRayCast' : function does not take 6 arguments
When I remove last parameter, compile is done. But when I exit from my app i get unhandled exception in "OgreNewt_Debugger.cpp:"
void Debugger::deInit()
{
if (m_debugnode)
{
m_debugnode->detachAllObjects(); <-----------------unhandled exception!!!
if (m_debuglines) { delete m_debuglines; m_debuglines = NULL; }
m_debugnode->getParentSceneNode()->removeAndDestroyChild( m_debugnode->getName() );
m_debugnode = NULL;
}
}
maxwave
10-07-2006 13:08:04
maxwave
11-07-2006 19:49:12
walaber
12-07-2006 05:39:41
mangoo
16-08-2006 21:31:09
walaber
17-08-2006 06:02:29
walaber
30-08-2006 17:04:15
Aiursrage2k
08-12-2006 19:41:38
walaber
22-12-2006 19:30:25
walaber
19-02-2007 03:07:37
celic
19-02-2007 10:47:49
walaber
19-02-2007 17:51:39
trilobite
23-02-2007 04:12:54
Game_Ender
23-02-2007 04:38:59
Can you tell more about Scons script please?
OvermindDL1
23-02-2007 20:24:50
Game_Ender
23-02-2007 22:16:34
celic
24-02-2007 13:31:46
OvermindDL1
27-02-2007 01:14:02
jimmyplus
28-05-2007 09:27:09
walaber
15-06-2007 17:21:30
epha
04-06-2008 19:46:09
aoos
15-07-2008 23:54:59
OgreNewt_BasicFrameListener.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class OIS::InputManager * __cdecl OIS::InputManager::createInputSystem(class std::multimap<class std::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> >,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > > &)" (__imp_?createInputSystem@InputManager@OIS@@SAPAV12@AAV?$multimap@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@std@@@2@@std@@@Z) referenced in function "public: __thiscall OgreNewt::BasicFrameListener::BasicFrameListener(class Ogre::RenderWindow *,class Ogre::SceneManager *,class OgreNewt::World *,int)" (??0BasicFrameListener@OgreNewt@@QAE@PAVRenderWindow@Ogre@@PAVSceneManager@3@PAVWorld@1@H@Z)
lib\Debug_DLL/OgreNewt_Main_vc71_d.dll : fatal error LNK1120: 1 unresolved externals
ProfesorX
16-07-2008 02:06:59
aoos
16-07-2008 11:16:57
walaber
02-08-2008 23:52:28
ogrekekz
14-08-2008 11:01:23
Evak
11-11-2008 18:37:50
almondega
14-12-2008 12:57:47
OgreNewt_World.h(138) : error C3861: 'NewtonGetBodyCount': identifier not found
redhead
20-12-2008 14:43:40
1>OgreNewt_Main.lib(OgreNewt_Body.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Vector3::Vector3(class Ogre::Vector3 const &)" (__imp_??0Vector3@Ogre@@QAE@ABV01@@Z) referenced in function "public: class Ogre::Vector3 __thiscall OgreNewt::Body::getOmega(void)const " (?getOmega@Body@OgreNewt@@QBE?AVVector3@Ogre@@XZ)
1>OgreNewt_Main.lib(OgreNewt_CollisionPrimitives.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Vector3::Vector3(class Ogre::Vector3 const &)" (__imp_??0Vector3@Ogre@@QAE@ABV01@@Z)
1>OgreNewt_Main.lib(OgreNewt_Tools.obj) : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Vector3::Vector3(class Ogre::Vector3 const &)" (__imp_??0Vector3@Ogre@@QAE@ABV01@@Z)
1>OgreNewt_Main.lib(OgreNewt_CollisionPrimitives.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall Ogre::Quaternion::Quaternion(class Ogre::Quaternion const &)" (__imp_??0Quaternion@Ogre@@QAE@ABV01@@Z) referenced in function "public: void __thiscall OgreNewt::CollisionPrimitives::TreeCollisionSceneParser::parseScene(class Ogre::SceneNode *,bool,enum OgreNewt::CollisionPrimitives::FaceWinding)" (?parseScene@TreeCollisionSceneParser@CollisionPrimitives@OgreNewt@@QAEXPAVSceneNode@Ogre@@_NW4FaceWinding@23@@Z)
1>..\bin\Debug\Console.exe : fatal error LNK1120: 2 unresolved externals
melven
03-03-2009 18:55:28
Maggot
31-03-2009 14:14:28
Zero23
31-03-2009 17:17:09
Maggot
01-04-2009 14:30:18
------ Build started: Project: Demo08_RagdollExample, Configuration: Release Win32 ------
Compiling...
Ragdoll.cpp
C:\Program Files\Microsoft Visual Studio 9.0\VC\include\xlocale(342) : warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
C:\ogrenewt\inc\boost/function/function_template.hpp(80) : error C2143: syntax error : missing ';' before 'namespace'
C:\ogrenewt\inc\boost/function/function_template.hpp(980) : error C2838: '()' : illegal qualified name in member declaration
C:\ogrenewt\inc\boost/function/function_template.hpp(80) : see reference to class template instantiation 'boost::function0<R>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(995) : error C2804: binary 'operator ==' has too many parameters
C:\ogrenewt\inc\boost/function/function_template.hpp(1002) : error C2804: binary 'operator !=' has too many parameters
C:\ogrenewt\inc\boost/function/function_template.hpp(1098) : error C2764: 'R' : template parameter not used or deducible in partial specialization 'boost::function<R(void)>'
C:\ogrenewt\inc\boost/function/function_template.hpp(1098) : error C3412: 'boost::function<R(void)>' : cannot specialize template in current scope
C:\ogrenewt\inc\boost/function/function_template.hpp(90) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(96) : see reference to class template instantiation 'boost::boost::detail::function::function_invoker1<FunctionPtr,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(106) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(113) : see reference to class template instantiation 'boost::boost::detail::function::void_function_invoker1<FunctionPtr,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(122) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(133) : see reference to class template instantiation 'boost::boost::detail::function::function_obj_invoker1<FunctionObj,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(143) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(154) : see reference to class template instantiation 'boost::boost::detail::function::void_function_obj_invoker1<FunctionObj,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(163) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(171) : see reference to class template instantiation 'boost::boost::detail::function::function_ref_invoker1<FunctionObj,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(181) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(189) : see reference to class template instantiation 'boost::boost::detail::function::void_function_ref_invoker1<FunctionObj,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(200) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(208) : see reference to class template instantiation 'boost::boost::detail::function::function_mem_invoker1<MemberPtr,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(218) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(226) : see reference to class template instantiation 'boost::boost::detail::function::function_void_mem_invoker1<MemberPtr,R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(330) : error C2065: 'function_ptr_tag' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(360) : error C2913: explicit specialization; 'boost::boost::detail::function::get_invoker1' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(395) : error C2913: explicit specialization; 'boost::boost::detail::function::get_invoker1' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(430) : error C2913: explicit specialization; 'boost::boost::detail::function::get_invoker1' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(464) : error C2913: explicit specialization; 'boost::boost::detail::function::get_invoker1' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(483) : error C2059: syntax error : '<L_TYPE_raw>'
C:\ogrenewt\inc\boost/function/function_template.hpp(647) : see reference to class template instantiation 'boost::boost::detail::function::basic_vtable1<R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(483) : error C2238: unexpected token(s) preceding ';'
C:\ogrenewt\inc\boost/function/function_template.hpp(488) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(494) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(500) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(510) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(509) : error C2535: 'bool boost::boost::detail::function::basic_vtable1<R,T0>::assign_to(F)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(488) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_to'
C:\ogrenewt\inc\boost/function/function_template.hpp(524) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(523) : error C2535: 'bool boost::boost::detail::function::basic_vtable1<R,T0>::assign_to_a(F)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(494) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_to_a'
C:\ogrenewt\inc\boost/function/function_template.hpp(532) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(532) : error C2535: 'bool boost::boost::detail::function::basic_vtable1<R,T0>::assign_to(F)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(488) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_to'
C:\ogrenewt\inc\boost/function/function_template.hpp(545) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(545) : error C2535: 'bool boost::boost::detail::function::basic_vtable1<R,T0>::assign_to_a(F)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(494) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_to_a'
C:\ogrenewt\inc\boost/function/function_template.hpp(563) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(569) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(577) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(576) : error C2535: 'void boost::boost::detail::function::basic_vtable1<R,T0>::assign_functor(FunctionObj)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(563) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_functor'
C:\ogrenewt\inc\boost/function/function_template.hpp(583) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(582) : error C2535: 'void boost::boost::detail::function::basic_vtable1<R,T0>::assign_functor_a(FunctionObj)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(569) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_functor_a'
C:\ogrenewt\inc\boost/function/function_template.hpp(598) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(597) : error C2535: 'bool boost::boost::detail::function::basic_vtable1<R,T0>::assign_to(F)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(488) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_to'
C:\ogrenewt\inc\boost/function/function_template.hpp(610) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(609) : error C2535: 'bool boost::boost::detail::function::basic_vtable1<R,T0>::assign_to_a(F)' : member function already defined or declared
C:\ogrenewt\inc\boost/function/function_template.hpp(494) : see declaration of 'boost::boost::detail::function::basic_vtable1<R,T0>::assign_to_a'
C:\ogrenewt\inc\boost/function/function_template.hpp(625) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(639) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(645) : error C2146: syntax error : missing ';' before identifier 'base'
C:\ogrenewt\inc\boost/function/function_template.hpp(645) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\ogrenewt\inc\boost/function/function_template.hpp(645) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\ogrenewt\inc\boost/function/function_template.hpp(646) : error C2146: syntax error : missing ';' before identifier 'invoker'
C:\ogrenewt\inc\boost/function/function_template.hpp(646) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\ogrenewt\inc\boost/function/function_template.hpp(646) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\ogrenewt\inc\boost/function/function_template.hpp(80) : error C2143: syntax error : missing ';' before 'namespace'
C:\ogrenewt\inc\boost/function/function_template.hpp(710) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(80) : see reference to class template instantiation 'boost::boost::function1<R,T0>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(710) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(710) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(710) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(710) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(710) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(723) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(723) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(723) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(723) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(723) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(723) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(775) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(775) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(776) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(980) : error C2838: '()' : illegal qualified name in member declaration
C:\ogrenewt\inc\boost/function/function_template.hpp(995) : error C2804: binary 'operator ==' has too many parameters
C:\ogrenewt\inc\boost/function/function_template.hpp(1002) : error C2804: binary 'operator !=' has too many parameters
C:\ogrenewt\inc\boost/function/function_template.hpp(1032) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(1098) : see reference to class template instantiation 'boost::function<R(T0)>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(1032) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1032) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1032) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(1032) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1032) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1044) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(1044) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1044) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1044) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(1044) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1044) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1073) : error C3083: 'type_traits': the symbol to the left of a '::' must be a type
C:\ogrenewt\inc\boost/function/function_template.hpp(1073) : error C2065: 'ice_not' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1074) : error C2065: 'value' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(1098) : error C2764: 'R' : template parameter not used or deducible in partial specialization 'boost::function<R(T0)>'
C:\ogrenewt\inc\boost/function/function_template.hpp(1098) : error C2764: 'T0' : template parameter not used or deducible in partial specialization 'boost::function<R(T0)>'
C:\ogrenewt\inc\boost/function/function_template.hpp(1098) : error C3412: 'boost::function<R(T0)>' : cannot specialize template in current scope
C:\ogrenewt\inc\boost/function/function_template.hpp(90) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(96) : see reference to class template instantiation 'boost::boost::boost::detail::function::function_invoker2<FunctionPtr,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(106) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(113) : see reference to class template instantiation 'boost::boost::boost::detail::function::void_function_invoker2<FunctionPtr,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(122) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(133) : see reference to class template instantiation 'boost::boost::boost::detail::function::function_obj_invoker2<FunctionObj,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(143) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(154) : see reference to class template instantiation 'boost::boost::boost::detail::function::void_function_obj_invoker2<FunctionObj,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(163) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(171) : see reference to class template instantiation 'boost::boost::boost::detail::function::function_ref_invoker2<FunctionObj,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(181) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(189) : see reference to class template instantiation 'boost::boost::boost::detail::function::void_function_ref_invoker2<FunctionObj,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(200) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(208) : see reference to class template instantiation 'boost::boost::boost::detail::function::function_mem_invoker2<MemberPtr,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(218) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(226) : see reference to class template instantiation 'boost::boost::boost::detail::function::function_void_mem_invoker2<MemberPtr,R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(330) : error C2065: 'function_ptr_tag' : undeclared identifier
C:\ogrenewt\inc\boost/function/function_template.hpp(360) : error C2913: explicit specialization; 'boost::boost::boost::detail::function::get_invoker2' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(395) : error C2913: explicit specialization; 'boost::boost::boost::detail::function::get_invoker2' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(430) : error C2913: explicit specialization; 'boost::boost::boost::detail::function::get_invoker2' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(464) : error C2913: explicit specialization; 'boost::boost::boost::detail::function::get_invoker2' is not a specialization of a class template
C:\ogrenewt\inc\boost/function/function_template.hpp(483) : error C2059: syntax error : '<L_TYPE_raw>'
C:\ogrenewt\inc\boost/function/function_template.hpp(647) : see reference to class template instantiation 'boost::boost::boost::detail::function::basic_vtable2<R,T0,T1>' being compiled
C:\ogrenewt\inc\boost/function/function_template.hpp(483) : error C2238: unexpected token(s) preceding ';'
C:\ogrenewt\inc\boost/function/function_template.hpp(488) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(494) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(500) : error C2061: syntax error : identifier 'function_buffer'
C:\ogrenewt\inc\boost/function/function_template.hpp(500) : fatal error C1003: error count exceeds 100; stopping compilation
OgreNewtonFrameListener.cpp
C:\Program Files\Microsoft Visual Studio 9.0\VC\include\xlocale(342) : warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
Build log was saved at "file://c:\ogrenewt\demos\bin\Demo08_RagdollExample\Demo08_RagdollExample.dir\Release\BuildLog.htm"
Demo08_RagdollExample - 106 error(s), 2 warning(s)
Zero23
01-04-2009 17:38:38
melven
01-04-2009 21:27:08
Maggot
02-04-2009 11:39:07
toum
26-04-2009 16:21:53
Maggot, if you want a stable version, use newton 1.53 and the official OgreNewt. I never tested the demos in Windows (I'm using Linux), if you have created Visual-Studio projects from the cmake-files - they're sometimes not working...
Compiling the library (not the demos) should work with the VS project files though.
And really have a look at the comments in the OgreNewt.h file, there you find things like "multithreading doesn't work"
Zero23
26-04-2009 20:44:49
Virginie
19-05-2009 10:51:38
melven
19-05-2009 14:31:44
deadvirus
24-06-2009 23:17:08
deadvirus
10-07-2009 22:31:38
rev_poly_verts[0] = poly_verts[0];
rev_poly_verts[0] = poly_verts[2];
rev_poly_verts[0] = poly_verts[1];
rev_poly_verts[0] = poly_verts[0];
rev_poly_verts[1] = poly_verts[2];
rev_poly_verts[2] = poly_verts[1];
kallaspriit
11-07-2009 08:46:30
Zero23
28-07-2009 22:03:03
Index: inc/OgreNewt_Collision.h
===================================================================
--- inc/OgreNewt_Collision.h (revision 2721)
+++ inc/OgreNewt_Collision.h (working copy)
@@ -69,13 +69,6 @@
*/
const World* getWorld() const {return m_world;}
- //! set a user ID for collision callback identification
- /*!
- you can set different IDs for each piece in a compound collision object, and then use these IDs in a collision callback to
- determine which part is currently colliding.
- */
- void setUserID( unsigned id ) const { NewtonCollisionSetUserID( m_col, id); }
-
//! get user ID, for collision callback identification
unsigned getUserID() const { return NewtonCollisionGetUserID( m_col ); }
@@ -132,7 +125,6 @@
void setAsTriggerVolume(bool trigger) { NewtonCollisionSetAsTriggerVolume(m_col, (int)trigger); }
};
-
#ifdef OGRENEWT_NO_COLLISION_SHAREDPTR
typedef Collision* CollisionPtr;
typedef ConvexCollision* ConvexCollisionPtr;
Index: inc/OgreNewt_CollisionPrimitives.h
===================================================================
--- inc/OgreNewt_CollisionPrimitives.h (revision 2721)
+++ inc/OgreNewt_CollisionPrimitives.h (working copy)
@@ -56,9 +56,10 @@
\param size vector representing width, height, depth
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Box( const World* world, const Ogre::Vector3& size,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Box() {}
@@ -82,9 +83,10 @@
\param size vector representing radius for all 3 axis
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Ellipsoid(const World* world, const Ogre::Vector3& size,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Ellipsoid() {}
@@ -109,9 +111,10 @@
\param height height of the cylinder (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Cylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Cylinder() {}
@@ -136,9 +139,10 @@
\param height height of the capsule (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Capsule( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Capsule() {}
@@ -163,9 +167,10 @@
\param height height of the cone (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Cone( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Cone() {}
@@ -190,9 +195,10 @@
\param height height of the chamfer cylinder (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
ChamferCylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~ChamferCylinder() {}
@@ -222,9 +228,10 @@
\param pos position offset of the primitive
\parem tolerance a tolerance passed to newton
\param forceScale if set to something else then (0,0,0), the value of this argument will be used as scale instead of the parent-node's scale
+ \param shapeID ID for this Collision
*/
ConvexHull( const World* world, Ogre::Entity* ent,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f , const Ogre::Vector3& forceScale = Ogre::Vector3::ZERO);
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f , const Ogre::Vector3& forceScale = Ogre::Vector3::ZERO, const int shapeID = 1 );
/*!
Overloaded constructor. pass a pointer to an array of vertices and the hull will be made from that.
@@ -234,9 +241,10 @@
\param orient orientation offset of the primitive
\param pos position offset of the primitive
\param tolerance a tolerance passed to newton
+ \param shapeID ID for this Collision
*/
ConvexHull( const World* world, const Ogre::Vector3* verts, int vertcount,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f, const int shapeID = 1 );
//! destructor
~ConvexHull() {}
@@ -266,8 +274,9 @@
\param world pointer to the OgreNewt::World
\param ent pointer to an Ogre::Entitiy, if it is attached to a node, the scale of the parent node is used
\param optimize bool whether you want to optimize the collision or not.
+ \param shapeID ID for this Collision
*/
- TreeCollision( const World* world, Ogre::Entity* ent, bool optimize, FaceWinding fw = FW_DEFAULT );
+ TreeCollision( const World* world, Ogre::Entity* ent, bool optimize, FaceWinding fw = FW_DEFAULT, const int shapeID = 1 );
//! constructor
/*!
@@ -279,8 +288,9 @@
\param vertices pointer to array of vertices (positions only).
\param indices pointer to array of indices.
\param optimize bool whether you want to optimize the collision or not.
+ \param shapeID ID for this Collision
*/
- TreeCollision( const World* world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw = FW_DEFAULT);
+ TreeCollision( const World* world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw = FW_DEFAULT, const int shapeID = 1);
//! constructor
/*!
@@ -291,14 +301,18 @@
\param vertices pointer to array of Ogre::Vector3 vertices (positions only)
\param indexData pointer to Ogre::IndexData for the mesh
\param optimize bool whether you want to optimize the collision or not.
+ \param shapeID ID for this Collision
*/
- TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw = FW_DEFAULT);
+ TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw = FW_DEFAULT, const int shapeID = 1);
//! destructor
virtual ~TreeCollision() {}
//! start a tree collision creation
- void start();
+ /*!
+ \param shapeID ID for this Collision
+ */
+ void start(const int shapeID = 1);
//! add a poly to the tree collision
/*!
@@ -421,9 +435,10 @@
\param orient orientation offset of the primitive
\param pos position offset of the primitive
\param tolerance a tolerance passed to newton
+ \param shapeID ID for this Collision
*/
Pyramid( const World* world, const Ogre::Vector3& size,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f, const int shapeID = 1 );
//! destructor
~Pyramid() {}
Index: inc/OgreNewt_CollisionSerializer.h
===================================================================
--- inc/OgreNewt_CollisionSerializer.h (revision 2721)
+++ inc/OgreNewt_CollisionSerializer.h (working copy)
@@ -42,7 +42,7 @@
Deserialize the Collision from a DataStream.
this will create a NEW Collision object
*/
- OgreNewt::CollisionPtr importCollision(Ogre::DataStreamPtr& stream, OgreNewt::World* world);
+ OgreNewt::CollisionPtr importCollision(Ogre::DataStreamPtr& stream, const OgreNewt::World* world);
private:
/*!
Index: inc/OgreNewt_RayCast.h
===================================================================
--- inc/OgreNewt_RayCast.h (revision 2721)
+++ inc/OgreNewt_RayCast.h (working copy)
@@ -144,7 +144,7 @@
int getHitCount() const;
//! retrieve the raycast info for a specific hit.
- BasicRaycastInfo getInfoAt( int hitnum ) const;
+ BasicRaycastInfo getInfoAt( size_t hitnum ) const;
//! get the closest body hit by the ray.
BasicRaycastInfo getFirstHit() const;
Index: src/OgreNewt_CollisionPrimitives.cpp
===================================================================
--- src/OgreNewt_CollisionPrimitives.cpp (revision 2721)
+++ src/OgreNewt_CollisionPrimitives.cpp (working copy)
@@ -30,13 +30,13 @@
Box::Box(const World* world) : ConvexCollision( world )
{}
- Box::Box( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ Box::Box( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateBox( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, &matrix[0] );
+ m_col = NewtonCreateBox( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, shapeID, &matrix[0] );
}
@@ -45,13 +45,13 @@
Ellipsoid::Ellipsoid(const World* world) : ConvexCollision( world )
{}
- Ellipsoid::Ellipsoid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ Ellipsoid::Ellipsoid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateSphere( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, &matrix[0] );
+ m_col = NewtonCreateSphere( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, shapeID, &matrix[0] );
}
@@ -60,13 +60,13 @@
{}
Cylinder::Cylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
@@ -75,13 +75,13 @@
{}
Capsule::Capsule( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateCapsule( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateCapsule( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
@@ -90,13 +90,13 @@
{}
Cone::Cone( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateCone( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateCone( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
// OgreNewt::CollisionPrimitives::ChamferCylinder
@@ -104,13 +104,13 @@
{}
ChamferCylinder::ChamferCylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateChamferCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateChamferCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
@@ -119,7 +119,7 @@
ConvexHull::ConvexHull(const World* world) : ConvexCollision( world )
{}
- ConvexHull::ConvexHull( const World* world, Ogre::Entity* obj, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const Ogre::Vector3& forceScale ) : ConvexCollision( world )
+ ConvexHull::ConvexHull( const World* world, Ogre::Entity* obj, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const Ogre::Vector3& forceScale, const int shapeID ) : ConvexCollision( world )
{
Ogre::Vector3 scale(1.0,1.0,1.0);
@@ -235,7 +235,7 @@
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
//okay, let's try making the ConvexHull!
- m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), (int)total_verts, (float*)&vertices[0].x, sizeof(Ogre::Vector3), tolerance, &matrix[0] );
+ m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), (int)total_verts, (float*)&vertices[0].x, sizeof(Ogre::Vector3), tolerance, shapeID, &matrix[0] );
delete []vertices;
@@ -243,13 +243,13 @@
// OgreNewt::CollisionPrimitives::ConvexHull
- ConvexHull::ConvexHull( const World* world, const Ogre::Vector3* verts, int vertcount, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance ) : ConvexCollision( world )
+ ConvexHull::ConvexHull( const World* world, const Ogre::Vector3* verts, int vertcount, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
//make the collision primitive.
- m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), vertcount, (float*)&verts[0].x, sizeof(Ogre::Vector3), tolerance, &matrix[0]);
+ m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), vertcount, (float*)&verts[0].x, sizeof(Ogre::Vector3), tolerance, shapeID, &matrix[0]);
}
@@ -260,11 +260,11 @@
}
- TreeCollision::TreeCollision( const World* world, Ogre::Entity* obj, bool optimize, FaceWinding fw ) : Collision( world )
+ TreeCollision::TreeCollision( const World* world, Ogre::Entity* obj, bool optimize, FaceWinding fw, const int shapeID ) : Collision( world )
{
Ogre::Vector3 scale;
- start();
+ start(shapeID);
Ogre::MeshPtr mesh = obj->getMesh();
@@ -394,9 +394,9 @@
}
- TreeCollision::TreeCollision(const OgreNewt::World *world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw) : OgreNewt::Collision( world )
+ TreeCollision::TreeCollision(const OgreNewt::World *world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw, const int shapeID) : OgreNewt::Collision( world )
{
- start();
+ start(shapeID);
int numPolys = numIndices / 3;
@@ -435,9 +435,9 @@
}
- TreeCollision::TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw) : Collision( world )
+ TreeCollision::TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw, const int shapeID ) : Collision( world )
{
- start();
+ start(shapeID);
unsigned int numPolys = indexData->indexCount / 3;
Ogre::HardwareIndexBufferSharedPtr hwIndexBuffer=indexData->indexBuffer;
@@ -499,9 +499,9 @@
}
- void TreeCollision::start()
+ void TreeCollision::start(const int shapeID)
{
- m_col = NewtonCreateTreeCollision( m_world->getNewtonWorld() );
+ m_col = NewtonCreateTreeCollision( m_world->getNewtonWorld(), shapeID );
NewtonTreeCollisionBeginBuild( m_col );
}
@@ -694,8 +694,8 @@
{
Ogre::Vector3 rev_poly_verts[3];
rev_poly_verts[0] = poly_verts[0];
- rev_poly_verts[0] = poly_verts[2];
- rev_poly_verts[0] = poly_verts[1];
+ rev_poly_verts[1] = poly_verts[2];
+ rev_poly_verts[2] = poly_verts[1];
addPoly( rev_poly_verts, cs );
}
@@ -744,7 +744,7 @@
Pyramid::Pyramid(const World* world) : ConvexCollision( world )
{}
- Pyramid::Pyramid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance ) : ConvexCollision( world )
+ Pyramid::Pyramid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
@@ -773,7 +773,7 @@
vertices [idx++] = 0.0f;
//make the collision primitive.
- m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), 5, vertices, sizeof(float)*3, tolerance, &matrix[0]);
+ m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), 5, vertices, sizeof(float)*3, tolerance, shapeID, &matrix[0]);
delete []vertices;
Index: src/OgreNewt_CollisionSerializer.cpp
===================================================================
--- src/OgreNewt_CollisionSerializer.cpp (revision 2721)
+++ src/OgreNewt_CollisionSerializer.cpp (working copy)
@@ -33,7 +33,7 @@
}
- CollisionPtr CollisionSerializer::importCollision(Ogre::DataStreamPtr& stream, OgreNewt::World* world)
+ CollisionPtr CollisionSerializer::importCollision(Ogre::DataStreamPtr& stream, const OgreNewt::World* world)
{
CollisionPtr dest;
Index: src/OgreNewt_PlayerController.cpp
===================================================================
--- src/OgreNewt_PlayerController.cpp (revision 2721)
+++ src/OgreNewt_PlayerController.cpp (working copy)
@@ -245,10 +245,10 @@
{
// find first contact with each body and cache it
resize(0);
- for(int i = 0; i < size(); i++)
+ for(size_type i = 0; i < size(); i++)
{
Body* body = cast.getInfoAt(i).mBody;
- int j;
+ size_type j;
for( j = 0; j < size(); j++ )
{
if( body == at(j) )
Index: src/OgreNewt_RayCast.cpp
===================================================================
--- src/OgreNewt_RayCast.cpp (revision 2721)
+++ src/OgreNewt_RayCast.cpp (working copy)
@@ -144,7 +144,7 @@
}
- BasicRaycast::BasicRaycastInfo BasicRaycast::getInfoAt( int hitnum ) const
+ BasicRaycast::BasicRaycastInfo BasicRaycast::getInfoAt( size_t hitnum ) const
{
BasicRaycast::BasicRaycastInfo ret;
deadvirus
31-07-2009 15:41:09
Melven dont have time at the moment.
Thank you for the Bug and the fix
Here is an Patch that you can use OgreNewt with the newest Version of Newton 2.04.
I hope Melven will upload this to the svn, I will ask him.
Index: inc/OgreNewt_Collision.h
===================================================================
--- inc/OgreNewt_Collision.h (revision 2721)
+++ inc/OgreNewt_Collision.h (working copy)
@@ -69,13 +69,6 @@
*/
const World* getWorld() const {return m_world;}
- //! set a user ID for collision callback identification
- /*!
- you can set different IDs for each piece in a compound collision object, and then use these IDs in a collision callback to
- determine which part is currently colliding.
- */
- void setUserID( unsigned id ) const { NewtonCollisionSetUserID( m_col, id); }
-
//! get user ID, for collision callback identification
unsigned getUserID() const { return NewtonCollisionGetUserID( m_col ); }
@@ -132,7 +125,6 @@
void setAsTriggerVolume(bool trigger) { NewtonCollisionSetAsTriggerVolume(m_col, (int)trigger); }
};
-
#ifdef OGRENEWT_NO_COLLISION_SHAREDPTR
typedef Collision* CollisionPtr;
typedef ConvexCollision* ConvexCollisionPtr;
Index: inc/OgreNewt_CollisionPrimitives.h
===================================================================
--- inc/OgreNewt_CollisionPrimitives.h (revision 2721)
+++ inc/OgreNewt_CollisionPrimitives.h (working copy)
@@ -56,9 +56,10 @@
\param size vector representing width, height, depth
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Box( const World* world, const Ogre::Vector3& size,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Box() {}
@@ -82,9 +83,10 @@
\param size vector representing radius for all 3 axis
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Ellipsoid(const World* world, const Ogre::Vector3& size,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Ellipsoid() {}
@@ -109,9 +111,10 @@
\param height height of the cylinder (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Cylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Cylinder() {}
@@ -136,9 +139,10 @@
\param height height of the capsule (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Capsule( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Capsule() {}
@@ -163,9 +167,10 @@
\param height height of the cone (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
Cone( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~Cone() {}
@@ -190,9 +195,10 @@
\param height height of the chamfer cylinder (X axis)
\param orient orientation offset of the primitive
\param pos position offset of the primitive
+ \param shapeID ID for this Collision
*/
ChamferCylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, const int shapeID = 1 );
//! destructor
~ChamferCylinder() {}
@@ -222,9 +228,10 @@
\param pos position offset of the primitive
\parem tolerance a tolerance passed to newton
\param forceScale if set to something else then (0,0,0), the value of this argument will be used as scale instead of the parent-node's scale
+ \param shapeID ID for this Collision
*/
ConvexHull( const World* world, Ogre::Entity* ent,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f , const Ogre::Vector3& forceScale = Ogre::Vector3::ZERO);
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f , const Ogre::Vector3& forceScale = Ogre::Vector3::ZERO, const int shapeID = 1 );
/*!
Overloaded constructor. pass a pointer to an array of vertices and the hull will be made from that.
@@ -234,9 +241,10 @@
\param orient orientation offset of the primitive
\param pos position offset of the primitive
\param tolerance a tolerance passed to newton
+ \param shapeID ID for this Collision
*/
ConvexHull( const World* world, const Ogre::Vector3* verts, int vertcount,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f, const int shapeID = 1 );
//! destructor
~ConvexHull() {}
@@ -266,8 +274,9 @@
\param world pointer to the OgreNewt::World
\param ent pointer to an Ogre::Entitiy, if it is attached to a node, the scale of the parent node is used
\param optimize bool whether you want to optimize the collision or not.
+ \param shapeID ID for this Collision
*/
- TreeCollision( const World* world, Ogre::Entity* ent, bool optimize, FaceWinding fw = FW_DEFAULT );
+ TreeCollision( const World* world, Ogre::Entity* ent, bool optimize, FaceWinding fw = FW_DEFAULT, const int shapeID = 1 );
//! constructor
/*!
@@ -279,8 +288,9 @@
\param vertices pointer to array of vertices (positions only).
\param indices pointer to array of indices.
\param optimize bool whether you want to optimize the collision or not.
+ \param shapeID ID for this Collision
*/
- TreeCollision( const World* world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw = FW_DEFAULT);
+ TreeCollision( const World* world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw = FW_DEFAULT, const int shapeID = 1);
//! constructor
/*!
@@ -291,14 +301,18 @@
\param vertices pointer to array of Ogre::Vector3 vertices (positions only)
\param indexData pointer to Ogre::IndexData for the mesh
\param optimize bool whether you want to optimize the collision or not.
+ \param shapeID ID for this Collision
*/
- TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw = FW_DEFAULT);
+ TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw = FW_DEFAULT, const int shapeID = 1);
//! destructor
virtual ~TreeCollision() {}
//! start a tree collision creation
- void start();
+ /*!
+ \param shapeID ID for this Collision
+ */
+ void start(const int shapeID = 1);
//! add a poly to the tree collision
/*!
@@ -421,9 +435,10 @@
\param orient orientation offset of the primitive
\param pos position offset of the primitive
\param tolerance a tolerance passed to newton
+ \param shapeID ID for this Collision
*/
Pyramid( const World* world, const Ogre::Vector3& size,
- const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f );
+ const Ogre::Quaternion& orient = Ogre::Quaternion::IDENTITY, const Ogre::Vector3& pos = Ogre::Vector3::ZERO, Ogre::Real tolerance = 0.001f, const int shapeID = 1 );
//! destructor
~Pyramid() {}
Index: inc/OgreNewt_CollisionSerializer.h
===================================================================
--- inc/OgreNewt_CollisionSerializer.h (revision 2721)
+++ inc/OgreNewt_CollisionSerializer.h (working copy)
@@ -42,7 +42,7 @@
Deserialize the Collision from a DataStream.
this will create a NEW Collision object
*/
- OgreNewt::CollisionPtr importCollision(Ogre::DataStreamPtr& stream, OgreNewt::World* world);
+ OgreNewt::CollisionPtr importCollision(Ogre::DataStreamPtr& stream, const OgreNewt::World* world);
private:
/*!
Index: inc/OgreNewt_RayCast.h
===================================================================
--- inc/OgreNewt_RayCast.h (revision 2721)
+++ inc/OgreNewt_RayCast.h (working copy)
@@ -144,7 +144,7 @@
int getHitCount() const;
//! retrieve the raycast info for a specific hit.
- BasicRaycastInfo getInfoAt( int hitnum ) const;
+ BasicRaycastInfo getInfoAt( size_t hitnum ) const;
//! get the closest body hit by the ray.
BasicRaycastInfo getFirstHit() const;
Index: src/OgreNewt_CollisionPrimitives.cpp
===================================================================
--- src/OgreNewt_CollisionPrimitives.cpp (revision 2721)
+++ src/OgreNewt_CollisionPrimitives.cpp (working copy)
@@ -30,13 +30,13 @@
Box::Box(const World* world) : ConvexCollision( world )
{}
- Box::Box( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ Box::Box( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateBox( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, &matrix[0] );
+ m_col = NewtonCreateBox( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, shapeID, &matrix[0] );
}
@@ -45,13 +45,13 @@
Ellipsoid::Ellipsoid(const World* world) : ConvexCollision( world )
{}
- Ellipsoid::Ellipsoid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ Ellipsoid::Ellipsoid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateSphere( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, &matrix[0] );
+ m_col = NewtonCreateSphere( m_world->getNewtonWorld(), (float)size.x, (float)size.y, (float)size.z, shapeID, &matrix[0] );
}
@@ -60,13 +60,13 @@
{}
Cylinder::Cylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
@@ -75,13 +75,13 @@
{}
Capsule::Capsule( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateCapsule( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateCapsule( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
@@ -90,13 +90,13 @@
{}
Cone::Cone( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateCone( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateCone( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
// OgreNewt::CollisionPrimitives::ChamferCylinder
@@ -104,13 +104,13 @@
{}
ChamferCylinder::ChamferCylinder( const World* world, Ogre::Real radius, Ogre::Real height,
- const Ogre::Quaternion& orient, const Ogre::Vector3& pos ) : ConvexCollision( world )
+ const Ogre::Quaternion& orient, const Ogre::Vector3& pos, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
- m_col = NewtonCreateChamferCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, &matrix[0] );
+ m_col = NewtonCreateChamferCylinder( m_world->getNewtonWorld(), (float)radius, (float)height, shapeID, &matrix[0] );
}
@@ -119,7 +119,7 @@
ConvexHull::ConvexHull(const World* world) : ConvexCollision( world )
{}
- ConvexHull::ConvexHull( const World* world, Ogre::Entity* obj, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const Ogre::Vector3& forceScale ) : ConvexCollision( world )
+ ConvexHull::ConvexHull( const World* world, Ogre::Entity* obj, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const Ogre::Vector3& forceScale, const int shapeID ) : ConvexCollision( world )
{
Ogre::Vector3 scale(1.0,1.0,1.0);
@@ -235,7 +235,7 @@
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
//okay, let's try making the ConvexHull!
- m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), (int)total_verts, (float*)&vertices[0].x, sizeof(Ogre::Vector3), tolerance, &matrix[0] );
+ m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), (int)total_verts, (float*)&vertices[0].x, sizeof(Ogre::Vector3), tolerance, shapeID, &matrix[0] );
delete []vertices;
@@ -243,13 +243,13 @@
// OgreNewt::CollisionPrimitives::ConvexHull
- ConvexHull::ConvexHull( const World* world, const Ogre::Vector3* verts, int vertcount, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance ) : ConvexCollision( world )
+ ConvexHull::ConvexHull( const World* world, const Ogre::Vector3* verts, int vertcount, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
OgreNewt::Converters::QuatPosToMatrix( orient, pos, &matrix[0] );
//make the collision primitive.
- m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), vertcount, (float*)&verts[0].x, sizeof(Ogre::Vector3), tolerance, &matrix[0]);
+ m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), vertcount, (float*)&verts[0].x, sizeof(Ogre::Vector3), tolerance, shapeID, &matrix[0]);
}
@@ -260,11 +260,11 @@
}
- TreeCollision::TreeCollision( const World* world, Ogre::Entity* obj, bool optimize, FaceWinding fw ) : Collision( world )
+ TreeCollision::TreeCollision( const World* world, Ogre::Entity* obj, bool optimize, FaceWinding fw, const int shapeID ) : Collision( world )
{
Ogre::Vector3 scale;
- start();
+ start(shapeID);
Ogre::MeshPtr mesh = obj->getMesh();
@@ -394,9 +394,9 @@
}
- TreeCollision::TreeCollision(const OgreNewt::World *world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw) : OgreNewt::Collision( world )
+ TreeCollision::TreeCollision(const OgreNewt::World *world, int numVertices, int numIndices, const float *vertices, const int *indices, bool optimize, FaceWinding fw, const int shapeID) : OgreNewt::Collision( world )
{
- start();
+ start(shapeID);
int numPolys = numIndices / 3;
@@ -435,9 +435,9 @@
}
- TreeCollision::TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw) : Collision( world )
+ TreeCollision::TreeCollision( const World* world, int numVertices, Ogre::Vector3* vertices, Ogre::IndexData* indexData, bool optimize, FaceWinding fw, const int shapeID ) : Collision( world )
{
- start();
+ start(shapeID);
unsigned int numPolys = indexData->indexCount / 3;
Ogre::HardwareIndexBufferSharedPtr hwIndexBuffer=indexData->indexBuffer;
@@ -499,9 +499,9 @@
}
- void TreeCollision::start()
+ void TreeCollision::start(const int shapeID)
{
- m_col = NewtonCreateTreeCollision( m_world->getNewtonWorld() );
+ m_col = NewtonCreateTreeCollision( m_world->getNewtonWorld(), shapeID );
NewtonTreeCollisionBeginBuild( m_col );
}
@@ -694,8 +694,8 @@
{
Ogre::Vector3 rev_poly_verts[3];
rev_poly_verts[0] = poly_verts[0];
- rev_poly_verts[0] = poly_verts[2];
- rev_poly_verts[0] = poly_verts[1];
+ rev_poly_verts[1] = poly_verts[2];
+ rev_poly_verts[2] = poly_verts[1];
addPoly( rev_poly_verts, cs );
}
@@ -744,7 +744,7 @@
Pyramid::Pyramid(const World* world) : ConvexCollision( world )
{}
- Pyramid::Pyramid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance ) : ConvexCollision( world )
+ Pyramid::Pyramid( const World* world, const Ogre::Vector3& size, const Ogre::Quaternion& orient, const Ogre::Vector3& pos, Ogre::Real tolerance, const int shapeID ) : ConvexCollision( world )
{
float matrix[16];
@@ -773,7 +773,7 @@
vertices [idx++] = 0.0f;
//make the collision primitive.
- m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), 5, vertices, sizeof(float)*3, tolerance, &matrix[0]);
+ m_col = NewtonCreateConvexHull( m_world->getNewtonWorld(), 5, vertices, sizeof(float)*3, tolerance, shapeID, &matrix[0]);
delete []vertices;
Index: src/OgreNewt_CollisionSerializer.cpp
===================================================================
--- src/OgreNewt_CollisionSerializer.cpp (revision 2721)
+++ src/OgreNewt_CollisionSerializer.cpp (working copy)
@@ -33,7 +33,7 @@
}
- CollisionPtr CollisionSerializer::importCollision(Ogre::DataStreamPtr& stream, OgreNewt::World* world)
+ CollisionPtr CollisionSerializer::importCollision(Ogre::DataStreamPtr& stream, const OgreNewt::World* world)
{
CollisionPtr dest;
Index: src/OgreNewt_PlayerController.cpp
===================================================================
--- src/OgreNewt_PlayerController.cpp (revision 2721)
+++ src/OgreNewt_PlayerController.cpp (working copy)
@@ -245,10 +245,10 @@
{
// find first contact with each body and cache it
resize(0);
- for(int i = 0; i < size(); i++)
+ for(size_type i = 0; i < size(); i++)
{
Body* body = cast.getInfoAt(i).mBody;
- int j;
+ size_type j;
for( j = 0; j < size(); j++ )
{
if( body == at(j) )
Index: src/OgreNewt_RayCast.cpp
===================================================================
--- src/OgreNewt_RayCast.cpp (revision 2721)
+++ src/OgreNewt_RayCast.cpp (working copy)
@@ -144,7 +144,7 @@
}
- BasicRaycast::BasicRaycastInfo BasicRaycast::getInfoAt( int hitnum ) const
+ BasicRaycast::BasicRaycastInfo BasicRaycast::getInfoAt( size_t hitnum ) const
{
BasicRaycast::BasicRaycastInfo ret;
kallaspriit
31-07-2009 22:16:25
melven
01-08-2009 20:49:12
kallaspriit
04-08-2009 12:43:39
typedef boost::shared_ptr<Body> BodyPtr;
body->attachNode(sourceNode);
body->setPositionOrientation(sourceNode->getPosition(), sourceNode->getOrientation());
melven
04-08-2009 15:31:08
deadvirus
04-08-2009 23:45:40
I thought setting the position of the node when it is attached to a body would improve consistency, because its position will be updated automatically the next time the body is moved... I could remove the call, but wouldn't it make more sense to change the order of these two lines? I thought most of the time, this should be the intended behaviour...
I already use different colors in the debugger for different materials (in my app), but there should be other ways for displaying contacts...
I don't have much time at the moment, but feel free to improve OgreNewt! You can add the things you need by your own and post the changes in the forum if you like... when I have a bit more time I could upload your changes...
kallaspriit
05-08-2009 13:56:11
deadvirus
12-08-2009 14:09:50
melven
12-08-2009 20:38:29
deadvirus
12-08-2009 22:34:55
There are some small interface changes in 2.06, I've implemented them locally (but didn't commit them yet)...
PJani
15-08-2009 12:43:23
Wannes
20-08-2009 15:42:06
There are some small interface changes in 2.06, I've implemented them locally (but didn't commit them yet)...
If have some time to commit them, I will be happy
Sorry for asking...
melven
21-08-2009 14:03:53
deadvirus
21-08-2009 14:05:27
I've updated the version in https://svn.ogre3d.org/svnroot/ogreaddo ... t/newton20 to newton 2.07.
- There is again an interface breaking change (shape id parameter when creating ConvexModifierCollision).
- I added a demo for the player controller joint, that needs to be improved! (the player controller is not working yet, though I tried to copy the latest player controller custom-joint from newton)
- in the CustomJoint class: added a globalToLocal function and the feedbackCollector callback
There are no Visual Studio files for the PlayerController demo yet.
kallaspriit
21-08-2009 16:11:32
deadvirus
21-08-2009 16:23:11
Thank you, will try too. BTW, there is 2.08 already but should work with this
kallaspriit
22-08-2009 14:04:28
deadvirus
22-08-2009 14:10:55
Julio has not added the link, but it has been in the topic, try http://www.newtondynamics.com/downloads ... n-2.08.rar
The new version works with it nicely
deadvirus
23-08-2009 00:27:41
I've updated the version in https://svn.ogre3d.org/svnroot/ogreaddo ... t/newton20 to newton 2.07.
- There is again an interface breaking change (shape id parameter when creating ConvexModifierCollision).
- I added a demo for the player controller joint, that needs to be improved! (the player controller is not working yet, though I tried to copy the latest player controller custom-joint from newton)
- in the CustomJoint class: added a globalToLocal function and the feedbackCollector callback
There are no Visual Studio files for the PlayerController demo yet.
melven
23-08-2009 17:21:28
I've got an error while trying to compile: "fatal error C1083: Cannot open include file: 'pthread.h': No such file or directory" on OgreNewt_World.h:15
It's weird because "#ifndef WIN32" should prevent it from compiling that line!
I'm using Visual Studio 2008.
EDIT: It was missing the WIN32 preprocessor definition on the project properties. Now it compiles.
EDIT2: The Treecollision ID has to be unique? Is it the material ID? If so, shouldn't it be MaterialID* instead of int? (I know we can get the int id from MaterialID)
EDIT3: I have an airplane and in 2.03 it took about 5 seconds to give a full 360º turn (pitch), in 2.08 it takes about 8 seconds to do it! I think this is because the changes you've made in Body::addGlobalForce. Are you sure that the center of mass is needed there? Doesn't Newton take care of it?
deadvirus
23-08-2009 17:32:23
I'm sorry I don't use Windows, so I cannot check if it runs there...
Concerning the TreeCollision-id (like the id of all other collisions):
You don't need to use it (so you can set it to 0 or whatever), I just didn't give it a default-value in order to prevent errors... For further information, look here http://newtondynamics.com/wiki/index.ph ... ial_System .
Concerning the addGlobalForce-function: I think it was wrong before and now it should be correct, see http://newtondynamics.com/wiki/index.ph ... ntreOfMass ... tell me, if this is not right!
By the way, I've updated the version of OgreNewt in https://svn.ogre3d.org/svnroot/ogreaddo ... t/newton20 again:
- the player controller seems to work for the first time (but it's not finished yet!)
- removed the CollisionTools::CollisionCalculateAABB function (because its a dubplicate of Collision::getAABB ) and added a function that calculates a fitting AABB (CollisionTools::CollisionCalculateFittingAABB), because the AABB returned by the getAABB function can be too large!
PJani
26-08-2009 13:04:43
PJani
15-09-2009 02:32:34
ChampiAtomik
17-09-2009 18:12:46
PJani
17-09-2009 20:08:33
ChampiAtomik
17-09-2009 20:32:34
oramia
01-11-2009 20:25:22
melven
27-11-2009 21:57:00
kallaspriit
06-12-2009 19:06:52
kallaspriit
10-12-2009 10:10:59
PJani
18-12-2009 17:15:58
kallaspriit
20-12-2009 20:28:51
PJani
20-12-2009 21:50:18
kallaspriit
21-12-2009 23:25:27
I cant wait, to see updated OgreNewt
Edit: I had idea to start updating OgreNewt to new Newton 2.0x but 1. year at collage started and i have no time to...
kallaspriit
26-12-2009 10:39:27
kallaspriit
30-12-2009 15:50:15
kallaspriit
03-01-2010 20:11:37
PJani
19-01-2010 20:39:17
kallaspriit
14-03-2010 21:42:46
world->setUpdateFPS(..);
PJani
17-03-2010 12:11:32
kallaspriit
20-03-2010 11:39:19
kallaspriit
28-03-2010 20:34:06
tod
09-04-2010 10:01:34
kallaspriit
11-04-2010 18:38:00
zamx
05-05-2010 13:46:45
kallaspriit
06-05-2010 20:48:46
zamx
07-05-2010 17:17:14
kallaspriit
24-05-2010 16:48:05
jarwulf
10-06-2010 04:59:32
I cant wait, to see updated OgreNewt
Edit: I had idea to start updating OgreNewt to new Newton 2.0x but 1. year at collage started and i have no time to...
OgreNewt already works with the latest NGD 2.1x, get it from https://svn.ogre3d.org/svnroot/ogreaddo ... t/newton20
mvelazquezm
16-06-2010 11:30:11
I cant wait, to see updated OgreNewt
Edit: I had idea to start updating OgreNewt to new Newton 2.0x but 1. year at collage started and i have no time to...
OgreNewt already works with the latest NGD 2.1x, get it from https://svn.ogre3d.org/svnroot/ogreaddo ... t/newton20
Is there anyway to get it without having to download every file individually? These websites don't seem big on making things easy...
soon
16-06-2010 13:05:50
kallaspriit
16-06-2010 18:09:35
soon
21-06-2010 18:03:47
kallaspriit
21-06-2010 19:28:18
soon
23-06-2010 17:30:45
Good, I will check it out soon
kallaspriit
24-06-2010 12:43:05
kallaspriit
24-06-2010 21:26:18
kallaspriit
26-06-2010 16:28:22
SFCBias
27-06-2010 13:14:49
soon
29-06-2010 11:26:07
OgreNewt should now work with Ogre 1.7.1 and there are also solution and project files for VS2010.
There is also a new environment variable that needs to be set:
"OGRE_BUILD_HOME" - directory where you built your Ogre 1.7
Give it a spin and let me know if something does not work and better yet, a solution
kallaspriit
03-07-2010 11:23:15
kallaspriit
04-07-2010 10:31:03
kallaspriit
07-07-2010 17:57:10
kallaspriit
10-07-2010 16:34:14
- Updated VS9 project files to work properly with Ogre 1.7
- Added third optional parameter "name" to OgreNewt::World contructor that is the name of the created world that defaults to "main". You can use this name to statically get the world instance using OgreNewt::World::get(name) where name defaults to "main" also, so you don't have to set the name if you are using the default one in your constructor, just OgreNewt::World::get() will return the default-named instance. This is added for comfort, so you don't have to carry the world instance around to call OgreNewt methods that require pointer to the world.
NIKIMC
09-08-2010 04:34:08
1>------ Rebuild All started: Project: OgreNewt, Configuration: Debug Win32 ------
2>------ Rebuild All started: Project: Demo08_RagdollExample, Configuration: Debug Win32 ------
1>Build started 09.08.2010 05:26:06.
1>_PrepareForClean:
1> Deleting file "obj\debug\OgreNewt.lastbuildstate".
2>Build started 09.08.2010 05:26:06.
2>_PrepareForClean:
2> Deleting file "..\obj\Debug\Demo08_RagdollExample\Demo08_RagdollExample.lastbuildstate".
1>InitializeBuildStatus:
1> Touching "obj\debug\OgreNewt.unsuccessfulbuild".
2>InitializeBuildStatus:
2> Touching "..\obj\Debug\Demo08_RagdollExample\Demo08_RagdollExample.unsuccessfulbuild".
1>ClCompile:
1> OgreNewt_Stdafx.cpp
2>ClCompile:
2> Ragdoll.cpp
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.h(49): error C3083: 'BasicJoints': the symbol to the left of a '::' must be a type
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(82): error C2039: 'setCustomTransformCallback' : is not a member of 'OgreNewt::Body'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_body.h(38) : see declaration of 'OgreNewt::Body'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(98): error C3083: 'BasicJoints': the symbol to the left of a '::' must be a type
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(101): error C2039: 'getUserData' : is not a member of 'OgreNewt::Hinge'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(72) : see declaration of 'OgreNewt::Hinge'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(112): error C2039: 'calculateStopAlpha' : is not a member of 'OgreNewt::Hinge'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(72) : see declaration of 'OgreNewt::Hinge'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(113): error C2039: 'setCallbackAccel' : is not a member of 'OgreNewt::Hinge'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(72) : see declaration of 'OgreNewt::Hinge'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(118): error C2039: 'calculateStopAlpha' : is not a member of 'OgreNewt::Hinge'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(72) : see declaration of 'OgreNewt::Hinge'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(119): error C2039: 'setCallbackAccel' : is not a member of 'OgreNewt::Hinge'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(72) : see declaration of 'OgreNewt::Hinge'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(401): error C3083: 'BasicJoints': the symbol to the left of a '::' must be a type
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(401): error C2661: 'OgreNewt::BallAndSocket::BallAndSocket' : no overloaded function takes 4 arguments
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(402): error C3083: 'BasicJoints': the symbol to the left of a '::' must be a type
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(402): error C2039: 'setLimits' : is not a member of 'OgreNewt::BallAndSocket'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(27) : see declaration of 'OgreNewt::BallAndSocket'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(406): error C3083: 'BasicJoints': the symbol to the left of a '::' must be a type
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(406): error C2661: 'OgreNewt::Hinge::Hinge' : no overloaded function takes 5 arguments
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(407): error C3083: 'BasicJoints': the symbol to the left of a '::' must be a type
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(407): error C2039: 'setCallback' : is not a member of 'OgreNewt::Hinge'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_basicjoints.h(72) : see declaration of 'OgreNewt::Hinge'
2>c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\demos\demo08_ragdollexample\ragdoll.cpp(409): error C2039: 'setUserData' : is not a member of 'OgreNewt::Joint'
2> c:\ogresdk\addons\ogrenewt_(for_ogre1.7.1)\inc\ogrenewt_joint.h(31) : see declaration of 'OgreNewt::Joint'
2> OgreNewtonFrameListener.cpp
1> OgreNewt_BasicFrameListener.cpp
1>src\OgreNewt_BasicFrameListener.cpp(28): warning C4244: 'argument' : conversion from 'int' to 'Ogre::Real', possible loss of data
1> OgreNewt_BasicJoints.cpp
1> OgreNewt_Body.cpp
1>src\OgreNewt_Body.cpp(123): warning C4305: 'argument' : truncation from 'double' to 'const Ogre::Real'
1> OgreNewt_BodyInAABBIterator.cpp
1> OgreNewt_Collision.cpp
1> OgreNewt_CollisionPrimitives.cpp
1>src\OgreNewt_CollisionPrimitives.cpp(765): warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_CollisionPrimitives.cpp(766): warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_CollisionPrimitives.cpp(767): warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_CollisionPrimitives.cpp(773): warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
1> OgreNewt_CollisionSerializer.cpp
1> OgreNewt_ContactCallback.cpp
1> OgreNewt_ContactJoint.cpp
1> OgreNewt_ConvexCast.cpp
1> OgreNewt_Debugger.cpp
1>src\OgreNewt_Debugger.cpp(248): warning C4244: 'argument' : conversion from 'double' to 'const Ogre::Real', possible loss of data
1>src\OgreNewt_Debugger.cpp(278): warning C4244: 'argument' : conversion from 'double' to 'const Ogre::Real', possible loss of data
1>src\OgreNewt_Debugger.cpp(283): warning C4305: 'argument' : truncation from 'double' to 'const Ogre::Real'
1> OgreNewt_Joint.cpp
2>c:\ogresdk\include\ogre\exampleframelistener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
2> OgreNewtonApplication.cpp
1> OgreNewt_MaterialID.cpp
1> OgreNewt_MaterialPair.cpp
1> OgreNewt_PlayerController.cpp
1> OgreNewt_RayCast.cpp
1>src\OgreNewt_RayCast.cpp(55): warning C4305: 'return' : truncation from 'double' to 'float'
1> OgreNewt_RayCastVehicle.cpp
1> OgreNewt_Tools.cpp
1>src\OgreNewt_Tools.cpp(497): warning C4244: '=' : conversion from 'double' to 'Ogre::Real', possible loss of data
1>src\OgreNewt_Tools.cpp(519): warning C4244: '=' : conversion from 'double' to 'Ogre::Real', possible loss of data
1>src\OgreNewt_Tools.cpp(530): warning C4244: '+=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(543): warning C4244: '+=' : conversion from 'double' to 'Ogre::Real', possible loss of data
1>src\OgreNewt_Tools.cpp(551): warning C4244: '-=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(606): warning C4244: '-=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(627): warning C4244: '+=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(628): warning C4244: '+=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(668): warning C4244: '-=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(669): warning C4244: '-=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(686): warning C4244: '+=' : conversion from 'double' to 'float', possible loss of data
1>src\OgreNewt_Tools.cpp(705): warning C4244: '+=' : conversion from 'double' to 'float', possible loss of data
1> OgreNewt_Vehicle.cpp
1> OgreNewt_World.cpp
1>src\OgreNewt_World.cpp(99): warning C4244: '+=' : conversion from 'float' to 'int', possible loss of data
1>src\OgreNewt_World.cpp(101): warning C4305: '=' : truncation from 'double' to 'Ogre::Real'
1>src\OgreNewt_World.cpp(106): warning C4305: '=' : truncation from 'double' to 'Ogre::Real'
1> Generating Code...
2>c:\ogresdk\include\ogre\exampleframelistener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
2> demo08.cpp
2>c:\ogresdk\include\ogre\exampleframelistener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
2> Generating Code...
2>
2>Build FAILED.
2>
2>Time Elapsed 00:01:25.30
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\OgreSDK\Addons\OgreNewt_(for_Ogre1.7.1)\lib\OgreNewt.dll) does not match the Linker's OutputFile property value (C:\OgreSDK\Addons\OgreNewt_(for_Ogre1.7.1)\lib\OgreNewt_d.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(992,5): warning MSB8012: TargetName(OgreNewt) does not match the Linker's OutputFile property value (OgreNewt_d). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>LINK : fatal error LNK1181: cannot open input file 'JointLibrary_d.lib'
1>
1>Build FAILED.
1>
1>Time Elapsed 00:01:25.86
3>------ Rebuild All started: Project: Demo05_SimpleVehicle, Configuration: Debug Win32 ------
4>------ Rebuild All started: Project: MinimalOgreNewt, Configuration: Debug Win32 ------
3>Build started 09.08.2010 05:27:32.
3>_PrepareForClean:
3> Deleting file "..\obj\Debug\Demo05_SimpleVehicle\Demo05_SimpleVehicle.lastbuildstate".
4>Build started 09.08.2010 05:27:32.
4>_PrepareForClean:
4> Deleting file "..\obj\Debug\MinimalOgreNewt\MinimalOgreNewt.lastbuildstate".
4>InitializeBuildStatus:
4> Touching "..\obj\Debug\MinimalOgreNewt\MinimalOgreNewt.unsuccessfulbuild".
3>InitializeBuildStatus:
3> Touching "..\obj\Debug\Demo05_SimpleVehicle\Demo05_SimpleVehicle.unsuccessfulbuild".
3>ClCompile:
3> SimpleVehicle.cpp
4>PreBuildEvent:
4> The system cannot find the file specified.
4> 1 file(s) copied.
4> The system cannot find the path specified.
4> 0 file(s) copied.
4> The system cannot find the path specified.
4> 0 file(s) copied.
4> The system cannot find the path specified.
4> 0 file(s) copied.
4> The system cannot find the path specified.
4> 0 file(s) copied.
4> The system cannot find the path specified.
4> 0 file(s) copied.
4> 1 file(s) copied.
4> The system cannot find the file specified.
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: The command "copy ..\..\lib\OgreNewt_d.dll .\OgreNewt_d.dll
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073:
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\Samples\Common\bin\Debug\OgreMain_d.dll" copy "C:\OgreSDK\Samples\Common\bin\Debug\OgreMain_d.dll" ".\OgreMain_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\Samples\Common\bin\Debug\OIS_d.dll" copy "C:\OgreSDK\Samples\Common\bin\Debug\OIS_d.dll" ".\OIS_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\Samples\Common\bin\Debug\Plugin_CgProgramManager_d.dll" copy "C:\OgreSDK\Samples\Common\bin\Debug\Plugin_CgProgramManager_d.dll" ".\Plugin_CgProgramManager_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\Samples\Common\bin\Debug\RenderSystem_Direct3D9_d.dll" copy "C:\OgreSDK\Samples\Common\bin\Debug\RenderSystem_Direct3D9_d.dll" ".\RenderSystem_Direct3D9_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\Samples\Common\bin\Debug\RenderSystem_GL_d.dll" copy "C:\OgreSDK\Samples\Common\bin\Debug\RenderSystem_GL_d.dll" ".\RenderSystem_GL_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\Samples\Common\bin\Debug\cg.dll" copy "C:\OgreSDK\Samples\Common\bin\Debug\cg.dll" ".\cg.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073:
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\bin\debug\OgreMain_d.dll" copy "C:\OgreSDK\bin\debug\OgreMain_d.dll" ".\OgreMain_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\bin\debug\OIS_d.dll" copy "C:\OgreSDK\bin\debug\OIS_d.dll" demos\bin\Debug\OIS_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\bin\debug\Plugin_CgProgramManager_d.dll" copy "C:\OgreSDK\bin\debug\Plugin_CgProgramManager_d.dll" demos\bin\Debug\Plugin_CgProgramManager_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\bin\debug\RenderSystem_Direct3D9_d.dll" copy "C:\OgreSDK\bin\debug\RenderSystem_Direct3D9_d.dll" demos\bin\Debug\RenderSystem_Direct3D9_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\bin\debug\RenderSystem_GL_d.dll" copy "C:\OgreSDK\bin\debug\RenderSystem_GL_d.dll" demos\bin\Debug\RenderSystem_GL_d.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: if exist "C:\OgreSDK\bin\debug\cg.dll" copy "C:\OgreSDK\bin\debug\cg.dll" demos\bin\Debug\cg.dll"
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073:
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: copy C:\OgreSDK\Addons\NewtonWin-2.24\sdk\x32\dll_vs9\newton.dll .\newton.dll
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: copy C:\OgreSDK\Addons\NewtonWin-2.24\sdk\x32\JointLibrary_d.dll .\JointLibrary_d.dll
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073:
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): error MSB3073: :VCEnd" exited with code 1.
4>
4>Build FAILED.
4>
4>Time Elapsed 00:00:01.07
5>------ Rebuild All started: Project: Demo09_PlayerController, Configuration: Debug Win32 ------
5>Build started 09.08.2010 05:27:34.
5>_PrepareForClean:
5> Deleting file "..\obj\Debug\Demo09_PlayerController\Demo09_PlayerController.lastbuildstate".
5>InitializeBuildStatus:
5> Touching "..\obj\Debug\Demo09_PlayerController\Demo09_PlayerController.unsuccessfulbuild".
5>ClCompile:
5> OgreNewtonFrameListener.cpp
5>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
5> OgreNewtonApplication.cpp
3> OgreNewtonFrameListener.cpp
5>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
5> demo09.cpp
3>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
3> OgreNewtonApplication.cpp
5>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
5> Generating Code...
5>
5>Build FAILED.
5>
5>Time Elapsed 00:01:00.53
6>------ Rebuild All started: Project: Demo07_CustomJoints, Configuration: Debug Win32 ------
6>Build started 09.08.2010 05:28:35.
6>_PrepareForClean:
6> Deleting file "..\obj\Debug\Demo07_CustomJoints\Demo07_CustomJoints.lastbuildstate".
6>InitializeBuildStatus:
6> Touching "..\obj\Debug\Demo07_CustomJoints\Demo07_CustomJoints.unsuccessfulbuild".
6>ClCompile:
6> OgreNewtonFrameListener.cpp
3>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
3> demo05.cpp
6>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
6> OgreNewtonApplication.cpp
3>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
3> Generating Code...
3>
3>Build FAILED.
3>
3>Time Elapsed 00:01:31.81
7>------ Rebuild All started: Project: Demo06_SimpleBuoyancy, Configuration: Debug Win32 ------
7>Build started 09.08.2010 05:29:04.
7>_PrepareForClean:
7> Deleting file "..\obj\Debug\Demo06_SimpleBuoyancy\Demo06_SimpleBuoyancy.lastbuildstate".
7>InitializeBuildStatus:
7> Touching "..\obj\Debug\Demo06_SimpleBuoyancy\Demo06_SimpleBuoyancy.unsuccessfulbuild".
7>ClCompile:
7> OgreNewtonFrameListener.cpp
6>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
6> MyCustomMotorizedHinge.cpp
7>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
7> OgreNewtonApplication.cpp
6>MyCustomMotorizedHinge.cpp(22): warning C4305: 'initializing' : truncation from 'double' to 'Ogre::Real'
6> MyCustomBallSocket.cpp
6> demo07.cpp
7>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
7> demo06.cpp
6>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
6> Generating Code...
6>
6>Build FAILED.
6>
6>Time Elapsed 00:01:23.19
8>------ Rebuild All started: Project: Demo04_Raycasting, Configuration: Debug Win32 ------
8>Build started 09.08.2010 05:29:58.
8>_PrepareForClean:
8> Deleting file "..\obj\Debug\Demo04_Raycasting\Demo04_Raycasting.lastbuildstate".
8>InitializeBuildStatus:
8> Touching "..\obj\Debug\Demo04_Raycasting\Demo04_Raycasting.unsuccessfulbuild".
8>ClCompile:
8> OgreNewtonFrameListener.cpp
7>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
7> Generating Code...
7>
7>Build FAILED.
7>
7>Time Elapsed 00:00:57.25
9>------ Rebuild All started: Project: Demo03_CollisionCallbacks, Configuration: Debug Win32 ------
9>Build started 09.08.2010 05:30:02.
9>_PrepareForClean:
9> Deleting file "..\obj\Debug\Demo03_CollisionCallbacks\Demo03_CollisionCallbacks.lastbuildstate".
9>InitializeBuildStatus:
9> Touching "..\obj\Debug\Demo03_CollisionCallbacks\Demo03_CollisionCallbacks.unsuccessfulbuild".
9>ClCompile:
9> OgreNewtonFrameListener.cpp
8>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
8> OgreNewtonApplication.cpp
9>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
9> OgreNewtonApplication.cpp
8>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
8> demo04.cpp
9>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
9> demo03.cpp
8>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
8> Generating Code...
8>
8>Build FAILED.
8>
8>Time Elapsed 00:01:01.51
10>------ Rebuild All started: Project: Demo01_TheBasics, Configuration: Debug Win32 ------
10>Build started 09.08.2010 05:31:00.
10>_PrepareForClean:
10> Deleting file "..\obj\Debug\Demo01_TheBasics\Demo01_TheBasics.lastbuildstate".
10>InitializeBuildStatus:
10> Touching "..\obj\Debug\Demo01_TheBasics\Demo01_TheBasics.unsuccessfulbuild".
10>ClCompile:
10> OgreNewtonFrameListener.cpp
9>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
9> ConveyorMatCallback.cpp
10>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
10> OgreNewtonApplication.cpp
9> ConveyorBelt.cpp
10>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
10> demo01.cpp
9> Generating Code...
9>
9>Build FAILED.
9>
9>Time Elapsed 00:02:07.56
11>------ Rebuild All started: Project: Demo02_Joints, Configuration: Debug Win32 ------
10>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
11>Build started 09.08.2010 05:32:10.
11>_PrepareForClean:
11> Deleting file "..\obj\Debug\Demo02_Joints\Demo02_Joints.lastbuildstate".
10> Generating Code...
11>InitializeBuildStatus:
11> Touching "..\obj\Debug\Demo02_Joints\Demo02_Joints.unsuccessfulbuild".
11>ClCompile:
11> OgreNewtonFrameListener.cpp
10>
10>Build FAILED.
10>
10>Time Elapsed 00:01:11.85
11>C:\OgreSDK\include\OGRE\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
11> OgreNewtonApplication.cpp
11>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
11> demo02.cpp
11>c:\ogresdk\include\ogre\ExampleFrameListener.h(51): fatal error C1083: Cannot open include file: 'OIS.h': No such file or directory
11> Generating Code...
11>
11>Build FAILED.
11>
11>Time Elapsed 00:00:45.26
========== Rebuild All: 0 succeeded, 11 failed, 0 skipped ==========
kallaspriit
26-08-2010 14:31:50
Added Body::getMass(), Body::getInertia()
Some changes to casting, debugger and helper tools
Updated project files to use dJointLibrary instead of JointLibrary (renamed by Julio).
kallaspriit
26-08-2010 14:41:40
Beauty
04-09-2010 23:18:07
kallaspriit
09-09-2010 18:20:15
NIKIMC
10-09-2010 02:06:41
Since 1.7, you also need OGRE_BUILD_HOME variable that points to the directory where you built Ogre, for example "D:\Ogre\build\VS9" in my machine.
Added Body::getMass(), Body::getInertia()
Some changes to casting, debugger and helper tools
Updated project files to use dJointLibrary instead of JointLibrary (renamed by Julio).
kallaspriit
11-09-2010 10:29:05
NIKIMC
11-09-2010 14:08:57
kallaspriit
15-09-2010 11:58:16
SFCBias
18-09-2010 17:38:26
NIKIMC
23-09-2010 19:59:29
kallaspriit
24-09-2010 19:03:12
NIKIMC
25-09-2010 15:39:10
IlBrillanteJack
06-10-2010 12:23:38
NIKIMC
06-10-2010 15:26:27