Commit graph

168 commits

Author SHA1 Message Date
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
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
6cf0c9e360 Merge branch 'development' into EngineAPI-Refactor 2018-12-09 14:48:50 -06:00
Areloch
5a1af9ccd7 Merge pull request #2236 from Azaezel/memberMess
cleans up all 'hides' warnings (at time of writing)
2018-05-30 20:36:43 -05:00
Areloch
de67b30edc Merge pull request #2104 from OTHGMars/ScaleCollision
Sets scale for collision primitives created in the shape editor.
2018-04-30 23:39:33 -05:00
Areloch
1f2847bc11 Merge pull request #2108 from Azaezel/reskinRedux
allows for arbitrary reskinning
2018-04-30 23:37:36 -05:00
Azaezel
13334b4d5c Merge branch 'development' of https://github.com/GarageGames/Torque3D into memberMess
# Conflicts:
#	Engine/source/sfx/sfxSystem.cpp
2018-04-23 10:08:14 -05:00
Lukas Joergensen
e718841467 Eliminate DefineConsoleFunction 2018-04-17 20:54:08 +02:00
Areloch
bc1b506205 Merge pull request #2146 from Azaezel/specializationShenanigans
changes find, swap, for_each, and delete_pointer from global to t3d namespace
2018-04-17 03:02:03 -05:00
Azaezel
0e3c128ec4 slimmed down shadowvar cleanups, plus removal of an unused membervar. 2018-04-02 03:06:58 -05:00
Azaezel
0c316dab46 Revert "collada/ts chain shadowvar and member var clenaups"
This reverts commit 3ce15b33eb.
2018-04-02 03:01:52 -05:00
Azaezel
9fbeb3e2d0 void ColladaUtils::ExportData::processData() var clarifications 2018-03-28 17:50:17 -05:00
Azaezel
cbce2ee805 Merge branch 'development' of https://github.com/GarageGames/Torque3D into memberMess
# Conflicts:
#	Engine/source/console/consoleFunctions.cpp
2018-03-28 15:42:34 -05:00
Azaezel
53ce915dcf collada/ts chain shadowvar and member var clenaups 2018-03-16 18:40:32 -05:00
Azaezel
190a647254 animation clarification 2018-03-13 17:54:35 -05:00
Azaezel
1c62080f7f cleaned up member::radius 2018-03-13 15:31:00 -05:00
Azaezel
c98f257cae more compiler compliant cleanups plus a full set of tsMesh::foo to tsmesh::mFoo class var conversions for consistency 2018-03-13 14:53:23 -05:00
Azaezel
e5a6f4ee3d TSMesh::castRayOpcode method var clarifications/match for .h file 2018-03-13 14:26:17 -05:00
Azaezel
4915db0a32 clarified the texture-atlas varnames a bit. (shadow vars cleanup) 2018-03-13 12:16:17 -05:00
Azaezel
e2d27952aa tsmesh: parentMesh and indicies to mParentMesh and mIndicies (usual deal, complaints about method vars or temp ones potentially conflicting with class vars) 2018-03-13 11:36:36 -05:00
Azaezel
654fc29dc2 bounds to mBounds conflict avoidance 2018-03-13 01:05:15 -05:00
Azaezel
2b6b1acdd6 many *many* generic is and js 2018-03-13 00:57:31 -05:00
Azaezel
a5ab4acd01 pos to mSeqPos to resolve a method entry vs class entry 2018-03-12 23:09:20 -05:00
Azaezel
fa2ee65d33 overgeneralised variable 'name' clarified between use-cases 2018-03-12 04:04:41 -05:00
Areloch
8dedcf456a Cleanup of export function to remove redundant arg
Removed unused var
Cleaned up collision export on convexShape
Added prefab export functionality
2018-03-04 16:03:39 -06:00
Areloch
787b8be82c Adds handling for the proper updated exporting of mesh for convexShapes 2018-03-04 15:10:44 -06:00
Areloch
49639a908f Expanded mesh baking functionality, now supporting baking of LODs and Collision meshes 2018-03-01 01:51:18 -06:00
Areloch
14ae287c0c Bugfixes and improvements for the animation component and related asset behavior.
Adds in ability to establish a shape animation asset as being cyclic or blended.
Adds functionality for blended animations to integrated into shapeAssets.
2018-02-04 14:31:28 -06:00
Azaezel
01f0d5cfca tAlgorythm fed namespace T3D for better library interoperability. resulted in the need to specify usage in... a few places. 2017-12-27 22:57:47 -06:00
Azaezel
f9bf4fca4b new method: TSShapeInstance::resetMaterialList(). Sets all object-instance mapto values back to initial state. reskin now does so to avoid having to track origional values independently. (so say, if you've already got skin1 plugged in to one, and nothing in to another, no need to set skin1=skin2 on the first and skin2 or base=skin2 on the second to swap both on over to skin2).
also by request, went ahead and killed case sensitivity for mapto string replacement when reskinning.
2017-11-12 23:58:34 -06:00
Azaezel
9e435a3f34 allows arbitrary material name string replacement, rather than forcing folks to start with base. ie: an entry of skin = "blue; area=fire"; would replace base_area_grid with blue_fire_grid as the used material 2017-10-24 19:15:54 -05:00
OTHGMars
4310ab3b27 Sets scale for collision primitives created in the shape editor. 2017-10-18 03:25:05 -04:00