Commit graph

852 commits

Author SHA1 Message Date
Sam Gateau
a95a4b5aa2 Address warnings and comments from review 2019-10-18 11:43:25 -07:00
Sam Gateau
695b9cdba6 Clening up left over comments and typos, simplify the code to update Matrices in the model classes and removed renderITemsIdMap because not needed, chasing the problem of the physics objects transform 2019-10-18 03:31:06 -07:00
Sam Gateau
9159258b50 clean ups 2019-10-16 17:42:36 -07:00
Sam Gateau
eecaeb1155 FOund the issue why the skinning was incorrect, removed unecessary data structures in the newly added objects and renamed Deformer to SkinCluster and DYnamicTransform to SkinDeformer 2019-10-16 04:02:05 -07:00
Sam Gateau
f049ab7887 Understanding that CLuster can be just one for a mesh and we need the bindingMatrix to be applied correctly, differenciating intentionnally the transform for bound evaluation and the one used for render in the case of SKinned mesh because the clusterMatrices contain the extra offset from rig to model 2019-10-15 18:12:09 -07:00
Sam Gateau
108d331d86 more 2019-10-14 17:45:07 -07:00
Sam Gateau
05ac9aefa8 the clusterMatrices should be working, but n skin index and weights are assigned yet 2019-10-14 02:21:01 -07:00
Sam Gateau
8a1f3648f9 fooling around to get the cluster working 2019-10-11 18:06:44 -07:00
Sam Gateau
a995f2c09f in the middle of something 2019-10-10 17:09:54 -07:00
Sam Gateau
1f3993c308 getting the transform right for the rigid bodies 2019-10-08 18:13:24 -07:00
Sam Gateau
936ac6f120 REmoving more repetitions of the meshParts 2019-10-07 18:03:33 -07:00
Sam Gateau
521ce3936b I changed names! Renaming the Geometry to NetworkModel, the GeometryResource to ModelResource, i think there is no need for the 2, only one would be enough in my opinion... 2019-10-07 15:19:23 -07:00
sabrina-shanman
a166b41216 Fix build warnings/errors 2019-09-13 15:39:29 -07:00
sabrina-shanman
c4db6c78d8 std::vector-ize meshes/mesh parts in hfm::Model 2019-09-11 16:50:50 -07:00
SamGondelman
9c1b139d5f merge with master 2019-06-25 23:46:39 -07:00
Ken Cooke
4c5c61231d Only use QVector resize when actually needed 2019-06-25 12:57:55 -07:00
Ken Cooke
0a34745ff9 Use QVector resize() instead of reserve() to silence Debug builds about size not being set.
Causes unneeded default initialization, but no obvious way to avoid.
2019-06-25 12:53:07 -07:00
Ken Cooke
75aea88f20 CR feedback 2019-06-24 11:51:03 -07:00
Ken Cooke
87e0f5b2bb Runtime dispatch for AVX2 2019-06-23 10:40:15 -07:00
Ken Cooke
8653118b6c Full SIMD implementation of packBlendshapeOffsets() using AVX2.
6x speedup over the existing (partial SIMD) version.
60x speedup over the original (pure GLM) version.
2019-06-23 10:32:57 -07:00
Ken Cooke
cceff21cd0 Pull packBlendshapeOffsets() into separate function 2019-06-23 08:57:56 -07:00
Ken Cooke
87c680382f Strip-mining optimization to improve cache utilization.
For each mesh: init, accumulate, and pack using a recycled offset buffer.
2019-06-23 08:42:38 -07:00
Ken Cooke
9e309b095d Fix bug that was packing zero offsets that were never used 2019-06-23 08:00:13 -07:00
Sam Gondelman
a7842fe3ea
Merge branch 'master' into proceduralMesh 2019-05-21 09:51:33 -07:00
SamGondelman
0039fb2f54 attempt to fix material crash 2019-05-17 14:51:42 -07:00
SamGondelman
6d3e23a7fe merge with master 2019-05-16 20:03:10 -07:00
SamGondelman
de90c5088c (✿◠‿◠) 2019-05-16 19:33:07 -07:00
Anthony J. Thibault
3ae33353d9 Fixed unused variables warnings 2019-05-16 16:38:47 -07:00
Anthony J. Thibault
98fe059d97 Fix blender::run crash
Pass a shared_ptr of the HFMModel to the Blender.  This will prevent the HFMModel
from being destroyed on the main thread if an Avatar changes their skeletonModelURL.

Also the _blendshapeOffset hash in Model has been eliminated, it was not necessary and
was also a source of data races.

The body of Blender::run has been updated slightly to reduce the number of allocation necessary for temporary QVectors.
2019-05-16 13:12:16 -07:00
jennaingersoll
4c6c0acc56
Merge pull request #15454 from ctrlaltdavid/M22246
Case 22246: Picks, PickType, RayPick JSDoc update
2019-05-13 16:16:17 -07:00
SamGondelman
eb8c722080 fix runtime switch 2019-05-13 09:58:55 -07:00
Brad Davis
17632e3c50 PR feedback 2019-05-07 10:36:14 -07:00
Brad Davis
2b1267ffeb Disable the use of tbb::parallel_for in Blender 2019-05-06 16:53:37 -07:00
Shannon Romano
29e415a104
Merge pull request #15498 from SamGondelman/crash
Case 22444: Try to fix materialMapping crash
2019-05-02 16:29:39 -07:00
SamGondelman
50e538a73c try to fix materialMapping crash 2019-05-01 17:23:19 -07:00
SamGondelman
0bcd8b81e1 trying and failing to fix models 2019-05-01 12:01:49 -07:00
SamGondelman
5a184bd584 fix model bounds 2019-04-30 13:38:11 -07:00
David Rowe
73fd61dcf0 Picks, PickType, RayPick JSDoc update 2019-04-25 13:19:07 +12:00
SamGondelman
2d5cfbf4f5 fix oven crash 2019-04-16 15:16:26 -07:00
David Rowe
38e21dcaa2 Doc review 2019-04-11 11:04:02 +12:00
David Rowe
ca3f45163f Merge branch 'master' into M21989 2019-04-11 10:37:34 +12:00
Sam Gateau
51d1c4b1f3
Merge pull request #15357 from SamGondelman/cauterize
Case 21417: Fix cauterization of entities that are children of MyAvatar's head
2019-04-10 12:29:40 -07:00
SamGondelman
a50cca006e use # instead of ? for material URL name selection 2019-04-08 23:45:47 -07:00
SamGondelman
27338c3639 fix cauterization of entities that are children of MyAvatar's head 2019-04-08 19:48:11 -07:00
Sam Gondelman
88c278d357
Merge pull request #15319 from SamGondelman/materialBaker
Case 21764: Oven bakes model materials directly to separate material description
2019-04-05 17:08:22 -07:00
Andrew Meadows
72ac35c6f7 avoid nan in Model::_scale 2019-04-04 08:28:03 -07:00
David Rowe
2a17ad3da5 AvatarList and AvatarManager JSDoc 2019-04-04 10:11:54 +13:00
SamGondelman
770b863604 fixing embedded textures and materialMapping priority 2019-04-02 19:04:23 -07:00
SamGondelman
7b0854c121 support selecting material in json by name with ? 2019-04-02 14:13:00 -07:00
Sam Gondelman
0f99280c15
Merge pull request #15265 from hyperlogic/bug-fix/blendshape-precision
Improve blendshape precision for small models
2019-03-27 10:51:22 -07:00
Anthony Thibault
08c6acdf99 Improve blendshape precision for small models
For avatars authored in meters, the max component length would often be less then 1.
In that case, the blendshape offset was not normalized before quantization, resulting in loss of precision.
This change will normalize the offset for all cases, except when the max component length is 0.
2019-03-26 11:21:13 -07:00
SamGondelman
c1c45d8a01 revert some now unnecessary changes that were impacting performance
(cherry picked from commit b6984de16c2fd17f04ea72de7b339c31db6467ab)
2019-03-22 11:55:04 -07:00
SamGondelman
2b32b77bed handle case when clusterMatrices.size() == 0 2019-03-11 17:32:40 -07:00
SamGondelman
b24b7fed3d the root node isn't the first onegit add ../.git add ../. 2019-03-11 15:34:41 -07:00
Shannon Romano
8be93fd16c
Merge pull request #14891 from kencooke/glm-pack-normals-speedup
Case 21114: SIMD optimized blendshape packing
2019-03-07 15:28:40 -08:00
SamGondelman
fd88ec0d16 need to copy meshStates on main thread 2019-03-04 15:25:02 -08:00
SamGondelman
708632ee82 possible fix for model crash 2019-03-04 10:00:26 -08:00
Shannon Romano
5f99158c25
Merge pull request #14977 from SamGondelman/rot
Case 21354: Add "modelScale" property to fix pal
2019-02-22 16:36:17 -08:00
SamGondelman
6d6cd42adb fix bound scaling 2019-02-22 12:00:00 -08:00
Anthony Thibault
e54754c4ce
Merge pull request #14926 from luiscuenca/flowCpp
Cpp implementation of the Flow script
2019-02-21 17:10:05 -08:00
luiscuenca
dcbf57ee0b Fix linux warning and HMD breaks flow 2019-02-21 16:41:24 -07:00
Sam Gondelman
9aa99f24f0
Merge pull request #14905 from SamGondelman/materialMapping
Case 20242: FST materialMapping supports our material JSON format
2019-02-15 11:21:51 -08:00
Anthony Thibault
39b4eaac34 Revert "AnimPose operator* optimizations"
This reverts commit 569bef50fd.
2019-02-14 16:13:00 -08:00
SamGondelman
fdbcf4b2ea cleanup and expose mapped materials to getScriptableModel 2019-02-12 12:03:35 -08:00
SamGondelman
f75a3e1a72 it's working! 2019-02-12 11:41:47 -08:00
SamGondelman
61346437da working on material mapping 2019-02-12 09:22:31 -08:00
SamGondelman
77a8ddb3f0 Merge remote-tracking branch 'upstream/master' into materialMapping 2019-02-11 16:35:05 -08:00
SamGondelman
4f03157f39 working on fst material mapping 2019-02-11 10:20:55 -08:00
Ken Cooke
68480f6760 Replace glm::packSnorm3x10_1x2() with fast SIMD implementation 2019-02-09 10:49:18 -08:00
Sabrina Shanman
baf72eaae0
Merge pull request #14802 from sabrina-shanman/hfm_prep_joints
Case 20887: Move FST joint property handling to the model preparation step
2019-02-08 15:02:23 -08:00
Anthony Thibault
569bef50fd AnimPose operator* optimizations 2019-02-05 14:48:05 -08:00
sabrina-shanman
203e8e2455 Realize joint properties isFree and freeLineage are unused, so tear them out 2019-01-29 11:55:35 -08:00
Adam Smith
dadd49f535
Merge pull request #14667 from SamGondelman/NOverlays9
Case 20535: renderLayer, primitiveMode, groupCulled Entity properties
2019-01-24 14:36:27 -08:00
Sam Gateau
3ec9290dca
Merge pull request #14619 from SamGondelman/matTarget
Case 20240: Better material entity targeting
2019-01-23 15:47:22 -08:00
SamGondelman
10068cc42c merge with master 2019-01-08 12:14:32 -08:00
SamGondelman
1b5c1d0677 working on primitiveMode and groupCulled 2019-01-08 10:02:03 -08:00
SamGondelman
b609cfaa2b renderLayer 2019-01-07 15:43:35 -08:00
Andrew Meadows
0072684d98 remove cruft and fix error in transform to mesh frame 2019-01-04 12:37:23 -08:00
SamGondelman
3578df7a0e material targeting 2018-12-19 13:28:33 -08:00
amantley
c8cd65c3bd added getter for the orginal cluster bind matrix values in AnimSkeleton 2018-11-15 09:58:10 -08:00
amantley
80ebde1036 started cleanup of pr 2018-11-14 17:27:45 -08:00
amantley
8256c652fc added the hook to put the copy of the mutated bind poses into tthe skeleton 2018-11-14 17:02:25 -08:00
Dante Ruiz
501746b156 3D Keyboard 2018-11-08 09:58:53 -08:00
sabrina-shanman
cbca77b12f Rename HFMGeometry to HFMModel and adjust related variables 2018-11-01 17:17:48 -07:00
sabrina-shanman
becee7f010 Re-name FBXGeometry to HFMGeometry and do the same for related classes 2018-10-30 17:28:42 -07:00
SamGondelman
47c6825aea CR 2018-10-18 11:08:53 -07:00
SamGondelman
327c2f4e3d move blendshape buffers to render thread 2018-10-10 15:32:53 -07:00
sam gateau
5d0f2e3035 And more changes for better syntax and less useless stuff 2018-10-02 13:09:04 -07:00
sam gateau
ff24a99032 Unify the the packing of the blendshape offset for simplicity and settle on the name DrawcallUniform 2018-10-02 11:18:20 -07:00
Sam Gateau
c95c736b1f FOUnd a working path for gl41 2018-10-01 22:50:29 -07:00
Sam Gateau
d1d4920c35 Check and fixed the shader for nvidia regarding the unpacked variable name, adjust luci.js to be able to move the viewport 2018-10-01 21:35:18 -07:00
sam gateau
392e2ff535 trying and failing andad trying and rince and repeat 2018-10-01 17:45:16 -07:00
Sam Gateau
5842416ae6 Exploring the possible packing schemes and trying to debug the tangent 2018-09-30 23:11:36 -07:00
sam gateau
1ff4c54c1c Packing normal and tangents 2018-09-28 17:49:52 -07:00
Sam Gateau
faf489855c Packing the offsets and catching up performances 2018-09-28 02:13:08 -07:00
sam gateau
215818e313 adjusting page size but still seeing a perf drop 2018-09-27 17:18:43 -07:00
Sam Gateau
8923055e91 Exploring the bad peroformances 2018-09-27 00:15:34 -07:00
sam gateau
34203c67b0 Addressing the merge with master 2018-09-26 15:42:13 -07:00
sam gateau
1e112d3c84 bringing back a bug fix from samuel 2018-09-26 14:15:42 -07:00
SamGondelman
21cd3948ae improve blender queuing 2018-09-25 12:07:05 -07:00