Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Apr 28, 2011, 7:15:14 AM (14 years ago)
Author:
rgrieder
Message:

Merged kicklib2 branch back to trunk (includes former branches ois_update, mac_osx and kicklib).

Notes for updating

Linux:
You don't need an extra package for CEGUILua and Tolua, it's already shipped with CEGUI.
However you do need to make sure that the OgreRenderer is installed too with CEGUI 0.7 (may be a separate package).
Also, Orxonox now recognises if you install the CgProgramManager (a separate package available on newer Ubuntu on Debian systems).

Windows:
Download the new dependency packages versioned 6.0 and use these. If you have problems with that or if you don't like the in game console problem mentioned below, you can download the new 4.3 version of the packages (only available for Visual Studio 2005/2008).

Key new features:

  • *Support for Mac OS X*
  • Visual Studio 2010 support
  • Bullet library update to 2.77
  • OIS library update to 1.3
  • Support for CEGUI 0.7 —> Support for Arch Linux and even SuSE
  • Improved install target
  • Compiles now with GCC 4.6
  • Ogre Cg Shader plugin activated for Linux if available
  • And of course lots of bug fixes

There are also some regressions:

  • No support for CEGUI 0.5, Ogre 1.4 and boost 1.35 - 1.39 any more
  • In game console is not working in main menu for CEGUI 0.7
  • Tolua (just the C lib, not the application) and CEGUILua libraries are no longer in our repository. —> You will need to get these as well when compiling Orxonox
  • And of course lots of new bugs we don't yet know about
Location:
code/trunk/src/external/bullet/BulletDynamics/Vehicle
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • code/trunk/src/external/bullet/BulletDynamics/Vehicle/btRaycastVehicle.cpp

    r5781 r8351  
    2323#include "BulletDynamics/ConstraintSolver/btContactConstraint.h"
    2424
    25 static btRigidBody s_fixedObject( 0,0,0);
     25btRigidBody& btActionInterface::getFixedBody()
     26{
     27        static btRigidBody s_fixed(0, 0,0);
     28        s_fixed.setMassProps(btScalar(0.),btVector3(btScalar(0.),btScalar(0.),btScalar(0.)));
     29        return s_fixed;
     30}
    2631
    2732btRaycastVehicle::btRaycastVehicle(const btVehicleTuning& tuning,btRigidBody* chassis,  btVehicleRaycaster* raycaster )
     
    7176        ci.m_bIsFrontWheel = isFrontWheel;
    7277        ci.m_maxSuspensionTravelCm = tuning.m_maxSuspensionTravelCm;
     78        ci.m_maxSuspensionForce = tuning.m_maxSuspensionForce;
    7379
    7480        m_wheelInfo.push_back( btWheelInfo(ci));
     
    187193                wheel.m_raycastInfo.m_isInContact = true;
    188194               
    189                 wheel.m_raycastInfo.m_groundObject = &s_fixedObject;///@todo for driving on dynamic/movable objects!;
     195                wheel.m_raycastInfo.m_groundObject = &getFixedBody();///@todo for driving on dynamic/movable objects!;
    190196                //wheel.m_raycastInfo.m_groundObject = object;
    191197
     
    302308                btScalar suspensionForce = wheel.m_wheelsSuspensionForce;
    303309               
    304                 btScalar gMaxSuspensionForce = btScalar(6000.);
    305                 if (suspensionForce > gMaxSuspensionForce)
    306                 {
    307                         suspensionForce = gMaxSuspensionForce;
     310                if (suspensionForce > wheel.m_maxSuspensionForce)
     311                {
     312                        suspensionForce = wheel.m_maxSuspensionForce;
    308313                }
    309314                btVector3 impulse = wheel.m_raycastInfo.m_contactNormalWS * suspensionForce * step;
     
    690695                                        btVector3 sideImp = m_axle[wheel] * m_sideImpulse[wheel];
    691696
    692                                         rel_pos[m_indexForwardAxis] *= wheelInfo.m_rollInfluence;
     697                                        rel_pos[m_indexUpAxis] *= wheelInfo.m_rollInfluence;
    693698                                        m_chassisBody->applyImpulse(sideImp,rel_pos);
    694699
     
    709714        for (int v=0;v<this->getNumWheels();v++)
    710715        {
    711                 btVector3 wheelColor(0,255,255);
     716                btVector3 wheelColor(0,1,1);
    712717                if (getWheelInfo(v).m_raycastInfo.m_isInContact)
    713718                {
    714                         wheelColor.setValue(0,0,255);
     719                        wheelColor.setValue(0,0,1);
    715720                } else
    716721                {
    717                         wheelColor.setValue(255,0,255);
     722                        wheelColor.setValue(1,0,1);
    718723                }
    719724
  • code/trunk/src/external/bullet/BulletDynamics/Vehicle/btRaycastVehicle.h

    r5781 r8351  
    3030                btAlignedObjectArray<btScalar>  m_forwardImpulse;
    3131                btAlignedObjectArray<btScalar>  m_sideImpulse;
     32       
     33                ///backwards compatibility
     34                int     m_userConstraintType;
     35                int     m_userConstraintId;
    3236
    3337public:
     
    4145                                m_suspensionDamping(btScalar(0.88)),
    4246                                m_maxSuspensionTravelCm(btScalar(500.)),
    43                                 m_frictionSlip(btScalar(10.5))
     47                                m_frictionSlip(btScalar(10.5)),
     48                                m_maxSuspensionForce(btScalar(6000.))
    4449                        {
    4550                        }
     
    4954                        btScalar        m_maxSuspensionTravelCm;
    5055                        btScalar        m_frictionSlip;
     56                        btScalar        m_maxSuspensionForce;
    5157
    5258                };
     
    7985        virtual void updateAction( btCollisionWorld* collisionWorld, btScalar step)
    8086        {
     87        (void) collisionWorld;
    8188                updateVehicle(step);
    8289        }
     
    189196
    190197
     198        ///backwards compatibility
     199        int getUserConstraintType() const
     200        {
     201                return m_userConstraintType ;
     202        }
     203
     204        void    setUserConstraintType(int userConstraintType)
     205        {
     206                m_userConstraintType = userConstraintType;
     207        };
     208
     209        void    setUserConstraintId(int uid)
     210        {
     211                m_userConstraintId = uid;
     212        }
     213
     214        int getUserConstraintId() const
     215        {
     216                return m_userConstraintId;
     217        }
    191218
    192219};
  • code/trunk/src/external/bullet/BulletDynamics/Vehicle/btWheelInfo.h

    r5781 r8351  
    3030        btScalar                m_wheelsDampingRelaxation;
    3131        btScalar                m_frictionSlip;
     32        btScalar                m_maxSuspensionForce;
    3233        bool m_bIsFrontWheel;
    3334       
     
    6970        btScalar        m_deltaRotation;
    7071        btScalar        m_rollInfluence;
     72        btScalar        m_maxSuspensionForce;
    7173
    7274        btScalar        m_engineForce;
     
    100102                m_rollInfluence = btScalar(0.1);
    101103                m_bIsFrontWheel = ci.m_bIsFrontWheel;
     104                m_maxSuspensionForce = ci.m_maxSuspensionForce;
    102105
    103106        }
Note: See TracChangeset for help on using the changeset viewer.