bjorn
d45e56146a
Rename fake to desktop;
2019-03-06 23:02:47 -08:00
bjorn
b37fc5dbbe
Remove fixed-function mirroring code from headset drivers;
2019-01-28 18:29:50 -08:00
mcc
aab1bda92d
Implementation of getMirrorTexture()
2019-01-28 15:03:58 -08:00
bjorn
bf19fd5c15
Avoid more implicit float-double conversions;
2019-01-24 17:00:41 -08:00
bjorn
9803e9916f
Use naming convention for destructor;
2018-12-19 01:04:42 -08:00
bjorn
3a774354e8
Remove lovrHeadsetGetEyePose;
...
A lot of drivers didn't bother to support it, it's not used very often,
and there are better ways to expose it that will soon be implemented.
2018-12-02 13:27:55 -08:00
bjorn
465e5c2010
Controller:getVelocity; Controller:getAngularVelocity;
2018-11-19 09:24:10 -08:00
bjorn
6168ec243f
Add platform/glfw.h;
...
Platforms that want to use glfw for most of their platform code can
include "glfw.h" for common functions, in a single-file-lib fashion.
All glfw code is in this file.
2018-11-16 07:24:20 -08:00
bjorn
b7deda3758
lovrPlatform: Keyboard/mouse;
...
Update fake.c
2018-11-16 03:18:08 -08:00
bjorn
005d4b93f2
Move math helpers into lib;
...
They aren't really part of the math module since they are shared
across several modules, more "util"-y.
2018-11-15 08:03:51 -08:00
bjorn
5f990d8c9f
Attempt to fix state.offset;
...
The goal is to ensure that (for 3DOF devices) all poses are reported
to include the state.offset vertical transform applied to them. Previously,
only rendering was using state.offset.
This is important to fix spatial audio.
Is doing this in every driver problematic? What if we did it in the
Lua bindings? That way it could be handled in one place.
2018-10-29 10:36:58 -07:00
bjorn
518d26aad8
getDisplayDimensions: Use unsigned ints;
...
Fixes a warning.
2018-10-21 08:40:57 -07:00
bjorn
e1d980a2d6
Re-add lovr.headset.getBoundsGeometry;
...
Looks like more runtimes are starting to support it.
2018-10-09 17:51:05 -07:00
bjorn
28c56f959d
Use MAT4_IDENTITY macro;
2018-10-06 21:58:40 -07:00
bjorn
4279cf086f
mat4_invertPose;
...
~3.9x
2018-10-06 21:21:25 -07:00
bjorn
a9e92b5185
Add ability to mirror specific eyes;
...
Doesn't work yet for OpenVR/Oculus.
2018-09-30 18:58:51 -07:00
bjorn
9fa18495f2
Fix fake controller positioning;
2018-09-05 06:31:18 -07:00
bjorn
b29a2d0471
Rework fake headset driver inertia;
2018-09-01 20:29:17 -07:00
bjorn
ce2dfb523e
Make window mono by default;
...
The window is now mono by default to make the error screen better and better enable non-stereo uses. The Camera can now request that the window be treated as stereo.
2018-08-29 21:22:13 -07:00
bjorn
0dbdc78c87
Fix fake driver projection;
2018-08-29 21:22:13 -07:00
bjorn
26f411f43f
Other headset drivers use stereo display dimensions;
2018-08-29 21:20:01 -07:00
bjorn
21a869cc8b
Clean up;
2018-08-29 21:19:41 -07:00
bjorn
1ea3c84be9
Ugly viewport stuff;
2018-08-29 21:19:07 -07:00
bjorn
c3b79b7274
Use updateWindow in fake headset getDisplayDimensions;
2018-08-20 15:09:08 -07:00
bjorn
785913fd45
Add conf.headset.msaa config;
...
For separate window/headset msaa settings. Currently only applies
to OpenVR since the other drivers render directly to the window.
2018-07-28 18:12:57 -07:00
bjorn
3c2d644d9f
Fake headset doesn't stomp on existing glfw callbacks;
2018-07-27 19:53:40 -07:00
bjorn
156c0cde5d
Condense event code a bit;
2018-07-26 19:38:01 -07:00
bjorn
bc2d638b00
Refs know their type;
2018-07-24 19:14:29 -07:00
bjorn
2dc79a48a8
Use single pass stereo rendering when supported;
2018-07-21 05:30:13 -07:00
bjorn
65cd5e2eb9
Fix fake headset display dimensions in lovr.load;
2018-07-17 17:21:15 -07:00
bjorn
2cf0e15eb0
Morganization; Fix some Canvas issues;
2018-07-17 17:21:15 -07:00
bjorn
f57810cd7a
Morganization;
2018-07-17 17:21:15 -07:00
bjorn
b64489b020
Pipeline stack for graphics state; Simplify clearing;
2018-07-17 17:21:14 -07:00
bjorn
e6e8e137c0
Clean up drawing;
2018-07-17 17:21:14 -07:00
bjorn
4370b7f0f5
Fake headset cleanup;
2018-06-10 10:18:54 -07:00
bjorn
df87eeee31
Inertia tuning;
2018-06-10 09:51:34 -07:00
bjorn
ab1e46cab4
Add inertia timeout;
2018-06-10 09:51:34 -07:00
bjorn
8e013877d6
Add inertia to fake headset mouselook;
2018-06-10 09:51:34 -07:00
bjorn
6ff7292333
Mostly remove instanced stereo rendering;
2018-06-03 17:18:42 -07:00
bjorn
7ffd3fc25d
Use more primitive getControllers signature;
2018-05-27 19:05:10 -07:00
bjorn
ab2594b204
WebVR velocity functions;
2018-05-27 19:05:10 -07:00
bjorn
a3e4b9b2b3
Change mat4_transform signature;
2018-05-27 19:05:10 -07:00
bjorn
859251d020
Start WebVR rewrite;
2018-05-27 19:05:10 -07:00
bjorn
c767e9c165
Simplify headset structure;
2018-05-27 19:05:10 -07:00
bjorn
1ad00328c1
Add a flag for autogenerating Canvas mipmaps;
2018-03-22 10:58:53 -07:00
bjorn
95da07d165
Stereo canvases;
...
Canvases can be created with the "stereo" flag to make it a stereo
Canvas. If a Canvas is stereo, everything rendered to it will be
rendered to the left and right halves of it, using left/right
view and projection matrices. Headset drivers will use stereo
Canvases to improve performance.
2018-03-22 09:57:44 -07:00
bjorn
334e218e4c
Diff render target state better;
2018-03-22 09:57:44 -07:00
bjorn
5feb47c5b7
Remove eye argument from lovr.draw;
2018-03-22 09:57:44 -07:00
bjorn
2def650abd
Refactor layers/displays;
2018-03-22 09:57:44 -07:00
bjorn
ddb22aef0e
Refactor headset offset;
2018-03-22 09:57:44 -07:00