Seth Alves
a8698c2fbc
EntityScriptingInterface::getMeshes support for Model entities
2017-07-19 08:59:09 -07:00
Brad Davis
6fc82bb351
Switch to preprocessor macro for blocking invokes to capture function information
2017-06-30 11:36:24 -07:00
Brad Davis
b52dd7b822
Don't use blocking connections on the main thread
2017-06-29 20:45:17 -07:00
Anthony J. Thibault
2dcca2125b
Merge branch 'master' into feature/pole-vector
2017-06-21 15:50:03 -07:00
Brad Davis
fece438602
Cleanup and refactoring
2017-06-15 18:58:56 -07:00
Anthony J. Thibault
f20c03fa6e
Pole vectors can be controlled via anim vars.
2017-06-13 15:36:05 -07:00
Howard Stearns
3d62900daf
When we do precision detailed picking on a model, check the back faces, too. In other words, precision picking from inside a model works.
2017-06-03 16:49:16 -07:00
Thijs Wenker
712aff7ad6
base scale attachment on the natural dimensions
2017-05-23 17:53:08 +02:00
Chris Collins
207c13c3c3
Merge pull request #10528 from AndrewMeadows/payload-gets-weak-pointer
...
MeshPartPayload keeps weak pointer to Model
2017-05-22 21:54:40 -07:00
Andrew Meadows
f7db877b7f
payload keeps weak pointer to Model
2017-05-22 17:29:15 -07:00
Andrew Meadows
7b879a7964
Model has a Rig rather than a RigPointer
2017-05-19 13:24:16 -07:00
Andrew Meadows
17b6cf29df
check for valid resource pointer before use
2017-05-18 15:12:59 -07:00
Andrew Meadows
8d3285f733
verify _rig is valid in Model::deleteGeometry()
2017-05-18 11:11:50 -07:00
Brad Hefta-Gaub
36c7821e1e
Merge pull request #10455 from ZappoMan/TriangleSetOptimizations
...
TriangleSet optimizations - ~80% improvement in Ray picking against models
2017-05-16 20:47:50 -07:00
Ryan Huffman
8eacf0ad4b
Remove unnecessary assert in Model.cpp
...
This clause inside was not longer valid - it is a valid state for
part->_meshIndex < _modelMeshRenderItems.size(). A better check might be
to compare it to the size of _meshStates which we use below, but we use
_meshStates.at(...) which will do the bounds checking, which makes the
assert unnecessary.
2017-05-16 10:56:33 -07:00
ZappoMan
eb3b27849c
only keep one copy of Triangles
2017-05-12 17:07:47 -07:00
ZappoMan
a15c5999b5
first cut at octree storage of Triangle Set
2017-05-10 16:58:51 -07:00
Anthony J. Thibault
e992d6703a
WIP: debug render joint constraints.
2017-05-08 15:06:28 -07:00
Andrew Meadows
f11d6eff92
fix typos: RenderItemsMap not RenderItems
2017-05-04 15:43:44 -07:00
samcake
c36f8da4c0
Fixing build on mac
2017-04-24 10:46:29 -07:00
Andrew Meadows
31bfc98b87
use const reference for ScenePointer when possible
2017-04-18 11:52:22 -07:00
samcake
6122155880
Renaming the PendingCHanges class to Transaction
2017-04-05 13:10:31 -07:00
trent
36619cd2e4
Fixed issue with duplicate physics status icons per sub-object.
2017-03-22 15:07:29 -04:00
Andrew Meadows
d3fa28d4bc
remove cruft and fix indentation
2017-03-15 16:17:59 -07:00
Andrew Meadows
f250c0d298
simpler bindTransform() for ModelMeshPartPayload
2017-03-15 14:41:13 -07:00
Brad Hefta-Gaub
87934ee82d
fix bugs in some meshes
2017-03-06 21:50:32 -08:00
Brad Hefta-Gaub
f27475613f
Merge branch 'master' of https://github.com/highfidelity/hifi into triangleSet
2017-03-06 12:53:59 -08:00
ZappoMan
af97e9bdd9
CR feedback
2017-03-06 10:49:38 -08:00
ZappoMan
2a663cbcb1
cleanup
2017-03-05 19:28:15 -08:00
ZappoMan
87bcced409
cleanup use of triangleSet for picking
2017-03-05 19:23:55 -08:00
ZappoMan
32add6635d
checkpoint on reducing raypicking recalcs
2017-03-04 23:33:17 -08:00
Ken Cooke
a5571bd49d
redo unsafe optimization
2017-03-04 16:02:39 -08:00
ZappoMan
9908723bb9
fist cut at basic TriangleSet class
2017-03-03 22:27:38 -08:00
Atlante45
1201932ee9
Fix SSE2 macros for Macos
2017-02-14 14:10:53 -08:00
samcake
c864e57855
first pass on a working image class and the mip generation
2017-02-06 08:51:04 -08:00
samcake
e8cdee71ed
avoid assertion on mac
2017-02-03 22:49:41 -08:00
Seth Alves
ab8be15ce0
Merge pull request #9570 from highfidelity/tablet-ui
...
Tablet ui
2017-02-01 09:38:13 -08:00
samcake
04d5173328
Merge pull request #9530 from AndrewMeadows/computeBoundsOutsideLambda
...
compute Model's local bounds outside pending changes queue
2017-01-31 11:40:21 -08:00
Anthony J. Thibault
0f75668923
Moved Model setting of _spatiallyNestableOverride to constructor
2017-01-31 09:36:21 -08:00
Anthony J. Thibault
0962a15a06
Fix for one-frame lag in the tablet stylus.
2017-01-30 15:39:55 -08:00
Andrew Meadows
489fbc6299
compute Model's local bounds outside render lambda
2017-01-27 09:35:36 -08:00
Seth Alves
db38503d57
Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui
2017-01-26 13:48:59 -08:00
Andrew Meadows
09707217ec
remove Model::simulateInternal()
2017-01-26 08:35:25 -08:00
Andrew Meadows
08bba5f45f
add and remove some profile data points
2017-01-26 08:35:25 -08:00
Seth Alves
be8bc9652b
Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui
2017-01-23 09:44:04 -08:00
Andrew Meadows
10cdea9cd8
cleanup model fade logic
2017-01-19 14:17:50 -08:00
Andrew Meadows
3dd8fd838b
move cauterization out of Model class
2017-01-19 12:56:07 -08:00
Seth Alves
eb25e1c12d
Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui
2017-01-19 09:41:49 -08:00
Seth Alves
6bace4f451
merge from upstream
2017-01-17 09:29:30 -08:00
samcake
0b9b5d595c
Merge branch 'master' of https://github.com/highfidelity/hifi into meta
2017-01-16 17:48:16 -08:00
samcake
83d1c3ad01
Adding support for the meta rendering
2017-01-16 17:47:58 -08:00
Andrew Meadows
fd28457807
fix cauterization hack
2017-01-16 15:13:28 -08:00
Seth Alves
5a81dface9
avoid filling log with bogus warning
2017-01-13 12:00:51 -08:00
Seth Alves
e9422cbf1e
fix model scales
2017-01-12 16:38:27 -08:00
Seth Alves
5fa379fea2
fix model scales
2017-01-12 16:12:43 -08:00
Seth Alves
208c4686c4
merge from upstream
2017-01-12 15:44:27 -08:00
samcake
ca53235d54
Merge pull request #9358 from AndrewMeadows/model-cleanup
...
minor cleanup for Model rendering code
2017-01-12 14:30:16 -08:00
Anthony J. Thibault
26a5b5ed91
Fix for rendering of tablet ModelEntity in desktop mode.
...
The Model pendingChanges.updateItem() lambda now directly calls into StaticallyNestable. This is late enough
in the update loop to have the most up-to-date camera transform used for rendering.
2017-01-11 18:37:57 -08:00
Andrew Meadows
e2130d33d9
speedup cauterizedClusterMatrices math
2017-01-11 15:10:44 -08:00
Andrew Meadows
b3e336de3d
remove cruft: unused function arguments
2017-01-11 15:02:18 -08:00
Andrew Meadows
87bdaae05a
remove scale from ModelMeshPartPayload's transform
2017-01-11 12:38:47 -08:00
Andrew Meadows
bd16824d55
remove cruft: Model::_pupilDilation
2017-01-11 06:57:05 -08:00
Andrew Meadows
1804f33b98
add assert and TODO comment
2017-01-11 06:56:35 -08:00
sam
7a01b856f7
Factorization of the modelTransform out of the cluster matrices
2017-01-11 02:33:56 -08:00
Andrew Meadows
44699fc661
modelToWorld rotation not in cluster matrices
2017-01-10 16:21:13 -08:00
Brad Davis
1dd2747ef9
Push some tracing into 'detail' categories for easy filtering. Add new tracing categories, add counter change tracking.
2017-01-10 10:44:04 -08:00
Brad Davis
901c020aae
Optimizations, SIMD and const correctness
2016-12-27 15:39:38 -08:00
Andrew Meadows
0b0c3f0be4
cleanup some if-logic
2016-12-21 10:55:59 -08:00
Brad Hefta-Gaub
c65471e880
Merge branch 'master' of https://github.com/highfidelity/hifi into removeLogSpam
...
Conflicts:
libraries/script-engine/src/FileScriptingInterface.cpp
2016-12-19 22:27:24 -08:00
Brad Hefta-Gaub
dbbed462b4
cleanup naked qDebug() calls
2016-12-19 22:24:25 -08:00
samcake
c435afb728
Introducing a fix for the overlayered model drawn in front
2016-12-19 13:17:56 -08:00
Brad Davis
ee3c8e6efd
Merge pull request #9225 from jherico/chrome_tracing
...
Additional work on tracing
2016-12-16 17:53:55 -08:00
Ryan Huffman
1d9a32c528
Add FIXME comment to texture setting in Model.cpp
2016-12-16 16:32:53 -08:00
Ryan Huffman
18a166bee8
Fix models not settings textures if not loaded
2016-12-16 15:05:17 -08:00
Brad Davis
30a9961362
tracing polish
2016-12-16 14:02:27 -08:00
Andrew Meadows
ee6a9f4506
adding profile stats relating to avatar CPU costs
2016-12-16 13:41:31 -08:00
Ryan Huffman
7bb2755913
Add chrome tracing support
2016-12-16 01:14:01 -08:00
Anthony Thibault
23aa626755
Destroy render scene & engine before Application is destroyed
...
Many render items/payloads contain smart pointers back to the
objects that added them to the scene, including entity and avatar
objects. Currently, those render items are destroyed when the
scene is destroyed very late in the application life-cycle.
There are rare crashes that can occur when these render items are
destroyed. Possibly, due to them referencing objects that have
already been destroyed via raw pointers. In an effort to
eliminate these crashes, we now destroy the scene earlier, within
Application::aboutToQuit() which is connected to the
QCoreApplication::aboutToQuit signal. Also, we guard against null
scene pointer dereferences. Any location that accesses the scene
off the main thread, now checks the validity of the scene pointer.
2016-10-25 15:28:37 -07:00
Brad Hefta-Gaub
7fe16442fa
make calculateTextureInfo thread safe
2016-10-01 15:47:17 -07:00
David Rowe
0cf3f6e953
Fix texture count and size getting stuck on 0
2016-09-13 13:03:06 +12:00
David Rowe
68499f49ad
Fix count of textures
2016-09-10 10:15:13 +12:00
Brad Hefta-Gaub
e1845e2c3f
add support for renderInfo properties to model entities
2016-08-31 15:00:21 -07:00
Andrew Meadows
b95cb566cd
fix collision mesh for non-trivial registration
2016-08-24 22:26:56 -07:00
Andrew Meadows
19cd4648ad
scale collision render mesh correctly
2016-08-24 22:26:56 -07:00
Andrew Meadows
68dd66daec
create collision render geometry only when needed
2016-08-24 22:26:56 -07:00
Andrew Meadows
b0a0293e6e
move compoundResource out of Model class
2016-08-24 22:26:56 -07:00
Andrew Meadows
fe4198530f
don't render raw compound collision geometry
2016-08-24 22:26:56 -07:00
Andrew Meadows
329c5432ed
_showCollisionHull --> _showCollisionGeometry
2016-08-24 22:26:56 -07:00
Andrew Meadows
481d6990a3
trigger collision shape render mesh creation
2016-08-24 22:26:56 -07:00
Andrew Meadows
26f5d3cfaa
fix render geometry for collision shapes
2016-08-24 22:26:56 -07:00
Andrew Meadows
6b0ae654ba
cleanup logic around creating RenderItems
2016-08-24 22:26:56 -07:00
Andrew Meadows
d8fa0d1dd1
segregateMeshGroups() --> createRenderItems()
2016-08-24 22:25:45 -07:00
Andrew Meadows
726928c14c
creae collision Geometry from mesh
2016-08-24 22:25:45 -07:00
Seth Alves
87dbfa7e47
add -Wsuggest-override to compile flags and deal with fallout
2016-08-18 09:51:41 -07:00
SamGondelman
ae9fb3768c
CR notes
2016-08-08 17:45:25 -07:00
SamGondelman
328d3128fa
merge from master
2016-08-08 13:30:39 -07:00
Ryan Huffman
4f9be2ae72
Fix camera position not being set for angular loading
2016-08-08 08:53:06 -07:00
Ryan Huffman
77e993510e
Cleanup implementation of angular loading
2016-08-08 08:53:05 -07:00
Ryan Huffman
c594dcdf9f
Add priority loading for model entities
2016-08-08 08:52:29 -07:00
SamGondelman
dd51e0e38f
merge from master
2016-08-05 17:04:45 -07:00
SamGondelman
771e105fa2
Merge remote-tracking branch 'upstream/master' into loadingFade
2016-08-05 16:52:01 -07:00
Brad Hefta-Gaub
83280aa3f2
implement support for updating the render items of models when they finish their fade
2016-08-05 10:11:07 -07:00
SamGondelman
b6e73e06a2
merge from master
2016-08-04 13:34:38 -07:00
Seth Alves
c743cf379e
use loadCollisionModelURLFinished when collisions model is finished
2016-08-03 11:31:51 -07:00
Seth Alves
ad4fc8c656
merge from upstream, don't hold up enabling of physics if a collision hull fails to load
2016-08-03 10:42:15 -07:00
Stephen Birarda
5d3e125a06
make failed geomtetry request not hold physics
2016-08-02 16:32:41 -07:00
Seth Alves
b953e6f0ff
when an avatar URL fails, switch to the default
2016-08-01 18:12:30 -07:00
SamGondelman
313ba87fce
fade on texture load
2016-08-01 14:47:20 -07:00
Andrew Meadows
d876251f1e
release geometry refs in Model::deleteGeometry()
2016-07-24 19:17:39 -07:00
Andrew Meadows
3e43859139
setCollisionModelURL() more symmetric with setURL()
2016-07-13 15:13:35 -07:00
Andrew Meadows
4bebb682dc
namechange: fetchResource --> getGeometryResource
2016-07-13 15:13:35 -07:00
Andrew Meadows
9f7d2cf263
NetworkGeometry --> GeometryResourceWatcher
...
Model class gets render and collision geometries with watchers
also changed names for readability
2016-07-13 15:00:12 -07:00
Seth Alves
11542aeca2
pick against avatar's capsule and then against the T-pose mesh
2016-07-07 16:36:25 -07:00
Seth Alves
5f9c7b6ea5
trying to take joint information into account when raypicking against models
2016-06-29 17:02:49 -07:00
Seth Alves
d53c7ae5d8
experimenting
2016-06-29 12:39:04 -07:00
Andrew Meadows
5d5dc2837b
fix comment
2016-06-20 17:29:20 -07:00
Andrew Meadows
c73757f740
use many colors for collision hull rendering
2016-06-03 10:47:54 -07:00
Brad Hefta-Gaub
06cb625d09
Merge pull request #7959 from hyperlogic/tony/improved-avatar-mixer-precision
...
Improved Avatar Mixer Rotation Precision
2016-05-25 17:14:12 -07:00
Seth Alves
40e862cf9e
quiet gcc 5 warnings
2016-05-21 16:53:01 -07:00
Anthony J. Thibault
55b0060df9
Convert JointData from relative frame to absolute.
2016-05-16 17:48:52 -07:00
Anthony J. Thibault
641e152699
Eye tracking bug fix and debug rendering improvement
...
* Bug fix for eye tracking in HMD, the "up" orientation of your eyes now match your head.
* DebugDraw: added drawRay method.
* Application: Renamed preRender to postUpdate
* AvatarManager: added postUpdate method that iterates over all avatars.
* MyAvatar: Renamed preRender to preDisplaySide
* MyAvatar: split preRender code into postUpdate and preDisplaySide.
* Removed "Show who is looking at me", "Render focus indicator" and "Render lookat target" debug draw.
* Split "Show Look At Vectors" into "Show My Look At Vectors" and "Show Other Look At Vectors", to make it easier to debug eye tracking.
* "Show Look at Vectors" now draws the right eye red and the left eye blue.
* Removed Avatar and MyAvatar renderBody
* Removed look at rendering from head.
* GLMHelpers: Bugfix for generateBasisVectors when up primary and secondary axis were orthogonal
2016-05-08 16:20:32 -07:00
Anthony Thibault
865a77ae20
Model: fixed two crash issues when changing avatars
...
* When the GeometryReader has the last ref to the GeometryResource ptr
It needs to hold on to the reference until invokeMethod is completed.
Otherwise, invokeMethod will call a method on a deleted object, leading
to memory corruption or crashes.
* When the Model URL is changed, the clusterMatrices are invalided and the
RenderItemsSets are cleared. However, there still might be renderItems in
the scene pending changes list that might refer to those RenderItems and their
clusterMatrices. We need to guard against this access to prevent reading from
memory that was previously freed.
Both of these issues were uncovered using the [avatar-thrasher](https://gist.github.com/hyperlogic/d82a61d141df43d576428501a82c5ee6 ) test script.
2016-04-02 21:48:22 -07:00
Anthony J. Thibault
5e81cccc6c
Merge branch 'master' into tony/culling-fixes
2016-04-01 09:29:46 -07:00
Anthony J. Thibault
bc967f0ab0
Model: update renderItems when items are added to the scene.
...
* Renamed enqueueLocationChange to updateRenderItems
* Call updateRenderItems when models are added to the scene.
This will fix entity render bounds being incorrect when they are first added to the scene,
then later being correct after a position update.
* Renamed getMeshPartBound to getRenderableMeshBound.
* Avatar now uses getRenderableMeshBound() to do boundingRadius vs frustum check.
* Model::getRenderableMeshBound now returns a more accurate bound, because it is the same one used for rendering.
This will fix avatar freezing, when they are in the corner of your frustum.
This was due to matrices not being updated because the avatar had to a small bounding sphere.
2016-03-31 14:59:27 -07:00
Zach Pomerantz
e4cba14333
Avoid recreating model items when adding to scene
2016-03-31 10:46:51 -07:00
Zach Pomerantz
3de5f73a1f
Fixup model on tex load
2016-03-31 10:46:51 -07:00
Brad Hefta-Gaub
a7f93aa75c
Merge pull request #7519 from zzmp/fix/avatar-crash
...
Fix crash from updating/resetting avatar
2016-03-30 21:31:17 -07:00
Anthony Thibault
26b9469df5
Merge pull request #7516 from hyperlogic/tony/show-collision-geometry-crash-fix
...
Model: fix for crash when displaying collision mesh
2016-03-30 16:48:07 -07:00
Zach Pomerantz
6e0d6ee45b
Guard updateClusterMatrices from unloaded geo
2016-03-30 16:04:00 -07:00
Zach Pomerantz
00db095306
Guard against reset model geo on scene update
2016-03-30 15:49:45 -07:00
Anthony J. Thibault
f6344c34e7
Model: Fix for equipped models not updating their matrices
2016-03-30 15:19:35 -07:00
Anthony J. Thibault
103257493c
Model: fix for crash when displaying collision mesh.
...
This was due to a default constructed PayloadPointer being sent to the scene via resetItem.
The fix is to A) not do that anymore, B) make resetItem more robust and not crash if this happens.
2016-03-30 14:24:28 -07:00
Anthony J. Thibault
24ca5b3d60
Update after merge changes to NetworkGeometry.
...
Also cleaned up API for ModelMeshPartPayload::updateTransformForSkinnedMesh() to pass a QVector const ref, instead of a raw pointer and a size.
2016-03-28 20:29:02 -07:00
Anthony J. Thibault
940f3e636d
Merge branch 'master' into tony/animated-culling
2016-03-28 19:58:38 -07:00
Anthony J. Thibault
115fd607a0
Address performance issues introduced with this PR.
...
* Prevent clusterMatrices from being invalidated and re-computed in each updateItem lambda.
We do this by not setting _model->_needsUpdateClusterMatrices = true;
* Prevent redundant work if Model::enqueueLocationChange is called multiple times per frame.
We do this by introducing a preRenderLambdas map in the Application class.
Instead of adding work directly to the scene PendingChanges queue Model::enqueueLocationChange
adds a lambda to the Application preRenderLambdas map. The Application ensures that only one lambda will
be invoked for each model per frame.
2016-03-28 19:47:30 -07:00
Anthony J. Thibault
f5a86666a1
Model: fix for collision mesh rendering
2016-03-28 09:56:15 -07:00
Zach Pomerantz
d6640ac520
Update Model::_hasTransparentTextures
2016-03-27 16:38:45 -07:00
Anthony J. Thibault
49a4d104a6
Minimize diff with master
2016-03-26 13:27:05 -07:00
Anthony J. Thibault
bf433487fa
Dynamic bound update for skinned mesh
...
* Use all cluster matrices to compute bound for skinned mesh.
This is far less expensive then doing per-vertex work, but it's not free, for avatars especially.
* Remove skinnedMeshBound, compute it instead.
* Compute clusterMatrices in render update, because we need them to update bounds.
2016-03-26 12:22:02 -07:00
Anthony J. Thibault
b4e70d9101
WIP: checkpoint
...
* bug fix in AABox::operator+=
* added AABox::emiggen
* Avatar now has a default bound for it's skinned mesh.
* WIP: AABox tests; NEED MORE
* Model: split collision and model mesh render items.
Because ModelMeshRenderItems need special handling to update bounds for animated joints.
* Model: dynamically update the bound for rigidly bound animated meshes
* Rig: added access to geometryToRigTransform
* RenderableModelEntityItem: try to update bounds for skinned mesh to be the entity dimentions (this doesn't seem to be working)
* Geometry.cpp: removed unused bounds parameter in evalPartBounds
* ModelMeshPartPayload: bounds updating
* non-animated: use existing _localBound
* rigid bound mesh: use _localBound transformed by clusterMatrix joint transform
* fully skinned mesh: use _skinnedMeshBound provided by the application.
2016-03-25 21:29:20 -07:00
Zach Pomerantz
3402635f99
Lock geometry on blender
2016-03-24 18:50:43 -07:00
Zach Pomerantz
3e9e083df5
Update users of NetworkGeometry
2016-03-24 11:35:41 -07:00
Brad Hefta-Gaub
9f0084dbb1
make Blender keep a shared pointer to the model it's blending
2016-03-22 16:01:31 -07:00
Brad Hefta-Gaub
513138ca98
one more crack at fixing the blender
2016-03-21 18:28:26 -07:00
Chris Collins
6324d0e3be
Merge pull request #7393 from ZappoMan/protectMeshBoxes
...
Fix for crash in recalculateMeshBoxes()
2016-03-21 15:46:28 -07:00
Brad Hefta-Gaub
d28db7bec6
fix typo
2016-03-21 14:47:53 -07:00
Brad Hefta-Gaub
2389295217
actually properly remove pending blendshapes
2016-03-21 13:04:37 -07:00
Brad Hefta-Gaub
492e71345a
Revert "Revert "Fix ModelBlender crash""
...
This reverts commit f274cdcc7f
.
2016-03-21 11:42:25 -07:00
Brad Hefta-Gaub
f274cdcc7f
Revert "Fix ModelBlender crash"
2016-03-21 10:47:31 -07:00
Andrew Meadows
cd802a6549
Merge pull request #7406 from hyperlogic/tony/transparent-texture-fix
...
Model: fix for avatars with late loaded transparent textures.
2016-03-21 09:19:33 -07:00
Anthony Thibault
b06f027f2e
Model: fix for avatars with late loaded transparent textures.
2016-03-20 18:20:03 -07:00
Brad Hefta-Gaub
925d5d36ac
clean up the recalculateMeshBoxes() calls in findRayIntersectionAgainstSubMeshes()
2016-03-18 12:20:45 -07:00
Brad Hefta-Gaub
eb8a6527c6
change ModelBlender to use a set<WeakPointers> to safely handle model lifetime
2016-03-17 19:44:42 -07:00
Zach Pomerantz
a89a76dc4b
Require model fixup if tex is transparent
2016-03-11 14:33:19 -08:00
samcake
ae6e625894
Merge branch 'master' of https://github.com/highfidelity/hifi into orange
2016-02-24 17:30:40 -08:00
Zach Pomerantz
7c9022fb3e
Fix model overlay scaling
2016-02-23 10:40:47 -08:00
samcake
377ee5a486
Merge branch 'master' of https://github.com/highfidelity/hifi into orange
2016-02-22 09:23:14 -08:00
Seth Alves
fea60499d4
rename poorly named variable
2016-02-19 11:32:59 -08:00
Seth Alves
ee5a82f9b8
call simulate from setScaleInternal rather than just initJointTransforms so the scale change is visible
2016-02-19 10:05:22 -08:00
samcake
b03f639e2c
Renaming and rearranging the material fields to support PBR fbx materials
2016-02-16 17:20:23 -08:00
samcake
0ad7bacf02
Changing diffuse to albedo and breaking everything...
2016-02-15 21:50:10 -08:00
howard-stearns
2e7f1cbb3f
Align avatar animation with LOD visibility.
2016-01-26 11:59:18 -08:00
Zach Pomerantz
4ff2b85e1a
Replace ShapePipelineLib abstract with ShapePlumber instanced class
2016-01-11 16:00:08 -08:00
Zach Pomerantz
56aba41299
Rename ShapeRender to DeferredPipelineLib
2016-01-08 14:02:49 -08:00
Zach Pomerantz
63444aac72
Back to shapeContext, compiling
2016-01-05 17:20:08 -08:00
Seth Alves
ce1b8ae6f0
Merge branch 'master' of github.com:highfidelity/hifi into near-grab-via-parenting
2016-01-04 19:35:36 -08:00
Anthony J. Thibault
6b5b272cd7
Added SoftAttachmentModel class.
...
Is a subclass of Model, it overrides the updateClusterMatrices so it will pull
the actual joint matrices from a different rig override.
For the avatar soft attachment system, this override will be the Avatar::_skeletonModel rig.
This will give us the ability for an avatar to "wear" non-rigid attachments, such as clothing.
2015-12-18 09:52:11 -08:00
Seth Alves
0003c607ea
Merge branch 'master' of github.com:highfidelity/hifi into near-grab-via-parenting
2015-12-15 18:46:21 -08:00
Anthony J. Thibault
3f0cdb3c02
Merge branch 'master' into tony/js-avatar-default-pose
2015-12-14 11:19:24 -08:00
Seth Alves
1492fd6090
merge from upstream
2015-12-12 12:37:57 -08:00
Seth Alves
6c033d9603
call locationChanged when receiving changing avatar joints over the network. RenderableModelEntityItem uses locationChanged to relay updates to _model
2015-12-11 11:35:42 -08:00
samcake
94b6ca4450
FIxing the bad lambda capture for local variables
2015-12-11 10:48:58 -08:00
samcake
20f3d6abe1
REmoving comments
2015-12-10 16:52:03 -08:00
samcake
dffb83a488
Potentially working correctly
2015-12-10 16:31:00 -08:00
samcake
5805cc8f2b
Adding the AABox transform features (from Extents) adn introducing a simple MeshPartPayload to render simple geometry
2015-12-10 14:59:04 -08:00
Anthony J. Thibault
652ce5501f
Expose Avatar default pose to JavaScript
...
New JavaScript API to get the avatar's default pose.
MyAvatar.getDefaultJointRotation(index);
MyAvatar.getDefaultJointTranslation(index);
See `examples/tPose.js` for example usage
2015-12-10 13:57:31 -08:00
samcake
f9269523a1
Merge branch 'master' of https://github.com/highfidelity/hifi into controllers
2015-12-09 16:58:56 -08:00
samcake
9eb40bcd65
Trying to redner the collision geometry correctly but still an issue with the bounding box i get
2015-12-09 16:58:14 -08:00
samcake
1adf2cc8ba
Repesenting the collision meshes of a Model correctly
2015-12-08 16:45:12 -08:00
Seth Alves
dffa37c0e7
Merge branch 'master' of github.com:highfidelity/hifi into parents
2015-12-08 09:44:50 -08:00
samcake
b24af06589
Fixing the display of the collision hull mesh
2015-12-07 18:26:55 -08:00
Stephen Birarda
6dbff93bbd
fix assert on model URL change from _renderItemsSet
2015-12-07 16:24:26 -08:00
Seth Alves
f99812a903
adjust method names to fit convention
2015-12-07 14:31:08 -08:00
Seth Alves
a948ae5f19
children of avatar joints might be right, now
2015-12-06 10:48:00 -08:00
Seth Alves
4e74c98ae7
Merge branch 'master' of github.com:highfidelity/hifi into parents
2015-12-03 11:00:13 -08:00
Anthony J. Thibault
9c0b4bc2a2
Fix for model entities with non-uniform scaled mesh
...
Logic which extracted rotations from a non-uniformly scaled matrices was sometimes incorrect.
This should fix the roads in Qbit as well as the blocks in toybox.
2015-12-02 14:09:47 -08:00
Seth Alves
b7ebe5b92b
merge from upstream
2015-11-30 16:59:52 -08:00
Seth Alves
f013f95e9b
merge from upstream
2015-11-21 08:43:00 -08:00
Anthony J. Thibault
2f37335d77
Warning fixes
2015-11-20 14:50:42 -08:00
Anthony J. Thibault
a77ea8da43
Removed JointStates! You won't be missed.
2015-11-20 14:15:37 -08:00
Anthony J. Thibault
721da29432
WIP checkpoint
...
* No longer normalizing scale in AnimSkeleton and AnimClip
This means graph is animating in 'geometry' coordinates
before unit scale is even applied. This is necessary to
properly work with both Avatar based models and ModelEntity
based models
Many things are broken.
* debug rendering (translations are x100)
* IK hand targets
* follow cam
* I did not even dare to try HMD mode
2015-11-18 18:47:33 -08:00
Anthony J. Thibault
55adedcec8
Merge branch 'master' into tony/remove-joint-states
2015-11-16 11:22:44 -08:00
Seth Alves
89ed3751ae
Merge branch 'master' of github.com:highfidelity/hifi into rework-visual-physics-debug
2015-11-14 14:00:20 -08:00
Stephen Birarda
429a4d51d5
Merge pull request #6375 from Atlante45/resize
...
Fix models resizing
2015-11-13 10:23:05 -08:00
Seth Alves
3519dd248b
Merge branch 'master' of github.com:highfidelity/hifi into rework-visual-physics-debug
2015-11-12 09:53:11 -08:00
Brad Hefta-Gaub
eefe26d96a
fix crash in Model::deleteGeometry when _rig is not initialized
2015-11-12 09:24:49 -08:00
Atlante45
954391ae3e
Fix models resizing
...
When models are MUCH bigger one one axis than the others
and we modify the scale only of one of those small axis,
it wouldn't propagate because the change was relatively
too small conpared to the size of the model
2015-11-11 18:33:26 -08:00
Anthony J. Thibault
e698d3c1e8
Isolate JointStates within the Rig class
...
Except for SkeletalModel::computeBounds() JointStates are now completly
encapsulated by the Rig. Now we can start using AnimPoses instead and
in parallel with the JointState implementation. Then we can assert that
they are identical, before removing JointStates.
This check in has many comments with the AJT tag.
Each one of these cases will need to be revisitied and fixed.
In particular // AJT: LEGACY will be used to enclose all code
in the Rig which manipulates the _jointState QVector.
2015-11-11 18:23:58 -08:00
Anthony J. Thibault
11440f92f4
Removed rig animations
...
* Deleted AnimationHandle class
* Removed enableAnimGraph and anableRigAnimations from Menu.
* Removed *some* references to old IK system.
But it is still used when computing collision bounding volumes
2015-11-11 15:32:57 -08:00
Seth Alves
b9ca509f07
Merge branch 'master' of github.com:highfidelity/hifi into render-debug-fixup
2015-11-10 09:50:12 -08:00
Seth Alves
d535109caf
attempt to fix render-collision hull feature
2015-11-10 09:49:31 -08:00
Brad Hefta-Gaub
021a6e689d
added some asserts to test future mistakes that would cause render item leaks
2015-11-09 17:09:17 -08:00
Brad Hefta-Gaub
e47b049200
fix render item leak on Model::reset()
2015-11-09 16:41:40 -08:00
Seth Alves
6cb195b335
Merge branch 'master' of github.com:highfidelity/hifi into parents
2015-10-20 15:53:56 -07:00
Seth Alves
bc99ef778c
change how render engine is told about model position changes
2015-10-20 12:04:29 -07:00
Seth Alves
4903db45b1
give other avatars an anim-skeleton
2015-10-15 14:21:06 -07:00
samcake
0a351a8a0c
FIx the problem with cauterizedClusterMatrices in the case rear view mirror is used. Clean the way to define the depth stencil format for texture
2015-10-07 14:26:33 -07:00
samcake
c92a6d58ab
Dispatch classes in their properly named files to appease the coding standard gods
2015-10-06 09:46:32 -07:00
samcake
59afbf1a04
Remove the renderPart call from model.cpp and put the code path in the MeshPartPayload::render()
2015-10-06 01:15:53 -07:00
samcake
fc7f0c77a5
Rename ModelRenderPayload files to ModelRenderItem
2015-10-06 00:20:51 -07:00
samcake
12fedb6ff0
Move skinning shader features in its own slh and get ready for moving cluster matrices to uniform buffer
2015-10-05 18:31:05 -07:00
samcake
9e393ced46
MOving rednering code of Model into ModelRenderPayload.h/cpp
2015-10-05 09:17:16 -07:00
samcake
fd232b7d32
ONe more file to deal with the Model rendering
2015-10-04 22:27:48 -07:00
samcake
1799322c67
Fix typos introduce in previous commit about the Quad to triangle indexing and remove dead code in model.cpp
2015-10-04 18:46:35 -07:00
samcake
55f5ab3732
Merge branch 'master' of https://github.com/highfidelity/hifi into hobbes
2015-10-04 18:31:56 -07:00
samcake
48416262a1
Migrated the FBXReader mesh code to use excusively the Model::mesh and use them directly for rendering in the ModelPartPayload, fixed a bug in the indexBUffer offset value used in drawIndexed and drawIndexedInstanced
2015-10-04 18:31:19 -07:00
samcake
edaa8f998a
Migrating to the new mesh for rendering and having problems with multi part mesh
2015-10-02 18:12:16 -07:00
samcake
edb485cb0f
working on getting the Model payload to use model::Mesh
2015-10-02 12:24:41 -07:00
Anthony J. Thibault
fc7b6dee84
Merge branch 'master' into transmit-joint-translation
2015-10-02 11:40:33 -07:00
samcake
b8ea83099a
Debuggging
2015-10-01 21:13:22 -07:00
samcake
4478ca79ca
Merge branch 'master' of https://github.com/highfidelity/hifi into hobbes
2015-10-01 19:55:14 -07:00
Andrew Meadows
09ac01a5e7
remove cruft from old verlet avatar simulation
2015-10-01 13:44:50 -07:00
Seth Alves
d0a1e206ca
Merge branch 'master' of github.com:highfidelity/hifi into transmit-joint-translation
2015-09-29 13:55:13 -07:00
samcake
840f92bd06
Merge branch 'master' of https://github.com/highfidelity/hifi into hobbes
2015-09-29 10:54:09 -07:00
samcake
a9f6c93a2c
merging
2015-09-29 10:53:56 -07:00
samcake
202d2944ab
Merge branch 'master' of https://github.com/highfidelity/hifi into calvin
2015-09-28 17:24:59 -07:00
samcake
95ea874d43
Minor fixes to the way the specular color is interpreted
2015-09-28 12:43:15 -07:00
Brad Hefta-Gaub
ce3da099f6
normalize the surface normal from the triangle, coding standard fix, update example
2015-09-28 08:30:49 -07:00
Brad Hefta-Gaub
430cbcca7e
first cut at adding surface normals to ray intersection
2015-09-27 21:57:50 -07:00
Seth Alves
50dd8eba45
Relay joint translations across network. Apply animation's root-joint translation to avatar.
2015-09-26 11:40:39 -07:00
Brad Hefta-Gaub
85b2322acc
more work on batch optimzation
2015-09-24 17:11:14 -07:00
samcake
d7d332acd4
Merge branch 'master' of https://github.com/highfidelity/hifi into orange
...
t :wq
2015-09-23 09:51:31 -07:00
samcake
518f5fe17c
Starting to clean the mesh part of the RenderItem....
2015-09-22 18:21:36 -07:00
Andrew Meadows
2edffaf91a
remove unused variables
2015-09-22 17:20:13 -07:00
samcake
80e5581639
fixing review comments
2015-09-21 22:51:14 -07:00
samcake
91b9940fe9
Merging and a fix for the diffuse map floating around
2015-09-21 18:09:25 -07:00
samcake
910038cf82
Merging
2015-09-21 17:47:23 -07:00
samcake
21f53f1bbd
debugging the lighting issue on the craps table
2015-09-21 16:57:55 -07:00
Brad Hefta-Gaub
dc9c774eb5
merge model part quads and triangles together to reduce the number of draw calls
2015-09-21 13:09:43 -07:00
samcake
8941741508
Migrating the rendering code to the Material Maps and adding the simplae variables to the the TextutreMap
2015-09-18 18:47:18 -07:00
Sam Gateau
d45547aa1a
Merge and update
2015-09-16 13:46:07 -07:00
Brad Davis
f4818c17cf
Fix avatar and other model animations
2015-09-15 08:04:17 -07:00
Brad Davis
3f688f92d3
Don't do an O(N^2) operation on cluster matrices
2015-09-15 08:04:17 -07:00
Brad Hefta-Gaub
70fcdbf2fd
Revert "Fix over-calculation of cluster matrices"
2015-09-14 21:20:11 -07:00
Brad Davis
35e4440c4f
Don't do an O(N^2) operation on cluster matrices
2015-09-14 16:09:13 -07:00
Sam Gateau
9074d0d6e1
very first version of the TextureStorage working
2015-09-14 09:29:46 -07:00
Seth Alves
49ee251238
quiet compiler
2015-09-12 09:59:25 -07:00
Sam Gateau
c37cdce750
Merging back with master
2015-09-10 17:53:50 -07:00
Howard Stearns
eb67254e54
Merge branch 'master' of https://github.com/highfidelity/hifi into decouple-avatar-updates
2015-09-08 16:54:14 -07:00
Howard Stearns
27f4bca0a4
Cleanup: This appears to be complete and working -- EXCEPT for loading animations on the update thread!
...
Until I figure that out, the answer is to turn off Developer->Avatar->"Enable Avatar Update Threading", run through forward/back/left/right/strafeLeft/strafeRight, and then turn "Enable Avatar Update Threading" back on.
2015-09-08 14:49:58 -07:00