Commit graph

2339 commits

Author SHA1 Message Date
OTHGMars 8ecbe5992a Sanity check for sequence times.
If the sequence end time is greater than 1000, millisecond timestamps are automatically assigned.
2019-04-25 16:27:46 -04:00
OTHGMars 6660f253b5 Fix for importing animated skinned meshes.
Scale is negated in inverse bind matrices.
Vertex weights are normalized (glTF importer is limited to 4 weights per vert).
Fixed interpolation for animations where the first frame is not at 0.0.
Allows cached.dts version of assimp imported shapes to be loaded.
2019-04-25 16:02:22 -04:00
OTHGMars a4a97cc3d3 Additional filters for material names. 2019-04-22 06:53:29 -04:00
OTHGMars 70bbad8411 Sequence timing options.
This commit deals with the problem that the keyframe timestamps are not standardized. Seconds, milliseconds and ticks are used depending on the import format. There is no metadata or property that specifies the format used, so the option is exposed to the user as part of the import options gui.
2019-04-22 06:52:59 -04:00
OTHGMars 04355156de Fixes crash from unnamed animation sequences.
Unnamed sequences are now renamed 'ambient'. Crash found in shape models/glTF2/simple_skin/simple_skin.gltf.
2019-04-22 00:12:49 -04:00
OTHGMars ad29d3132e Material initialization.
Fixes material initialization for texture and transparency assignments.
Lists all available material properties to console in debug builds.
Adds TORQUE_PBR_MATERIALS define for testing with PBR branches.
2019-04-22 00:08:15 -04:00
OTHGMars 0859b29fa1 Embedded texture extraction.
Caches textures to disk for shape formats that support embedded textures.
Only the compressed texture codepath has been tested. There are a large number of binary gltf files with embedded (and pbr) textures for testing here: https://github.com/KhronosGroup/glTF-Sample-Models
2019-04-21 23:59:40 -04:00
Areloch 73cb9343d2 Tweaks to the rapidjson stuff so it all plays nice, as well as minor additions to Filestream so it works with the rapidjson stuff. 2019-04-21 04:19:38 -05:00
Areloch dbd48cdbc1 WIP of the rapidJson update 2019-04-20 18:52:24 -05:00
OTHGMars 17a2e416ed Adds animated node transforms for animation importing.
Fixes sequence timing variables.
2019-04-18 16:45:52 -04:00
OTHGMars bd486bab66 Changes default winding order to be CCW. 2019-04-15 23:04:47 -04:00
OTHGMars f0ccd8d079 Adds verbose logging in debug builds.
Properly disconnects the logging stream.
2019-04-15 23:00:27 -04:00
OTHGMars 75440918e5 Copies Collada import options to Assimp.
The lodType, singleDetailSize, adjustCenter and adjustFloor options been added to the importer.
Implementation of $Assimp::FlipNormals has been fixed.
$Assimp::FlipWindingOrder has been added to expose aiProcess_FlipWindingOrder.
Logging is now enabled and directed to assimp.log.
2019-04-15 18:57:24 -04:00
OTHGMars d8bfe6073f Fixes a crash from importing shapes with unnamed bones. 2019-03-29 04:02:41 -04:00
OTHGMars 7c2baf51d6 Adds the aiProcess_FlipUVs flag setting. 2019-03-29 03:57:36 -04:00
OTHGMars 71a5f9498b Fixes primitive assignment. AppMesh::primitives in this case is a purely collada/dts concept and is not indices or faces. Any mesh with more than 2^16 vertices should be split into multiple primitives to avoid indexing across a 16 bit boundary. Mesh division into primitives has not been implemented for assimp yet. 2019-03-28 04:16:22 -04:00
OTHGMars bc722a353d Fixes vertex weight assignments.
Adds upaxis override option to match collada importer.
2019-03-27 12:46:43 -04:00
OTHGMars 2d795b2493 Fixes indexing for vertex weights. 2019-03-24 07:08:24 -04:00
OTHGMars 0be93d6cf5 Implements ignore filter for assimp fbx dummy nodes.
Adds gltf binary to list of supported extensions.
2019-03-24 06:25:38 -04:00
OTHGMars 1d073e0b09 Changes ObjectOffset parameter name to prevent confusion/conflict with the base class member AppMesh::objectOffset.
Error checking for meshes that do not have stored normals.
Incorrect first attempt at vertex weights.
2019-03-24 06:23:58 -04:00
OTHGMars 1a7e6699c9 Adds conversion functions and changes implementation of getTransform(). 2019-03-24 06:18:20 -04:00
Areloch 25ce4477ce Just the functional assimp lib rather than the entire assimp repository unnecessarily. 2019-02-28 16:37:15 -06:00
Areloch bf170ffbca WIP of assimp integration. 2019-02-08 16:25:43 -06:00
Areloch a77eb37f9a Merge pull request #2292 from Azaezel/highlightHax
afxRenderHighlightMgr: account for hardware skinning
2019-01-21 15:18:19 -06:00
Areloch 8717c6a376 Merge pull request #2300 from OTHGMars/SDL_Joystick2
Sdl joystick2
2019-01-21 15:17:31 -06:00
Areloch 72af45ef69 Merge pull request #2294 from OTHGMars/GuiInputCtrl
Adds features to GuiInputCtrl
2019-01-21 15:14:37 -06:00
OTHGMars 3af77bbf15 Adds support for SDL joystick and game controllers. 2019-01-10 20:09:05 -05:00
OTHGMars 0ae675839e Adds event codes for 2 POV hat masks, 2 trackballs and the guide button. 2019-01-10 20:06:54 -05:00
OTHGMars 2add57079d Updated to work without keyboard event refactor. 2019-01-10 17:44:30 -05:00
Glenn Smith a78235dd06 Fix Input::getKeyCode on software keyboard layouts
Input::getAscii goes Torque keyCode -> SDL Scancode -> SDL Keycode -> SDL ascii key name
Input::getKeycode used to be SDL ascii key name -> SDL Scancode -> Torque keyCode

This mismatch made software keyboard layouts behave incorrectly in different places. For example, you would bind a key to an ActionMap and it would activate with a different button than specified.
2019-01-10 04:15:22 -05:00
Areloch 8633884145 Merge pull request #2287 from Azaezel/macUpdates2
corrects compilation errors on mac
2019-01-09 09:42:19 -06:00
Brian Roberts 6e4ed303f6 Update afxRenderHighlightMgr.cpp 2019-01-07 11:41:17 -06:00
Azaezel 7939d08c6a afxRenderHighlightMgr: account for hardware skinning 2019-01-07 06:22:24 -06:00
Areloch d74a25540f Merge pull request #2282 from OTHGMars/CanvasResize
Fixes CanvasSizeChangeSignal and Canvas::onResize()  under SDL
2019-01-06 04:51:18 -06:00
Azaezel 547a2e28eb no message 2019-01-02 17:53:17 -06:00
Azaezel 94fe66a451 use the newer c_controlInterface file 2019-01-02 17:52:20 -06:00
Azaezel be4cf58fb8 corrects compilation errors on non-mac unix derivatives 2019-01-01 15:41:59 -06:00
Azaezel 13ce1a7441 corrects compilation errors on mac 2019-01-01 13:11:46 -06:00
Azaezel a7fc407284 corrects a pair of conversions. one object oriented, one not. 2018-12-12 14:52:14 -06:00
Areloch 58cf310971 Merge pull request #2284 from OTHGMars/SDLMonitor
Fills in monitor functions in PlatformWindowManagerSDL
2018-12-09 15:36:15 -06:00
Areloch 368a0041d1 Merge pull request #2283 from OTHGMars/SDLFocus
Adds handlers for sdl focus events.
2018-12-09 15:36:00 -06:00
Areloch 121ca2ac97 Merge pull request #2258 from Areloch/OthroCameraFix
Fixes the front/back ortho views in the editors
2018-12-09 15:35:38 -06:00
Areloch bb30de04f7 Merge branch 'development' into ConvexProxies 2018-12-09 15:34:12 -06:00
Areloch 900816fcd0 Merge pull request #2186 from rextimmy/physx_3_4
Physx 3.4
2018-12-09 15:28:43 -06:00
Areloch cbc09534e4 Merge pull request #2248 from lukaspj/new-cinterface
New cinterface
2018-12-09 15:28:22 -06:00
Areloch 644f4071ed Merge pull request #2246 from lukaspj/update-cinterface
Update CInterface
2018-12-09 15:24:29 -06:00
Areloch ad2493bef2 Merge pull request #2228 from lukaspj/fix-enginexmlexport
Make EngineAPI Export work properly
2018-12-09 14:52:27 -06:00
Areloch 6cf0c9e360 Merge branch 'development' into EngineAPI-Refactor 2018-12-09 14:48:50 -06:00
Areloch 87efea9683 Merge pull request #2276 from Azaezel/terrainNormalNeener
filter out pixel shader normalmap calcs when not in deferred mode.
2018-12-02 10:50:52 -06:00
OTHGMars 49fa248ec4 Fills in monitor functions in PlatformWindowManagerSDL
Adds the sdl implementation for all used PlatformWindowManager monitor functions. [This unit test](https://github.com/GarageGames/Torque3D/blob/development/Engine/source/windowManager/test/windowManagerTest.cpp#L28) will now pass for the SDL platform. Here is the equivalent in TorqueScript to test the functions via the Canvas object:```//Canvas.listDisplays();
function Canvas::listDisplays(%this)
{
   %count = %this.getMonitorCount();
   echo(%count SPC "monitor(s) detected.");
   for (%i = 0; %i < %count; %i++)
   {
      echo("Monitor #" @ (%i + 1) SPC %this.getMonitorName(%i) @ ": " @ %this.getMonitorRect(%i));
   }
}```
2018-11-24 03:12:07 -05:00