Commit graph

107 commits

Author SHA1 Message Date
SilentMike a9643a448d Merge pull request #327 from thecelloman/smoothslope
Add a new Terrain brush action:  Smooth Slope.
2013-04-10 14:47:09 -07:00
thecelloman 8eb0e98f86 Add a new Terrain brush action: Smooth Slope.
This smoothes the terrain using a linear regression algorithm.  Exists alongside the oldstyle height averaging action -- options are good!
2013-04-10 08:44:22 -04:00
DavidWyand-GG de7a72d82a Oculus VR (Rift) support
Input device and shaders for supporting the Oculus Rift.
2013-04-10 01:05:26 -04:00
DavidWyand-GG 660250cccf Game cam and eye banking, control schemes
- 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.
2013-04-09 16:14:19 -04:00
DavidWyand-GG b32e7688c2 Side by side rendering
- 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.
2013-04-09 15:19:18 -04:00
DavidWyand-GG f1099cba68 ExtendedMove changes
- 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.
2013-04-09 13:30:25 -04:00
DavidWyand-GG 4f4c496fba Fix platforms that don't support PVI_NumAdapters
Not all platforms currently support the PVI_NumAdapters query from
PlatformVideoInfo.  This fix puts in the assumption that there is always
1 adapter if the PVI_NumAdapaters query returns false.  This was the
behaviour prior to PVI_NumAdapters being put in place.
2013-04-09 13:20:19 -04:00
DavidWyand-GG 0d77cdc270 GFX now handles non-default adapters
The GFX (DirectX) pipeline did not respect the choice of adapter and
always went for the default one.  Normally this isn't an issue unless
you wish to target a particular adapter and display device combination.
This has been corrected.

The GFX initialize functions now attempt to find the best adapter that
matches a given display device (i.e. monitor) if one has been passed in.
To aid with choosing a display device some new monitor enumeration
methods have been added to the platform window manager.  These methods
have been exposed to the Canvas.
2013-04-09 12:50:17 -04:00
DavidWyand-GG a40db9fa9b zero() method added to all point classes
Only some of the mPointX classes had the zero() method implemented.
This commit adds the method to all point classes.
2013-04-09 11:38:48 -04:00
DavidWyand-GG bfec2dfd79 Fix texture and object console paths
- Be sure to delete all prefs.cs files following this change.
- Changes the console types of the missing, unavailable and warning
texture paths.  The old type was causing string corruption when saving
preferences.
- Changes the console type of the TSShapeConstructor collision shapes.
The old type was causing string corruption when saving preferences.
- Changed missing texture reference in ProcessedMaterial from String to
const char*.
2013-04-09 10:05:57 -04:00
thecelloman 19c685dc23 Resolve issue #193 - Gui Editor treeview now refreshes correctly when changed through a drag/drop operation. 2013-03-27 23:21:25 -04:00
thecelloman 7e5ddf4ca2 Resolve issue #163
Fixed and assert on changing material, and we now map the material to the MATMGR by name instead of type.
2013-03-27 21:36:17 -04:00
SilentMike 769268784f Merge pull request #268 from eightyeight/terrain-import-flipped
Importing terrain heightmaps flips Y-axis
2013-03-25 14:03:11 -07:00
Daniel Buckmaster b868906ba5 Added a checkbox to the terrain import GUI and fixed a space. 2013-03-23 09:24:02 +11:00
thecelloman 1468a049af Filling out the variable names in the function prototype for autoMaterialLayers() for clarity.
Minor whitespace formatting changes (spacing) for consistency.
2013-03-22 15:02:45 -04:00
thecelloman 25efdb4a06 Adding a basic rule-based terrain painting implementation.
http://www.garagegames.com/community/resources/view/17145
2013-03-21 17:45:23 -04:00
Daniel Buckmaster 6ff1db6c0c Made the flipped y-axis on terrain import optional.
Pass a final boolean argument to TerrainBlock::import to control
y-axis flipping. It is enabled by default, since this was the previous
default behavior.

This should be added as an option in the terrain import dialog - see
game/tools/worldEditor/gui/guiTerrainImportGui.gui
2013-03-21 09:22:07 +11:00
SilentMike 17c750b19a Merge pull request #243 from thecelloman/updatesquish
Update squish
2013-03-10 11:36:02 -07:00
thecelloman 4fdfb47f41 Updating libpng to v1.5.14 and zlib to v1.2.7
Since libpng has a dependency upon zlib, both updates were combined for one commit/pull-request.
2013-03-09 16:19:11 -05:00
David Wyand 845931296e Merge pull request #248 from DavidWyand-GG/HardCodedPaths2
Removed hard coded directory paths
2013-03-07 15:58:43 -08:00
DavidWyand-GG 4b1334db9f Removed hard coded directory paths
- Removed references to core directory.
- Switch some references to tools directory
- Added preferences variables where appropriate
2013-03-07 18:56:53 -05:00
thecelloman 8de0b7cbb1 Update squish library to 1.11 2013-03-04 14:37:50 -05:00
Tim Newell 31036c4031 Bug fixes for alternative zip layout and define to toggle it on 2013-02-28 16:46:46 -05:00
David Wyand 853b70255b Merge pull request #234 from DavidWyand-GG/RazerHydraWork
Razer Hydra integration
2013-02-22 12:39:06 -08:00
DavidWyand-GG 47787900a4 Change ShapeBase to only test if available meshes
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.
2013-02-22 15:24:29 -05:00
DavidWyand-GG 0b4c3f1e42 Razer Hydra integration 2013-02-21 17:20:09 -05:00
David Wyand 965336d54d Merge pull request #211 from just-bank/particledata-bitstream-fixes
Fix for issue #210 and #154 for ParticleData sends out-of-range data via BitStream
2013-02-05 11:06:48 -08:00
bank 82de08b57a Fix memory leak (ParticleData and ParticleEmitterData) on using TypeValidator class.
This fixes issue #154
2013-02-01 21:22:03 +04:00
Dmitry a31e6a755c Fixed crash in Con::warnf function. Issue #82 2013-01-30 15:21:22 -05:00
DavidWyand-GG 2824bcf649 Remove hard coded paths pass 1
- displaySplashWindow() now takes an optional path to a bitmap file.
- Missing, unavailable and warning texture paths now come from
GFXTextureManager static methods.
2013-01-30 14:09:23 -05:00
DavidWyand-GG 6105849df2 Leap Motion input device support 2013-01-23 14:38:13 -05:00
DavidWyand-GG 32a3bab2f7 Moved platform input event files under new input directory 2013-01-23 02:37:37 -05:00
DavidWyand-GG 35374f939e ExtendedMove class and support
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.
2013-01-23 01:52:46 -05:00
DavidWyand-GG 0e87a8b6b7 New RigidShape method to force client
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.
2013-01-22 18:44:42 -05:00
DavidWyand-GG 539efcb1e1 Input event changes
- New InputEventManager class.  It will be used by 3rd party input
devices to generate Torque 3D input events.
- Expanded the input event signal to include three new floats and a new
integer.
- Expanded the number of joystick buttons to 48.
- The input virtual map is now extendable rather than hard coded.
- The input devices types are now extendable rather than hard coded.
- New SI_POS, SI_ROT, SI_INT, and SI_FLOAT input event types.
- New SI_VALUE input action type.
- ActionMap has been updated to work with these changes.
- Removed unnecessary references to platform/event.h
2013-01-22 18:17:41 -05:00
DavidWyand-GG af7787b4bb New console type for Point3I 2013-01-22 17:37:57 -05:00
DavidWyand-GG b56f8674cd New ScriptTickObject
ScriptTickObject is a ScriptObject that adds callbacks for tick and
frame events.  Use setProcessTicks() to enable or disable the
onInterpolateTick() and onProcessTick() callbacks.  The
callOnAdvanceTime property determines if the onAdvanceTime() callback is
called.
2013-01-22 17:09:14 -05:00
DavidWyand-GG e4ad890b78 Expanded signals and journaled signals to support up to 13 parameters 2013-01-22 15:54:03 -05:00
DavidWyand-GG 35082e92eb Fix for Issue #214
Changed two SI_DPOV references to read as SI_DPOV2
2013-01-22 15:23:52 -05:00
Scott Przybylski 48c64db840 Fix for Issue_190
Fix for Issue_190:
Without having DI8DEVTYPE_DRIVING here, many steering wheel's will show
up as "unknown" and cannot be mapped to actions. Driving and gamepad
both map to joystick for consistency, since they all can have buttons,
axes, sliders, and pov hat's.
2013-01-22 14:44:22 -05:00
bank 9b2caeed6a Fix for issue #210 for ParticleData sends out-of-range data via BitStream
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.
2013-01-18 15:07:27 +04:00
SilentMike b2e2c7b50f Merge pull request #49 from eightyeight/vehicle-steering
Vehicle steering return-to-centre merged into development branch.
2013-01-11 08:39:35 -08:00
SilentMike 03211bc4fd Merge pull request #140 from eightyeight/missionarea-server-object
Updated logic in MissionArea::getServerObject merged into development branch.
2013-01-09 13:03:35 -08:00
SilentMike 0b3e9d73f2 Merge pull request #179 from timmgt/dsocompilebugfix
Bug fix for loading compiled dsos merged into development branch.
2013-01-09 12:58:46 -08:00
DavidWyand-GG 1d4b723891 Removed MGT comments from Pull Request 2013-01-07 12:41:31 -05:00
Tim Newell 0d3a0f88e6 Bug fix for loading compiled dsos 2012-12-15 15:48:24 -05:00
Tim Newell 440103e7ae Removal of SDL dependency for linux dedicated server 2012-12-15 13:07:05 -05:00
DavidWyand-GG 539fa70a3d Fix for Issue 174 for Turret Targeting Wrong Direction 2012-12-13 19:30:51 -05:00
DavidWyand-GG 0598b6ae62 Fix for Issue #166 for Client Not Loading
The issue was with sending the ack mask to the client when the ack byte
count was 4.
2012-12-10 16:28:54 -05:00
DavidWyand-GG 4a11d54609 Partial revert of changes from Pull #125
Pull Request #125 was to fix Issue #124.  However, as reported by a
user, this fix broke the water.  This is a partial reversion of those
changes to get the water working again.  The fix from Pull #125 will
need to be examined.
2012-11-26 11:37:55 -05:00