You can subscribe to this list here.
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(9) |
Jun
(7) |
Jul
(24) |
Aug
(4) |
Sep
(6) |
Oct
(6) |
Nov
(23) |
Dec
(62) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2009 |
Jan
(34) |
Feb
(33) |
Mar
(21) |
Apr
(13) |
May
(8) |
Jun
(15) |
Jul
(8) |
Aug
(10) |
Sep
(22) |
Oct
(3) |
Nov
(4) |
Dec
(15) |
2010 |
Jan
(7) |
Feb
(65) |
Mar
(30) |
Apr
(21) |
May
(15) |
Jun
(15) |
Jul
(25) |
Aug
(14) |
Sep
(11) |
Oct
|
Nov
(3) |
Dec
|
2011 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
(2) |
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
From: <kal...@us...> - 2010-08-25 09:40:55
|
Revision: 2963 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2963&view=rev Author: kallaspriit Date: 2010-08-25 09:40:46 +0000 (Wed, 25 Aug 2010) Log Message: ----------- Added Body::getMass(), Body::getInertia() Some changes to casting, debugger and helper tools Modified Paths: -------------- branches/ogrenewt/newton20/OgreNewt_VS9.suo branches/ogrenewt/newton20/inc/OgreNewt_Body.h branches/ogrenewt/newton20/inc/OgreNewt_ConvexCast.h branches/ogrenewt/newton20/src/OgreNewt_Body.cpp branches/ogrenewt/newton20/src/OgreNewt_ConvexCast.cpp branches/ogrenewt/newton20/src/OgreNewt_Debugger.cpp branches/ogrenewt/newton20/src/OgreNewt_RayCast.cpp branches/ogrenewt/newton20/src/OgreNewt_Tools.cpp branches/ogrenewt/newton20/src/OgreNewt_World.cpp Modified: branches/ogrenewt/newton20/OgreNewt_VS9.suo =================================================================== (Binary files differ) Modified: branches/ogrenewt/newton20/inc/OgreNewt_Body.h =================================================================== --- branches/ogrenewt/newton20/inc/OgreNewt_Body.h 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/inc/OgreNewt_Body.h 2010-08-25 09:40:46 UTC (rev 2963) @@ -344,6 +344,12 @@ //! get Ogre::Real(mass) and Ogre::Vector3(inertia) of the body. void getMassMatrix( Ogre::Real& mass, Ogre::Vector3& inertia ) const; + //! return body mass + Ogre::Real getMass() const; + + //! return body inertia + Ogre::Vector3 getInertia() const; + //! get invert mass + inertia for the body. void getInvMass( Ogre::Real& mass, Ogre::Vector3& inertia ) const; Modified: branches/ogrenewt/newton20/inc/OgreNewt_ConvexCast.h =================================================================== --- branches/ogrenewt/newton20/inc/OgreNewt_ConvexCast.h 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/inc/OgreNewt_ConvexCast.h 2010-08-25 09:40:46 UTC (rev 2963) @@ -112,27 +112,42 @@ \param startpt starting point of ray in global space \param colori orientation of the collision in global space \param endpt ending point of ray in global space - \param maxcontactscount maximum number of contacts that should be saved + \param maxcontactscount maximum number of contacts that should be saved + \param threadIndex Thread index + \param ignoreBody Body to ignore in filter, use if you're casting from inside other body and need to ignore it */ - BasicConvexcast( const OgreNewt::World* world, const OgreNewt::ConvexCollisionPtr& col, const Ogre::Vector3& startpt, const Ogre::Quaternion &colori, const Ogre::Vector3& endpt, int maxcontactscount, int threadIndex); + BasicConvexcast( const OgreNewt::World* world, const OgreNewt::ConvexCollisionPtr& col, const Ogre::Vector3& startpt, const Ogre::Quaternion &colori, const Ogre::Vector3& endpt, int maxcontactscount, int threadIndex, OgreNewt::Body* ignoreBody = NULL); //! destuctor. ~BasicConvexcast(); + //! prefilter filter, ignores body set in constructor or always returns true if it's not set + bool userPreFilterCallback( OgreNewt::Body* body ); + + //! sets body to ignore in filter + void setIgnoreBody( OgreNewt::Body* body ) { mIgnoreBody = body; } + + //! return body ignored in filter + OgreNewt::Body* getIgnoreBody() { return mIgnoreBody; } + // ------------------------------------------------------ // the following functions can be used to retrieve information about the bodies collided by the convexcast. //! how many bodies did we hit? if maxcontactscount is to small, this value will be smaller too! int calculateBodyHitCount() const; - //! how many contacts do we have - int getContactsCount() const; + //! how many contacts do we have + int getContactsCount() const; //! retrieve the raycast info for a specific hit. ConvexcastContactInfo getInfoAt( int hitnum ) const; - //! retrieve the distance to the first contact (in range [0,1] from startpt to endpt) - Ogre::Real getDistanceToFirstHit() const; + //! retrieve the distance to the first contact (in range [0,1] from startpt to endpt) + Ogre::Real getDistanceToFirstHit() const; + +protected: + //! Body to ignore in filter + OgreNewt::Body* mIgnoreBody; }; Modified: branches/ogrenewt/newton20/src/OgreNewt_Body.cpp =================================================================== --- branches/ogrenewt/newton20/src/OgreNewt_Body.cpp 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/src/OgreNewt_Body.cpp 2010-08-25 09:40:46 UTC (rev 2963) @@ -95,8 +95,6 @@ me->m_prevRotation = -1.0f * me->m_prevRotation; } - me->m_accumulatedGlobalForces.clear(); - /* // if (me->m_node) { // if (m_nodeupdateneeded && !forceNodeUpdate ) @@ -138,6 +136,8 @@ me->addGlobalForce(it->first, it->second); } + + me->m_accumulatedGlobalForces.clear(); } @@ -320,6 +320,26 @@ NewtonBodyGetMassMatrix( m_body, &mass, &inertia.x, &inertia.y, &inertia.z ); } +Ogre::Real Body::getMass() const +{ + Ogre::Real mass; + Ogre::Vector3 inertia; + + NewtonBodyGetMassMatrix( m_body, &mass, &inertia.x, &inertia.y, &inertia.z ); + + return mass; +} + +Ogre::Vector3 Body::getInertia() const +{ + Ogre::Real mass; + Ogre::Vector3 inertia; + + NewtonBodyGetMassMatrix( m_body, &mass, &inertia.x, &inertia.y, &inertia.z ); + + return inertia; +} + void Body::getInvMass( Ogre::Real& mass, Ogre::Vector3& inertia ) const { NewtonBodyGetInvMass( m_body, &mass, &inertia.x, &inertia.y, &inertia.z ); Modified: branches/ogrenewt/newton20/src/OgreNewt_ConvexCast.cpp =================================================================== --- branches/ogrenewt/newton20/src/OgreNewt_ConvexCast.cpp 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/src/OgreNewt_ConvexCast.cpp 2010-08-25 09:40:46 UTC (rev 2963) @@ -103,13 +103,26 @@ { } - BasicConvexcast::BasicConvexcast(const OgreNewt::World* world, const OgreNewt::ConvexCollisionPtr& col, const Ogre::Vector3& startpt, const Ogre::Quaternion &colori, const Ogre::Vector3& endpt, int maxcontactscount, int threadIndex) + BasicConvexcast::BasicConvexcast(const OgreNewt::World* world, const OgreNewt::ConvexCollisionPtr& col, const Ogre::Vector3& startpt, const Ogre::Quaternion &colori, const Ogre::Vector3& endpt, int maxcontactscount, int threadIndex, OgreNewt::Body* ignoreBody) { + mIgnoreBody = ignoreBody; + go( world, col, startpt, colori, endpt, maxcontactscount, threadIndex); } BasicConvexcast::~BasicConvexcast() {} + bool BasicConvexcast::userPreFilterCallback( OgreNewt::Body* body ) + { + if (mIgnoreBody == NULL || mIgnoreBody != body) + { + return true; + } + else + { + return false; + } + } int BasicConvexcast::calculateBodyHitCount() const { Modified: branches/ogrenewt/newton20/src/OgreNewt_Debugger.cpp =================================================================== --- branches/ogrenewt/newton20/src/OgreNewt_Debugger.cpp 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/src/OgreNewt_Debugger.cpp 2010-08-25 09:40:46 UTC (rev 2963) @@ -247,7 +247,7 @@ data->m_updated = 1; m_debugnode->addChild(data->m_node); data->m_text->setCaption(oss_info.str()); - data->m_text->setLocalTranslation(bod->getAABB().getSize().y*1.1*Ogre::Vector3::UNIT_Y); + data->m_text->setLocalTranslation(bod->getAABB().getSize().y * 1.1f * Ogre::Vector3::UNIT_Y); } else { @@ -277,12 +277,12 @@ if( data->m_text ) { data->m_text->setCaption(oss_info.str()); - data->m_text->setLocalTranslation(bod->getAABB().getMaximum().y*1.1*Ogre::Vector3::UNIT_Y); + data->m_text->setLocalTranslation(bod->getAABB().getMaximum().y * 1.1f * Ogre::Vector3::UNIT_Y); } else { data->m_text = new OgreNewt::OgreAddons::MovableText( oss_name.str(), oss_info.str(), "BlueHighway-10",0.5); - data->m_text->setLocalTranslation(bod->getAABB().getMaximum().y/2*Ogre::Vector3::UNIT_Y+Ogre::Vector3::UNIT_Y*0.1); + data->m_text->setLocalTranslation(bod->getAABB().getMaximum().y / 2.0f * Ogre::Vector3::UNIT_Y + Ogre::Vector3::UNIT_Y * 0.1f); data->m_text->setTextAlignment( OgreNewt::OgreAddons::MovableText::H_LEFT, OgreNewt::OgreAddons::MovableText::V_ABOVE ); } @@ -427,8 +427,9 @@ line->begin("BaseWhiteNoLighting", Ogre::RenderOperation::OT_LINE_LIST ); line->colour(m_convexcol); + /* // aab1 - Ogre::AxisAlignedBox aab1 = col->getAABB(colori, startpt); + Ogre::AxisAlignedBox aab1 = col->getAABB(colori, startpt); const Ogre::Vector3* corners1 = aab1.getAllCorners(); Ogre::AxisAlignedBox aab2 = col->getAABB(colori, endpt); const Ogre::Vector3* corners2 = aab2.getAllCorners(); @@ -449,14 +450,19 @@ line->position(corners2[1]); line->position(corners2[5]); line->position(corners2[2]); line->position(corners2[4]); line->position(corners2[3]); line->position(corners2[7]); + */ // bodies float matrix[16]; + Converters::QuatPosToMatrix(colori, startpt, &matrix[0]); NewtonCollisionForEachPolygonDo( col->getNewtonCollision(), &matrix[0], newtonPerPoly, line ); - Converters::QuatPosToMatrix(colori, endpt, &matrix[0]); - NewtonCollisionForEachPolygonDo( col->getNewtonCollision(), &matrix[0], newtonPerPoly, line ); + if (endpt != startpt) + { + Converters::QuatPosToMatrix(colori, endpt, &matrix[0]); + NewtonCollisionForEachPolygonDo( col->getNewtonCollision(), &matrix[0], newtonPerPoly, line ); + } line->end(); Modified: branches/ogrenewt/newton20/src/OgreNewt_RayCast.cpp =================================================================== --- branches/ogrenewt/newton20/src/OgreNewt_RayCast.cpp 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/src/OgreNewt_RayCast.cpp 2010-08-25 09:40:46 UTC (rev 2963) @@ -52,7 +52,7 @@ if (me->userCallback( bod, intersectParam, normal, collisionID )) return intersectParam; else - return 1.1; + return 1.1f; } Modified: branches/ogrenewt/newton20/src/OgreNewt_Tools.cpp =================================================================== --- branches/ogrenewt/newton20/src/OgreNewt_Tools.cpp 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/src/OgreNewt_Tools.cpp 2010-08-25 09:40:46 UTC (rev 2963) @@ -494,7 +494,7 @@ Real spaceWidth = mSpaceWidth; // Derive space width from a capital A if (spaceWidth == 0) - spaceWidth = mpFont->getGlyphAspectRatio('A') * mCharHeight * 2.0; + spaceWidth = mpFont->getGlyphAspectRatio('A') * mCharHeight * 2.0f; // for calculation of AABB Ogre::Vector3 min, max, currPos; @@ -516,10 +516,10 @@ verticalOffset = mCharHeight; break; case MovableText::V_CENTER: - verticalOffset = 0.5*mCharHeight; + verticalOffset = 0.5f * mCharHeight; break; case MovableText::V_BELOW: - verticalOffset = 0; + verticalOffset = 0.0f; break; } // Raise the first line of the caption @@ -527,7 +527,7 @@ for (i = mCaption.begin(); i != iend; ++i) { if (*i == '\n') - top += verticalOffset * 2.0; + top += verticalOffset * 2.0f; } for (i = mCaption.begin(); i != iend; ++i) @@ -540,15 +540,15 @@ if (*j == ' ') len += spaceWidth; else - len += mpFont->getGlyphAspectRatio(*j) * mCharHeight * 2.0; + len += mpFont->getGlyphAspectRatio(*j) * mCharHeight * 2.0f; } newLine = false; } if (*i == '\n') { - left = 0 * 2.0 - 1.0; - top -= mCharHeight * 2.0; + left = 0 * 2.0f - 1.0f; + top -= mCharHeight * 2.0f; newLine = true; continue; } @@ -603,7 +603,7 @@ maxSquaredRadius = GetMax(maxSquaredRadius, currPos.squaredLength()); } - top -= mCharHeight * 2.0; + top -= mCharHeight * 2.0f; // Bottom left if(mHorizontalAlignment == MovableText::H_LEFT) @@ -617,21 +617,21 @@ // Deal with bounds if(mHorizontalAlignment == MovableText::H_LEFT) - currPos = Ogre::Vector3(left, top, -1.0); + currPos = Ogre::Vector3(left, top, -1.0f); else - currPos = Ogre::Vector3(left - (len / 2), top, -1.0); + currPos = Ogre::Vector3(left - (len / 2.0f), top, -1.0f); min.makeFloor(currPos); max.makeCeil(currPos); maxSquaredRadius = GetMax(maxSquaredRadius, currPos.squaredLength()); - top += mCharHeight * 2.0; - left += horiz_height * mCharHeight * 2.0; + top += mCharHeight * 2.0f; + left += horiz_height * mCharHeight * 2.0f; // Top right if(mHorizontalAlignment == MovableText::H_LEFT) *pPCBuff++ = left; else - *pPCBuff++ = left - (len / 2); + *pPCBuff++ = left - (len / 2.0f); *pPCBuff++ = top; *pPCBuff++ = -1.0; *pPCBuff++ = u2; @@ -640,9 +640,9 @@ // Deal with bounds if(mHorizontalAlignment == MovableText::H_LEFT) - currPos = Ogre::Vector3(left, top, -1.0); + currPos = Ogre::Vector3(left, top, -1.0f); else - currPos = Ogre::Vector3(left - (len / 2), top, -1.0); + currPos = Ogre::Vector3(left - (len / 2.0f), top, -1.0f); min.makeFloor(currPos); max.makeCeil(currPos); maxSquaredRadius = GetMax(maxSquaredRadius, currPos.squaredLength()); @@ -654,57 +654,57 @@ if(mHorizontalAlignment == MovableText::H_LEFT) *pPCBuff++ = left; else - *pPCBuff++ = left - (len / 2); + *pPCBuff++ = left - (len / 2.0f); *pPCBuff++ = top; - *pPCBuff++ = -1.0; + *pPCBuff++ = -1.0f; *pPCBuff++ = u2; *pPCBuff++ = v1; - currPos = Ogre::Vector3(left, top, -1.0); + currPos = Ogre::Vector3(left, top, -1.0f); min.makeFloor(currPos); max.makeCeil(currPos); maxSquaredRadius = GetMax(maxSquaredRadius, currPos.squaredLength()); - top -= mCharHeight * 2.0; - left -= horiz_height * mCharHeight * 2.0; + top -= mCharHeight * 2.0f; + left -= horiz_height * mCharHeight * 2.0f; // Bottom left (again) if(mHorizontalAlignment == MovableText::H_LEFT) *pPCBuff++ = left; else - *pPCBuff++ = left - (len / 2); + *pPCBuff++ = left - (len / 2.0f); *pPCBuff++ = top; - *pPCBuff++ = -1.0; + *pPCBuff++ = -1.0f; *pPCBuff++ = u1; *pPCBuff++ = v2; - currPos = Ogre::Vector3(left, top, -1.0); + currPos = Ogre::Vector3(left, top, -1.0f); min.makeFloor(currPos); max.makeCeil(currPos); maxSquaredRadius = GetMax(maxSquaredRadius, currPos.squaredLength()); - left += horiz_height * mCharHeight * 2.0; + left += horiz_height * mCharHeight * 2.0f; // Bottom right if(mHorizontalAlignment == MovableText::H_LEFT) *pPCBuff++ = left; else - *pPCBuff++ = left - (len / 2); + *pPCBuff++ = left - (len / 2.0f); *pPCBuff++ = top; - *pPCBuff++ = -1.0; + *pPCBuff++ = -1.0f; *pPCBuff++ = u2; *pPCBuff++ = v2; //------------------------------------------------------------------------------------- - currPos = Ogre::Vector3(left, top, -1.0); + currPos = Ogre::Vector3(left, top, -1.0f); min.makeFloor(currPos); max.makeCeil(currPos); maxSquaredRadius = GetMax(maxSquaredRadius, currPos.squaredLength()); // Go back up with top - top += mCharHeight * 2.0; + top += mCharHeight * 2.0f; - float currentWidth = (left + 1)/2 - 0; + float currentWidth = (left + 1.0f) / 2.0f; if (currentWidth > largestWidth) largestWidth = currentWidth; } Modified: branches/ogrenewt/newton20/src/OgreNewt_World.cpp =================================================================== --- branches/ogrenewt/newton20/src/OgreNewt_World.cpp 2010-08-07 11:26:06 UTC (rev 2962) +++ branches/ogrenewt/newton20/src/OgreNewt_World.cpp 2010-08-25 09:40:46 UTC (rev 2963) @@ -110,14 +110,14 @@ if (m_timestep > 1.0f / 10.0f) { // recalculate the iteration count to met the desire fps - m_maxTicksPerFrames += ceilf (m_timestep / (1.0f / 10.0f)); - m_timestep = 1.0 / 10.0f; - m_updateFPS = 10; + m_maxTicksPerFrames += (int)ceilf (m_timestep / (1.0f / 10.0f)); + m_timestep = 1.0f / 10.0f; + m_updateFPS = 10.0f; } if (m_timestep < 1.0f / 1000.0f) { - m_timestep = 1.0 / 1000.0f; - m_updateFPS = 1000; + m_timestep = 1.0f / 1000.0f; + m_updateFPS = 1000.0f; } m_invTimestep = 1.0f / m_timestep; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-07 11:26:13
|
Revision: 2962 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2962&view=rev Author: esuvs Date: 2010-08-07 11:26:06 +0000 (Sat, 07 Aug 2010) Log Message: ----------- Engine test now builds scene in script rather than loading xml file. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-07 08:55:57 UTC (rev 2961) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-07 11:26:06 UTC (rev 2962) @@ -54,9 +54,14 @@ // Create the generic scene manager mSceneManager = Ogre::Root::getSingleton().createSceneManager(Ogre::ST_GENERIC, "GenericSceneManager"); - //Set up scene - loadScene("media/scenes/test.scene"); + mCamera = mSceneManager->createCamera("camera"); + mSceneManager->getRootSceneNode()->attachObject(mCamera); + mCamera->setNearClipDistance(1.0); + mCamera->setFarClipDistance(1000.0); + Ogre::Viewport* viewport = mApplication->ogreRenderWindow()->addViewport(mCamera); + viewport->setBackgroundColour(Ogre::ColourValue::Black); + //mApplication->ogreRenderWindow()->addViewport(mCamera)->setBackgroundColour(Ogre::ColourValue::Black); mSceneManager->setAmbientLight( Ogre::ColourValue( 0.3f, 0.3f, 0.3f ) ); @@ -70,7 +75,7 @@ - for (Ogre::SceneManager::MovableObjectIterator moi = mSceneManager->getMovableObjectIterator("Entity"); moi.hasMoreElements(); moi.moveNext()) + /*for (Ogre::SceneManager::MovableObjectIterator moi = mSceneManager->getMovableObjectIterator("Entity"); moi.hasMoreElements(); moi.moveNext()) { Ogre::Entity *entity = static_cast<Ogre::Entity*>(moi.peekNextValue()); @@ -81,7 +86,7 @@ walkAnimationState->setLoop(true); walkAnimationState->setEnabled(true); } - } + }*/ mApplication->showFPSCounter(); @@ -155,12 +160,15 @@ for (Ogre::SceneManager::MovableObjectIterator moi = mSceneManager->getMovableObjectIterator("Entity"); moi.hasMoreElements(); moi.moveNext()) { Ogre::Entity *entity = static_cast<Ogre::Entity*>(moi.peekNextValue()); + Ogre::AnimationStateSet* animationStateSet = entity->getAllAnimationStates(); - Ogre::AnimationStateSet* animationStateSet = entity->getAllAnimationStates(); - if(animationStateSet && animationStateSet->hasAnimationState("Walk")) + if(animationStateSet) { - Ogre::AnimationState* walkAnimationState = animationStateSet->getAnimationState("Walk"); - walkAnimationState->addTime(timeElapsedInSeconds); + for (Ogre::AnimationStateIterator assi = animationStateSet->getAnimationStateIterator(); assi.hasMoreElements(); assi.moveNext()) + { + Ogre::AnimationState* walkAnimationState = assi.peekNextValue(); + walkAnimationState->addTime(timeElapsedInSeconds); + } } } @@ -242,13 +250,7 @@ } mCamera->setPosition(Ogre::Vector3(camera->position().x(), camera->position().y(), camera->position().z())); - //mCamera->setDirection(Ogre::Vector3(camera->direction().x(), camera->direction().y(), camera->direction().z())); - - //QVector3D target = camera->position() - camera->zAxis(); - //mCamera->lookAt(target.x(), target.y(), target.z()); - mCamera->setOrientation(Ogre::Quaternion(camera->orientation().scalar(), camera->orientation().x(), camera->orientation().y(), camera->orientation().z())); - mCamera->setFOVy(Ogre::Radian(camera->fieldOfView())); } @@ -299,38 +301,6 @@ return mDemoLog; } -void EngineTestGameLogic::loadScene(QString filename) -{ - //The QtOgre DotScene loading code will clear the existing scene except for cameras, as these - //could be used by existing viewports. Therefore we clear and viewports and cameras before - //calling the loading code. - mApplication->ogreRenderWindow()->removeAllViewports(); - mSceneManager->destroyAllCameras(); - - //Now load the scene. - DotSceneHandler handler(mSceneManager); - QXmlSimpleReader reader; - reader.setContentHandler(&handler); - reader.setErrorHandler(&handler); - - QFile file(filename); - file.open(QFile::ReadOnly | QFile::Text); - QXmlInputSource xmlInputSource(&file); - reader.parse(xmlInputSource); - - //Now create a viewport, using the first camera in the scene. - mCamera = mSceneManager->getCameraIterator().peekNextValue(); - - //mCamera->setPosition(0, 0, 20); - //mCamera->lookAt(0, 0, 0); - mCamera->setNearClipDistance(1.0); - mCamera->setFarClipDistance(1000.0); - //mCamera->setFOVy(Ogre::Radian(1.0f)); - - Ogre::Viewport* viewport = mApplication->ogreRenderWindow()->addViewport(mCamera); - viewport->setBackgroundColour(Ogre::ColourValue::Black); -} - void EngineTestGameLogic::initScriptEngine(void) { scriptEngine = new QScriptEngine; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-07 08:56:04
|
Revision: 2961 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2961&view=rev Author: esuvs Date: 2010-08-07 08:55:57 +0000 (Sat, 07 Aug 2010) Log Message: ----------- Added animation support to entities. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Entity.h trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Entity.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Entity.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Entity.h 2010-08-07 08:19:12 UTC (rev 2960) +++ trunk/QtOgreFramework/EngineTest/include/Entity.h 2010-08-07 08:55:57 UTC (rev 2961) @@ -14,12 +14,28 @@ Entity(QObject* parent = 0); Q_PROPERTY(QString meshName READ meshName WRITE setMeshName) + Q_PROPERTY(bool animated READ animated WRITE setAnimated) + Q_PROPERTY(QString animationName READ animationName WRITE setAnimationName) + Q_PROPERTY(bool loopAnimation READ loopAnimation WRITE setLoopAnimation) const QString& meshName(void) const; void setMeshName(const QString& name); + const bool animated(void) const; + void setAnimated(bool animated); + + const QString& animationName(void) const; + void setAnimationName(const QString& name); + + const bool loopAnimation(void) const; + void setLoopAnimation(bool loopAnimation); + private: QString mMeshName; + + bool mAnimated; + QString mAnimationName; + bool mLoopAnimation; }; Q_SCRIPT_DECLARE_QMETAOBJECT(Entity, QObject*) Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-07 08:19:12 UTC (rev 2960) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-07 08:55:57 UTC (rev 2961) @@ -110,11 +110,30 @@ "objectStore.setObject('BlueLight', blueLight);" "var robot = new Entity();" + "robot.position = new QVector3D(3,-1,0);" + "robot.size = new QVector3D(0.05, 0.05, 0.05);" "robot.meshName = 'robot.mesh';" + "robot.animated = true;" + "robot.loopAnimation = true;" + "robot.animationName = 'Walk';" "objectStore.setObject('Robot', robot);" - "camera.position = new QVector3D(0,0,20);" + "var jaiqua = new Entity();" + "jaiqua.position = new QVector3D(-3,-1,0);" + "jaiqua.size = new QVector3D(0.2, 0.2, 0.2);" + "jaiqua.meshName = 'jaiqua.mesh';" + "jaiqua.animated = true;" + "jaiqua.loopAnimation = true;" + "jaiqua.animationName = 'Walk';" + "objectStore.setObject('Jaiqua', jaiqua);" + "var sphere = new Entity();" + "sphere.size = new QVector3D(0.03, 0.03, 0.03);" + "sphere.meshName = 'sphere.mesh';" + "objectStore.setObject('Sphere', sphere);" + + "camera.position = new QVector3D(0,0,10);" + "print('QtScript Initialisation End');"; QScriptValue result = scriptEngine->evaluate(mInitialiseScript); @@ -210,6 +229,15 @@ QVector3D scale = entity->size(); sceneNode->setScale(Ogre::Vector3(scale.x(), scale.y(), scale.z())); + + //Animation + Ogre::AnimationStateSet* animationStateSet = ogreEntity->getAllAnimationStates(); + if(animationStateSet && animationStateSet->hasAnimationState(entity->animationName().toStdString())) + { + Ogre::AnimationState* animationState = animationStateSet->getAnimationState(entity->animationName().toStdString()); + animationState->setEnabled(entity->animated()); + animationState->setLoop(entity->loopAnimation()); + } } } Modified: trunk/QtOgreFramework/EngineTest/source/Entity.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Entity.cpp 2010-08-07 08:19:12 UTC (rev 2960) +++ trunk/QtOgreFramework/EngineTest/source/Entity.cpp 2010-08-07 08:55:57 UTC (rev 2961) @@ -3,6 +3,9 @@ Entity::Entity(QObject* parent) :Object(parent) { + mAnimated = false; + mLoopAnimation = false; + mAnimationName = ""; } const QString& Entity::meshName(void) const @@ -13,4 +16,34 @@ void Entity::setMeshName(const QString& name) { mMeshName = name; -} \ No newline at end of file +} + +const bool Entity::animated(void) const +{ + return mAnimated; +} + +void Entity::setAnimated(bool animated) +{ + mAnimated = animated; +} + +const QString& Entity::animationName(void) const +{ + return mAnimationName; +} + +void Entity::setAnimationName(const QString& name) +{ + mAnimationName = name; +} + +const bool Entity::loopAnimation(void) const +{ + return mLoopAnimation; +} + +void Entity::setLoopAnimation(bool loopAnimation) +{ + mLoopAnimation = loopAnimation; +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-07 08:19:19
|
Revision: 2960 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2960&view=rev Author: esuvs Date: 2010-08-07 08:19:12 +0000 (Sat, 07 Aug 2010) Log Message: ----------- Added scaling support. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Object.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Object.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Object.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-05 21:22:58 UTC (rev 2959) +++ trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-07 08:19:12 UTC (rev 2960) @@ -16,16 +16,20 @@ Q_PROPERTY(QVector3D position READ position WRITE setPosition) Q_PROPERTY(QQuaternion orientation READ orientation WRITE setOrientation) + Q_PROPERTY(QVector3D size READ size WRITE setSize) Q_PROPERTY(QVector3D xAxis READ xAxis) Q_PROPERTY(QVector3D yAxis READ yAxis) Q_PROPERTY(QVector3D zAxis READ zAxis) + const QVector3D& position(void) const; + void setPosition(const QVector3D& position); + const QQuaternion& orientation(void) const; void setOrientation(const QQuaternion& orientation); - const QVector3D& position(void) const; - void setPosition(const QVector3D& position); + const QVector3D& size(void) const; + void setSize(const QVector3D& size); const QVector3D xAxis(void) const; const QVector3D yAxis(void) const; @@ -39,9 +43,14 @@ void yaw(qreal angleInDegrees); void roll(qreal angleInDegrees); + void scale(qreal factor); + void scale(const QVector3D & vector); + void scale(qreal x, qreal y, qreal z); + private: QVector3D mPosition; QQuaternion mOrientation; + QVector3D mScale; }; #endif //OBJECT_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-05 21:22:58 UTC (rev 2959) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-07 08:19:12 UTC (rev 2960) @@ -66,4 +66,6 @@ tempFOV = -wheelDelta * 0.001; fov = fov + tempFOV; camera.fieldOfView = fov; + + objectStore.getObject('Robot').yaw(1); } \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-05 21:22:58 UTC (rev 2959) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-07 08:19:12 UTC (rev 2960) @@ -187,11 +187,29 @@ Entity* entity = dynamic_cast<Entity*>(pObj); if(entity) { - if(mSceneManager->hasEntity(objectIter.key().toStdString()) == false) + Ogre::Entity* ogreEntity; + Ogre::SceneNode* sceneNode; + + if(mSceneManager->hasEntity(objectIter.key().toStdString())) { - Ogre::Entity* ogreEntity = mSceneManager->createEntity(objectIter.key().toStdString(), entity->meshName().toStdString()); - mSceneManager->getRootSceneNode()->attachObject(ogreEntity); + ogreEntity = mSceneManager->getEntity(objectIter.key().toStdString()); + sceneNode = dynamic_cast<Ogre::SceneNode*>(ogreEntity->getParentNode()); } + else + { + sceneNode = mSceneManager->getRootSceneNode()->createChildSceneNode(); + ogreEntity = mSceneManager->createEntity(objectIter.key().toStdString(), entity->meshName().toStdString()); + sceneNode->attachObject(ogreEntity); + } + + QVector3D pos = entity->position(); + sceneNode->setPosition(Ogre::Vector3(pos.x(), pos.y(), pos.z())); + + QQuaternion orientation = entity->orientation(); + sceneNode->setOrientation(Ogre::Quaternion(orientation.scalar(), orientation.x(), orientation.y(), orientation.z())); + + QVector3D scale = entity->size(); + sceneNode->setScale(Ogre::Vector3(scale.x(), scale.y(), scale.z())); } } Modified: trunk/QtOgreFramework/EngineTest/source/Object.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-05 21:22:58 UTC (rev 2959) +++ trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-07 08:19:12 UTC (rev 2960) @@ -3,8 +3,19 @@ Object::Object(QObject * parent) :QObject(parent) { + mScale = QVector3D(1,1,1); } +const QVector3D& Object::position(void) const +{ + return mPosition; +} + +void Object::setPosition(const QVector3D& position) +{ + mPosition = position; +} + const QQuaternion& Object::orientation(void) const { return mOrientation; @@ -15,14 +26,14 @@ mOrientation = orientation; } -const QVector3D& Object::position(void) const +const QVector3D& Object::size(void) const { - return mPosition; + return mScale; } -void Object::setPosition(const QVector3D& position) +void Object::setSize(const QVector3D& scale) { - mPosition = position; + mScale = scale; } const QVector3D Object::xAxis(void) const @@ -70,4 +81,19 @@ { QQuaternion rotation = QQuaternion::fromAxisAndAngle(QVector3D(0,0,1), angleInDegrees); mOrientation *= rotation; +} + +void Object::scale(qreal factor) +{ + mScale *= QVector3D(factor,factor,factor); +} + +void Object::scale(const QVector3D & vector) +{ + mScale *= vector; +} + +void Object::scale(qreal x, qreal y, qreal z) +{ + mScale *= QVector3D(x,y,z); } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-05 21:23:04
|
Revision: 2959 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2959&view=rev Author: esuvs Date: 2010-08-05 21:22:58 +0000 (Thu, 05 Aug 2010) Log Message: ----------- Adding ability to add entities to scene from scripts. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-08-05 19:18:43 UTC (rev 2958) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-08-05 21:22:58 UTC (rev 2959) @@ -2,6 +2,7 @@ #define ENGINETESTGAMELOGIC_H_ #include "Camera.h" +#include "Entity.h" #include "GameLogic.h" #include "Globals.h" #include "Keyboard.h" Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-05 19:18:43 UTC (rev 2958) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-05 21:22:58 UTC (rev 2959) @@ -109,6 +109,10 @@ "blueLight.colour = new QColor(0,0,255);" "objectStore.setObject('BlueLight', blueLight);" + "var robot = new Entity();" + "robot.meshName = 'robot.mesh';" + "objectStore.setObject('Robot', robot);" + "camera.position = new QVector3D(0,0,20);" "print('QtScript Initialisation End');"; @@ -161,16 +165,16 @@ mouse->resetWheelDelta(); mSceneManager->destroyAllLights(); - QHashIterator<QString, QObject*> lightIter(mObjectStore); - while(lightIter.hasNext()) + QHashIterator<QString, QObject*> objectIter(mObjectStore); + while(objectIter.hasNext()) { - lightIter.next(); - QObject* pObj = lightIter.value(); + objectIter.next(); + QObject* pObj = objectIter.value(); Light* light = dynamic_cast<Light*>(pObj); if(light) { - Ogre::Light* ogreLight = mSceneManager->createLight(lightIter.key().toStdString()); + Ogre::Light* ogreLight = mSceneManager->createLight(objectIter.key().toStdString()); ogreLight->setType(Ogre::Light::LT_POINT); QVector3D pos = light->position(); @@ -179,6 +183,16 @@ QColor col = light->getColour(); ogreLight->setDiffuseColour(col.redF(), col.greenF(), col.blueF()); } + + Entity* entity = dynamic_cast<Entity*>(pObj); + if(entity) + { + if(mSceneManager->hasEntity(objectIter.key().toStdString()) == false) + { + Ogre::Entity* ogreEntity = mSceneManager->createEntity(objectIter.key().toStdString(), entity->meshName().toStdString()); + mSceneManager->getRootSceneNode()->attachObject(ogreEntity); + } + } } mCamera->setPosition(Ogre::Vector3(camera->position().x(), camera->position().y(), camera->position().z())); @@ -324,6 +338,9 @@ QScriptValue lightClass = scriptEngine->scriptValueFromQMetaObject<Light>(); scriptEngine->globalObject().setProperty("Light", lightClass); + QScriptValue entityClass = scriptEngine->scriptValueFromQMetaObject<Entity>(); + scriptEngine->globalObject().setProperty("Entity", entityClass); + QScriptValue globalsScriptValue = scriptEngine->newQObject(mGlobals); scriptEngine->globalObject().setProperty("globals", globalsScriptValue); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-05 19:18:49
|
Revision: 2958 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2958&view=rev Author: esuvs Date: 2010-08-05 19:18:43 +0000 (Thu, 05 Aug 2010) Log Message: ----------- Added entity class. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/CMakeLists.txt Added Paths: ----------- trunk/QtOgreFramework/EngineTest/include/Entity.h trunk/QtOgreFramework/EngineTest/source/Entity.cpp Modified: trunk/QtOgreFramework/EngineTest/CMakeLists.txt =================================================================== --- trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-08-04 22:33:09 UTC (rev 2957) +++ trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-08-05 19:18:43 UTC (rev 2958) @@ -5,6 +5,7 @@ SET(SRC_FILES source/Camera.cpp source/EngineTestGameLogic.cpp + source/Entity.cpp source/Globals.cpp source/Keyboard.cpp source/Light.cpp @@ -18,6 +19,7 @@ SET(INC_FILES include/Camera.h include/EngineTestGameLogic.h + include/Entity.h include/Globals.h include/Keyboard.h include/Light.h Added: trunk/QtOgreFramework/EngineTest/include/Entity.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Entity.h (rev 0) +++ trunk/QtOgreFramework/EngineTest/include/Entity.h 2010-08-05 19:18:43 UTC (rev 2958) @@ -0,0 +1,28 @@ +#ifndef ENTITY_H_ +#define ENTITY_H_ + +#include "Object.h" + +#include <QScriptEngine> +#include <QString> + +class Entity : public Object +{ + Q_OBJECT + +public: + Entity(QObject* parent = 0); + + Q_PROPERTY(QString meshName READ meshName WRITE setMeshName) + + const QString& meshName(void) const; + void setMeshName(const QString& name); + +private: + QString mMeshName; +}; + +Q_SCRIPT_DECLARE_QMETAOBJECT(Entity, QObject*) + + +#endif //ENTITY_H_ \ No newline at end of file Added: trunk/QtOgreFramework/EngineTest/source/Entity.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Entity.cpp (rev 0) +++ trunk/QtOgreFramework/EngineTest/source/Entity.cpp 2010-08-05 19:18:43 UTC (rev 2958) @@ -0,0 +1,16 @@ +#include "Entity.h" + +Entity::Entity(QObject* parent) + :Object(parent) +{ +} + +const QString& Entity::meshName(void) const +{ + return mMeshName; +} + +void Entity::setMeshName(const QString& name) +{ + mMeshName = name; +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: zhaoguang w. <zha...@gm...> - 2010-08-05 07:55:55
|
Hello, Yes, you are right that they belongs to different type. However, It is the source code of OgreBullet_SDK, I compile it just to obtain OgreBulletCollisions_d.lib and OgreBulletDynamics_d.lib. Thank you for reply . 2010/8/5 zhaoguang wang <zha...@gm...> > > > 2010/8/5 zhaoguang wang <zha...@gm...> > > Hello, >> Yes, you are right that they belongs to different type. >> However, It is the source code of OgreBullet_SDK, I compile it just to >> obtain OgreBulletCollisions_d.lib and OgreBulletDynamics_d.lib. >> >> Thank you for reply . >> >> >> 2010/8/5 プ月£痕 <511...@qq...> >> >> >>> >>> >>> ------------------ Original ------------------ >>> *From: * "zhaoguang wang"<zha...@gm...>; >>> *Date: * Thu, Aug 5, 2010 04:33 AM >>> *To: * "ogreaddons-svnmail"<ogr...@li...>; >>> *Subject: * [Ogreaddons-svnmail] OgreBullet Compile Error >>> >>> Hello all, >>> I met an error when I compiled OgreBullet_SDK, and the error looks like: >>> error C2440: 'static_cast' : cannot convert from 'btTypedConstraint *' to >>> 'btRaycastVehicle *' >>> >>> And the error occurs in the following code: >>> btRaycastVehicle *getBulletVehicle() >>> { >>> return static_cast <btRaycastVehicle*> (mConstraint); >>> }; >>> >>> Thank you for your reply. >>> >>> Regards >>> >>> >>> >>> -- >>> zha...@gm... >>> >>> 如果mConstraint类型是btTypedConstranint >>> 要转化为btRaycastVehicle的话... >>> 那么btTypedConstranint必须继承btRaycastVehicle... >>> 所以你是2个不相干的类型,它们强制转化不了... >>> >>> >>> >> >> >> >> -- >> Zhaoguang WANG >> zha...@gm... >> > > > > -- > Zhaoguang WANG > zha...@gm... > -- Zhaoguang WANG zha...@gm... |
From: zhaoguang w. <zha...@gm...> - 2010-08-05 07:55:35
|
2010/8/5 zhaoguang wang <zha...@gm...> > Hello, > Yes, you are right that they belongs to different type. > However, It is the source code of OgreBullet_SDK, I compile it just to > obtain OgreBulletCollisions_d.lib and OgreBulletDynamics_d.lib. > > Thank you for reply . > > > 2010/8/5 プ月£痕 <511...@qq...> > > >> >> >> ------------------ Original ------------------ >> *From: * "zhaoguang wang"<zha...@gm...>; >> *Date: * Thu, Aug 5, 2010 04:33 AM >> *To: * "ogreaddons-svnmail"<ogr...@li...>; >> *Subject: * [Ogreaddons-svnmail] OgreBullet Compile Error >> >> Hello all, >> I met an error when I compiled OgreBullet_SDK, and the error looks like: >> error C2440: 'static_cast' : cannot convert from 'btTypedConstraint *' to >> 'btRaycastVehicle *' >> >> And the error occurs in the following code: >> btRaycastVehicle *getBulletVehicle() >> { >> return static_cast <btRaycastVehicle*> (mConstraint); >> }; >> >> Thank you for your reply. >> >> Regards >> >> >> >> -- >> zha...@gm... >> >> 如果mConstraint类型是btTypedConstranint >> 要转化为btRaycastVehicle的话... >> 那么btTypedConstranint必须继承btRaycastVehicle... >> 所以你是2个不相干的类型,它们强制转化不了... >> >> >> > > > > -- > Zhaoguang WANG > zha...@gm... > -- Zhaoguang WANG zha...@gm... |
From: <es...@us...> - 2010-08-04 22:33:15
|
Revision: 2957 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2957&view=rev Author: esuvs Date: 2010-08-04 22:33:09 +0000 (Wed, 04 Aug 2010) Log Message: ----------- Made light inherit from object. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Light.h trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Light.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Light.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Light.h 2010-08-04 22:01:38 UTC (rev 2956) +++ trunk/QtOgreFramework/EngineTest/include/Light.h 2010-08-04 22:33:09 UTC (rev 2957) @@ -1,29 +1,25 @@ #ifndef LIGHT_H_ #define LIGHT_H_ +#include "Object.h" + #include <QColor> -#include <QObject> #include <QScriptEngine> #include <QVector3D> -class Light : public QObject +class Light : public Object { Q_OBJECT public: - Light(QObject * parent = 0); + Light(QObject* parent = 0); - Q_PROPERTY(QVector3D position READ getPosition WRITE setPosition) Q_PROPERTY(QColor colour READ getColour WRITE setColour) - const QVector3D& getPosition(void) const; - void setPosition(const QVector3D& pos); - const QColor& getColour(void) const; void setColour(const QColor& col); private: - QVector3D m_vecPosition; QColor m_colColour; }; Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-04 22:01:38 UTC (rev 2956) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-04 22:33:09 UTC (rev 2957) @@ -173,7 +173,7 @@ Ogre::Light* ogreLight = mSceneManager->createLight(lightIter.key().toStdString()); ogreLight->setType(Ogre::Light::LT_POINT); - QVector3D pos = light->getPosition(); + QVector3D pos = light->position(); ogreLight->setPosition(Ogre::Vector3(pos.x(), pos.y(), pos.z())); QColor col = light->getColour(); Modified: trunk/QtOgreFramework/EngineTest/source/Light.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Light.cpp 2010-08-04 22:01:38 UTC (rev 2956) +++ trunk/QtOgreFramework/EngineTest/source/Light.cpp 2010-08-04 22:33:09 UTC (rev 2957) @@ -1,20 +1,10 @@ #include "Light.h" -Light::Light(QObject * parent) - :QObject(parent) +Light::Light(QObject* parent) + :Object(parent) { } -const QVector3D& Light::getPosition(void) const -{ - return m_vecPosition; -} - -void Light::setPosition(const QVector3D& pos) -{ - m_vecPosition = pos; -} - const QColor& Light::getColour(void) const { return m_colColour; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-04 22:01:44
|
Revision: 2956 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2956&view=rev Author: esuvs Date: 2010-08-04 22:01:38 +0000 (Wed, 04 Aug 2010) Log Message: ----------- Tidying. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Object.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Object.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Object.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-03 20:31:01 UTC (rev 2955) +++ trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-04 22:01:38 UTC (rev 2956) @@ -15,11 +15,15 @@ Object(QObject* parent = 0); Q_PROPERTY(QVector3D position READ position WRITE setPosition) + Q_PROPERTY(QQuaternion orientation READ orientation WRITE setOrientation) Q_PROPERTY(QVector3D xAxis READ xAxis) Q_PROPERTY(QVector3D yAxis READ yAxis) Q_PROPERTY(QVector3D zAxis READ zAxis) + const QQuaternion& orientation(void) const; + void setOrientation(const QQuaternion& orientation); + const QVector3D& position(void) const; void setPosition(const QVector3D& position); @@ -35,7 +39,7 @@ void yaw(qreal angleInDegrees); void roll(qreal angleInDegrees); -public: +private: QVector3D mPosition; QQuaternion mOrientation; }; Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-03 20:31:01 UTC (rev 2955) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-04 22:01:38 UTC (rev 2956) @@ -22,23 +22,23 @@ function processInput() { var pos = camera.position; - var dir = -camera.zAxis; + var dir = camera.zAxis; var right = camera.xAxis; if(keyboard.isPressed(Qt.Key_W)) { - camera.translate(dir); + camera.translate(-dir.x(), -dir.y(), -dir.z()); } if(keyboard.isPressed(Qt.Key_S)) { - camera.translate(-dir.x(), -dir.y(), -dir.z()); + camera.translate(dir.x(), dir.y(), dir.z()); } if(keyboard.isPressed(Qt.Key_A)) { - camera.translate(right); + camera.translate(-right.x(), -right.y(), -right.z()); } if(keyboard.isPressed(Qt.Key_D)) { - camera.translate(-right.x(), -right.y(), -right.z()); + camera.translate(right); } var milliSecondsElapsed = globals.currentFrameTime - globals.previousFrameTime; Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-03 20:31:01 UTC (rev 2955) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-04 22:01:38 UTC (rev 2956) @@ -187,7 +187,7 @@ //QVector3D target = camera->position() - camera->zAxis(); //mCamera->lookAt(target.x(), target.y(), target.z()); - mCamera->setOrientation(Ogre::Quaternion(camera->mOrientation.scalar(), camera->mOrientation.x(), camera->mOrientation.y(), camera->mOrientation.z())); + mCamera->setOrientation(Ogre::Quaternion(camera->orientation().scalar(), camera->orientation().x(), camera->orientation().y(), camera->orientation().z())); mCamera->setFOVy(Ogre::Radian(camera->fieldOfView())); } Modified: trunk/QtOgreFramework/EngineTest/source/Object.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-03 20:31:01 UTC (rev 2955) +++ trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-04 22:01:38 UTC (rev 2956) @@ -5,7 +5,16 @@ { } +const QQuaternion& Object::orientation(void) const +{ + return mOrientation; +} +void Object::setOrientation(const QQuaternion& orientation) +{ + mOrientation = orientation; +} + const QVector3D& Object::position(void) const { return mPosition; @@ -16,11 +25,29 @@ mPosition = position; } +const QVector3D Object::xAxis(void) const +{ + QVector3D axis(1,0,0); + return mOrientation.rotatedVector(axis); +} +const QVector3D Object::yAxis(void) const +{ + QVector3D axis(0,1,0); + return mOrientation.rotatedVector(axis); +} + +const QVector3D Object::zAxis(void) const +{ + QVector3D axis(0,0,1); + return mOrientation.rotatedVector(axis); +} + void Object::translate(const QVector3D & vector) { mPosition += vector; } + void Object::translate(qreal x, qreal y, qreal z) { mPosition += QVector3D(x,y,z); @@ -43,22 +70,4 @@ { QQuaternion rotation = QQuaternion::fromAxisAndAngle(QVector3D(0,0,1), angleInDegrees); mOrientation *= rotation; -} - -const QVector3D Object::xAxis(void) const -{ - QVector3D axis(1,0,0); - return mOrientation.rotatedVector(axis); -} - -const QVector3D Object::yAxis(void) const -{ - QVector3D axis(0,1,0); - return mOrientation.rotatedVector(axis); -} - -const QVector3D Object::zAxis(void) const -{ - QVector3D axis(0,0,1); - return mOrientation.rotatedVector(axis); } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: zhaoguang w. <zha...@gm...> - 2010-08-04 20:33:46
|
Hello all, I met an error when I compiled OgreBullet_SDK, and the error looks like: error C2440: 'static_cast' : cannot convert from 'btTypedConstraint *' to 'btRaycastVehicle *' And the error occurs in the following code: btRaycastVehicle *getBulletVehicle() { return static_cast <btRaycastVehicle*> (mConstraint); }; Thank you for your reply. Regards -- zha...@gm... |
From: <es...@us...> - 2010-08-03 20:31:08
|
Revision: 2955 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2955&view=rev Author: esuvs Date: 2010-08-03 20:31:01 +0000 (Tue, 03 Aug 2010) Log Message: ----------- Switched to using quaternions for rotation. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Object.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Object.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Object.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-01 17:25:31 UTC (rev 2954) +++ trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-03 20:31:01 UTC (rev 2955) @@ -1,8 +1,9 @@ #ifndef OBJECT_H_ #define OBJECT_H_ -#include <QMatrix4x4.h> +#include <QMatrix4x4> #include <QObject> +#include <QQuaternion> #include <QScriptEngine> #include <QVector3D> @@ -13,28 +14,30 @@ public: Object(QObject* parent = 0); - Q_PROPERTY(QVector3D direction READ direction) Q_PROPERTY(QVector3D position READ position WRITE setPosition) - Q_PROPERTY(QVector3D right READ right) - const QVector3D direction(void) const; + Q_PROPERTY(QVector3D xAxis READ xAxis) + Q_PROPERTY(QVector3D yAxis READ yAxis) + Q_PROPERTY(QVector3D zAxis READ zAxis) const QVector3D& position(void) const; void setPosition(const QVector3D& position); - const QVector3D right(void) const; + const QVector3D xAxis(void) const; + const QVector3D yAxis(void) const; + const QVector3D zAxis(void) const; - const QVector3D up(void) const; - public slots: - void pitch(float angleInDegrees); - void yaw(float angleInDegrees); + void translate(const QVector3D & vector); + void translate(qreal x, qreal y, qreal z); -private: - QVector3D mDirection; + void pitch(qreal angleInDegrees); + void yaw(qreal angleInDegrees); + void roll(qreal angleInDegrees); + +public: QVector3D mPosition; - QVector3D mRight; - QMatrix4x4 mRotation; + QQuaternion mOrientation; }; #endif //OBJECT_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-01 17:25:31 UTC (rev 2954) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-03 20:31:01 UTC (rev 2955) @@ -22,34 +22,24 @@ function processInput() { var pos = camera.position; - var dir = camera.direction; - var right = camera.right; + var dir = -camera.zAxis; + var right = camera.xAxis; if(keyboard.isPressed(Qt.Key_W)) { - // pos += dir; - pos.setX(pos.x() + dir.x()); - pos.setY(pos.y() + dir.y()); - pos.setZ(pos.z() + dir.z()); + camera.translate(dir); } if(keyboard.isPressed(Qt.Key_S)) { - pos.setX(pos.x() - dir.x()); - pos.setY(pos.y() - dir.y()); - pos.setZ(pos.z() - dir.z()); + camera.translate(-dir.x(), -dir.y(), -dir.z()); } if(keyboard.isPressed(Qt.Key_A)) { - pos.setX(pos.x() - right.x()); - pos.setY(pos.y() - right.y()); - pos.setZ(pos.z() - right.z()); + camera.translate(right); } if(keyboard.isPressed(Qt.Key_D)) - { - pos.setX(pos.x() + right.x()); - pos.setY(pos.y() + right.y()); - pos.setZ(pos.z() + right.z()); + { + camera.translate(-right.x(), -right.y(), -right.z()); } - camera.position = pos; var milliSecondsElapsed = globals.currentFrameTime - globals.previousFrameTime; var secondsElapsed = milliSecondsElapsed / 1000; Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-01 17:25:31 UTC (rev 2954) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-03 20:31:01 UTC (rev 2955) @@ -182,7 +182,13 @@ } mCamera->setPosition(Ogre::Vector3(camera->position().x(), camera->position().y(), camera->position().z())); - mCamera->setDirection(Ogre::Vector3(camera->direction().x(), camera->direction().y(), camera->direction().z())); + //mCamera->setDirection(Ogre::Vector3(camera->direction().x(), camera->direction().y(), camera->direction().z())); + + //QVector3D target = camera->position() - camera->zAxis(); + //mCamera->lookAt(target.x(), target.y(), target.z()); + + mCamera->setOrientation(Ogre::Quaternion(camera->mOrientation.scalar(), camera->mOrientation.x(), camera->mOrientation.y(), camera->mOrientation.z())); + mCamera->setFOVy(Ogre::Radian(camera->fieldOfView())); } Modified: trunk/QtOgreFramework/EngineTest/source/Object.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-01 17:25:31 UTC (rev 2954) +++ trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-03 20:31:01 UTC (rev 2955) @@ -1,82 +1,64 @@ #include "Object.h" -#include <QMatrix4x4> - Object::Object(QObject * parent) :QObject(parent) { - mPosition = QVector3D(0,0,0); - - - mDirection = QVector3D(0,0,-1); - mRight = QVector3D(1,0,0); - - mRotation.setToIdentity(); - - //mTransformation.setToIdentity(); } -const QVector3D Object::direction(void) const -{ - QVector4D z(0,0,1,0); - return (mRotation * z).toVector3D(); - //return mDirection; -} -/*void Object::setDirection(const QVector3D& direction) -{ - mDirection = direction; -}*/ - const QVector3D& Object::position(void) const { return mPosition; - //return mTransformation.row(3).toVector3DAffine(); } void Object::setPosition(const QVector3D& position) { mPosition = position; - /*QVector4D posTemp = position.toVector4D(); - posTemp.setW(mTransformation.row(3).w()); - mTransformation.setRow(3, posTemp);*/ } -const QVector3D Object::right(void) const + +void Object::translate(const QVector3D & vector) { - QVector4D x(1,0,0,0); - return (mRotation * x).toVector3D(); - //return mRight; + mPosition += vector; } - -/*void Object::setRight(const QVector3D& right) +void Object::translate(qreal x, qreal y, qreal z) { - mRight = right; -}*/ + mPosition += QVector3D(x,y,z); +} -void Object::pitch(float angleInDegrees) +void Object::pitch(qreal angleInDegrees) { - /*QMatrix4x4 transform; - transform.rotate(angleInDegrees, mRight); - mDirection = mDirection * transform;*/ + QQuaternion rotation = QQuaternion::fromAxisAndAngle(QVector3D(1,0,0), angleInDegrees); + mOrientation *= rotation; +} - mRotation.rotate(angleInDegrees, right()); +void Object::yaw(qreal angleInDegrees) +{ + QQuaternion rotation = QQuaternion::fromAxisAndAngle(QVector3D(0,1,0), angleInDegrees); + mOrientation *= rotation; } -void Object::yaw(float angleInDegrees) +void Object::roll(qreal angleInDegrees) { - /*QMatrix4x4 transform; - transform.rotate(angleInDegrees, mRight); + QQuaternion rotation = QQuaternion::fromAxisAndAngle(QVector3D(0,0,1), angleInDegrees); + mOrientation *= rotation; +} - mDirection = mDirection * transform;*/ +const QVector3D Object::xAxis(void) const +{ + QVector3D axis(1,0,0); + return mOrientation.rotatedVector(axis); +} - mRotation.rotate(angleInDegrees, up()); +const QVector3D Object::yAxis(void) const +{ + QVector3D axis(0,1,0); + return mOrientation.rotatedVector(axis); } -const QVector3D Object::up(void) const +const QVector3D Object::zAxis(void) const { - QVector4D y(0,1,0,0); - return (mRotation * y).toVector3D(); - //return mRight; + QVector3D axis(0,0,1); + return mOrientation.rotatedVector(axis); } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-08-01 17:25:38
|
Revision: 2954 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2954&view=rev Author: esuvs Date: 2010-08-01 17:25:31 +0000 (Sun, 01 Aug 2010) Log Message: ----------- Added base Object class. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/CMakeLists.txt trunk/QtOgreFramework/EngineTest/include/Camera.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/Camera.cpp trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Added Paths: ----------- trunk/QtOgreFramework/EngineTest/include/Object.h trunk/QtOgreFramework/EngineTest/source/Object.cpp Modified: trunk/QtOgreFramework/EngineTest/CMakeLists.txt =================================================================== --- trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-07-30 16:30:15 UTC (rev 2953) +++ trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-08-01 17:25:31 UTC (rev 2954) @@ -4,12 +4,13 @@ SET(SRC_FILES source/Camera.cpp + source/EngineTestGameLogic.cpp source/Globals.cpp + source/Keyboard.cpp source/Light.cpp source/main.cpp source/Mouse.cpp - source/EngineTestGameLogic.cpp - source/Keyboard.cpp + source/Object.cpp source/ObjectStore.cpp source/ScriptEditorWidget.cpp ) @@ -21,6 +22,7 @@ include/Keyboard.h include/Light.h include/Mouse.h + include/Object.h include/ObjectStore.h include/ScriptEditorWidget.h ) Modified: trunk/QtOgreFramework/EngineTest/include/Camera.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Camera.h 2010-07-30 16:30:15 UTC (rev 2953) +++ trunk/QtOgreFramework/EngineTest/include/Camera.h 2010-08-01 17:25:31 UTC (rev 2954) @@ -1,42 +1,25 @@ #ifndef CAMERA_H_ #define CAMERA_H_ -#include <QObject> +#include "Object.h" + #include <QScriptEngine> #include <QVector3D> -class Camera : public QObject +class Camera : public Object { Q_OBJECT public: - Camera(QObject * parent = 0); + Camera(QObject* parent = 0); - Q_PROPERTY(QVector3D direction READ direction WRITE setDirection) Q_PROPERTY(float fieldOfView READ fieldOfView WRITE setFieldOfView) - Q_PROPERTY(QVector3D position READ position WRITE setPosition) - Q_PROPERTY(QVector3D right READ right WRITE setRight) - const QVector3D& direction(void) const; - void setDirection(const QVector3D& direction); - float fieldOfView(void) const; void setFieldOfView(float fieldOfView); - const QVector3D& position(void) const; - void setPosition(const QVector3D& position); - - const QVector3D& right(void) const; - void setRight(const QVector3D& right); - -public slots: - void pitch(float angleInDegrees); - -private: - QVector3D mDirection; +protected: float mFieldOfView; - QVector3D mPosition; - QVector3D mRight; }; #endif //CAMERA_H_ \ No newline at end of file Added: trunk/QtOgreFramework/EngineTest/include/Object.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Object.h (rev 0) +++ trunk/QtOgreFramework/EngineTest/include/Object.h 2010-08-01 17:25:31 UTC (rev 2954) @@ -0,0 +1,40 @@ +#ifndef OBJECT_H_ +#define OBJECT_H_ + +#include <QMatrix4x4.h> +#include <QObject> +#include <QScriptEngine> +#include <QVector3D> + +class Object : public QObject +{ + Q_OBJECT + +public: + Object(QObject* parent = 0); + + Q_PROPERTY(QVector3D direction READ direction) + Q_PROPERTY(QVector3D position READ position WRITE setPosition) + Q_PROPERTY(QVector3D right READ right) + + const QVector3D direction(void) const; + + const QVector3D& position(void) const; + void setPosition(const QVector3D& position); + + const QVector3D right(void) const; + + const QVector3D up(void) const; + +public slots: + void pitch(float angleInDegrees); + void yaw(float angleInDegrees); + +private: + QVector3D mDirection; + QVector3D mPosition; + QVector3D mRight; + QMatrix4x4 mRotation; +}; + +#endif //OBJECT_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-30 16:30:15 UTC (rev 2953) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-08-01 17:25:31 UTC (rev 2954) @@ -62,9 +62,15 @@ }*/ if(mouse.isPressed(Qt.RightButton)) { + mouseDeltaX = mouse.position.x() - mouse.previousPosition.x(); + camera.yaw(-mouseDeltaX * secondsElapsed * 10); + } + if(mouse.isPressed(Qt.RightButton)) + { mouseDeltaY = mouse.position.y() - mouse.previousPosition.y(); - camera.pitch(-mouseDeltaY * secondsElapsed); + camera.pitch(-mouseDeltaY * secondsElapsed * 10); } + wheelDelta = mouse.getWheelDelta(); fov = camera.fieldOfView; tempFOV = -wheelDelta * 0.001; Modified: trunk/QtOgreFramework/EngineTest/source/Camera.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Camera.cpp 2010-07-30 16:30:15 UTC (rev 2953) +++ trunk/QtOgreFramework/EngineTest/source/Camera.cpp 2010-08-01 17:25:31 UTC (rev 2954) @@ -1,26 +1,11 @@ #include "Camera.h" -#include <QMatrix4x4> - Camera::Camera(QObject * parent) - :QObject(parent) + :Object(parent) { - mPosition = QVector3D(0,0,0); - mDirection = QVector3D(0,0,-1); - mRight = QVector3D(1,0,0); mFieldOfView = 1.0; } -const QVector3D& Camera::direction(void) const -{ - return mDirection; -} - -void Camera::setDirection(const QVector3D& direction) -{ - mDirection = direction; -} - float Camera::fieldOfView(void) const { return mFieldOfView; @@ -29,32 +14,4 @@ void Camera::setFieldOfView(float fieldOfView) { mFieldOfView = fieldOfView; -} - -const QVector3D& Camera::position(void) const -{ - return mPosition; -} - -void Camera::setPosition(const QVector3D& position) -{ - mPosition = position; -} - -const QVector3D& Camera::right(void) const -{ - return mRight; -} - -void Camera::setRight(const QVector3D& right) -{ - mRight = right; -} - -void Camera::pitch(float angleInDegrees) -{ - QMatrix4x4 transform; - transform.rotate(angleInDegrees, mRight); - - mDirection = mDirection * transform; } \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-30 16:30:15 UTC (rev 2953) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-08-01 17:25:31 UTC (rev 2954) @@ -59,7 +59,7 @@ //mApplication->ogreRenderWindow()->addViewport(mCamera)->setBackgroundColour(Ogre::ColourValue::Black); - mSceneManager->setAmbientLight( Ogre::ColourValue( 0.3, 0.3, 0.3 ) ); + mSceneManager->setAmbientLight( Ogre::ColourValue( 0.3f, 0.3f, 0.3f ) ); mTime = new QTime; mTime->start(); Added: trunk/QtOgreFramework/EngineTest/source/Object.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Object.cpp (rev 0) +++ trunk/QtOgreFramework/EngineTest/source/Object.cpp 2010-08-01 17:25:31 UTC (rev 2954) @@ -0,0 +1,82 @@ +#include "Object.h" + +#include <QMatrix4x4> + +Object::Object(QObject * parent) + :QObject(parent) +{ + mPosition = QVector3D(0,0,0); + + + mDirection = QVector3D(0,0,-1); + mRight = QVector3D(1,0,0); + + mRotation.setToIdentity(); + + //mTransformation.setToIdentity(); +} + +const QVector3D Object::direction(void) const +{ + QVector4D z(0,0,1,0); + return (mRotation * z).toVector3D(); + //return mDirection; +} + +/*void Object::setDirection(const QVector3D& direction) +{ + mDirection = direction; +}*/ + +const QVector3D& Object::position(void) const +{ + return mPosition; + //return mTransformation.row(3).toVector3DAffine(); +} + +void Object::setPosition(const QVector3D& position) +{ + mPosition = position; + /*QVector4D posTemp = position.toVector4D(); + posTemp.setW(mTransformation.row(3).w()); + mTransformation.setRow(3, posTemp);*/ +} + +const QVector3D Object::right(void) const +{ + QVector4D x(1,0,0,0); + return (mRotation * x).toVector3D(); + //return mRight; +} + +/*void Object::setRight(const QVector3D& right) +{ + mRight = right; +}*/ + +void Object::pitch(float angleInDegrees) +{ + /*QMatrix4x4 transform; + transform.rotate(angleInDegrees, mRight); + + mDirection = mDirection * transform;*/ + + mRotation.rotate(angleInDegrees, right()); +} + +void Object::yaw(float angleInDegrees) +{ + /*QMatrix4x4 transform; + transform.rotate(angleInDegrees, mRight); + + mDirection = mDirection * transform;*/ + + mRotation.rotate(angleInDegrees, up()); +} + +const QVector3D Object::up(void) const +{ + QVector4D y(0,1,0,0); + return (mRotation * y).toVector3D(); + //return mRight; +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bel...@us...> - 2010-07-30 16:30:25
|
Revision: 2953 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2953&view=rev Author: bellyfish Date: 2010-07-30 16:30:15 +0000 (Fri, 30 Jul 2010) Log Message: ----------- * A first pass at (hopefully) making the demo easier to build. It's still not perfect. * Added the necessary resources, and resources.cfg/Plugins.cfg files. Modified Paths: -------------- trunk/ogrebullet/Demos/include/OgreBulletInputListener.h trunk/ogrebullet/Demos/src/OgreBulletListener.cpp trunk/ogrebullet/OgreBullet_readme.txt Added Paths: ----------- trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_VC8.vcproj trunk/ogrebullet/Demos/Dynamics_Demos/scripts/VC8/Ogre_Bullet_Dynamics_Demos_VC8.vcproj trunk/ogrebullet/Demos/Media/gui/CompositorDemo.layout trunk/ogrebullet/Demos/Media/gui/CompositorDemoCegui.config trunk/ogrebullet/Demos/Media/gui/CrowdDemo.layout trunk/ogrebullet/Demos/Media/gui/Falagard.xsd trunk/ogrebullet/Demos/Media/gui/Font.xsd trunk/ogrebullet/Demos/Media/gui/GUILayout.xsd trunk/ogrebullet/Demos/Media/gui/GUIScheme.xsd trunk/ogrebullet/Demos/Media/gui/Imageset.xsd trunk/ogrebullet/Demos/Media/gui/InstancingDemo.layout trunk/ogrebullet/Demos/Media/gui/OceanDemoCegui.config trunk/ogrebullet/Demos/Media/gui/OceanDemoLayout.xml trunk/ogrebullet/Demos/Media/gui/TaharezLook.imageset trunk/ogrebullet/Demos/Media/gui/TaharezLook.looknfeel trunk/ogrebullet/Demos/Media/gui/TaharezLook.tga trunk/ogrebullet/Demos/Media/gui/TaharezLookSkin.scheme trunk/ogrebullet/Demos/Media/gui/cegui8.layout trunk/ogrebullet/Demos/Media/gui/facial.layout trunk/ogrebullet/Demos/Media/gui/ogregui.layout trunk/ogrebullet/Demos/Media/gui/shadows.layout trunk/ogrebullet/Demos/Media/materials/programs/ trunk/ogrebullet/Demos/Media/materials/programs/ASCIIFP.cg trunk/ogrebullet/Demos/Media/materials/programs/AmbientOneTexture.glsl trunk/ogrebullet/Demos/Media/materials/programs/Bloom2_ps20.glsl trunk/ogrebullet/Demos/Media/materials/programs/Bloom2_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Bloom_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Bloom_vs11.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Blur0_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Blur0_vs.glsl trunk/ogrebullet/Demos/Media/materials/programs/Blur0_vs11.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Blur1_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Blur1_vs.glsl trunk/ogrebullet/Demos/Media/materials/programs/Blur1_vs11.hlsl trunk/ogrebullet/Demos/Media/materials/programs/BlurH_ps20.glsl trunk/ogrebullet/Demos/Media/materials/programs/BlurH_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/BlurV_ps20.glsl trunk/ogrebullet/Demos/Media/materials/programs/BlurV_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Blur_ps.glsl trunk/ogrebullet/Demos/Media/materials/programs/Blur_vs.glsl trunk/ogrebullet/Demos/Media/materials/programs/Blur_vs11.hlsl trunk/ogrebullet/Demos/Media/materials/programs/BrightBloom2_ps20.glsl trunk/ogrebullet/Demos/Media/materials/programs/BrightBloom2_ps20.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Combine_fp.cg trunk/ogrebullet/Demos/Media/materials/programs/Common.cg trunk/ogrebullet/Demos/Media/materials/programs/DOF_ps.cg trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmap.hlsl trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmapCasterFp.glsl trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmapCasterVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmapNormalMapReceiverFp.glsl trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmapNormalMapReceiverVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmapReceiverFp.glsl trunk/ogrebullet/Demos/Media/materials/programs/DepthShadowmapReceiverVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/DitherFP.cg trunk/ogrebullet/Demos/Media/materials/programs/Example_Basic.cg trunk/ogrebullet/Demos/Media/materials/programs/Example_Basic.hlsl trunk/ogrebullet/Demos/Media/materials/programs/Example_BumpMapping.cg trunk/ogrebullet/Demos/Media/materials/programs/Example_CelShading.cg trunk/ogrebullet/Demos/Media/materials/programs/Example_Fresnel.cg trunk/ogrebullet/Demos/Media/materials/programs/Example_FresnelPS.asm trunk/ogrebullet/Demos/Media/materials/programs/Example_Projection.cg trunk/ogrebullet/Demos/Media/materials/programs/GlassFP.cg trunk/ogrebullet/Demos/Media/materials/programs/Grass.cg trunk/ogrebullet/Demos/Media/materials/programs/GrayScale.cg trunk/ogrebullet/Demos/Media/materials/programs/HalftoneFP.cg trunk/ogrebullet/Demos/Media/materials/programs/HeatVision.cg trunk/ogrebullet/Demos/Media/materials/programs/InvertFP.cg trunk/ogrebullet/Demos/Media/materials/programs/LaplaceFP.cg trunk/ogrebullet/Demos/Media/materials/programs/NightVisionFP.cg trunk/ogrebullet/Demos/Media/materials/programs/Ocean2GLSL.frag trunk/ogrebullet/Demos/Media/materials/programs/Ocean2GLSL.vert trunk/ogrebullet/Demos/Media/materials/programs/Ocean2HLSL_Cg.frag trunk/ogrebullet/Demos/Media/materials/programs/Ocean2HLSL_Cg.vert trunk/ogrebullet/Demos/Media/materials/programs/OffsetMapping.cg trunk/ogrebullet/Demos/Media/materials/programs/OffsetMapping.hlsl trunk/ogrebullet/Demos/Media/materials/programs/OffsetMappingFp.glsl trunk/ogrebullet/Demos/Media/materials/programs/OffsetMappingVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/OffsetMapping_specular.asm trunk/ogrebullet/Demos/Media/materials/programs/OldMovieFP.cg trunk/ogrebullet/Demos/Media/materials/programs/OldTV.cg trunk/ogrebullet/Demos/Media/materials/programs/ParticleGS.cg trunk/ogrebullet/Demos/Media/materials/programs/PassthroughVP.glsl trunk/ogrebullet/Demos/Media/materials/programs/PosterizeFP.cg trunk/ogrebullet/Demos/Media/materials/programs/Radial_Blur_FP.cg trunk/ogrebullet/Demos/Media/materials/programs/SharpenEdgesFP.cg trunk/ogrebullet/Demos/Media/materials/programs/StdQuad_vp.cg trunk/ogrebullet/Demos/Media/materials/programs/StdQuad_vp.glsl trunk/ogrebullet/Demos/Media/materials/programs/Swizzle.gp trunk/ogrebullet/Demos/Media/materials/programs/SwizzleGP.cg trunk/ogrebullet/Demos/Media/materials/programs/SwizzleGP.glsl trunk/ogrebullet/Demos/Media/materials/programs/TilingFP.cg trunk/ogrebullet/Demos/Media/materials/programs/crowdVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdr.cg trunk/ogrebullet/Demos/Media/materials/programs/hdr.hlsl trunk/ogrebullet/Demos/Media/materials/programs/hdr_bloom.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdr_downscale2x2luminence.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdr_downscale3x3.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdr_downscale3x3brightpass.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdr_finalToneMapping.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdr_tonemap_util.glsl trunk/ogrebullet/Demos/Media/materials/programs/hdrutils.hlsl trunk/ogrebullet/Demos/Media/materials/programs/instancing.cg trunk/ogrebullet/Demos/Media/materials/programs/instancingVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/isosurf.cg trunk/ogrebullet/Demos/Media/materials/programs/mrttestfp.hlsl trunk/ogrebullet/Demos/Media/materials/programs/mrttestfp_quad.glsl trunk/ogrebullet/Demos/Media/materials/programs/mrttestfp_scene.glsl trunk/ogrebullet/Demos/Media/materials/programs/oceanGLSL.frag trunk/ogrebullet/Demos/Media/materials/programs/oceanGLSL.vert trunk/ogrebullet/Demos/Media/materials/programs/oceanHLSL_Cg.frag trunk/ogrebullet/Demos/Media/materials/programs/oceanHLSL_Cg.vert trunk/ogrebullet/Demos/Media/materials/programs/pssm.cg trunk/ogrebullet/Demos/Media/materials/programs/skinningTwoWeightsShadowCasterVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/skinningTwoWeightsVp.glsl trunk/ogrebullet/Demos/Media/materials/programs/varianceshadowcasterfp.cg trunk/ogrebullet/Demos/Media/materials/programs/varianceshadowcastervp.cg trunk/ogrebullet/Demos/Media/materials/programs/varianceshadowreceiverfp.cg trunk/ogrebullet/Demos/Media/materials/programs/varianceshadowreceivervp.cg trunk/ogrebullet/Demos/Media/materials/scripts/ trunk/ogrebullet/Demos/Media/materials/scripts/ASCII.material trunk/ogrebullet/Demos/Media/materials/scripts/ASMSwizzle.material trunk/ogrebullet/Demos/Media/materials/scripts/BlackAndWhite.material trunk/ogrebullet/Demos/Media/materials/scripts/Bloom.material trunk/ogrebullet/Demos/Media/materials/scripts/Bloom2.material trunk/ogrebullet/Demos/Media/materials/scripts/CGSwizzle.material trunk/ogrebullet/Demos/Media/materials/scripts/DOF.material trunk/ogrebullet/Demos/Media/materials/scripts/DepthShadowmap.material trunk/ogrebullet/Demos/Media/materials/scripts/Dither.material trunk/ogrebullet/Demos/Media/materials/scripts/Embossed.material trunk/ogrebullet/Demos/Media/materials/scripts/Example-DynTex.material trunk/ogrebullet/Demos/Media/materials/scripts/Example-Water.material trunk/ogrebullet/Demos/Media/materials/scripts/Example.material trunk/ogrebullet/Demos/Media/materials/scripts/Examples-Advanced.material trunk/ogrebullet/Demos/Media/materials/scripts/Examples.compositor trunk/ogrebullet/Demos/Media/materials/scripts/Examples.program trunk/ogrebullet/Demos/Media/materials/scripts/GLSLSwizzle.material trunk/ogrebullet/Demos/Media/materials/scripts/Glass.material trunk/ogrebullet/Demos/Media/materials/scripts/Halftone.material trunk/ogrebullet/Demos/Media/materials/scripts/HeatVision.material trunk/ogrebullet/Demos/Media/materials/scripts/Hurt.material trunk/ogrebullet/Demos/Media/materials/scripts/Invert.material trunk/ogrebullet/Demos/Media/materials/scripts/IsoSurf.material trunk/ogrebullet/Demos/Media/materials/scripts/Laplace.material trunk/ogrebullet/Demos/Media/materials/scripts/MRTtest.material trunk/ogrebullet/Demos/Media/materials/scripts/MotionBlur.material trunk/ogrebullet/Demos/Media/materials/scripts/NightVision.material trunk/ogrebullet/Demos/Media/materials/scripts/Ocean.controls trunk/ogrebullet/Demos/Media/materials/scripts/Ocean.material trunk/ogrebullet/Demos/Media/materials/scripts/OffsetMapping.material trunk/ogrebullet/Demos/Media/materials/scripts/Ogre.material trunk/ogrebullet/Demos/Media/materials/scripts/OldMovie.material trunk/ogrebullet/Demos/Media/materials/scripts/OldTV.material trunk/ogrebullet/Demos/Media/materials/scripts/ParticleGS.material trunk/ogrebullet/Demos/Media/materials/scripts/Posterize.material trunk/ogrebullet/Demos/Media/materials/scripts/RZR-002.material trunk/ogrebullet/Demos/Media/materials/scripts/RadialBlur.material trunk/ogrebullet/Demos/Media/materials/scripts/SharpenEdges.material trunk/ogrebullet/Demos/Media/materials/scripts/StdQuad_vp.program trunk/ogrebullet/Demos/Media/materials/scripts/Tiling.material trunk/ogrebullet/Demos/Media/materials/scripts/VarianceShadowmap.material trunk/ogrebullet/Demos/Media/materials/scripts/facial.material trunk/ogrebullet/Demos/Media/materials/scripts/hdr.material trunk/ogrebullet/Demos/Media/materials/scripts/instancing.material trunk/ogrebullet/Demos/Media/materials/scripts/pssm.material trunk/ogrebullet/Demos/Media/materials/scripts/smoke.material trunk/ogrebullet/Demos/Media/materials/textures/ trunk/ogrebullet/Demos/Media/materials/textures/10points.png trunk/ogrebullet/Demos/Media/materials/textures/1D_Noise.png trunk/ogrebullet/Demos/Media/materials/textures/1D_Noise2.png trunk/ogrebullet/Demos/Media/materials/textures/8x8PagesSplotches2.png trunk/ogrebullet/Demos/Media/materials/textures/ASCII.dds trunk/ogrebullet/Demos/Media/materials/textures/BeachStones.jpg trunk/ogrebullet/Demos/Media/materials/textures/BumpyMetal.jpg trunk/ogrebullet/Demos/Media/materials/textures/Chrome.jpg trunk/ogrebullet/Demos/Media/materials/textures/Dirt.jpg trunk/ogrebullet/Demos/Media/materials/textures/Dr_Bunsen_Head.jpg trunk/ogrebullet/Demos/Media/materials/textures/GLX_icon.png trunk/ogrebullet/Demos/Media/materials/textures/GreenSkin.jpg trunk/ogrebullet/Demos/Media/materials/textures/HeatLookup.tga trunk/ogrebullet/Demos/Media/materials/textures/HeatNoise.tga trunk/ogrebullet/Demos/Media/materials/textures/MtlPlat2.jpg trunk/ogrebullet/Demos/Media/materials/textures/NMBalls.png trunk/ogrebullet/Demos/Media/materials/textures/NMBumpsOut.png trunk/ogrebullet/Demos/Media/materials/textures/NMHollyBumps.png trunk/ogrebullet/Demos/Media/materials/textures/NMStripes.png trunk/ogrebullet/Demos/Media/materials/textures/NPRMetallic.tga trunk/ogrebullet/Demos/Media/materials/textures/NoiseVolume.dds trunk/ogrebullet/Demos/Media/materials/textures/RZR-002.png trunk/ogrebullet/Demos/Media/materials/textures/Random3D.dds trunk/ogrebullet/Demos/Media/materials/textures/RustedMetal.jpg trunk/ogrebullet/Demos/Media/materials/textures/RustyBarrel.png trunk/ogrebullet/Demos/Media/materials/textures/RustySteel.jpg trunk/ogrebullet/Demos/Media/materials/textures/Sepia1D.tga trunk/ogrebullet/Demos/Media/materials/textures/Water01.jpg trunk/ogrebullet/Demos/Media/materials/textures/Water02.jpg trunk/ogrebullet/Demos/Media/materials/textures/WaterNormal1.tga trunk/ogrebullet/Demos/Media/materials/textures/WaterNormal2.tga trunk/ogrebullet/Demos/Media/materials/textures/WeirdEye.png trunk/ogrebullet/Demos/Media/materials/textures/WoodPallet.png trunk/ogrebullet/Demos/Media/materials/textures/atheneNormalMap.png trunk/ogrebullet/Demos/Media/materials/textures/aureola.png trunk/ogrebullet/Demos/Media/materials/textures/basic_droplet.png trunk/ogrebullet/Demos/Media/materials/textures/blue_jaiqua.jpg trunk/ogrebullet/Demos/Media/materials/textures/cel_shading_diffuse.png trunk/ogrebullet/Demos/Media/materials/textures/cel_shading_edge.png trunk/ogrebullet/Demos/Media/materials/textures/cel_shading_specular.png trunk/ogrebullet/Demos/Media/materials/textures/clouds.jpg trunk/ogrebullet/Demos/Media/materials/textures/cursor.png trunk/ogrebullet/Demos/Media/materials/textures/dirt01.jpg trunk/ogrebullet/Demos/Media/materials/textures/dkyellow.png trunk/ogrebullet/Demos/Media/materials/textures/droplet.png trunk/ogrebullet/Demos/Media/materials/textures/egyptrockyfull.jpg trunk/ogrebullet/Demos/Media/materials/textures/flare.png trunk/ogrebullet/Demos/Media/materials/textures/flaretrail.png trunk/ogrebullet/Demos/Media/materials/textures/fw12b.jpg trunk/ogrebullet/Demos/Media/materials/textures/gras_02.png trunk/ogrebullet/Demos/Media/materials/textures/grassWalpha.tga trunk/ogrebullet/Demos/Media/materials/textures/grass_1024.jpg trunk/ogrebullet/Demos/Media/materials/textures/leaf.png trunk/ogrebullet/Demos/Media/materials/textures/nm_bk.png trunk/ogrebullet/Demos/Media/materials/textures/nm_dn.png trunk/ogrebullet/Demos/Media/materials/textures/nm_fr.png trunk/ogrebullet/Demos/Media/materials/textures/nm_lf.png trunk/ogrebullet/Demos/Media/materials/textures/nm_rt.png trunk/ogrebullet/Demos/Media/materials/textures/nm_up.png trunk/ogrebullet/Demos/Media/materials/textures/normalNoiseColor.png trunk/ogrebullet/Demos/Media/materials/textures/nskingr.jpg trunk/ogrebullet/Demos/Media/materials/textures/ogreborder.png trunk/ogrebullet/Demos/Media/materials/textures/ogreborderUp.png trunk/ogrebullet/Demos/Media/materials/textures/ogrebordercenter.png trunk/ogrebullet/Demos/Media/materials/textures/ogregui.tga trunk/ogrebullet/Demos/Media/materials/textures/ogrelogo-small.jpg trunk/ogrebullet/Demos/Media/materials/textures/ogrelogo.png trunk/ogrebullet/Demos/Media/materials/textures/particle.dds trunk/ogrebullet/Demos/Media/materials/textures/perlinvolume.dds trunk/ogrebullet/Demos/Media/materials/textures/r2skin.jpg trunk/ogrebullet/Demos/Media/materials/textures/ribbonband.png trunk/ogrebullet/Demos/Media/materials/textures/rockwall.tga trunk/ogrebullet/Demos/Media/materials/textures/rockwall_NH.tga trunk/ogrebullet/Demos/Media/materials/textures/scr-back.png trunk/ogrebullet/Demos/Media/materials/textures/scr-down-p.png trunk/ogrebullet/Demos/Media/materials/textures/scr-down.png trunk/ogrebullet/Demos/Media/materials/textures/scr-thumb.png trunk/ogrebullet/Demos/Media/materials/textures/scr-up-p.png trunk/ogrebullet/Demos/Media/materials/textures/scr-up.png trunk/ogrebullet/Demos/Media/materials/textures/smoke.png trunk/ogrebullet/Demos/Media/materials/textures/smokecolors.png trunk/ogrebullet/Demos/Media/materials/textures/snow_1024.jpg trunk/ogrebullet/Demos/Media/materials/textures/spacesky.jpg trunk/ogrebullet/Demos/Media/materials/textures/spheremap.png trunk/ogrebullet/Demos/Media/materials/textures/steelhead.png trunk/ogrebullet/Demos/Media/materials/textures/terr_dirt-grass.jpg trunk/ogrebullet/Demos/Media/materials/textures/terr_rock-dirt.jpg trunk/ogrebullet/Demos/Media/materials/textures/terr_rock6.jpg trunk/ogrebullet/Demos/Media/materials/textures/terrain.png trunk/ogrebullet/Demos/Media/materials/textures/terrain_detail.jpg trunk/ogrebullet/Demos/Media/materials/textures/terrain_texture.jpg trunk/ogrebullet/Demos/Media/materials/textures/texmap2.jpg trunk/ogrebullet/Demos/Media/materials/textures/waveNM.png trunk/ogrebullet/Demos/Media/materials/textures/waves2.dds trunk/ogrebullet/Demos/Media/models/RZR-002.mesh trunk/ogrebullet/Demos/Media/models/WoodPallet.mesh trunk/ogrebullet/Demos/Media/models/athene.mesh trunk/ogrebullet/Demos/Media/models/column.mesh trunk/ogrebullet/Demos/Media/models/cube.mesh trunk/ogrebullet/Demos/Media/models/facial.mesh trunk/ogrebullet/Demos/Media/models/fish.mesh trunk/ogrebullet/Demos/Media/models/fish.skeleton trunk/ogrebullet/Demos/Media/models/geosphere4500.mesh trunk/ogrebullet/Demos/Media/models/geosphere8000.mesh trunk/ogrebullet/Demos/Media/models/jaiqua.mesh trunk/ogrebullet/Demos/Media/models/jaiqua.skeleton trunk/ogrebullet/Demos/Media/models/knot.mesh trunk/ogrebullet/Demos/Media/models/ninja.mesh trunk/ogrebullet/Demos/Media/models/ninja.skeleton trunk/ogrebullet/Demos/Media/models/ogrehead.mesh trunk/ogrebullet/Demos/Media/models/razor.mesh trunk/ogrebullet/Demos/Media/models/robot.mesh trunk/ogrebullet/Demos/Media/models/robot.skeleton trunk/ogrebullet/Demos/Media/models/sphere.mesh trunk/ogrebullet/Demos/Media/models/tudorhouse.mesh trunk/ogrebullet/Demos/Media/overlays/BasicOgreGuiTemplates.inc trunk/ogrebullet/Demos/Media/overlays/Compositor.overlay trunk/ogrebullet/Demos/Media/overlays/DP3.overlay trunk/ogrebullet/Demos/Media/overlays/Example-CubeMapping.overlay trunk/ogrebullet/Demos/Media/overlays/Example-DynTex.overlay trunk/ogrebullet/Demos/Media/overlays/Example-Water.overlay trunk/ogrebullet/Demos/Media/overlays/Shadows.overlay trunk/ogrebullet/Demos/Media/packs/ trunk/ogrebullet/Demos/Media/packs/OgreCore.zip trunk/ogrebullet/Demos/Media/packs/chiropteraDM.pk3 trunk/ogrebullet/Demos/Media/packs/chiropteraDM.txt trunk/ogrebullet/Demos/Media/packs/cubemap.zip trunk/ogrebullet/Demos/Media/packs/cubemapsJS.zip trunk/ogrebullet/Demos/Media/packs/dragon.zip trunk/ogrebullet/Demos/Media/packs/fresneldemo.zip trunk/ogrebullet/Demos/Media/packs/ogretestmap.zip trunk/ogrebullet/Demos/Media/packs/skybox.zip trunk/ogrebullet/Demos/Media/particle/ trunk/ogrebullet/Demos/Media/particle/Example-Water.particle trunk/ogrebullet/Demos/Media/particle/Example.particle trunk/ogrebullet/Demos/Media/particle/emitted_emitter.particle trunk/ogrebullet/Demos/Media/particle/smoke.particle trunk/ogrebullet/Demos/Plugins.cfg trunk/ogrebullet/Demos/Plugins_d.cfg trunk/ogrebullet/Demos/include/ExampleApplication.h trunk/ogrebullet/Demos/include/exampleframelistener.h trunk/ogrebullet/Demos/resources.cfg trunk/ogrebullet/Dynamics/scripts/VC8/OgreBulletDynamics_VC8.vcproj trunk/ogrebullet/OgreBullet_VC8.sln trunk/ogrebullet/OgreBullet_VC8.suo Removed Paths: ------------- trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS.vcproj trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS_Eihort.vcproj trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_SDK.vcproj trunk/ogrebullet/Demos/Dynamics_Demos/scripts/VC8/Ogre_Bullet_Dynamics_Demos_CVS.vcproj trunk/ogrebullet/Demos/Dynamics_Demos/scripts/VC8/Ogre_Bullet_Dynamics_Demos_CVS_Eihort.vcproj trunk/ogrebullet/Demos/Dynamics_Demos/scripts/VC8/Ogre_Bullet_Dynamics_Demos_SDK.vcproj trunk/ogrebullet/Dynamics/scripts/VC8/OgreBulletDynamics_CVS.vcproj trunk/ogrebullet/Dynamics/scripts/VC8/OgreBulletDynamics_CVS_Eihort.vcproj trunk/ogrebullet/Dynamics/scripts/VC8/OgreBulletDynamics_SDK.vcproj trunk/ogrebullet/OgreBullet_CVS.sln trunk/ogrebullet/OgreBullet_CVS.suo trunk/ogrebullet/OgreBullet_CVS_Eihort.sln trunk/ogrebullet/OgreBullet_CVS_Eihort.suo trunk/ogrebullet/OgreBullet_SDK.sln trunk/ogrebullet/OgreBullet_SDK.suo Deleted: trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS.vcproj =================================================================== --- trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS.vcproj 2010-07-29 14:37:54 UTC (rev 2952) +++ trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS.vcproj 2010-07-30 16:30:15 UTC (rev 2953) @@ -1,403 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="8.00" - Name="OgreBulletCollisions" - ProjectGUID="{791F594F-FF44-49D1-A882-FF4DB0DCD92A}" - RootNamespace="OgreBulletCollisions" - Keyword="Win32Proj" - > - <Platforms> - <Platform - Name="Win32" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory="..\..\bin\$(ConfigurationName)" - IntermediateDirectory="..\..\obj\$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalOptions="-Zm110" - Optimization="0" - AdditionalIncludeDirectories="..\..\include;"$(BULLET_HOME)\src";..\..\..\..\..\Ogrenew\OgreMain\include;..\..\..\..\..\Ogrenew\Samples\Common\include" - PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_PRECOMP" - MinimalRebuild="true" - BasicRuntimeChecks="3" - SmallerTypeCheck="true" - RuntimeLibrary="3" - FloatingPointModel="2" - UsePrecompiledHeader="2" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="4" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)\$(ProjectName)_d.lib" - IgnoreAllDefaultLibraries="false" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="copy $(TargetPath) "../../../lib/$(ConfigurationName)"" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory="..\..\bin\$(ConfigurationName)" - IntermediateDirectory="..\..\obj\$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="1" - WholeProgramOptimization="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalIncludeDirectories="..\..\include;"$(BULLET_HOME)\src";..\..\..\..\..\Ogrenew\OgreMain\include;..\..\..\..\..\Ogrenew\Samples\Common\include" - PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" - RuntimeLibrary="2" - FloatingPointModel="2" - UsePrecompiledHeader="2" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="copy $(TargetPath) "../../../lib/$(ConfigurationName)"" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath="..\..\src\OgreBulletCollisionsObject.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsObjectState.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsPrecompiled.cpp" - > - <FileConfiguration - Name="Debug|Win32" - > - <Tool - Name="VCCLCompilerTool" - UsePrecompiledHeader="1" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - /> - </FileConfiguration> - <FileConfiguration - Name="Release|Win32" - > - <Tool - Name="VCCLCompilerTool" - UsePrecompiledHeader="1" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - /> - </FileConfiguration> - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsRay.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsShape.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsWorld.cpp" - > - </File> - <Filter - Name="Shapes" - > - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsBoxShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCompoundShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsConeShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsConvexHullShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCylinderShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsMinkowskiSumShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsMultiSphereShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsSphereShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsStaticPlaneShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsTriangleShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsTrimeshShape.cpp" - > - </File> - </Filter> - <Filter - Name="Utils" - > - <File - RelativePath="..\..\src\Utils\OgreBulletCollisionsMeshToShapeConverter.cpp" - > - </File> - </Filter> - <Filter - Name="Debug" - > - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugContact.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugDrawer.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugLines.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugShape.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - <File - RelativePath="..\..\include\OgreBulletCollisions.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsObject.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsObjectState.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsPreRequisites.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsRay.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsShape.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsWorld.h" - > - </File> - <Filter - Name="Shapes" - > - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsBoxShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCompoundShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsConeShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsConvexHullShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCylinderShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsMinkowskiSumShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsMultiSphereShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsSphereShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsStaticPlaneShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTriangleShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTrimeshShape.h" - > - </File> - </Filter> - <Filter - Name="Utils" - > - <File - RelativePath="..\..\include\Utils\OgreBulletCollisionsMeshToShapeConverter.h" - > - </File> - <File - RelativePath="..\..\include\Utils\OgreBulletConverter.h" - > - </File> - </Filter> - <Filter - Name="Debug" - > - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugContact.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugDrawer.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugLines.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugShape.h" - > - </File> - </Filter> - </Filter> - <Filter - Name="Resource Files" - Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" - UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" - > - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> Deleted: trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS_Eihort.vcproj =================================================================== --- trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS_Eihort.vcproj 2010-07-29 14:37:54 UTC (rev 2952) +++ trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS_Eihort.vcproj 2010-07-30 16:30:15 UTC (rev 2953) @@ -1,415 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="8.00" - Name="OgreBulletCollisions" - ProjectGUID="{791F594F-FF44-49D1-A882-FF4DB0DCD92A}" - RootNamespace="OgreBulletCollisions" - Keyword="Win32Proj" - > - <Platforms> - <Platform - Name="Win32" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory="..\..\..\lib\$(ConfigurationName)" - IntermediateDirectory="..\..\obj\$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalOptions="/Zm111" - Optimization="0" - AdditionalIncludeDirectories="..\..\include;"$(BULLET_HOME)\src";"$(BULLET_HOME)\Extras\ConvexDecomposition";..\..\..\..\..\Ogre\OgreMain\include;..\..\..\..\..\Ogre\Samples\Common\include" - PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_PRECOMP" - MinimalRebuild="true" - BasicRuntimeChecks="3" - SmallerTypeCheck="true" - RuntimeLibrary="3" - FloatingPointModel="2" - UsePrecompiledHeader="2" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)\$(ProjectName)_d.lib" - IgnoreAllDefaultLibraries="false" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory="..\..\..\lib\$(ConfigurationName)" - IntermediateDirectory="..\..\obj\$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="1" - WholeProgramOptimization="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - InlineFunctionExpansion="1" - EnableIntrinsicFunctions="true" - FavorSizeOrSpeed="1" - AdditionalIncludeDirectories="..\..\include;"$(BULLET_HOME)\src";"$(BULLET_HOME)\Extras\ConvexDecomposition";..\..\..\..\..\Ogre\OgreMain\include;..\..\..\..\..\Ogre\Samples\Common\include" - PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" - RuntimeLibrary="2" - EnableEnhancedInstructionSet="2" - FloatingPointModel="2" - UsePrecompiledHeader="2" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath="..\..\src\OgreBulletCollisionsObject.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsObjectState.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsPrecompiled.cpp" - > - <FileConfiguration - Name="Debug|Win32" - > - <Tool - Name="VCCLCompilerTool" - UsePrecompiledHeader="1" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - /> - </FileConfiguration> - <FileConfiguration - Name="Release|Win32" - > - <Tool - Name="VCCLCompilerTool" - UsePrecompiledHeader="1" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - /> - </FileConfiguration> - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsRay.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsShape.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsWorld.cpp" - > - </File> - <Filter - Name="Shapes" - > - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsBoxShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCapsuleShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCompoundShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsConeShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsConvexHullShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCylinderShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsGImpactShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsMinkowskiSumShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsMultiSphereShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsSphereShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsStaticPlaneShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsTriangleShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsTrimeshShape.cpp" - > - </File> - </Filter> - <Filter - Name="Utils" - > - <File - RelativePath="..\..\src\Utils\OgreBulletCollisionsMeshToShapeConverter.cpp" - > - </File> - </Filter> - <Filter - Name="Debug" - > - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugContact.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugDrawer.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugLines.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugShape.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - <File - RelativePath="..\..\include\OgreBulletCollisions.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsObject.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsObjectState.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsPreRequisites.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsRay.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsShape.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsWorld.h" - > - </File> - <Filter - Name="Shapes" - > - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsBoxShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCompoundShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsConeShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsConvexHullShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCylinderShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsMinkowskiSumShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsMultiSphereShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsSphereShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsStaticPlaneShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTriangleShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTrimeshShape.h" - > - </File> - </Filter> - <Filter - Name="Utils" - > - <File - RelativePath="..\..\include\Utils\OgreBulletCollisionsMeshToShapeConverter.h" - > - </File> - <File - RelativePath="..\..\include\Utils\OgreBulletConverter.h" - > - </File> - </Filter> - <Filter - Name="Debug" - > - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugContact.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugDrawer.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugLines.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugShape.h" - > - </File> - </Filter> - </Filter> - <Filter - Name="Resource Files" - Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" - UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" - > - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> Deleted: trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_SDK.vcproj =================================================================== --- trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_SDK.vcproj 2010-07-29 14:37:54 UTC (rev 2952) +++ trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_SDK.vcproj 2010-07-30 16:30:15 UTC (rev 2953) @@ -1,428 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="8,00" - Name="OgreBulletCollisions" - ProjectGUID="{791F594F-FF44-49D1-A882-FF4DB0DCD92A}" - RootNamespace="OgreBulletCollisions" - Keyword="Win32Proj" - > - <Platforms> - <Platform - Name="Win32" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory="..\..\bin\$(ConfigurationName)" - IntermediateDirectory="..\..\obj\$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalOptions="-Zm114" - Optimization="0" - AdditionalIncludeDirectories="..\..\include;"$(BULLET_HOME)\src";"$(BULLET_HOME)\Extras\ConvexDecomposition\";"$(OGRE_HOME)\include";"$(OGRE_HOME)\Samples\include"" - PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS" - MinimalRebuild="false" - BasicRuntimeChecks="3" - SmallerTypeCheck="false" - RuntimeLibrary="3" - BufferSecurityCheck="false" - FloatingPointModel="2" - UsePrecompiledHeader="2" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - OutputFile="$(OutDir)\$(ProjectName)_d.lib" - IgnoreAllDefaultLibraries="false" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="copy $(TargetPath) "../../../lib/$(ConfigurationName)"" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory="..\..\bin\$(ConfigurationName)" - IntermediateDirectory="..\..\obj\$(ConfigurationName)" - ConfigurationType="4" - CharacterSet="1" - WholeProgramOptimization="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalOptions="-Zm110" - InlineFunctionExpansion="2" - FavorSizeOrSpeed="1" - AdditionalIncludeDirectories="..\..\include;"$(BULLET_HOME)\src";"$(BULLET_HOME)\Extras\ConvexDecomposition\";"$(OGRE_HOME)\include";"$(OGRE_HOME)\Samples\include"" - PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_PRECOMP" - StringPooling="true" - RuntimeLibrary="2" - FloatingPointModel="2" - UsePrecompiledHeader="2" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - CommandLine="copy $(TargetPath) "../../../lib/$(ConfigurationName)"" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath="..\..\src\OgreBulletCollisionsObject.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsObjectState.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsPrecompiled.cpp" - > - <FileConfiguration - Name="Debug|Win32" - > - <Tool - Name="VCCLCompilerTool" - UsePrecompiledHeader="1" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - /> - </FileConfiguration> - <FileConfiguration - Name="Release|Win32" - > - <Tool - Name="VCCLCompilerTool" - UsePrecompiledHeader="1" - PrecompiledHeaderThrough="OgreBulletCollisions.h" - /> - </FileConfiguration> - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsRay.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsShape.cpp" - > - </File> - <File - RelativePath="..\..\src\OgreBulletCollisionsWorld.cpp" - > - </File> - <Filter - Name="Shapes" - > - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsBoxShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCapsuleShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCompoundShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsConeShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsConvexHullShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsCylinderShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsGImpactShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsMinkowskiSumShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsMultiSphereShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsSphereShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsStaticPlaneShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsTriangleShape.cpp" - > - </File> - <File - RelativePath="..\..\src\Shapes\OgreBulletCollisionsTrimeshShape.cpp" - > - </File> - </Filter> - <Filter - Name="Utils" - > - <File - RelativePath="..\..\src\Utils\OgreBulletCollisionsMeshToShapeConverter.cpp" - > - </File> - </Filter> - <Filter - Name="Debug" - > - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugContact.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugDrawer.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugLines.cpp" - > - </File> - <File - RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugShape.cpp" - > - </File> - </Filter> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - <File - RelativePath="..\..\include\OgreBulletCollisions.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsConvexCast.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsObject.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsObjectState.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsPreRequisites.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsRay.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsShape.h" - > - </File> - <File - RelativePath="..\..\include\OgreBulletCollisionsWorld.h" - > - </File> - <Filter - Name="Shapes" - > - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsBoxShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCapsuleShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCompoundShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsConeShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsConvexHullShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsCylinderShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsGImpactShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsMinkowskiSumShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsMultiSphereShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsSphereShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsStaticPlaneShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTerrainShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTriangleShape.h" - > - </File> - <File - RelativePath="..\..\include\Shapes\OgreBulletCollisionsTrimeshShape.h" - > - </File> - </Filter> - <Filter - Name="Utils" - > - <File - RelativePath="..\..\include\Utils\OgreBulletCollisionsMeshToShapeConverter.h" - > - </File> - </Filter> - <Filter - Name="Debug" - > - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugContact.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugDrawer.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugLines.h" - > - </File> - <File - RelativePath="..\..\include\Debug\OgreBulletCollisionsDebugShape.h" - > - </File> - </Filter> - </Filter> - <Filter - Name="Resource Files" - Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" - UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" - > - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> Copied: trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_VC8.vcproj (from rev 2941, trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_CVS_Eihort.vcproj) =================================================================== --- trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_VC8.vcproj (rev 0) +++ trunk/ogrebullet/Collisions/scripts/VC8/OgreBulletCollisions_VC8.vcproj 2010-07-30 16:30:15 UTC (rev 2953) @@ -0,0 +1,416 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="8.00" + Name="OgreBulletCollisions" + ProjectGUID="{791F594F-FF44-49D1-A882-FF4DB0DCD92A}" + RootNamespace="OgreBulletCollisions" + Keyword="Win32Proj" + > + <Platforms> + <Platform + Name="Win32" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory="..\..\..\lib\$(ConfigurationName)" + IntermediateDirectory="..\..\obj\$(ConfigurationName)" + ConfigurationType="4" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + AdditionalOptions="-Zm1000" + Optimization="0" + AdditionalIncludeDirectories="..\..\include;"$(BULLET_ROOT)\src";"$(BULLET_ROOT)\Extras\ConvexDecomposition";"$(OGRE_HOME)\OgreMain\include"" + PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_PRECOMP" + MinimalRebuild="true" + BasicRuntimeChecks="3" + SmallerTypeCheck="true" + RuntimeLibrary="3" + FloatingPointModel="2" + UsePrecompiledHeader="2" + PrecompiledHeaderThrough="OgreBulletCollisions.h" + WarningLevel="3" + Detect64BitPortabilityProblems="true" + DebugInformationFormat="3" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLibrarianTool" + OutputFile="$(OutDir)\$(ProjectName)_d.lib" + IgnoreAllDefaultLibraries="false" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCPostBuildEventTool" + CommandLine="" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory="..\..\..\lib\$(ConfigurationName)" + IntermediateDirectory="..\..\obj\$(ConfigurationName)" + ConfigurationType="4" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + AdditionalOptions="-Zm1000" + InlineFunctionExpansion="1" + EnableIntrinsicFunctions="true" + FavorSizeOrSpeed="1" + AdditionalIncludeDirectories="..\..\include;"$(BULLET_ROOT)\src";"$(BULLET_ROOT)\Extras\ConvexDecomposition";"$(OGRE_HOME)\OgreMain\include"" + PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS" + RuntimeLibrary="2" + EnableEnhancedInstructionSet="2" + FloatingPointModel="2" + UsePrecompiledHeader="2" + PrecompiledHeaderThrough="OgreBulletCollisions.h" + WarningLevel="3" + Detect64BitPortabilityProblems="true" + DebugInformationFormat="3" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLibrarianTool" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCPostBuildEventTool" + CommandLine="" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <Filter + Name="Source Files" + Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" + UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" + > + <File + RelativePath="..\..\src\OgreBulletCollisionsObject.cpp" + > + </File> + <File + RelativePath="..\..\src\OgreBulletCollisionsObjectState.cpp" + > + </File> + <File + RelativePath="..\..\src\OgreBulletCollisionsPrecompiled.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + UsePrecompiledHeader="1" + PrecompiledHeaderThrough="OgreBulletCollisions.h" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + UsePrecompiledHeader="1" + PrecompiledHeaderThrough="OgreBulletCollisions.h" + /> + </FileConfiguration> + </File> + <File + RelativePath="..\..\src\OgreBulletCollisionsRay.cpp" + > + </File> + <File + RelativePath="..\..\src\OgreBulletCollisionsShape.cpp" + > + </File> + <File + RelativePath="..\..\src\OgreBulletCollisionsWorld.cpp" + > + </File> + <Filter + Name="Shapes" + > + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsBoxShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsCapsuleShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsCompoundShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsConeShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsConvexHullShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsCylinderShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsGImpactShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsMinkowskiSumShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsMultiSphereShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsSphereShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsStaticPlaneShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsTriangleShape.cpp" + > + </File> + <File + RelativePath="..\..\src\Shapes\OgreBulletCollisionsTrimeshShape.cpp" + > + </File> + </Filter> + <Filter + Name="Utils" + > + <File + RelativePath="..\..\src\Utils\OgreBulletCollisionsMeshToShapeConverter.cpp" + > + </File> + </Filter> + <Filter + Name="Debug" + > + <File + RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugContact.cpp" + > + </File> + <File + RelativePath="..\..\src\Debug\OgreBulletCollisionsDebugDrawer.cpp" + > + </F... [truncated message content] |
From: <bel...@us...> - 2010-07-29 14:38:01
|
Revision: 2952 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2952&view=rev Author: bellyfish Date: 2010-07-29 14:37:54 +0000 (Thu, 29 Jul 2010) Log Message: ----------- * Exposed the set32bitsAxisSweep and maxHandles parameters to the user via the DynamicsWorld ctor. This addresses a memory consumption issue exposed by bluesnessman @ http://www.ogre3d.org/addonforums/viewtopic.php?p=73649#p73649 Modified Paths: -------------- trunk/ogrebullet/Collisions/include/OgreBulletCollisionsWorld.h trunk/ogrebullet/Collisions/src/OgreBulletCollisionsWorld.cpp trunk/ogrebullet/Dynamics/include/OgreBulletDynamicsWorld.h trunk/ogrebullet/Dynamics/src/OgreBulletDynamicsWorld.cpp Modified: trunk/ogrebullet/Collisions/include/OgreBulletCollisionsWorld.h =================================================================== --- trunk/ogrebullet/Collisions/include/OgreBulletCollisionsWorld.h 2010-07-18 11:58:04 UTC (rev 2951) +++ trunk/ogrebullet/Collisions/include/OgreBulletCollisionsWorld.h 2010-07-29 14:37:54 UTC (rev 2952) @@ -41,7 +41,12 @@ class CollisionsWorld { public: - CollisionsWorld(Ogre::SceneManager *scn, const Ogre::AxisAlignedBox &bounds, bool init = true, bool set32bitsAxisSweep = true); + // Note: If set32bitsAxisSweep = false, then the maximum value for maxHandles = USHRT_MAX + // because btAxisSweep3 uses an 'unsigned short' for maxHandles while + // bt32BitAxisSweep3 uses an unsigned int. A note will be placed in the Ogre log + // if the maxHandles value for btAxisSweep3 is exceeded and maxHandles will be reset + // to USHRT_MAX in order to avoid overflowing the unsigned short. + CollisionsWorld(Ogre::SceneManager *scn, const Ogre::AxisAlignedBox &bounds, bool init = true, bool set32bitsAxisSweep = true, unsigned int maxHandles = 1500000); virtual ~CollisionsWorld(); void addObject(Object *obj, int filterGrp = 1, short int collisionFilter = -1); Modified: trunk/ogrebullet/Collisions/src/OgreBulletCollisionsWorld.cpp =================================================================== --- trunk/ogrebullet/Collisions/src/OgreBulletCollisionsWorld.cpp 2010-07-18 11:58:04 UTC (rev 2951) +++ trunk/ogrebullet/Collisions/src/OgreBulletCollisionsWorld.cpp 2010-07-29 14:37:54 UTC (rev 2952) @@ -47,7 +47,7 @@ namespace OgreBulletCollisions { // ------------------------------------------------------------------------- - CollisionsWorld::CollisionsWorld(SceneManager *scn, const AxisAlignedBox &bounds, bool init, bool set32bitsAxisSweep): + CollisionsWorld::CollisionsWorld(SceneManager *scn, const AxisAlignedBox &bounds, bool init, bool set32bitsAxisSweep, unsigned int maxHandles): mScnMgr(scn), mBounds(bounds), mShowDebugShapes(false), @@ -61,13 +61,20 @@ { mBroadphase = new bt32BitAxisSweep3( OgreBtConverter::to(bounds.getMinimum()), - OgreBtConverter::to(bounds.getMaximum())); + OgreBtConverter::to(bounds.getMaximum()), maxHandles); } else { + if(maxHandles > USHRT_MAX) + { + Ogre::String logNote("Exceeded the maximum number of handles for btAxisSweep3. Max = USHRT_MAX. Resetting maxHandles to USHRT_MAX in OgreBulletCollisions::CollisionsWorld::CollisionsWorld()."); + Ogre::LogManager::getSingleton().logMessage(logNote); + maxHandles = USHRT_MAX; + } + mBroadphase = new btAxisSweep3( OgreBtConverter::to(bounds.getMinimum()), - OgreBtConverter::to(bounds.getMaximum())); + OgreBtConverter::to(bounds.getMaximum()), static_cast<unsigned short>(maxHandles)); } // if not called by a inherited class @@ -116,6 +123,7 @@ n->detachObject (mDebugContactPoints); n->getParentSceneNode()->removeAndDestroyChild("DebugContactPoints"); delete mDebugContactPoints; + mDebugContactPoints = 0; mShowDebugContactPoints = false; return; } Modified: trunk/ogrebullet/Dynamics/include/OgreBulletDynamicsWorld.h =================================================================== --- trunk/ogrebullet/Dynamics/include/OgreBulletDynamicsWorld.h 2010-07-18 11:58:04 UTC (rev 2951) +++ trunk/ogrebullet/Dynamics/include/OgreBulletDynamicsWorld.h 2010-07-29 14:37:54 UTC (rev 2952) @@ -46,7 +46,7 @@ DynamicsWorld(Ogre::SceneManager *mgr, const Ogre::AxisAlignedBox &bounds, const Ogre::Vector3 &gravity, - bool init = true); + bool init = true, bool set32BitAxisSweep = true, unsigned int maxHandles = 1500000); ~DynamicsWorld(); Modified: trunk/ogrebullet/Dynamics/src/OgreBulletDynamicsWorld.cpp =================================================================== --- trunk/ogrebullet/Dynamics/src/OgreBulletDynamicsWorld.cpp 2010-07-18 11:58:04 UTC (rev 2951) +++ trunk/ogrebullet/Dynamics/src/OgreBulletDynamicsWorld.cpp 2010-07-29 14:37:54 UTC (rev 2952) @@ -51,8 +51,8 @@ DynamicsWorld::DynamicsWorld(Ogre::SceneManager *mgr, const Ogre::AxisAlignedBox &bounds, const Ogre::Vector3 &gravity, - bool init) : - CollisionsWorld(mgr, bounds, false) + bool init, bool set32BitAxisSweep, unsigned int maxHandles) : + CollisionsWorld(mgr, bounds, false, set32BitAxisSweep, maxHandles) { //btSequentialImpulseConstraintSolver //btSequentialImpulseConstraintSolver3 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-18 11:58:11
|
Revision: 2951 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2951&view=rev Author: esuvs Date: 2010-07-18 11:58:04 +0000 (Sun, 18 Jul 2010) Log Message: ----------- Camera class is no longer just a wrapper around Ogre::Camera. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/CMakeLists.txt trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Added Paths: ----------- trunk/QtOgreFramework/EngineTest/include/Camera.h trunk/QtOgreFramework/EngineTest/source/Camera.cpp Removed Paths: ------------- trunk/QtOgreFramework/EngineTest/include/CameraWrapper.h trunk/QtOgreFramework/EngineTest/source/CameraWrapper.cpp Modified: trunk/QtOgreFramework/EngineTest/CMakeLists.txt =================================================================== --- trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-07-18 09:24:36 UTC (rev 2950) +++ trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-07-18 11:58:04 UTC (rev 2951) @@ -3,7 +3,7 @@ PROJECT(EngineTest) SET(SRC_FILES - source/CameraWrapper.cpp + source/Camera.cpp source/Globals.cpp source/Light.cpp source/main.cpp @@ -15,7 +15,7 @@ ) SET(INC_FILES - include/CameraWrapper.h + include/Camera.h include/EngineTestGameLogic.h include/Globals.h include/Keyboard.h Added: trunk/QtOgreFramework/EngineTest/include/Camera.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Camera.h (rev 0) +++ trunk/QtOgreFramework/EngineTest/include/Camera.h 2010-07-18 11:58:04 UTC (rev 2951) @@ -0,0 +1,42 @@ +#ifndef CAMERA_H_ +#define CAMERA_H_ + +#include <QObject> +#include <QScriptEngine> +#include <QVector3D> + +class Camera : public QObject +{ + Q_OBJECT + +public: + Camera(QObject * parent = 0); + + Q_PROPERTY(QVector3D direction READ direction WRITE setDirection) + Q_PROPERTY(float fieldOfView READ fieldOfView WRITE setFieldOfView) + Q_PROPERTY(QVector3D position READ position WRITE setPosition) + Q_PROPERTY(QVector3D right READ right WRITE setRight) + + const QVector3D& direction(void) const; + void setDirection(const QVector3D& direction); + + float fieldOfView(void) const; + void setFieldOfView(float fieldOfView); + + const QVector3D& position(void) const; + void setPosition(const QVector3D& position); + + const QVector3D& right(void) const; + void setRight(const QVector3D& right); + +public slots: + void pitch(float angleInDegrees); + +private: + QVector3D mDirection; + float mFieldOfView; + QVector3D mPosition; + QVector3D mRight; +}; + +#endif //CAMERA_H_ \ No newline at end of file Deleted: trunk/QtOgreFramework/EngineTest/include/CameraWrapper.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/CameraWrapper.h 2010-07-18 09:24:36 UTC (rev 2950) +++ trunk/QtOgreFramework/EngineTest/include/CameraWrapper.h 2010-07-18 11:58:04 UTC (rev 2951) @@ -1,48 +0,0 @@ -#ifndef CAMERAWRAPPER_H_ -#define CAMERAWRAPPER_H_ - -#include <OgrePrerequisites.h> -#include <OgreMath.h> - -#include <QObject> -#include <QVector3D> - -class CameraWrapper : public QObject -{ - Q_OBJECT - -public: - void setOgreCamera(Ogre::Camera* pOgreCamera); - - Q_PROPERTY(QVector3D position READ getPosition WRITE setPosition) - Q_PROPERTY(QVector3D direction READ getDirection WRITE setDirection) - Q_PROPERTY(QVector3D right READ getRight) - Q_PROPERTY(QVector3D up READ getUp) - - -public slots: - void moveRelative(const Ogre::Vector3 &vec); - - void yaw (const Ogre::Radian &angle); - - void pitch (const Ogre::Radian &angle); - - Ogre::Radian getFOVy (void) const; - - void setFOVy (const Ogre::Radian& fovy); - - QVector3D getPosition(void) const; - void setPosition(const QVector3D& pos); - - QVector3D getDirection(void) const; - void setDirection(const QVector3D& dir); - - QVector3D getRight(void) const; - - QVector3D getUp(void) const; - -private: - Ogre::Camera* m_pOgreCamera; -}; - -#endif //CAMERAWRAPPER_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-18 09:24:36 UTC (rev 2950) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-18 11:58:04 UTC (rev 2951) @@ -1,7 +1,7 @@ #ifndef ENGINETESTGAMELOGIC_H_ #define ENGINETESTGAMELOGIC_H_ -#include "CameraWrapper.h" +#include "Camera.h" #include "GameLogic.h" #include "Globals.h" #include "Keyboard.h" @@ -57,16 +57,9 @@ Keyboard keyboard; Mouse* mouse; - /*QPoint mLastFrameMousePos; - QPoint mCurrentMousePos;*/ - /*int mLastFrameWheelPos; - int mCurrentWheelPos;*/ QTime* mTime; - //int mLastFrameTime; - //int mCurrentTime; - QVariant mCurrentTimeVariant; bool mIsFirstFrame; @@ -82,11 +75,9 @@ //Scripting QScriptEngine* scriptEngine; - CameraWrapper cameraWrapper; - QScriptValue cameraPositionScriptValue; - QScriptValue cameraDirectionScriptValue; - QScriptValue cameraRightScriptValue; + Camera* camera; + QScriptEngineDebugger debugger; ScriptEditorWidget* m_pScriptEditorWidget; Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-18 09:24:36 UTC (rev 2950) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-18 11:58:04 UTC (rev 2951) @@ -54,22 +54,20 @@ var milliSecondsElapsed = globals.currentFrameTime - globals.previousFrameTime; var secondsElapsed = milliSecondsElapsed / 1000; - if(mouse.isPressed(Qt.RightButton)) + /*if(mouse.isPressed(Qt.RightButton)) { mouseDeltaX = mouse.position.x() - mouse.previousPosition.x(); - camera.yaw(new OgreRadian(-mouseDeltaX * secondsElapsed)); - } + camera.yaw(1); + //camera.yaw(new OgreRadian(-mouseDeltaX * secondsElapsed)); + }*/ if(mouse.isPressed(Qt.RightButton)) { mouseDeltaY = mouse.position.y() - mouse.previousPosition.y(); - camera.pitch(new OgreRadian(-mouseDeltaY * secondsElapsed)); + camera.pitch(-mouseDeltaY * secondsElapsed); } wheelDelta = mouse.getWheelDelta(); - //print('wheelDelta = ', wheelDelta); - fov = camera.getFOVy(); - //print('old fov = ', fov.valueRadians); - tempFOV = new OgreRadian(-wheelDelta * 0.001); - fov.valueRadians = fov.valueRadians + tempFOV.valueRadians; - //print('new fov = ', fov.valueRadians); - camera.setFOVy(fov); + fov = camera.fieldOfView; + tempFOV = -wheelDelta * 0.001; + fov = fov + tempFOV; + camera.fieldOfView = fov; } \ No newline at end of file Added: trunk/QtOgreFramework/EngineTest/source/Camera.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Camera.cpp (rev 0) +++ trunk/QtOgreFramework/EngineTest/source/Camera.cpp 2010-07-18 11:58:04 UTC (rev 2951) @@ -0,0 +1,60 @@ +#include "Camera.h" + +#include <QMatrix4x4> + +Camera::Camera(QObject * parent) + :QObject(parent) +{ + mPosition = QVector3D(0,0,0); + mDirection = QVector3D(0,0,-1); + mRight = QVector3D(1,0,0); + mFieldOfView = 1.0; +} + +const QVector3D& Camera::direction(void) const +{ + return mDirection; +} + +void Camera::setDirection(const QVector3D& direction) +{ + mDirection = direction; +} + +float Camera::fieldOfView(void) const +{ + return mFieldOfView; +} + +void Camera::setFieldOfView(float fieldOfView) +{ + mFieldOfView = fieldOfView; +} + +const QVector3D& Camera::position(void) const +{ + return mPosition; +} + +void Camera::setPosition(const QVector3D& position) +{ + mPosition = position; +} + +const QVector3D& Camera::right(void) const +{ + return mRight; +} + +void Camera::setRight(const QVector3D& right) +{ + mRight = right; +} + +void Camera::pitch(float angleInDegrees) +{ + QMatrix4x4 transform; + transform.rotate(angleInDegrees, mRight); + + mDirection = mDirection * transform; +} \ No newline at end of file Deleted: trunk/QtOgreFramework/EngineTest/source/CameraWrapper.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/CameraWrapper.cpp 2010-07-18 09:24:36 UTC (rev 2950) +++ trunk/QtOgreFramework/EngineTest/source/CameraWrapper.cpp 2010-07-18 11:58:04 UTC (rev 2951) @@ -1,68 +0,0 @@ -#include "CameraWrapper.h" - -#include <OgreCamera.h> -#include <OgreMath.h> - -void CameraWrapper::setOgreCamera(Ogre::Camera* pOgreCamera) -{ - m_pOgreCamera = pOgreCamera; -} - -void CameraWrapper::moveRelative(const Ogre::Vector3 &vec) -{ - m_pOgreCamera->moveRelative(vec); -} - -void CameraWrapper::yaw (const Ogre::Radian &angle) -{ - m_pOgreCamera->yaw(angle); -} - -void CameraWrapper::pitch (const Ogre::Radian &angle) -{ - m_pOgreCamera->pitch(angle); -} - -Ogre::Radian CameraWrapper::getFOVy (void) const -{ - return m_pOgreCamera->getFOVy(); -} - -void CameraWrapper::setFOVy (const Ogre::Radian& fovy) -{ - m_pOgreCamera->setFOVy(fovy); -} - -QVector3D CameraWrapper::getPosition(void) const -{ - Ogre::Vector3 pos = m_pOgreCamera->getPosition(); - return QVector3D(pos.x, pos.y, pos.z); -} - -void CameraWrapper::setPosition(const QVector3D& pos) -{ - m_pOgreCamera->setPosition(pos.x(), pos.y(), pos.z()); -} - -QVector3D CameraWrapper::getDirection(void) const -{ - Ogre::Vector3 dir = m_pOgreCamera->getDirection(); - return QVector3D(dir.x, dir.y, dir.z); -} - -void CameraWrapper::setDirection(const QVector3D& dir) -{ - m_pOgreCamera->setDirection(dir.x(), dir.y(), dir.z()); -} - -QVector3D CameraWrapper::getRight(void) const -{ - Ogre::Vector3 right = m_pOgreCamera->getRight(); - return QVector3D(right.x, right.y, right.z); -} - -QVector3D CameraWrapper::getUp(void) const -{ - Ogre::Vector3 up = m_pOgreCamera->getUp(); - return QVector3D(up.x, up.y, up.z); -} Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 09:24:36 UTC (rev 2950) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 11:58:04 UTC (rev 2951) @@ -31,6 +31,7 @@ void EngineTestGameLogic::initialise(void) { mouse = new Mouse(this); + camera = new Camera(this); initScriptEngine(); @@ -108,6 +109,8 @@ "blueLight.colour = new QColor(0,0,255);" "objectStore.setObject('BlueLight', blueLight);" + "camera.position = new QVector3D(0,0,20);" + "print('QtScript Initialisation End');"; QScriptValue result = scriptEngine->evaluate(mInitialiseScript); @@ -177,6 +180,10 @@ ogreLight->setDiffuseColour(col.redF(), col.greenF(), col.blueF()); } } + + mCamera->setPosition(Ogre::Vector3(camera->position().x(), camera->position().y(), camera->position().z())); + mCamera->setDirection(Ogre::Vector3(camera->direction().x(), camera->direction().y(), camera->direction().z())); + mCamera->setFOVy(Ogre::Radian(camera->fieldOfView())); } void EngineTestGameLogic::shutdown(void) @@ -256,8 +263,6 @@ Ogre::Viewport* viewport = mApplication->ogreRenderWindow()->addViewport(mCamera); viewport->setBackgroundColour(Ogre::ColourValue::Black); - - cameraWrapper.setOgreCamera(mCamera); } void EngineTestGameLogic::initScriptEngine(void) @@ -322,7 +327,7 @@ QScriptValue mouseScriptValue = scriptEngine->newQObject(mouse); scriptEngine->globalObject().setProperty("mouse", mouseScriptValue); - QScriptValue cameraScriptValue = scriptEngine->newQObject(&cameraWrapper); + QScriptValue cameraScriptValue = scriptEngine->newQObject(camera); scriptEngine->globalObject().setProperty("camera", cameraScriptValue); QScriptValue Qt = scriptEngine->newQMetaObject(&staticQtMetaObject); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-18 09:24:42
|
Revision: 2950 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2950&view=rev Author: esuvs Date: 2010-07-18 09:24:36 +0000 (Sun, 18 Jul 2010) Log Message: ----------- Work on mouse handling. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Mouse.h trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Mouse.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Mouse.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Mouse.h 2010-07-18 09:16:23 UTC (rev 2949) +++ trunk/QtOgreFramework/EngineTest/include/Mouse.h 2010-07-18 09:24:36 UTC (rev 2950) @@ -11,28 +11,22 @@ public: Mouse(QObject * parent = 0); - Q_PROPERTY(QPoint position READ position WRITE setPosition) + Q_PROPERTY(QPoint position READ position) Q_PROPERTY(QPoint previousPosition READ previousPosition) public slots: bool isPressed(int mouseButton); - void press(int mouseButton); - void release(int mouseButton); const QPoint& position(void); - void setPosition(const QPoint& pos); const QPoint& previousPosition(void); + void setPreviousPosition(const QPoint& pos); - void resetDelta(void); - void modifyWheelDelta(int wheelDelta); - int getWheelDelta(void); - void resetWheelDelta(void); private: Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 09:16:23 UTC (rev 2949) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 09:24:36 UTC (rev 2950) @@ -153,7 +153,8 @@ } } - mouse->resetDelta(); + //mouse->resetDelta(); + mouse->setPreviousPosition(mouse->position()); mouse->resetWheelDelta(); mSceneManager->destroyAllLights(); @@ -197,10 +198,10 @@ void EngineTestGameLogic::onMousePress(QMouseEvent* event) { mouse->press(event->button()); - + //Update the mouse position as well or we get 'jumps' mouse->setPosition(event->pos()); - mouse->resetDelta(); + mouse->setPreviousPosition(mouse->position()); } void EngineTestGameLogic::onMouseRelease(QMouseEvent* event) Modified: trunk/QtOgreFramework/EngineTest/source/Mouse.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Mouse.cpp 2010-07-18 09:16:23 UTC (rev 2949) +++ trunk/QtOgreFramework/EngineTest/source/Mouse.cpp 2010-07-18 09:24:36 UTC (rev 2950) @@ -51,9 +51,9 @@ return mPreviousPosition; } -void Mouse::resetDelta(void) +void Mouse::setPreviousPosition(const QPoint& pos) { - mPreviousPosition = mPosition; + mPreviousPosition = pos; } void Mouse::modifyWheelDelta(int wheelDelta) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-18 09:16:29
|
Revision: 2949 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2949&view=rev Author: esuvs Date: 2010-07-18 09:16:23 +0000 (Sun, 18 Jul 2010) Log Message: ----------- Work on mouse handling. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/include/Light.h trunk/QtOgreFramework/EngineTest/include/Mouse.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Mouse.cpp Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-18 08:48:33 UTC (rev 2948) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-18 09:16:23 UTC (rev 2949) @@ -56,7 +56,7 @@ void initScriptEnvironment(void); Keyboard keyboard; - Mouse mouse; + Mouse* mouse; /*QPoint mLastFrameMousePos; QPoint mCurrentMousePos;*/ Modified: trunk/QtOgreFramework/EngineTest/include/Light.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-18 08:48:33 UTC (rev 2948) +++ trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-18 09:16:23 UTC (rev 2949) @@ -16,12 +16,12 @@ Q_PROPERTY(QVector3D position READ getPosition WRITE setPosition) Q_PROPERTY(QColor colour READ getColour WRITE setColour) -public slots: const QVector3D& getPosition(void) const; void setPosition(const QVector3D& pos); const QColor& getColour(void) const; void setColour(const QColor& col); + private: QVector3D m_vecPosition; QColor m_colColour; Modified: trunk/QtOgreFramework/EngineTest/include/Mouse.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Mouse.h 2010-07-18 08:48:33 UTC (rev 2948) +++ trunk/QtOgreFramework/EngineTest/include/Mouse.h 2010-07-18 09:16:23 UTC (rev 2949) @@ -9,8 +9,11 @@ Q_OBJECT public: - Mouse(void); + Mouse(QObject * parent = 0); + Q_PROPERTY(QPoint position READ position WRITE setPosition) + Q_PROPERTY(QPoint previousPosition READ previousPosition) + public slots: bool isPressed(int mouseButton); @@ -18,11 +21,11 @@ void release(int mouseButton); - const QPoint& pos(void); + const QPoint& position(void); - void setPos(const QPoint& pos); + void setPosition(const QPoint& pos); - QPoint computeDelta(void); + const QPoint& previousPosition(void); void resetDelta(void); @@ -34,8 +37,8 @@ private: Qt::MouseButtons mMouseButtons; - QPoint mPos; - QPoint mOldPos; + QPoint mPosition; + QPoint mPreviousPosition; int mWheelDelta; }; Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-18 08:48:33 UTC (rev 2948) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-18 09:16:23 UTC (rev 2949) @@ -50,15 +50,19 @@ pos.setZ(pos.z() + right.z()); } camera.position = pos; + + var milliSecondsElapsed = globals.currentFrameTime - globals.previousFrameTime; + var secondsElapsed = milliSecondsElapsed / 1000; + if(mouse.isPressed(Qt.RightButton)) { - mouseDelta = mouse.computeDelta(); - camera.yaw(new OgreRadian(-mouseDelta.x() * 0.01)); + mouseDeltaX = mouse.position.x() - mouse.previousPosition.x(); + camera.yaw(new OgreRadian(-mouseDeltaX * secondsElapsed)); } if(mouse.isPressed(Qt.RightButton)) { - mouseDelta = mouse.computeDelta(); - camera.pitch(new OgreRadian(-mouseDelta.y() * 0.01)); + mouseDeltaY = mouse.position.y() - mouse.previousPosition.y(); + camera.pitch(new OgreRadian(-mouseDeltaY * secondsElapsed)); } wheelDelta = mouse.getWheelDelta(); //print('wheelDelta = ', wheelDelta); Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 08:48:33 UTC (rev 2948) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 09:16:23 UTC (rev 2949) @@ -30,6 +30,8 @@ void EngineTestGameLogic::initialise(void) { + mouse = new Mouse(this); + initScriptEngine(); initScriptEnvironment(); @@ -151,8 +153,8 @@ } } - mouse.resetDelta(); - mouse.resetWheelDelta(); + mouse->resetDelta(); + mouse->resetWheelDelta(); mSceneManager->destroyAllLights(); QHashIterator<QString, QObject*> lightIter(mObjectStore); @@ -194,28 +196,28 @@ void EngineTestGameLogic::onMousePress(QMouseEvent* event) { - mouse.press(event->button()); + mouse->press(event->button()); //Update the mouse position as well or we get 'jumps' - mouse.setPos(event->pos()); - mouse.resetDelta(); + mouse->setPosition(event->pos()); + mouse->resetDelta(); } void EngineTestGameLogic::onMouseRelease(QMouseEvent* event) { - mouse.release(event->button()); + mouse->release(event->button()); } void EngineTestGameLogic::onMouseMove(QMouseEvent* event) { //mCurrentMousePos = event->pos(); - mouse.setPos(event->pos()); + mouse->setPosition(event->pos()); } void EngineTestGameLogic::onWheel(QWheelEvent* event) { //mCurrentWheelPos += event->delta(); - mouse.modifyWheelDelta(event->delta()); + mouse->modifyWheelDelta(event->delta()); } Log* EngineTestGameLogic::demoLog(void) @@ -316,7 +318,7 @@ QScriptValue keyboardScriptValue = scriptEngine->newQObject(&keyboard); scriptEngine->globalObject().setProperty("keyboard", keyboardScriptValue); - QScriptValue mouseScriptValue = scriptEngine->newQObject(&mouse); + QScriptValue mouseScriptValue = scriptEngine->newQObject(mouse); scriptEngine->globalObject().setProperty("mouse", mouseScriptValue); QScriptValue cameraScriptValue = scriptEngine->newQObject(&cameraWrapper); Modified: trunk/QtOgreFramework/EngineTest/source/Mouse.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Mouse.cpp 2010-07-18 08:48:33 UTC (rev 2948) +++ trunk/QtOgreFramework/EngineTest/source/Mouse.cpp 2010-07-18 09:16:23 UTC (rev 2949) @@ -1,7 +1,8 @@ #include "Mouse.h" -Mouse::Mouse(void) - :mWheelDelta(0) +Mouse::Mouse(QObject * parent) + :QObject(parent) + ,mWheelDelta(0) { } @@ -35,24 +36,24 @@ mMouseButtons &= ~mb; } -const QPoint& Mouse::pos(void) +const QPoint& Mouse::position(void) { - return mPos; + return mPosition; } -void Mouse::setPos(const QPoint& pos) +void Mouse::setPosition(const QPoint& pos) { - mPos = pos; + mPosition = pos; } -QPoint Mouse::computeDelta(void) +const QPoint& Mouse::previousPosition(void) { - return mPos - mOldPos; + return mPreviousPosition; } void Mouse::resetDelta(void) { - mOldPos = mPos; + mPreviousPosition = mPosition; } void Mouse::modifyWheelDelta(int wheelDelta) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-18 08:48:39
|
Revision: 2948 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2948&view=rev Author: esuvs Date: 2010-07-18 08:48:33 +0000 (Sun, 18 Jul 2010) Log Message: ----------- Bit of cleaning up. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/Light.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/source/Light.cpp Modified: trunk/QtOgreFramework/EngineTest/include/Light.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-18 07:40:13 UTC (rev 2947) +++ trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-18 08:48:33 UTC (rev 2948) @@ -17,10 +17,10 @@ Q_PROPERTY(QColor colour READ getColour WRITE setColour) public slots: - QVector3D getPosition(void) const; + const QVector3D& getPosition(void) const; void setPosition(const QVector3D& pos); - QColor getColour(void) const; + const QColor& getColour(void) const; void setColour(const QColor& col); private: QVector3D m_vecPosition; Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-18 07:40:13 UTC (rev 2947) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-18 08:48:33 UTC (rev 2948) @@ -53,12 +53,12 @@ if(mouse.isPressed(Qt.RightButton)) { mouseDelta = mouse.computeDelta(); - camera.yaw(new OgreRadian(-mouseDelta.x * 0.01)); + camera.yaw(new OgreRadian(-mouseDelta.x() * 0.01)); } if(mouse.isPressed(Qt.RightButton)) { mouseDelta = mouse.computeDelta(); - camera.pitch(new OgreRadian(-mouseDelta.y * 0.01)); + camera.pitch(new OgreRadian(-mouseDelta.y() * 0.01)); } wheelDelta = mouse.getWheelDelta(); //print('wheelDelta = ', wheelDelta); Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 07:40:13 UTC (rev 2947) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 08:48:33 UTC (rev 2948) @@ -21,20 +21,6 @@ using namespace QtOgre; -QScriptValue toScriptValueQPoint(QScriptEngine *engine, const QPoint &s) -{ - QScriptValue obj = engine->newObject(); - obj.setProperty("x", s.x()); - obj.setProperty("y", s.y()); - return obj; -} - -void fromScriptValueQPoint(const QScriptValue &obj, QPoint &s) -{ - s.setX(obj.property("x").toInt32()); - s.setY(obj.property("y").toInt32()); -} - EngineTestGameLogic::EngineTestGameLogic(void) :GameLogic() ,m_bRunScript(true) @@ -343,8 +329,6 @@ QScriptValue objectStoreScriptValue = scriptEngine->newQObject(&mObjectStore); scriptEngine->globalObject().setProperty("objectStore", objectStoreScriptValue); - qScriptRegisterMetaType(scriptEngine, toScriptValueQPoint, fromScriptValueQPoint); - OgreVector3Class *vecClass = new OgreVector3Class(scriptEngine); scriptEngine->globalObject().setProperty("OgreVector3", vecClass->constructor()); Modified: trunk/QtOgreFramework/EngineTest/source/Light.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Light.cpp 2010-07-18 07:40:13 UTC (rev 2947) +++ trunk/QtOgreFramework/EngineTest/source/Light.cpp 2010-07-18 08:48:33 UTC (rev 2948) @@ -5,7 +5,7 @@ { } -QVector3D Light::getPosition(void) const +const QVector3D& Light::getPosition(void) const { return m_vecPosition; } @@ -15,7 +15,7 @@ m_vecPosition = pos; } -QColor Light::getColour(void) const +const QColor& Light::getColour(void) const { return m_colColour; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-18 07:40:19
|
Revision: 2947 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2947&view=rev Author: esuvs Date: 2010-07-18 07:40:13 +0000 (Sun, 18 Jul 2010) Log Message: ----------- Accidentaly broke QPoint scripting. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 21:48:26 UTC (rev 2946) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-18 07:40:13 UTC (rev 2947) @@ -21,6 +21,20 @@ using namespace QtOgre; +QScriptValue toScriptValueQPoint(QScriptEngine *engine, const QPoint &s) +{ + QScriptValue obj = engine->newObject(); + obj.setProperty("x", s.x()); + obj.setProperty("y", s.y()); + return obj; +} + +void fromScriptValueQPoint(const QScriptValue &obj, QPoint &s) +{ + s.setX(obj.property("x").toInt32()); + s.setY(obj.property("y").toInt32()); +} + EngineTestGameLogic::EngineTestGameLogic(void) :GameLogic() ,m_bRunScript(true) @@ -329,6 +343,8 @@ QScriptValue objectStoreScriptValue = scriptEngine->newQObject(&mObjectStore); scriptEngine->globalObject().setProperty("objectStore", objectStoreScriptValue); + qScriptRegisterMetaType(scriptEngine, toScriptValueQPoint, fromScriptValueQPoint); + OgreVector3Class *vecClass = new OgreVector3Class(scriptEngine); scriptEngine->globalObject().setProperty("OgreVector3", vecClass->constructor()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-17 21:48:32
|
Revision: 2946 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2946&view=rev Author: esuvs Date: 2010-07-17 21:48:26 +0000 (Sat, 17 Jul 2010) Log Message: ----------- Bit of cleaning up. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 21:33:01 UTC (rev 2945) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 21:48:26 UTC (rev 2946) @@ -53,6 +53,7 @@ private: void initScriptEngine(void); + void initScriptEnvironment(void); Keyboard keyboard; Mouse mouse; Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 21:33:01 UTC (rev 2945) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 21:48:26 UTC (rev 2946) @@ -21,27 +21,6 @@ using namespace QtOgre; -QScriptValue toScriptValueQPoint(QScriptEngine *engine, const QPoint &s) -{ - QScriptValue obj = engine->newObject(); - obj.setProperty("x", s.x()); - obj.setProperty("y", s.y()); - return obj; -} - -void fromScriptValueQPoint(const QScriptValue &obj, QPoint &s) -{ - s.setX(obj.property("x").toInt32()); - s.setY(obj.property("y").toInt32()); -} - -struct QtMetaObject : private QObject -{ -public: - static const QMetaObject *get() - { return &static_cast<QtMetaObject*>(0)->staticQtMetaObject; } -}; - EngineTestGameLogic::EngineTestGameLogic(void) :GameLogic() ,m_bRunScript(true) @@ -53,45 +32,10 @@ { initScriptEngine(); - mGlobals = new Globals(this); + initScriptEnvironment(); - QScriptValue lightClass = scriptEngine->scriptValueFromQMetaObject<Light>(); - scriptEngine->globalObject().setProperty("Light", lightClass); - - QScriptValue globalsScriptValue = scriptEngine->newQObject(mGlobals); - scriptEngine->globalObject().setProperty("globals", globalsScriptValue); - - QScriptValue keyboardScriptValue = scriptEngine->newQObject(&keyboard); - scriptEngine->globalObject().setProperty("keyboard", keyboardScriptValue); - - QScriptValue mouseScriptValue = scriptEngine->newQObject(&mouse); - scriptEngine->globalObject().setProperty("mouse", mouseScriptValue); - - QScriptValue cameraScriptValue = scriptEngine->newQObject(&cameraWrapper); - scriptEngine->globalObject().setProperty("camera", cameraScriptValue); - - QScriptValue Qt = scriptEngine->newQMetaObject(QtMetaObject::get()); - Qt.setProperty("App", scriptEngine->newQObject(qApp)); - scriptEngine->globalObject().setProperty("Qt", Qt); - - QScriptValue objectStoreScriptValue = scriptEngine->newQObject(&mObjectStore); - scriptEngine->globalObject().setProperty("objectStore", objectStoreScriptValue); - - qScriptRegisterMetaType(scriptEngine, toScriptValueQPoint, fromScriptValueQPoint); - - OgreVector3Class *vecClass = new OgreVector3Class(scriptEngine); - scriptEngine->globalObject().setProperty("OgreVector3", vecClass->constructor()); - - OgreRadianClass *radianClass = new OgreRadianClass(scriptEngine); - scriptEngine->globalObject().setProperty("OgreRadian", radianClass->constructor()); - //debugger.attachTo(scriptEngine); //debugger.action(QScriptEngineDebugger::InterruptAction)->trigger(); - - - - - //qApp->setStyleSheet(qApp->settings()->value("UI/StyleFile").toString()); mDemoLog = mApplication->createLog("EngineTest"); @@ -215,9 +159,8 @@ while(lightIter.hasNext()) { lightIter.next(); - QObject* pObj = lightIter.value(); - //qCritical() << pObj->objectName(); + Light* light = dynamic_cast<Light*>(pObj); if(light) { @@ -360,6 +303,39 @@ } } +void EngineTestGameLogic::initScriptEnvironment(void) +{ + mGlobals = new Globals(this); + + QScriptValue lightClass = scriptEngine->scriptValueFromQMetaObject<Light>(); + scriptEngine->globalObject().setProperty("Light", lightClass); + + QScriptValue globalsScriptValue = scriptEngine->newQObject(mGlobals); + scriptEngine->globalObject().setProperty("globals", globalsScriptValue); + + QScriptValue keyboardScriptValue = scriptEngine->newQObject(&keyboard); + scriptEngine->globalObject().setProperty("keyboard", keyboardScriptValue); + + QScriptValue mouseScriptValue = scriptEngine->newQObject(&mouse); + scriptEngine->globalObject().setProperty("mouse", mouseScriptValue); + + QScriptValue cameraScriptValue = scriptEngine->newQObject(&cameraWrapper); + scriptEngine->globalObject().setProperty("camera", cameraScriptValue); + + QScriptValue Qt = scriptEngine->newQMetaObject(&staticQtMetaObject); + Qt.setProperty("App", scriptEngine->newQObject(qApp)); + scriptEngine->globalObject().setProperty("Qt", Qt); + + QScriptValue objectStoreScriptValue = scriptEngine->newQObject(&mObjectStore); + scriptEngine->globalObject().setProperty("objectStore", objectStoreScriptValue); + + OgreVector3Class *vecClass = new OgreVector3Class(scriptEngine); + scriptEngine->globalObject().setProperty("OgreVector3", vecClass->constructor()); + + OgreRadianClass *radianClass = new OgreRadianClass(scriptEngine); + scriptEngine->globalObject().setProperty("OgreRadian", radianClass->constructor()); +} + void EngineTestGameLogic::startScriptingEngine(void) { m_bRunScript = true; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-17 21:33:07
|
Revision: 2945 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2945&view=rev Author: esuvs Date: 2010-07-17 21:33:01 +0000 (Sat, 17 Jul 2010) Log Message: ----------- Added globals class for globals script values. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/CMakeLists.txt trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/include/Light.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Added Paths: ----------- trunk/QtOgreFramework/EngineTest/include/Globals.h trunk/QtOgreFramework/EngineTest/source/Globals.cpp Modified: trunk/QtOgreFramework/EngineTest/CMakeLists.txt =================================================================== --- trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-07-17 10:06:15 UTC (rev 2944) +++ trunk/QtOgreFramework/EngineTest/CMakeLists.txt 2010-07-17 21:33:01 UTC (rev 2945) @@ -4,6 +4,7 @@ SET(SRC_FILES source/CameraWrapper.cpp + source/Globals.cpp source/Light.cpp source/main.cpp source/Mouse.cpp @@ -16,6 +17,7 @@ SET(INC_FILES include/CameraWrapper.h include/EngineTestGameLogic.h + include/Globals.h include/Keyboard.h include/Light.h include/Mouse.h Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 10:06:15 UTC (rev 2944) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 21:33:01 UTC (rev 2945) @@ -3,6 +3,7 @@ #include "CameraWrapper.h" #include "GameLogic.h" +#include "Globals.h" #include "Keyboard.h" #include "Light.h" #include "Log.h" @@ -62,8 +63,8 @@ int mCurrentWheelPos;*/ QTime* mTime; - int mLastFrameTime; - int mCurrentTime; + //int mLastFrameTime; + //int mCurrentTime; QVariant mCurrentTimeVariant; bool mIsFirstFrame; @@ -96,6 +97,8 @@ ObjectStore mObjectStore; QString mInitialiseScript; + + Globals* mGlobals; }; #endif /*ENGINETESTGAMELOGIC_H_*/ \ No newline at end of file Added: trunk/QtOgreFramework/EngineTest/include/Globals.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Globals.h (rev 0) +++ trunk/QtOgreFramework/EngineTest/include/Globals.h 2010-07-17 21:33:01 UTC (rev 2945) @@ -0,0 +1,30 @@ +#ifndef GLOBALS_H_ +#define GLOBALS_H_ + +#include <QColor> +#include <QObject> +#include <QScriptEngine> +#include <QVector3D> + +class Globals : public QObject +{ + Q_OBJECT + +public: + Globals(QObject* parent = 0); + + Q_PROPERTY(quint32 currentFrameTime READ getCurrentFrameTime) + Q_PROPERTY(quint32 previousFrameTime READ getPreviousFrameTime) + +public slots: + quint32 getCurrentFrameTime(void) const; + void setCurrentFrameTime(const quint32 uCurrentFrameTime); + + quint32 getPreviousFrameTime(void) const; + void setPreviousFrameTime(const quint32 uPreviousFrameTime); +private: + quint32 m_uCurrentFrameTime; + quint32 m_uPreviousFrameTime; +}; + +#endif //GLOBALS_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/include/Light.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-17 10:06:15 UTC (rev 2944) +++ trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-17 21:33:01 UTC (rev 2945) @@ -3,6 +3,7 @@ #include <QColor> #include <QObject> +#include <QScriptEngine> #include <QVector3D> class Light : public QObject @@ -26,5 +27,7 @@ QColor m_colColour; }; +Q_SCRIPT_DECLARE_QMETAOBJECT(Light, QObject*) + #endif //LIGHT_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-17 10:06:15 UTC (rev 2944) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-17 21:33:01 UTC (rev 2945) @@ -14,9 +14,9 @@ function updateLights() { - objectStore.getObject('RedLight').position = torusKnotValue(2.0, 5.0, currentTime / 500); - objectStore.getObject('GreenLight').position = torusKnotValue(3.0, 7.0, currentTime / 420); - objectStore.getObject('BlueLight').position = torusKnotValue(3.5, 4.4, currentTime / 830); + objectStore.getObject('RedLight').position = torusKnotValue(2.0, 5.0, globals.currentFrameTime / 500); + objectStore.getObject('GreenLight').position = torusKnotValue(3.0, 7.0, globals.currentFrameTime / 420); + objectStore.getObject('BlueLight').position = torusKnotValue(3.5, 4.4, globals.currentFrameTime / 830); } function processInput() Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 10:06:15 UTC (rev 2944) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 21:33:01 UTC (rev 2945) @@ -49,17 +49,17 @@ } -Q_SCRIPT_DECLARE_QMETAOBJECT(Light, QObject*) - void EngineTestGameLogic::initialise(void) { initScriptEngine(); + mGlobals = new Globals(this); + QScriptValue lightClass = scriptEngine->scriptValueFromQMetaObject<Light>(); scriptEngine->globalObject().setProperty("Light", lightClass); - /*QScriptValue currentTimeScriptValue = scriptEngine->newVariant(mCurrentTimeVariant); - scriptEngine->globalObject().setProperty("currentTime", currentTimeScriptValue);*/ + QScriptValue globalsScriptValue = scriptEngine->newQObject(mGlobals); + scriptEngine->globalObject().setProperty("globals", globalsScriptValue); QScriptValue keyboardScriptValue = scriptEngine->newQObject(&keyboard); scriptEngine->globalObject().setProperty("keyboard", keyboardScriptValue); @@ -143,27 +143,7 @@ connect(m_pScriptEditorWidget, SIGNAL(start(void)), this, SLOT(startScriptingEngine(void))); connect(m_pScriptEditorWidget, SIGNAL(stop(void)), this, SLOT(stopScriptingEngine(void))); - - /*Ogre::Light* pointLight = mSceneManager->createLight("pointLight"); - pointLight->setType(Ogre::Light::LT_POINT); - pointLight->setPosition(Ogre::Vector3(0, 0, 0)); - pointLight->setDiffuseColour(1.0, 0.0, 0.0);*/ - /*Light* redLight = new Light(); - redLight->setPosition(QVector3D(0.0,0.0,0.0)); - redLight->setColour(QColor(255, 0, 0)); - mObjectStore.setObject("RedLight", redLight); - - Light* greenLight = new Light(); - greenLight->setPosition(QVector3D(0.0,0.0,0.0)); - greenLight->setColour(QColor(0, 255, 0)); - mObjectStore.setObject("GreenLight", greenLight); - - Light* blueLight = new Light(); - blueLight->setPosition(QVector3D(0.0,0.0,0.0)); - blueLight->setColour(QColor(0, 0, 255)); - mObjectStore.setObject("BlueLight", blueLight);*/ - mInitialiseScript = "print('QtScript Initialisation Begin');" @@ -195,16 +175,11 @@ void EngineTestGameLogic::update(void) { - mLastFrameTime = mCurrentTime; - mCurrentTime = mTime->elapsed(); + mGlobals->setPreviousFrameTime(mGlobals->getCurrentFrameTime()); + mGlobals->setCurrentFrameTime(mTime->elapsed()); - mCurrentTimeVariant = mCurrentTime; + float timeElapsedInSeconds = (mGlobals->getCurrentFrameTime() - mGlobals->getPreviousFrameTime()) / 1000.0f; - QScriptValue currentTimeScriptValue = scriptEngine->newVariant(mCurrentTimeVariant); - scriptEngine->globalObject().setProperty("currentTime", currentTimeScriptValue); - - float timeElapsedInSeconds = (mCurrentTime - mLastFrameTime) / 1000.0f; - for (Ogre::SceneManager::MovableObjectIterator moi = mSceneManager->getMovableObjectIterator("Entity"); moi.hasMoreElements(); moi.moveNext()) { Ogre::Entity *entity = static_cast<Ogre::Entity*>(moi.peekNextValue()); Added: trunk/QtOgreFramework/EngineTest/source/Globals.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/Globals.cpp (rev 0) +++ trunk/QtOgreFramework/EngineTest/source/Globals.cpp 2010-07-17 21:33:01 UTC (rev 2945) @@ -0,0 +1,26 @@ +#include "Globals.h" + +Globals::Globals(QObject* parent) + :QObject(parent) +{ +} + +quint32 Globals::getCurrentFrameTime(void) const +{ + return m_uCurrentFrameTime; +} + +void Globals::setCurrentFrameTime(const quint32 uCurrentFrameTime) +{ + m_uCurrentFrameTime = uCurrentFrameTime; +} + +quint32 Globals::getPreviousFrameTime(void) const +{ + return m_uPreviousFrameTime; +} + +void Globals::setPreviousFrameTime(const quint32 uPreviousFrameTime) +{ + m_uPreviousFrameTime = uPreviousFrameTime; +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-17 10:06:22
|
Revision: 2944 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2944&view=rev Author: esuvs Date: 2010-07-17 10:06:15 +0000 (Sat, 17 Jul 2010) Log Message: ----------- Enabled creation of lights from initialisation script. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/include/Light.h trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 09:07:54 UTC (rev 2943) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 10:06:15 UTC (rev 2944) @@ -94,6 +94,8 @@ QHash<QString, Light*> m_Lights; ObjectStore mObjectStore; + + QString mInitialiseScript; }; #endif /*ENGINETESTGAMELOGIC_H_*/ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/include/Light.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-17 09:07:54 UTC (rev 2943) +++ trunk/QtOgreFramework/EngineTest/include/Light.h 2010-07-17 10:06:15 UTC (rev 2944) @@ -26,4 +26,5 @@ QColor m_colColour; }; + #endif //LIGHT_H_ \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 09:07:54 UTC (rev 2943) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 10:06:15 UTC (rev 2944) @@ -49,10 +49,15 @@ } +Q_SCRIPT_DECLARE_QMETAOBJECT(Light, QObject*) + void EngineTestGameLogic::initialise(void) { - initScriptEngine(); + initScriptEngine(); + QScriptValue lightClass = scriptEngine->scriptValueFromQMetaObject<Light>(); + scriptEngine->globalObject().setProperty("Light", lightClass); + /*QScriptValue currentTimeScriptValue = scriptEngine->newVariant(mCurrentTimeVariant); scriptEngine->globalObject().setProperty("currentTime", currentTimeScriptValue);*/ @@ -144,7 +149,7 @@ pointLight->setPosition(Ogre::Vector3(0, 0, 0)); pointLight->setDiffuseColour(1.0, 0.0, 0.0);*/ - Light* redLight = new Light(); + /*Light* redLight = new Light(); redLight->setPosition(QVector3D(0.0,0.0,0.0)); redLight->setColour(QColor(255, 0, 0)); mObjectStore.setObject("RedLight", redLight); @@ -157,8 +162,35 @@ Light* blueLight = new Light(); blueLight->setPosition(QVector3D(0.0,0.0,0.0)); blueLight->setColour(QColor(0, 0, 255)); - mObjectStore.setObject("BlueLight", blueLight); + mObjectStore.setObject("BlueLight", blueLight);*/ + mInitialiseScript = + "print('QtScript Initialisation Begin');" + + "var redLight = new Light();" + "redLight.position = new QVector3D(100,100,100);" + "redLight.colour = new QColor(255,0,0);" + "objectStore.setObject('RedLight', redLight);" + + "var greenLight = new Light();" + "greenLight.position = new QVector3D(100,100,100);" + "greenLight.colour = new QColor(0,255,0);" + "objectStore.setObject('GreenLight', greenLight);" + + "var blueLight = new Light();" + "blueLight.position = new QVector3D(100,100,100);" + "blueLight.colour = new QColor(0,0,255);" + "objectStore.setObject('BlueLight', blueLight);" + + "print('QtScript Initialisation End');"; + + QScriptValue result = scriptEngine->evaluate(mInitialiseScript); + if (scriptEngine->hasUncaughtException()) + { + int line = scriptEngine->uncaughtExceptionLineNumber(); + qCritical() << "uncaught exception at line" << line << ":" << result.toString(); + } + } void EngineTestGameLogic::update(void) @@ -209,7 +241,9 @@ { lightIter.next(); - Light* light = dynamic_cast<Light*>(lightIter.value()); + QObject* pObj = lightIter.value(); + //qCritical() << pObj->objectName(); + Light* light = dynamic_cast<Light*>(pObj); if(light) { Ogre::Light* ogreLight = mSceneManager->createLight(lightIter.key().toStdString()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-17 09:08:01
|
Revision: 2943 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2943&view=rev Author: esuvs Date: 2010-07-17 09:07:54 +0000 (Sat, 17 Jul 2010) Log Message: ----------- Three lights now scripted to follow a torus knot pattern. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-17 08:33:28 UTC (rev 2942) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-17 09:07:54 UTC (rev 2943) @@ -1,14 +1,24 @@ processInput(); updateLights(); -function updateLights() +function torusKnotValue(q, p, theta) { - var x = Math.sin(currentTime / 1000); - var y = Math.cos(currentTime / 1000); + var partial = ((2 + Math.cos((q * theta) / p))); - objectStore.getObject('BlueLight').position = new QVector3D(x * 100,y * 100, 0); + var x = partial * Math.cos(theta); + var y = partial * Math.sin(theta); + var z = Math.sin((q * theta) / p); + + return new QVector3D(x * 1000, y * 1000, z * 1000); } +function updateLights() +{ + objectStore.getObject('RedLight').position = torusKnotValue(2.0, 5.0, currentTime / 500); + objectStore.getObject('GreenLight').position = torusKnotValue(3.0, 7.0, currentTime / 420); + objectStore.getObject('BlueLight').position = torusKnotValue(3.5, 4.4, currentTime / 830); +} + function processInput() { var pos = camera.position; Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 08:33:28 UTC (rev 2942) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 09:07:54 UTC (rev 2943) @@ -144,15 +144,19 @@ pointLight->setPosition(Ogre::Vector3(0, 0, 0)); pointLight->setDiffuseColour(1.0, 0.0, 0.0);*/ - Light* light = new Light(); - light->setPosition(QVector3D(0.0,0.0,0.0)); - light->setColour(QColor(0, 255, 0)); - m_Lights["GreenLight"] = light; + Light* redLight = new Light(); + redLight->setPosition(QVector3D(0.0,0.0,0.0)); + redLight->setColour(QColor(255, 0, 0)); + mObjectStore.setObject("RedLight", redLight); + Light* greenLight = new Light(); + greenLight->setPosition(QVector3D(0.0,0.0,0.0)); + greenLight->setColour(QColor(0, 255, 0)); + mObjectStore.setObject("GreenLight", greenLight); + Light* blueLight = new Light(); blueLight->setPosition(QVector3D(0.0,0.0,0.0)); blueLight->setColour(QColor(0, 0, 255)); - //m_Lights["GreenLight"] = blueLight; mObjectStore.setObject("BlueLight", blueLight); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <es...@us...> - 2010-07-17 08:33:34
|
Revision: 2942 http://ogreaddons.svn.sourceforge.net/ogreaddons/?rev=2942&view=rev Author: esuvs Date: 2010-07-17 08:33:28 +0000 (Sat, 17 Jul 2010) Log Message: ----------- Scripting now moves blue light round in circles. Modified Paths: -------------- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h trunk/QtOgreFramework/EngineTest/media/scripts/update.js trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp trunk/QtOgreFramework/EngineTest/ui/ScriptEditorWidget.ui Modified: trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h =================================================================== --- trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-16 02:04:19 UTC (rev 2941) +++ trunk/QtOgreFramework/EngineTest/include/EngineTestGameLogic.h 2010-07-17 08:33:28 UTC (rev 2942) @@ -64,9 +64,12 @@ int mLastFrameTime; int mCurrentTime; + QVariant mCurrentTimeVariant; bool mIsFirstFrame; + quint32 m_uTimeSinceStart; + float mCameraSpeed; StyleSettingsWidget* mStyleSettingsWidget; Modified: trunk/QtOgreFramework/EngineTest/media/scripts/update.js =================================================================== --- trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-16 02:04:19 UTC (rev 2941) +++ trunk/QtOgreFramework/EngineTest/media/scripts/update.js 2010-07-17 08:33:28 UTC (rev 2942) @@ -1,49 +1,61 @@ -var pos = camera.position; -var dir = camera.direction; -var right = camera.right; -if(keyboard.isPressed(Qt.Key_W)) +processInput(); +updateLights(); + +function updateLights() { -// pos += dir; - pos.setX(pos.x() + dir.x()); - pos.setY(pos.y() + dir.y()); - pos.setZ(pos.z() + dir.z()); + var x = Math.sin(currentTime / 1000); + var y = Math.cos(currentTime / 1000); + + objectStore.getObject('BlueLight').position = new QVector3D(x * 100,y * 100, 0); } -if(keyboard.isPressed(Qt.Key_S)) + +function processInput() { - pos.setX(pos.x() - dir.x()); - pos.setY(pos.y() - dir.y()); - pos.setZ(pos.z() - dir.z()); -} -if(keyboard.isPressed(Qt.Key_A)) -{ - pos.setX(pos.x() - right.x()); - pos.setY(pos.y() - right.y()); - pos.setZ(pos.z() - right.z()); -} -if(keyboard.isPressed(Qt.Key_D)) -{ - pos.setX(pos.x() + right.x()); - pos.setY(pos.y() + right.y()); - pos.setZ(pos.z() + right.z()); -} -camera.position = pos; -if(mouse.isPressed(Qt.RightButton)) -{ - mouseDelta = mouse.computeDelta(); - camera.yaw(new OgreRadian(-mouseDelta.x * 0.01)); -} -if(mouse.isPressed(Qt.RightButton)) -{ - mouseDelta = mouse.computeDelta(); - camera.pitch(new OgreRadian(-mouseDelta.y * 0.01)); -} -wheelDelta = mouse.getWheelDelta(); -//print('wheelDelta = ', wheelDelta); -fov = camera.getFOVy(); -//print('old fov = ', fov.valueRadians); -tempFOV = new OgreRadian(-wheelDelta * 0.001); -fov.valueRadians = fov.valueRadians + tempFOV.valueRadians; -//print('new fov = ', fov.valueRadians); -camera.setFOVy(fov); - -print('Colour = ', objectStore.getObject('BlueLight').Colour); \ No newline at end of file + var pos = camera.position; + var dir = camera.direction; + var right = camera.right; + if(keyboard.isPressed(Qt.Key_W)) + { + // pos += dir; + pos.setX(pos.x() + dir.x()); + pos.setY(pos.y() + dir.y()); + pos.setZ(pos.z() + dir.z()); + } + if(keyboard.isPressed(Qt.Key_S)) + { + pos.setX(pos.x() - dir.x()); + pos.setY(pos.y() - dir.y()); + pos.setZ(pos.z() - dir.z()); + } + if(keyboard.isPressed(Qt.Key_A)) + { + pos.setX(pos.x() - right.x()); + pos.setY(pos.y() - right.y()); + pos.setZ(pos.z() - right.z()); + } + if(keyboard.isPressed(Qt.Key_D)) + { + pos.setX(pos.x() + right.x()); + pos.setY(pos.y() + right.y()); + pos.setZ(pos.z() + right.z()); + } + camera.position = pos; + if(mouse.isPressed(Qt.RightButton)) + { + mouseDelta = mouse.computeDelta(); + camera.yaw(new OgreRadian(-mouseDelta.x * 0.01)); + } + if(mouse.isPressed(Qt.RightButton)) + { + mouseDelta = mouse.computeDelta(); + camera.pitch(new OgreRadian(-mouseDelta.y * 0.01)); + } + wheelDelta = mouse.getWheelDelta(); + //print('wheelDelta = ', wheelDelta); + fov = camera.getFOVy(); + //print('old fov = ', fov.valueRadians); + tempFOV = new OgreRadian(-wheelDelta * 0.001); + fov.valueRadians = fov.valueRadians + tempFOV.valueRadians; + //print('new fov = ', fov.valueRadians); + camera.setFOVy(fov); +} \ No newline at end of file Modified: trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp =================================================================== --- trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-16 02:04:19 UTC (rev 2941) +++ trunk/QtOgreFramework/EngineTest/source/EngineTestGameLogic.cpp 2010-07-17 08:33:28 UTC (rev 2942) @@ -53,6 +53,9 @@ { initScriptEngine(); + /*QScriptValue currentTimeScriptValue = scriptEngine->newVariant(mCurrentTimeVariant); + scriptEngine->globalObject().setProperty("currentTime", currentTimeScriptValue);*/ + QScriptValue keyboardScriptValue = scriptEngine->newQObject(&keyboard); scriptEngine->globalObject().setProperty("keyboard", keyboardScriptValue); @@ -159,6 +162,11 @@ mLastFrameTime = mCurrentTime; mCurrentTime = mTime->elapsed(); + mCurrentTimeVariant = mCurrentTime; + + QScriptValue currentTimeScriptValue = scriptEngine->newVariant(mCurrentTimeVariant); + scriptEngine->globalObject().setProperty("currentTime", currentTimeScriptValue); + float timeElapsedInSeconds = (mCurrentTime - mLastFrameTime) / 1000.0f; for (Ogre::SceneManager::MovableObjectIterator moi = mSceneManager->getMovableObjectIterator("Entity"); moi.hasMoreElements(); moi.moveNext()) Modified: trunk/QtOgreFramework/EngineTest/ui/ScriptEditorWidget.ui =================================================================== --- trunk/QtOgreFramework/EngineTest/ui/ScriptEditorWidget.ui 2010-07-16 02:04:19 UTC (rev 2941) +++ trunk/QtOgreFramework/EngineTest/ui/ScriptEditorWidget.ui 2010-07-17 08:33:28 UTC (rev 2942) @@ -6,7 +6,7 @@ <rect> <x>0</x> <y>0</y> - <width>508</width> + <width>714</width> <height>425</height> </rect> </property> @@ -50,7 +50,14 @@ </widget> </item> <item row="1" column="0" colspan="5"> - <widget class="QPlainTextEdit" name="m_pTextEdit"/> + <widget class="QPlainTextEdit" name="m_pTextEdit"> + <property name="font"> + <font> + <family>Courier New</family> + <pointsize>12</pointsize> + </font> + </property> + </widget> </item> </layout> </widget> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |