1. 09 Apr, 2013 3 commits
    • DavidWyand-GG's avatar
      Game cam and eye banking, control schemes · 660250cc
      DavidWyand-GG authored
      - ShapeBaseData has two new properties.  cameraCanBank indicates that
      the game object may bank its eye/camera, if supported by the object.
      mountedImagesBank indicates that mounted images should bank with the
      eye/camera in first person view.  Both default to false.
      - Player supports 1st person eye and 3rd person camera banking when
      making use of the new ExtendedMove class.
      - Camera class supports banking when making use of the new ExtendedMove
      class.
      - GameConnection now has an idea of a control scheme.  This determines
      how game objects should respond to input events.  A control scheme may
      be set by either the server or client.  Current control schemes are:
      -- Absolute rotation (likely though the ExtendedMove class)
      -- Add relative yaw (from mouse or gamepad) to absolute rotation.
      -- Add relative pitch (from mouse or gamepad) to absolute rotation.
      - Player class supports the new control schemes when using the
      ExtendedMove class.
      - Camera class supports the new control scheme when using the
      ExtendedMove class.
      660250cc
    • DavidWyand-GG's avatar
      Side by side rendering · b32e7688
      DavidWyand-GG authored
      - Side by side rendering implemented throughout the graphics pipeline.
      - New GuiTSCtrl renderStyle property is set to "stereo side by side" to
      activate.
      - You set an IDisplayDevice on the GameConnection to define any vertical
      FOV, projection offset, and stereo eye offset properties required for
      the stereo rendering (no display device included with this commit).
      - Full and Empty templates updated with correct scripts and shaders.
      b32e7688
    • DavidWyand-GG's avatar
      ExtendedMove changes · f1099cba
      DavidWyand-GG authored
      - Support for three positions and rotations.
      - Increased the number of bits used to network rotations.
      - New Euler based rotation support, in addition to the existing
      quaternion support.
      f1099cba
  2. 28 Mar, 2013 1 commit
    • thecelloman's avatar
      Resolve issue #163 · 7e5ddf4c
      thecelloman authored
      Fixed and assert on changing material, and we now map the material to the MATMGR by name instead of type.
      7e5ddf4c
  3. 22 Feb, 2013 1 commit
    • DavidWyand-GG's avatar
      Change ShapeBase to only test if available meshes · 47787900
      DavidWyand-GG authored
      The ShapeBase class tests if all of its meshes are hidden and if so,
      then it doesn't render during that frame.  However, if there are no
      meshes in the ShapeBase and only nodes then rendering is also skipped.
      Unfortunately, this also skips the rendering of any mounted images.
      This change allows for a mesh-less skeleton to render any mounted
      images.
      47787900
  4. 01 Feb, 2013 1 commit
  5. 30 Jan, 2013 1 commit
  6. 23 Jan, 2013 1 commit
    • DavidWyand-GG's avatar
      ExtendedMove class and support · 35374f93
      DavidWyand-GG authored
      The ExtendedMove class can optionally replace the standard Move class to
      allow the passing of absolute position and rotation information from the
      client's input device to the server.  It is enabled by changing
      $TORQUE_EXTENDED_MOVE to true in buildFiles/config/project.conf and
      re-running the project generator.
      35374f93
  7. 22 Jan, 2013 1 commit
    • DavidWyand-GG's avatar
      New RigidShape method to force client · 0e87a8b6
      DavidWyand-GG authored
      New forceClientTransform() console method to force a RigidShape's
      transform on the client.  This is used when you transform a RigidShape
      on the server and want the client to immediately transform rather than
      interpolate to the transform.
      0e87a8b6
  8. 18 Jan, 2013 1 commit
    • bank's avatar
      Fix for issue #210 for ParticleData sends out-of-range data via BitStream · 9b2caeed
      bank authored
      1. When addProtectedField used with custom setters, we need to return false, or it will set the value via regular routine after the method exists (change ParticleData::protectedSetTimes() to return false instead of true).
      
      2. The ParticleData::sizes[] needs a custom setter, so the value is clamped in a range of 0.f and MaxParticleSize.
      
      3. The spinRadnomMin and spinRandomMax ParticleData fields need a FRangeValidator, so it auto-clamped in a range of -1000 to 1000, as we are writing data trying to fit the values in 11 bits (as UInt upto 2048 max).
         * The description for those fields needs to be updated to use 1000 instead of 10000.
         * ParticleData::onAdd() should check for values to be in a correct range too.
      9b2caeed
  9. 14 Dec, 2012 1 commit
  10. 23 Nov, 2012 1 commit
  11. 13 Nov, 2012 1 commit
    • Daniel Buckmaster's avatar
      Updated logic in MissionArea::getServerObject. · 093252ad
      Daniel Buckmaster authored
      Before this function would iterate through every server-side object to
      find a MissionArea. Now, it stores the server object in a static member
      smServerObject. This member is updated in onAdd and onRemove, and returned
      by getServerObject.
      093252ad
  12. 08 Nov, 2012 2 commits
  13. 05 Nov, 2012 4 commits
  14. 17 Oct, 2012 1 commit
  15. 04 Oct, 2012 3 commits
  16. 02 Oct, 2012 3 commits
    • Daniel Buckmaster's avatar
      Fixed stream read/write mismatch bug. · b097c76e
      Daniel Buckmaster authored
      It was causing Vehicles to roll forwards with a constant velocity when
      stationary, and ignore move->y.
      b097c76e
    • Daniel Buckmaster's avatar
      Added steering return to Vehicle. · e3cb30bb
      Daniel Buckmaster authored
      It happens in Vehicle::updateMove so it can apply to all vehicle
      subclasses. It is applied to both x and y steering.
      e3cb30bb
    • Daniel Buckmaster's avatar
      Added steering centre members to VehicleData. · eae9fc36
      Daniel Buckmaster authored
      steeringReturn is the main control for the amount of return in
      the steering. Setting it to 0 (the default) disables steering return
      completely.
      
      steeringReturnSpeedScale is a multiplier on the amount of effect that
      the vehicle's velocity has on its steering return.
      
      powerSteering can be set to eliminate the effect of steering return on
      user input. Without this flag set, the user will have a harder time
      steering, because the wheels try to return as they steer. If this flag
      is set, steering return will not be applied while the user is actually
      steering, only when they release.
      eae9fc36
  17. 27 Sep, 2012 1 commit
  18. 26 Sep, 2012 4 commits
  19. 23 Sep, 2012 1 commit
  20. 19 Sep, 2012 1 commit