Commit graph

440 commits

Author SHA1 Message Date
Zander Otavka
3dcfa84a87 Fix billboarding behavior.
Billboards now always face the camera position.  Also, OverlayPanels can
be set to face the avatar.
2015-08-07 01:38:33 -07:00
Zander Otavka
0b4be8fca2 Improve transforms for panels and attachables.
Add offsetScale to PanelAttachable for scaling all the contents of a
panel properly.  Also reduce the number of transform operations per
second while rendering a PanelAttachable Overlay.
2015-08-06 21:46:55 -07:00
Zander Otavka
6e8c154c42 Undo registering PropertyBinding as a meta type. 2015-08-06 18:54:08 -07:00
Zander Otavka
fa24df765d Register OverlayPanel binding map as a meta type. 2015-08-06 18:07:59 -07:00
Zander Otavka
f870f19837 Make transforms cascade down the pannel chain. 2015-08-06 17:29:37 -07:00
Zander Otavka
2aacd17843 Make OverlayPanel PanelAttachable. 2015-08-06 16:58:03 -07:00
Zander Otavka
be4e827281 Merge: master -> panel-attachable-improvements. 2015-08-06 16:29:38 -07:00
Zander Otavka
c7639537d0 Use implicit copy constructor for PanelAttachable. 2015-08-06 16:13:21 -07:00
Zander Otavka
497713b020 Rename a few more confusing names.
setTransforms -> applyTransformTo
attachedPanel -> parentPanel
2015-08-06 15:45:07 -07:00
Zander Otavka
b94be926f8 Mass renaming to be more logical/concise.
FloatingUIPanel -> OverlayPanel
anchorPosition -> position
offsetRotation -> rotation
facingRotation -> offsetRotation
floatingUIExample.js -> overlayPanelExample.js
2015-08-06 14:23:04 -07:00
Ryan Huffman
cefb7be51d Disable back-face culling when rendering BillboardOverlay 2015-08-06 14:09:32 -07:00
Zander Otavka
6165e7e6ca Improve cross-thread support for panel children. 2015-08-06 11:40:49 -07:00
Zander Otavka
021dff63b4 Visibility now cascades down panel children.
For an overlay to render, it, and all of its ancestor panels, must be
set visible.
2015-08-05 16:57:03 -07:00
Atlante45
3dc8bd47ae Fix warning and remove unused headers 2015-08-05 16:46:44 -07:00
Zander Otavka
865067aad9 Add ability to bind a panel to an entity. 2015-08-05 16:12:46 -07:00
Zander Otavka
481624b48c Re-work panel position and rotation binding. 2015-08-05 14:21:23 -07:00
Zander Otavka
4965f1adda Fix a facingRotation issue for PanelAttachable. 2015-08-05 09:20:55 -07:00
Zander Otavka
22453aa3ce Improve inner workings of overlay API.
More stuff is known to the C++, and a panel object in JavaScript can be
gotten by ID from another thread.
2015-08-04 14:22:21 -07:00
Zander Otavka
055133b82e Refactor inheritance for billboard overlays.
BillboardOverlays is now Image3DOverlay.  Billboard3DOverlay is the base
class for both Image3DOverlay and Text3DOverlay, and it is
PanelAttachable.
2015-08-04 14:22:21 -07:00
Zander Otavka
c0838f4e58 Bring text closer to it's background. 2015-08-04 14:22:21 -07:00
Zander Otavka
28050a2ac9 Fix PanelAttachable transformations.
Apply the offsetPosition of the PanelAttachable after the facingRotation
of the FloatingUIPanel, not before.
2015-08-04 14:22:21 -07:00
Zander Otavka
be558eb62e Make Text3DOverlay a PanelAttachable. 2015-08-04 14:22:20 -07:00
Sam Gateau
34183b9ddf COmmenting the remove of the glLIneWidth and demoving dead code 2015-08-04 12:36:35 -07:00
Sam Gateau
d07ab353fc remove glLineWidth completely because it s not available anymore for wide lines in core 2015-08-04 11:57:20 -07:00
Thijs Wenker
4bf6f8ed77 ModelOverlay causes a crash in the Model class. This is because ModelOverlay doesn't give a valid rig to the Model. 2015-08-04 14:47:13 +02:00
Eric Levin
3f5f75d6d2 Merge pull request #5430 from AlexanderOtavka/floating-ui
Improvements to overlays.
2015-08-03 14:35:52 -07:00
Andrew Meadows
acfc907704 Merge pull request #5438 from howard-stearns/rig
Rig: Bottleneck animation management through a Rig class
2015-08-03 11:14:21 -07:00
ZappoMan
771ce6dca3 remove QUAD_STRIP from Circle3DOverlay 2015-08-01 17:20:48 -07:00
Zander Otavka
7973c2d469 Fix compile issue on Linux and Windows.
Shoutout to Andrew for help finding the missing #include.
2015-07-31 11:26:04 -07:00
Zander Otavka
9bd72e5769 Tweak PanelAttachable::setTransforms.
Use reference instead of pointer, and make it virtual.
2015-07-31 11:26:04 -07:00
Zander Otavka
bc5ef8eb11 Clean up C++ relating to panels. 2015-07-31 11:26:04 -07:00
Zander Otavka
da2afca391 Expose overlay type checking to JavaScript. 2015-07-31 11:26:04 -07:00
Zander Otavka
1d37df4775 Improve and optimize panel transformations. 2015-07-31 11:26:04 -07:00
Zander Otavka
1655dea2c3 Fix BillboardOverlay first person render bug. 2015-07-31 11:26:04 -07:00
Zander Otavka
c4cb6fba74 Improve BillboardOverlay::findRayIntersection. 2015-07-31 11:26:03 -07:00
Zander Otavka
377a1a54ae Add abstraction layer for Overlays.h.
`examples/libraries/overlayUtils.js` allows you to manage overlays in an
object oriented manner.  Instead of:

    var billboard = Overlays.addOverlay("billboard", { visible: false });
    ...
    Overlays.editOverlay(billboard, { visible: true });
    ...
    Overlays.deleteOverlay(billboard);

You can now do:

    var billboard = new BillboardOverlay({ visible: false });
    ...
    billboard.visible = true;
    ...
    billboard.destroy();
2015-07-31 11:26:03 -07:00
Zander Otavka
ed7fc07ab1 Fix cloning bug for BillboardOverlay. 2015-07-31 11:26:03 -07:00
Zander Otavka
173a79867c Extend Overlays API to allow for 3D UI panels.
Currently, only BillboardOverlays can be added to a panel, but more
types of overlays will be supported in the future.
2015-07-31 11:26:03 -07:00
Zander Otavka
dff6b0a456 Fix isFacingAvatar property on BillboardOverlay. 2015-07-31 11:26:03 -07:00
Seth Alves
24fff719c5 quiet compiler 2015-07-25 21:11:23 -07:00
Seth Alves
57eb798d63 Merge branch 'master' of github.com:highfidelity/hifi into rig 2015-07-23 09:46:41 -07:00
Seth Alves
ee334ff826 JointStates are owned by Rig objects. Model, FaceModel, SkeletonModel call into their Rig pointer to access JointStates. 2015-07-22 18:43:10 -07:00
Ryan Huffman
9e2eb7fdbd Fix face-camera functionality for BillboardOverlay 2015-07-22 14:49:20 -07:00
Howard Stearns
dbb4a8b767 Merge branch 'master' of https://github.com/highfidelity/hifi into rig 2015-07-22 11:40:25 -07:00
Bradley Austin Davis
ae539afafb Fix deadlock when using textoverlay from main thread 2015-07-22 07:23:12 -04:00
Brad Davis
9016f437a8 Merge pull request #5371 from Atlante45/smart_pointers
Smart pointers fixes
2015-07-21 08:52:29 -07:00
Brad Davis
6d4c7cd4f2 Merge pull request #5374 from ZappoMan/warningFixes
Warning fixes and removing dead code
2015-07-21 07:23:40 -07:00
Sam Gateau
59666f664a merging my changes to remove cruff from application to AUstin;s latest 2015-07-20 15:37:17 -07:00
ZappoMan
648d0f6d43 fix a bunch of warnings 2015-07-20 15:12:27 -07:00
Atlante45
59acfc9f47 Merge branch 'master' of https://github.com/highfidelity/hifi into smart_pointers 2015-07-20 13:51:51 -07:00