bjorn
8b2f0eb0ba
Add newline to glfw.h;
2018-11-08 14:13:39 -08:00
bjorn
76c2dc757a
Curve:getTangent;
2018-11-08 12:56:45 -08:00
bjorn
2703192f1d
Make a constructor;
2018-11-08 12:56:45 -08:00
bjorn
2acf49fb34
Curve;
2018-11-08 12:56:45 -08:00
bjorn
a06734ae97
Use alpha to coverage and alpha test for text;
2018-11-08 11:58:43 -08:00
bjorn
bfeb3d2d51
lovr.graphics.discard;
2018-11-08 11:58:31 -08:00
mcc
b01a349275
Merge Windows build fixes for SDS library, from https://github.com/LynnKirby/sds fork commit 1ea0479693a8fd85351b75a6d41cef40a8e3e67c
2018-11-07 17:03:31 -05:00
mcc
a46b4afbb8
Split out the "oculus mobile" headset type into GEAR and GO.
2018-11-07 14:34:51 -05:00
mcc
2675b51013
Make oculus mobile build self-contained
...
The initial version of the oculus mobile driver incorporated two files, BridgeLovr.cpp and BridgeLovr.h, which were assumed to be outside of the Lovr repo in the repo for a separate Android app. The Android app now is wholly separated and communicates with the Lovr shared object via the interface in oculus_mobile_bridge.h.
A file print_override.c now contains a drop-in replacement for Lua print() which prints to lovrLog. This is useful for Android or for other future platforms where stdout/stderr aren't usable.
2018-11-07 10:24:44 -05:00
mcc
b146ad422f
Add SDS string library from commit 8dc8d6fb373bdc08eb82a72904841998d30b7cf2
2018-11-06 18:39:12 -05:00
mcc
d8de87d789
Fix headset and controller poses
2018-11-06 15:56:27 -05:00
mcc
bf7fd349e2
Fix math bug in glfwSetTime
2018-11-06 11:28:45 -05:00
mcc
8301bd7dd8
Remerge oculus-mobile branch with master
2018-11-02 18:10:08 -04:00
mcc
428995b54b
Controller support (orientation wrong currently) and time/dt support
2018-11-02 17:35:24 -04:00
bjorn
0945702d27
Update CMakeLists for new platform layer;
2018-10-29 17:13:53 -07:00
bjorn
105953e743
Use a folder;
2018-10-29 14:00:16 -07:00
bjorn
f8011f7bf7
Initial platform.h;
2018-10-29 14:00:16 -07:00
bjorn
d5064844a7
Rewrite main.c;
2018-10-29 13:52:50 -07: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
mcc
79b0c19254
Oculus mobile: First round of fixes requested in PR review
...
Formatting, back out bad change to Win32 build, support getOs()
2018-10-28 22:55:37 -04:00
bjorn
987b24fd19
lovr.filesystem.write: Fix unintended erroring behavior;
2018-10-28 19:46:31 -07:00
mcc
9328542ff5
Correct usage of conf "offset" and getOriginType in Oculus Mobile
...
Also whitespace cleanup
2018-10-28 17:16:48 -04:00
mcc
dd440b2ada
Code cleanup after all these changes, fix build
2018-10-28 15:31:27 -04:00
mcc
dba6724915
Framebuffer and depthbuffer should also be passed into the canvas create-from-handle
2018-10-27 23:11:11 -04:00
mcc
c68c850157
Give lovrCanvasCreateFromHandle the option of not deleting framebuffer on canvas delete, also fix default texture issue
2018-10-27 22:15:49 -04:00
bjorn
654b894ded
Add lovr.graphics.setProjection;
...
It's not very good. It only takes Transforms and sets the projection
for both eyes. And the projection gets reset at the beginning and
end of lovr.headset.renderTo. It's meant to be a backdoor.
2018-10-26 17:17:18 -07:00
bjorn
f6d5bf325a
Move lib/dds.h into data/textureData.h;
2018-10-26 16:56:16 -07:00
mcc
d17dec1b0e
Graphics now draw, although head tracking is not correct
2018-10-26 01:05:28 -04:00
bjorn
a0f2a34647
Prefer modules in the exe to modules on disk;
...
This fixes the lovr-docs loader and is arguably the better behavior.
2018-10-25 06:49:03 -07:00
mcc
b892d0143f
Remerge oculus mobile and master branches (to get lovrCanvasCreateFromHandle)
2018-10-25 00:06:39 -04:00
mcc
5ad8fdd3e3
Fixes as far as running without crashes, no display yet
2018-10-24 23:40:11 -04:00
bjorn
494d2c6cc8
audio: Gracefully handle absence of ALC_SOFT_HRTF;
2018-10-24 09:57:03 -07:00
bjorn
9010af3ea4
lovrRandomGeneratorGetState: Improve correctness;
2018-10-24 09:50:00 -07:00
bjorn
0f54190a9f
rm weird include in dds.h;
2018-10-24 09:42:32 -07:00
bjorn
ee9d575cba
lovrCanvasCreateFromHandle;
...
Was it really that easy?
2018-10-24 09:42:32 -07:00
bjorn
8d29bbc68c
Canvas.count -> Canvas.attachmentCount;
2018-10-24 09:42:32 -07:00
bjorn
5f8f8a540e
lovr.filesystem no longer relies on arg global;
2018-10-23 11:12:13 -07:00
bjorn
43309efc57
Fix problems with variants;
2018-10-23 11:11:47 -07:00
bjorn
cf3b060fe5
Fix MSVC issues with variables named near/far;
2018-10-22 16:40:12 -07:00
mcc
56f8f1e26b
Untested merge of Oculus Mobile branch and Oct 2018 lovr master
2018-10-22 10:44:04 -04:00
bjorn
897a09c4d7
Why are you here;
2018-10-21 09:18:58 -07:00
bjorn
485f65b013
Transform:setOrthographic; Transform:setPerspective;
2018-10-21 09:06:37 -07:00
bjorn
4f542902a1
mv lovr.js webvr.js;
...
To allow for webxr.js and lovr.js to be used for...other things.
2018-10-21 08:56:57 -07:00
bjorn
518d26aad8
getDisplayDimensions: Use unsigned ints;
...
Fixes a warning.
2018-10-21 08:40:57 -07:00
bjorn
7b9d66e845
Fix openvr warning;
2018-10-21 08:11:07 -07:00
mcc
1b7942e02f
First pass oculus mobile support
...
First of several commits, this is the state of hg:6b437880cc01 in my private repo. A version of shakesoda's Oculus-desktop support is tied up in this commit.
The oculus mobile version builds lovr as a library. To run it, you need to use a separate repo which includes this one and which builds an Android app.
2018-10-20 15:22:24 -04:00
bjorn
ffe3d9d7ef
Default emissive colors to transparent black;
2018-10-11 02:07:09 -07:00
bjorn
da3bb42db4
Fix WebVR prototype;
2018-10-09 18:03:53 -07:00
bjorn
01405e113a
Ensure Microphones properly stop recording;
2018-10-09 17:56:26 -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
7829f3f75f
mat4_multiply: SSE
...
~2.5x
2018-10-06 21:42:52 -07:00
bjorn
0b2a39fb03
Return original matrix in mat4_invertPose;
2018-10-06 21:26:17 -07:00
bjorn
4279cf086f
mat4_invertPose;
...
~3.9x
2018-10-06 21:21:25 -07:00
bjorn
11e6580717
mat4_transpose: Use SSE intrinsics;
...
~1.6x
2018-10-06 20:04:39 -07:00
bjorn
7354465e12
Add LOVR_USE_SSE;
2018-10-06 20:03:48 -07:00
bjorn
5e65ac019e
OpenVR organization;
2018-10-06 18:15:32 -07:00
bjorn
ba68c0c127
Add mat4_getPose helper;
2018-10-06 16:54:41 -07:00
bjorn
e36d3d8352
openvr: Use WaitGetPoses in update;
2018-10-06 16:54:25 -07:00
bjorn
086a0030b1
Shader:send/ShaderBlock:send fills in nils with 0's;
2018-10-06 16:15:38 -07:00
bjorn
0d72922f77
Add lua_modules and deps to default C require path;
2018-10-05 00:43:41 -07:00
bjorn
70e473adb2
Add deps to default require path;
2018-10-05 00:43:41 -07:00
bjorn
6019de19d6
Add missing modelData include;
2018-10-01 21:07:29 -07:00
bjorn
a1d365fc25
Plumb new mirror settings through WebVR;
2018-09-30 18:58:51 -07:00
bjorn
7976805415
openvr/oculus support individual eye mirroring;
2018-09-30 18:58:51 -07:00
bjorn
8d076f31c1
Fill accepts UV subrect to use;
2018-09-30 18:58:51 -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
cd5df6b148
Add __declspec;
2018-09-27 21:29:28 -07:00
bjorn
2398e592a9
Darn USE_MATH_DEFINES;
2018-09-27 20:32:45 -07:00
bjorn
816fda2177
Fix everything and merge;
2018-09-27 18:38:44 -07:00
bjorn
238af0064f
Add missing lovr.filesystem.unmount function;
2018-09-27 18:38:44 -07:00
bjorn
eb40c1980b
Merge lovr.c into main.c;
2018-09-27 18:38:44 -07:00
bjorn
3e2259fc99
version/os refactor;
2018-09-27 18:38:44 -07:00
bjorn
cee3c28f4e
luax_atexit; rm lovrDestroy;
...
Modules register themselves in the registry for destruction at
lua_close instead of having a hardcoded list in lovrDestroy.
2018-09-27 18:38:44 -07:00
bjorn
92e6ad93cb
Dynamically load modules;
2018-09-27 18:38:44 -07:00
bjorn
e02d22365f
api: refactor;
2018-09-27 18:38:44 -07:00
bjorn
792834623c
api: more modular helper functions;
2018-09-27 18:38:44 -07:00
bjorn
1f12717357
Canvas creates Textures with clamp filter;
2018-09-27 18:37:13 -07:00
bjorn
cfac548e7b
Add flag to make Canvas depth texture readable;
...
- DepthFormat is now just TextureFormat.
- Canvas:getDepthTexture instead of Canvas:getDepthFormat.
2018-09-27 18:34:43 -07:00
bjorn
56fa853b09
Fix possible overflow in modelData texture path;
2018-09-26 23:16:18 -07:00
bjorn
05802f3e90
util: rm vec_uint;
2018-09-26 10:49:33 -07:00
bjorn
148a2bdb45
Error system no longer relies on Lua;
2018-09-26 10:39:17 -07:00
bjorn
737f0b6dc3
Fix edge case in lovrMeshResize;
...
Also make BufferUsage usage more consistent.
2018-09-23 19:13:32 -07:00
bjorn
2ec5c42f87
Fix compile warnings;
2018-09-21 23:34:15 -07:00
bjorn
2a17f6e4bb
Add LOVR_USE_ASSIMP;
...
lovr.graphics.newModel and lovr.data.newModelData will return nil
if assimp is disabled.
2018-09-21 19:25:48 -07:00
bjorn
2d788e2f41
rm USE_OPENAL;
2018-09-21 19:25:48 -07:00
bjorn
5a9cd5187c
Make CMakeLists more modular;
...
- Enable/disable individual modules, including enet/json
- Enable/disable different "backends" (audio/headset)
- Choose to use system vs. source versions of different libraries
2018-09-21 19:25:48 -07:00
mcclure
e2ace89b83
Fix controller:isDown() for 'grip' and 'trigger' on Oculus ( #60 )
...
Previously, controller:isDown('grip') returned always true, and for 'trigger' false was always returned. This adjusts oculusControllerIsDown() to use an axis threshold rather than the Shoulder bit for 'trigger', and to use a more demanding threshold for 'grip'.
2018-09-21 19:23:00 -07:00
bjorn
48dcb5067a
Fix lovrTextureCreateFromHandle prototype;
2018-09-11 15:56:06 -07:00
bjorn
09a67949ed
Improve CMake and build for LibOVR;
2018-09-11 15:47:03 -07:00
bjorn
72158f103a
Update for stereo rendering and new headset API;
2018-09-11 15:30:31 -07:00
bjorn
75ca4b0cba
lovrTextureCreateFromHandle;
2018-09-11 15:30:31 -07:00
bjorn
5b5e9fbc00
WIP;
2018-09-11 15:30:31 -07:00
bjorn
6b0806d04a
Don't treat lighthouses as Controllers;
2018-09-11 15:28:31 -07:00
bjorn
7309ac8ce8
Treat trackers and lighthouses as Controllers;
2018-09-11 15:23:46 -07:00
bjorn
8b7bfec9d3
Add emscripten shell file;
...
To make it easier to build and test WebVR.
2018-09-06 16:05:39 -07:00
bjorn
40e6f6a81c
Handle window resizes properly;
...
Fix for the web where the window actually resizes.
2018-09-05 11:11:57 -07:00
bjorn
924eb5fa0a
Shader:send: Add a missing break;
...
opps
2018-09-05 10:13:04 -07:00
bjorn
8a7054e793
v0.11.0;
2018-09-05 08:02:50 -07:00
bjorn
9fa18495f2
Fix fake controller positioning;
2018-09-05 06:31:18 -07:00