Commit graph

243 commits

Author SHA1 Message Date
TonyPeng
56eadcb0dc Get rid of redundant GL calls for fog. Enable and disable fog during rendering stage of voxels. Moved the local light parameters to shader uniform arrays. 2014-07-09 12:05:34 -07:00
ZappoMan
8755e2d42e CR feedback 2014-07-03 13:38:52 -07:00
ZappoMan
a53d007c33 add support for getting current animation details for running avatar animations 2014-07-03 11:59:18 -07:00
Andrew Meadows
49d54dd6f0 Add Model::inverseKinematics() for stable hand IK
(removed constraint enforcement which was causing problems,
will add that back later)
2014-07-02 09:33:51 -07:00
Andrew Meadows
c12c869cdf add "visible" transforms to JointState
also stubbery for using them in Model and SkeletonModel
2014-06-25 18:06:56 -07:00
Andrew Meadows
a8c2003fe6 namechange SimulationEngine --> PhysicsSimulation 2014-06-19 08:34:12 -07:00
Andrew Meadows
ecbf5043d7 code out of Model into base and derived classes
PhysicalEntity (base class) gets some shape management stuff
SkeletonModel (derived class) gets some boundary shape and
joint-shape stuff
2014-06-17 16:22:18 -07:00
Andrew Meadows
118717d96a Shapes moved from Model into PhysicalEntity 2014-06-16 14:51:58 -07:00
Andrew Meadows
7530f8ec1e add way to enable Model for collisions 2014-06-15 17:57:42 -07:00
Andrew Meadows
718b98f70a Only build shapes for models that need them 2014-06-12 18:15:44 -07:00
Andrew Meadows
5be470bcbc add PhysicalEntity class
Model and RagDoll derive from PhysicalEntity
Shape gets back pointer to its Entity (shape sharing not possible)
CollisionInfo gets backpointers the shapes involved
2014-06-12 13:13:00 -07:00
Andrew Meadows
3c51ce76fc Add simulationID to Model Shape and CollisionInfo 2014-06-10 15:24:17 -07:00
Andrew Meadows
b70020595c clearShapes(), rebuildShapes() need not be virtual 2014-06-09 09:55:15 -07:00
Andrew Meadows
8e536ebd9a Use NULL Shape* for non-colliding joints in Models 2014-06-09 09:35:27 -07:00
Andrew Meadows
0addf3bae4 cleaup: remove some unused collision code
remove CollisionInfo::_type
remove unused Avatar collision response stuff
comment out some code that works but will probably be replaced
2014-06-06 14:36:05 -07:00
Andrew Meadows
551029c2f5 slave SkeletonModel's collision shapes to RagDoll 2014-06-06 08:51:22 -07:00
Andrew Meadows
1b2cd2e144 adding RagDoll scaffold 2014-06-05 11:07:35 -07:00
Andrew Meadows
7807388b08 merge upstream/master into andrew/inertia
Conflicts:
	interface/src/renderer/Model.cpp
2014-06-04 14:28:23 -07:00
Andrew Meadows
f19b562e88 add JointState::setRotation(rotModelFrame) 2014-06-04 14:17:39 -07:00
Andrew Meadows
212ac13802 setRotation -> setJointRotationFromBindFrame 2014-06-04 14:10:28 -07:00
Andrew Meadows
ccfd620c84 setJointPositionInModelFrame -> setJointPosition 2014-06-04 13:56:37 -07:00
Andrew Meadows
3af4b1b333 getJointPositionInModelFrame -> getJointPosition 2014-06-04 13:51:43 -07:00
Andrew Meadows
971268d4f2 setRotationInModelFrame -> setRotation 2014-06-04 13:46:08 -07:00
Andrew Meadows
b3cabb8156 applyRotationDeltaInModelFrame -> applyRotationDelta 2014-06-04 13:43:15 -07:00
Andrew Meadows
d8f5e10947 getPositionInModelFrame -> getPosition 2014-06-04 13:36:54 -07:00
Andrew Meadows
4a3fbfcdee getRotationInModelFrame -> getRotation 2014-06-04 13:34:58 -07:00
Andrew Meadows
4ae58153e0 computeTransformInModelFrame -> computeTransform 2014-06-04 13:31:31 -07:00
Andrew Meadows
d32e14ca04 renames of JointState data members 2014-06-04 13:27:28 -07:00
Andrew Meadows
b1b7f6bdc4 remove last world-frame transfoms from JointState 2014-06-04 12:03:01 -07:00
Andrew Meadows
d46a90d763 remove JointState::_combinedRotation
instead use JointState::_rotationInModelFrame
2014-06-04 11:56:20 -07:00
Andrew Meadows
19f0f453a5 remove JointState::setRotation()
instead use JointState::setRotationInModelFrame()
2014-06-04 11:52:07 -07:00
Andrzej Kapolka
74afcf5626 Allow floating point start/end frames and negative play speeds. 2014-06-04 11:47:53 -07:00
Andrew Meadows
5d8e3d447a remove JointState::getRota/PositionInWorldFrame()
instead: use getRotat/PositionInModelFrame() and do math
2014-06-04 11:36:00 -07:00
Andrew Meadows
729c01ddbf remove more getHybridTransform() calls 2014-06-04 11:25:38 -07:00
Andrew Meadows
30d936c15b getJointPosition -> getJointPositionInWorldFrame 2014-06-04 10:52:10 -07:00
Andrew Meadows
a1afcfd42c remove JointState::applyRotationDelta()
(use JointState::applyRotationDeltaInModelFrame()) instead)
2014-06-03 15:57:16 -07:00
Andrew Meadows
7f46e9d514 remove JointState::getJointRotation()
(use getRotationModelFrame() instead)
2014-06-03 15:42:38 -07:00
Andrew Meadows
e7f32c211b remove world-frame hand/palm set methods 2014-06-03 14:48:57 -07:00
Andrew Meadows
03bf1fe69d Add joint manipulations in model-frame 2014-06-03 14:04:09 -07:00
Andrew Meadows
f99489c157 rolling back previous change for IK instability 2014-06-03 10:40:30 -07:00
Andrew Meadows
d7be5faa9d unravel rotation code by giving proper names
The goal is: eliminate dependency on JointState::_combinedRotation
(which is joint-to-world) and store joint-to-model transforms instead
2014-06-02 14:43:25 -07:00
Andrew Meadows
9b3773fa3b remove 'fromBind' argument to getJointRotation() 2014-06-02 14:20:13 -07:00
Andrew Meadows
a62a270004 merge andrew/inertia into andrew/ragdoll
Conflicts:
	interface/src/avatar/Avatar.cpp
	interface/src/renderer/Model.h
2014-06-02 11:56:27 -07:00
Andrew Meadows
9e60b758df Made JointState transforms private.
Also changed some function names to be more descriptive.
Using "Hybrid" to describe frame with world-rotation + model-local-origin.
2014-06-02 11:34:59 -07:00
Andrew Meadows
8e7daed2b3 Merge upsrtream/master into andrew/inertia
Conflicts:
	interface/src/renderer/Model.cpp
2014-06-02 11:32:23 -07:00
Andrew Meadows
4eb4334ed8 replace Model::setJointRotation() with JointState::setRotation() 2014-05-30 09:57:32 -07:00
Andrew Meadows
557d7d428b minor rename and formatting 2014-05-30 08:28:15 -07:00
Andrew Meadows
e21dbd8726 rename updateWorldTransforms to computeTransforms 2014-05-30 08:20:11 -07:00
AndrewMeadows
5b74829318 Merge pull request #2955 from ey6es/cascade
Basic cascaded shadow maps for increased shadow draw distance.
2014-05-29 18:57:44 -07:00
Andrzej Kapolka
67921c474e Merge branch 'master' of https://github.com/highfidelity/hifi into cascade 2014-05-29 17:09:09 -07:00
Andrzej Kapolka
12beef7fec Apply the new shadow distances to the models, too. 2014-05-29 17:08:36 -07:00
Andrew Meadows
6efa851104 minor cleanup + use 'fraction' instead of 'percent' 2014-05-29 15:44:27 -07:00
Andrzej Kapolka
391902f79b Cascaded shadow maps for models. 2014-05-29 15:30:40 -07:00
Atlante45
0eb56000ef Merge branch 'master' of https://github.com/highfidelity/hifi into click_drag_attach 2014-05-29 15:02:21 -07:00
Andrew Meadows
603333f634 add JointState::restoreRotation() 2014-05-29 14:11:17 -07:00
Andrew Meadows
2e99d316ac remove JointState::_translation
(use corresponding data in FBXJoint instead)
2014-05-29 12:52:05 -07:00
Andrew Meadows
a898fcbf75 move details of getJointRotation() into JointState
also: remove unused getLeft/RightHandRotation() methods
2014-05-29 11:43:25 -07:00
Atlante45
37613f086b Merge branch 'master' of https://github.com/highfidelity/hifi into click_drag_attach
Conflicts:
	interface/src/renderer/Model.cpp
2014-05-29 10:28:09 -07:00
Andrew Meadows
4cf5628783 move applyRotationDelta() from Model to JointState 2014-05-29 10:00:55 -07:00
Andrew Meadows
86d6fd45de safe copy of JointState data 2014-05-29 08:19:43 -07:00
Andrew Meadows
ec25982a58 add JointState::updateWorldTransform() 2014-05-28 17:51:17 -07:00
Andrew Meadows
b15b0fd96c cleaner initialization of JointState 2014-05-28 17:31:07 -07:00
Andrew Meadows
9f2a4ae626 Make JointState a proper class
JointState gets a pointer to its corresponding FBXJoint
2014-05-28 16:49:39 -07:00
Atlante45
8cd101ac57 Added getJointCombinedRotation to Models 2014-05-28 15:57:38 -07:00
Andrew Meadows
13f11e1056 Remove "fromBind" arg in Model::setJointRotation
It was always set 'true'.
2014-05-28 14:53:32 -07:00
Andrew Meadows
ae3b792a35 move face/head code from Model into SkeletonModel 2014-05-27 15:28:41 -07:00
Andrew Meadows
6efa417742 move hand/arm stuff from Model to SkeletonModel 2014-05-27 15:06:50 -07:00
Andrew Meadows
afc7660d74 merge upstream/master into andrew/inertia 2014-05-27 14:57:44 -07:00
Andrew Meadows
07544c7b43 removal of unused getNeckRotation() 2014-05-27 12:52:44 -07:00
Andrzej Kapolka
edaa251e5f Provide option to disable avatar shadowing. 2014-05-27 11:43:34 -07:00
Andrzej Kapolka
e48f02f2c5 Remove unused variable. 2014-05-23 17:13:27 -07:00
Andrzej Kapolka
0baf757c0d Basic support for shadows on models. 2014-05-23 16:35:51 -07:00
Andrzej Kapolka
4d6e8a2c9e Or rather, replaceMatchingPriorities. 2014-05-23 09:42:36 -07:00
Andrzej Kapolka
a32dfdb7bb We should let people "start" even if the animation is already playing (to
start again from the beginning).  Fixed an issue with competing priorities.
2014-05-22 17:05:28 -07:00
Andrzej Kapolka
8458477b9f Fixed a compile warning, provide means to start/stop animations. 2014-05-22 16:15:34 -07:00
Andrzej Kapolka
d4af39a9f5 Working on handling animation priorities to prevent Hydra move/restore from
interfering with scripted animations.
2014-05-22 14:41:46 -07:00
Andrzej Kapolka
de7c05cb2d More animation controls. 2014-05-21 15:30:50 -07:00
Andrzej Kapolka
0e15c82e49 Allow setting masked joints for each animation. 2014-05-21 11:58:20 -07:00
Andrzej Kapolka
0dfd787034 Added some basic method to allow scripts to run/stop animations on the avatar. 2014-05-21 10:44:51 -07:00
Andrzej Kapolka
1022f1bec4 Added a priority setting so that we can control the order in which animations
are applied.
2014-05-21 09:40:49 -07:00
Andrzej Kapolka
7124b4a196 Mask joints from animation when explicitly set. 2014-05-20 17:10:53 -07:00
Andrzej Kapolka
49a0645677 Animation bits. 2014-05-20 15:23:15 -07:00
Andrzej Kapolka
62e7a31602 More work on animation configuration. 2014-05-19 18:09:33 -07:00
Andrew Meadows
e98f5c7486 merge upstream/master into andrew/inertia
Conflicts:
	interface/src/renderer/Model.cpp
2014-05-15 12:33:09 -07:00
Andrew Meadows
4640587445 more correct model bounding capsule 2014-05-15 12:28:55 -07:00
ZappoMan
106c8bffd8 first cut at animations in models 2014-05-09 16:08:06 -07:00
Andrzej Kapolka
d0537e7ead Specular map support. 2014-05-06 17:32:10 -07:00
Andrzej Kapolka
f37460e39a Basic attachment rendering. 2014-05-05 15:46:09 -07:00
Andrzej Kapolka
3a4dfb92f6 Let's try using the neck parent rotation, rather than the neck, to fix
separate heads.
2014-05-02 19:37:42 -07:00
Andrzej Kapolka
3ebe1df6de Merge branch 'master' of https://github.com/highfidelity/hifi
Conflicts:
	interface/src/avatar/MyAvatar.h
2014-05-01 21:00:32 -07:00
Andrzej Kapolka
322e12b9de Allow users to clear the head URL and have no separate head model. 2014-05-01 17:55:16 -07:00
ZappoMan
f7da070d77 more work, cleanup names, remove translation use snap to center 2014-05-01 11:29:17 -07:00
ZappoMan
293963c546 implement snap to center in model 2014-05-01 09:02:41 -07:00
ZappoMan
bb6444f5a9 more hacking got it working 2014-05-01 07:30:56 -07:00
ZappoMan
85484affa9 hacking 2014-04-30 17:55:54 -07:00
Andrzej Kapolka
4f8c1f9c65 Merge branch 'master' of https://github.com/highfidelity/hifi 2014-04-23 16:09:23 -07:00
Andrzej Kapolka
c8c3cf3664 Remove unused propagate option for applyRotationDelta. 2014-04-23 12:29:01 -07:00
Andrzej Kapolka
f7bc1ae62c Working on integrating rotation into IK. 2014-04-23 10:47:24 -07:00
Andrew Meadows
06794f33f3 add accessor for Model::_boundingShape 2014-04-21 18:23:19 -07:00
Andrzej Kapolka
6add0dfb42 Tweaked Hydra "IK" to propagate delta rotations up the hierarchy while
preserving joint constraints.
2014-04-18 15:04:42 -07:00