Commit graph

410 commits

Author SHA1 Message Date
Sam Gateau
88eaeaee7d Introducing the COntext and the Backend object and the specialized GLBackend for the real OpenGL backend to the graphics api 2014-10-28 14:42:22 -07:00
Sam Gateau
89f9e5b01b try to get more coherent names 2014-10-27 11:49:51 -07:00
Sam Gateau
ff44a460d6 Add NSIGHT Profiliing capability 2014-10-27 11:40:52 -07:00
Sam Gateau
d92c03364a Improve comment regarding the replacement of the QGLProgram->bind() 2014-10-23 14:53:43 -07:00
Sam Gateau
d13283192f Fix the bug happening on mac due to order in which parmaeters are evaluated for all of the gl calls, now fixed with an order independant code 2014-10-22 14:07:15 -07:00
Sam Gateau
821284edfd Introduce the gpu::Batch for the full Model::render call 2014-10-21 17:46:41 -07:00
Sam Gateau
00dbe486d9 FIrst working version of the GLBatching system introduced in the MOdelrendering path 2014-10-21 10:50:53 -07:00
Sam Gateau
0def490db7 startign to record all the gl commands in the Batch 2014-10-17 18:17:44 -07:00
ZappoMan
47f5d499f6 small optimization 2014-10-16 15:26:01 -07:00
ZappoMan
148b880bb1 handle case of meshes with multiple parts with different materials better, don't mix them in with single material meshes 2014-10-16 14:32:07 -07:00
ZappoMan
d1f263ecc5 group materials together when rendering models 2014-10-16 14:05:35 -07:00
ZappoMan
ffb7bcf9d3 wire up different culling options to debug menus 2014-10-16 09:32:24 -07:00
ZappoMan
bf77adc4bc add support for LOD occulsion for too small meshes in Model::render() 2014-10-16 00:30:24 -07:00
ZappoMan
4c7ecba579 spelling change 2014-10-15 20:23:04 -07:00
ZappoMan
921a3fb8c0 switch QList<> to QVector<> and add some guards against out of range indices 2014-10-15 20:18:04 -07:00
ZappoMan
56b4d58f18 implement mesh groups and pull out shader programs in renderMeshes() to outside the loop based on group 2014-10-15 17:08:47 -07:00
ZappoMan
8a83511942 first cut at separating opaque from transparent meshes 2014-10-15 14:40:42 -07:00
ZappoMan
46cb780aa5 view cull mesh parts 2014-10-15 10:08:21 -07:00
Andrzej Kapolka
4c617c6d55 Stop using the emissive color for glow. 2014-09-29 14:51:45 -07:00
AndrewMeadows
7f7861671e Merge pull request #3471 from ctrlaltdavid/20055
Code Review for Job #20055
2014-09-26 14:00:33 -07:00
David Rowe
aa9511c263 Position Rift camera at avatar model's mid-eye location 2014-09-25 22:49:12 -07:00
Andrzej Kapolka
6c907a9d83 Read the emissive color property and use it to effect glow. 2014-09-19 16:49:51 -07:00
Andrzej Kapolka
9515145b9b Removed commented lines. 2014-09-19 15:48:56 -07:00
Andrzej Kapolka
646c0dc48f Working on translucent model bits. 2014-09-19 15:31:46 -07:00
Andrzej Kapolka
c6aad42f21 Move LocalLight to AvatarManager, apply it at the avatar level. 2014-09-18 17:09:53 -07:00
Andrzej Kapolka
b9ae005e53 Working on the actual deferred lights. 2014-09-18 16:12:46 -07:00
Andrzej Kapolka
5c22fe7bd1 Translucency tweak. 2014-09-18 13:27:15 -07:00
Andrzej Kapolka
fb7e633cac Post-merge fixes. 2014-09-18 13:17:23 -07:00
Andrzej Kapolka
c54e1c937c Merge branch 'master' of https://github.com/highfidelity/hifi into deference
Conflicts:
	interface/src/avatar/Head.cpp
2014-09-18 13:08:55 -07:00
Andrzej Kapolka
e0a56b4a95 Rejiggered the blender handling: allow up to N blenders active at once so
that with small numbers of avatars, the blenders can stack for lower latency.
2014-09-17 17:57:08 -07:00
Atlante45
3751e05ce3 Fixes crash in Model::scaleToFit() 2014-09-17 13:37:16 -07:00
Andrzej Kapolka
fbd1efad81 Allow specifying material opacity. 2014-09-16 17:52:39 -07:00
Andrzej Kapolka
bfaac9eae1 Deferred lighting tweaks. 2014-09-15 18:38:10 -07:00
Andrzej Kapolka
580d591dc4 Working on getting glow to work with deferred lighting. 2014-09-15 17:11:36 -07:00
Andrzej Kapolka
9caa4d3a08 Merge branch 'master' of https://github.com/highfidelity/hifi into deference 2014-09-15 12:19:30 -07:00
Andrzej Kapolka
919112fe7c Starting to work on handling translucent meshes with deferred lighting. 2014-09-15 12:18:59 -07:00
ZappoMan
c32d5db75c fix bug with attachments being stretched 2014-09-13 15:32:21 -07:00
Andrzej Kapolka
72f38900bb Fix for blending on models. 2014-09-12 17:31:03 -07:00
Andrzej Kapolka
982ab75b61 Merge branch 'master' of https://github.com/highfidelity/hifi into deference 2014-09-12 17:09:25 -07:00
Andrzej Kapolka
53933fc9c6 Working on deferred lighting for models. 2014-09-12 17:09:07 -07:00
Andrzej Kapolka
97813a2f72 Make sure we note that the blender finished even if the geometry changed. 2014-09-12 15:34:49 -07:00
Andrzej Kapolka
72a6254fa1 Only allow one "blender" to run at a time for each model. 2014-09-12 15:24:38 -07:00
ZappoMan
f00947ada7 handle registration point in rendering of box, sphere, and model entities 2014-09-11 08:33:41 -07:00
ZappoMan
b78b8ccbb0 first cut at replacing radius with dimensions 2014-09-09 13:33:05 -07:00
ZappoMan
2bcad6ab2b Merge branch 'master' of https://github.com/highfidelity/hifi into virtualEntities
Conflicts:
	assignment-client/src/Agent.cpp
	examples/editModels.js
2014-08-28 21:19:56 -07:00
Andrzej Kapolka
e29a4e7683 Merge pull request #3312 from AndrewMeadows/ragdoll
use dispatchTable for shape-vs-shape collision queries
2014-08-25 15:43:48 -07:00
Andrew Meadows
6cdee21a50 fix for clearJointData() in JS scripts
let the JointState class verify animation priority
2014-08-25 10:40:28 -07:00
Andrew Meadows
bc1276944c merge upstream/master into andrew/ragdoll 2014-08-21 08:21:36 -07:00
Andrew Meadows
080c191727 namechange updateConstraint() -> buildConstraint() 2014-08-21 08:20:31 -07:00
Andrew Meadows
7e4c72445e JS scripts set joint animation priorities 2014-08-20 17:14:59 -07:00
ZappoMan
ef86d86234 split out entity rendering into subclasses, improved rendering of models 2014-08-20 15:49:50 -07:00
Atlante45
b13604f968 JS API for recording 2014-08-19 16:43:26 -07:00
Atlante45
52640c8482 Various tweaks and code cleanup 2014-08-18 14:23:29 -07:00
Andrzej Kapolka
668f6d3cfd Support for shadows on heightmaps. 2014-08-15 16:13:47 -07:00
Andrew Meadows
5de762361a remove cleanup of Model::_jointStates tree
the cleanup causes crashes and broken models
2014-08-08 08:20:42 -07:00
Andrew Meadows
9a55252587 remove extraneous roots from Model::_jointStates 2014-08-07 17:02:28 -07:00
Andrew Meadows
87350ad2d0 ragdoll simulation now in model-relative frame
(same rotation as world-frame, but translated to MyAvatar origin)
2014-08-07 11:45:06 -07:00
Atlante45
fb670275c2 Don't recompute unchaged transform 2014-07-28 16:42:16 -07:00
Andrew Meadows
2aaa628a67 send visible joint state when colliding as ragdoll 2014-07-24 08:42:34 -07:00
Andrzej Kapolka
02bf76240a Multiply local light colors by material diffuse reflectance. 2014-07-22 18:30:28 -07:00
Andrzej Kapolka
4f87524821 Switched back to using uniforms for light parameters, as using the fixed
function state killed my frame rate.  Also cleaned up some of the location
tracking.
2014-07-22 18:03:13 -07:00
Andrzej Kapolka
be028c2b01 Fixes for local lights. 2014-07-22 14:13:51 -07:00
Andrew Meadows
b8fb5e0298 namechange FromBindFrame ==> InBindFrame 2014-07-14 15:33:05 -07:00
Andrew Meadows
00544aa975 add JointState::_positionInParentFrame 2014-07-14 15:18:34 -07:00
Andrew Meadows
b012c0a008 update visible transforms right before render 2014-07-10 16:19:27 -07:00
Andrew Meadows
8fa7bf4fa0 rename: ParentFrame --> ConstrainedFrame 2014-07-09 16:43:46 -07:00
TonyPeng
ef4b95c6e0 Merged from master. Get rid of redundant GL fog states. Moved local light parameters to shader uniform arrays. 2014-07-09 13:27:42 -07:00
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
TonyPeng
94e81da557 Added local lights to avatar. Added haze to voxel. 2014-07-08 09:44:28 -07:00
ZappoMan
8755e2d42e CR feedback 2014-07-03 13:38:52 -07:00
Andrew Meadows
55dd2a4835 re-enable gravity effect on arm IK 2014-07-03 09:10:23 -07:00
Andrew Meadows
356a29c2fb add AngularConstraint::softClamp() for hands 2014-07-03 08:40:34 -07:00
Andrew Meadows
9f5f79b2e3 merge andrew/ragdoll into andrew/bispinor
improved IK merged into AngularConstraint work

Conflicts:
	interface/src/renderer/JointState.cpp
	interface/src/renderer/JointState.h
2014-07-02 11:37:17 -07:00
Andrew Meadows
b018c1c4a5 Add copy ctor for JointState
create AngularConstraint for joints that need them (but not used yet)
2014-07-02 11:22:07 -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
1b24a111fe JointState::_rotationInParentFrame is now private 2014-06-25 09:56:18 -07:00
Andrew Meadows
9a2197a23c draw skeleton shapes at at correct positions 2014-06-23 10:55:34 -07:00
Andrew Meadows
fbafcb6fd8 Fix distance constraint lengths 2014-06-19 11:46:09 -07:00
Andrew Meadows
a8c2003fe6 namechange SimulationEngine --> PhysicsSimulation 2014-06-19 08:34:12 -07:00
Andrew Meadows
d4b5550cda Skeleton now creates VerletShape 2014-06-18 17:22:39 -07:00
Andrew Meadows
9e839f0980 Shape::getCenter() -> Shape::getTranslation() 2014-06-18 08:55:48 -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
92159a7ed5 Shape::get/setCenter() instead of get/setPosition() 2014-06-16 08:43:27 -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
e0ebc61b25 merge upstream/master into andrew/ragdoll 2014-06-10 15:26:16 -07:00
Andrew Meadows
3c51ce76fc Add simulationID to Model Shape and CollisionInfo 2014-06-10 15:24:17 -07:00
Andrew Meadows
e8b6338de9 Fix IK for hydra hands. 2014-06-09 15:40:29 -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
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
e1cb88471f add a comment 2014-06-04 14:19:45 -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