bjorn
5ab15e36a8
Declare extension before in;
2018-08-30 03:43:41 -07:00
bjorn
4631d2dacc
Test shader extension fallback;
2018-08-30 03:38:31 -07:00
bjorn
e6a7a4f922
Redo singlepass;
2018-08-30 00:52:38 -07:00
bjorn
a97c8e2266
Fix skybox texture mapping;
2018-08-30 00:06:29 -07:00
bjorn
26f411f43f
Other headset drivers use stereo display dimensions;
2018-08-29 21:20:01 -07:00
bjorn
87c1429778
Rebuild boot.lua.h;
2018-08-23 12:53:05 -07:00
bjorn
7569b7934f
conf flag for singlepass; Shader fixes;
2018-08-23 12:52:18 -07:00
bjorn
c03ca73fba
Use ifdefs for nvidia glsl extensions;
...
I think they still work if I do this.
2018-08-13 17:03:39 -07:00
bjorn
a1f200cb61
Use GLSL version 430 for compute shaders;
2018-08-11 00:08:34 -07:00
bjorn
94b15c40c2
line 0 in compute prefix;
2018-08-11 00:08:34 -07:00
bjorn
b891a930bf
shaders.c: consistent ordering in header and implementation;
2018-08-11 00:08:34 -07:00
bjorn
e371359193
Compute shader glsl prefix;
2018-08-11 00:08:33 -07:00
bjorn
2cb6de47f2
Compute shader creation;
2018-08-11 00:08:33 -07:00
bjorn
8f529d3a37
Fix potential infinite loop in error handler;
2018-08-06 13:26:17 -07:00
bjorn
a713a3d14f
Use 4 for default msaa instead of max;
...
Turns out msaa of 32 is really really slow
2018-08-04 18:44:36 -07:00
bjorn
87ff99108d
Update boot.lua;
2018-07-28 18:41:51 -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
d79afb44d2
Make gl_ViewportIndex work in fragment shaders;
2018-07-25 00:01:22 -07:00
bjorn
2dc79a48a8
Use single pass stereo rendering when supported;
2018-07-21 05:30:13 -07:00
bjorn
c6a97a9a23
Fix issue where nogame's conf was ignored;
2018-07-19 01:08:50 -07:00
bjorn
8cc795aa9d
Material:getTransform; Material:setTransform;
2018-07-18 01:17:16 -07:00
bjorn
889144cc45
Add VERTEX and PIXEL/FRAGMENT defines to shader header;
2018-07-06 01:38:15 -07:00
bjorn
fb3eed5518
Fix skybox shaders for WebGL;
2018-06-09 23:18:02 -07:00
bjorn
183f6003e9
rm mapped buffers mostly;
2018-06-03 19:00:31 -07:00
bjorn
6ff7292333
Mostly remove instanced stereo rendering;
2018-06-03 17:18:42 -07:00
bjornbytes
c68d65441c
Draw the rest of the fucking owl;
2018-05-27 19:05:10 -07:00
bjorn
df876bf3b2
Static display;
2018-05-27 19:05:10 -07:00
bjorn
8bc7802246
Controller events;
2018-05-27 19:05:10 -07:00
bjorn
b51e8694ac
Add lovrQuit;
2018-05-27 19:05:10 -07:00
bjorn
8c2e9df1b4
Fix error handler when graphics module is disabled;
2018-05-27 19:05:10 -07:00
bjorn
f4ecdb074b
WebVR isMounted I guess;
2018-05-27 19:05:10 -07:00
bjorn
a3a59f01a3
WebVR controller input;
...
No events yet.
2018-05-27 19:05:10 -07:00
bjornbytes
389a95c9ce
WebVR;
2018-05-27 19:05:10 -07:00
bjorn
be217a9b63
Some basic WebVR Controller functions;
2018-05-27 19:05:10 -07:00
bjorn
1b0f1acaf1
Simplify C defines;
2018-05-27 19:05:10 -07:00
bjorn
7ffd3fc25d
Use more primitive getControllers signature;
2018-05-27 19:05:10 -07:00
bjorn
32668fc231
Fix C defines;
2018-05-27 19:05:10 -07:00
bjorn
fd5ae4d124
webvrGetEyePose;
2018-05-27 19:05:10 -07:00
bjorn
ab2594b204
WebVR velocity functions;
2018-05-27 19:05:10 -07:00
bjorn
065a5aa0dd
Finish webvrGetPose;
2018-05-27 19:05:10 -07:00
bjorn
498a1843ad
Work on WebVR pose input;
2018-05-27 19:05:10 -07:00
bjorn
859251d020
Start WebVR rewrite;
2018-05-27 19:05:10 -07:00
bjorn
93e082c8cc
WebVR;
...
- Add FORCE_FILESYSTEM
- Handle THREAD_ERROR event with noop case
- Remove hopefully redundant lovr.graphics.clear in errhand
- Finally use correct type signature for assimpFileTell
2018-05-27 19:05:10 -07:00
bjorn
8702d7422f
Rewrite boot.lua, main.c, and exception handling;
...
There are breaking changes:
- lovr.step is removed.
- lovr.run is expected to return a main loop wrapped in a function. The
returned function is run as a coroutine to facilitate a cooperative
main loop.
- lovr.errhand should return a loop function instead of while true-ing.
2018-05-27 19:05:10 -07:00
bjorn
7e5be11f74
Fix default shader;
2018-05-27 19:05:10 -07:00
bjorn
a3a50e5ca7
Ensure arg gets passed to lovr.load;
2018-03-30 18:48:20 -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
be699aa132
Normal matrix is an array;
2018-03-22 09:57:44 -07:00
bjorn
988d8c7d23
Rename blit to fill;
2018-03-22 09:57:44 -07:00
bjorn
3ed16a0a68
Work around driver bug to fix error screen;
2018-03-22 09:57:44 -07:00
bjorn
20983c860b
Send lovrEye to fragment shaders;
2018-03-22 09:57:44 -07:00
bjorn
8b201838b6
Add lovr.graphics.blit for fullscreen quads;
2018-03-22 09:57:44 -07:00
bjorn
4915ca41cc
Make skyboxes really cool;
2018-03-22 09:57:44 -07:00
bjorn
8e0519058d
Use quad for cube skyboxes;
2018-03-22 09:57:44 -07:00
bjorn
221015677f
Nogame screen align;
2018-03-22 09:57:44 -07:00
bjorn
ddb22aef0e
Refactor headset offset;
2018-03-22 09:57:44 -07:00
bjorn
1f1232505e
Uniform buffer objects for matrices;
...
Still hacky.
2018-03-22 09:57:44 -07:00
bjorn
3064eff017
Hack everything but it mostly works;
2018-03-22 09:57:44 -07:00
bjorn
5a74b8765b
Change default window size;
2018-03-22 09:57:44 -07:00
bjorn
fdb3a29a05
Add separate x/y scale to lovr.graphics.plane;
2018-03-19 13:09:03 -07:00
bjorn
8be201c040
Add default lovr.threaderror callback;
2018-03-12 10:37:45 -07:00
bjorn
4463bd00c8
Load tangents from models;
2018-02-26 02:54:35 -08:00
bjorn
cb7b99f9a6
Optimize skybox rendering;
...
- Fix winding order of skybox cubemaps.
- Fix skybox image ordering in lovr.graphics.newTexture.
- Change skybox shader to allow rendering cubemap skyboxes last for
early z rejection.
- Remove overriding of depth write and depth test state for cubemap
skyboxes.
2018-02-26 02:10:53 -08:00
bjorn
3a36bcceae
lovr.mount; lovr.headset.isMounted; isPresent changes;
...
Remove lovr.headset.isPresent.
Replace Controller:isPresent with Controller:isConnected.
Add lovr.headset.isMounted and lovr.mount callback.
2018-02-25 16:42:31 -08:00
bjorn
4cca193fcb
lovr.threaderror callback;
2018-02-23 18:38:52 -08:00
bjorn
f010a0ffc2
Basic module setup;
2018-02-23 18:38:33 -08:00
bjorn
f75530b9e1
Add support for 2d array textures; Improve mipmaps;
...
lovr.graphics.newTexture has been changed.
2018-02-20 17:15:47 -08:00
bjorn
5493a980ff
Move Blob to lovr.data;
...
Keep lovr.filesystem.newBlob though...
2018-02-19 21:04:53 -08:00
bjorn
7cecc1489e
getCanvas; setCanvas; MRT; MULTICANVAS define;
2018-02-15 19:58:35 -08:00
bjorn
cca1f32d10
PBR material properties;
2018-02-11 19:16:40 -08:00
bjorn
a14f5734d5
Add lovr.data module;
2018-01-15 23:13:26 -08:00
bjorn
f634e17e5c
Avoid resetting clock after boot.lua;
...
Fixes an issue where the initial dt was negative.
2018-01-13 16:00:47 -08:00
bjorn
e2c27fb74c
Fix lovr.draw arguments;
2018-01-08 18:33:51 -08:00
bjorn
aef6345606
Prevent loading of conf.lua outside project directory;
2018-01-05 23:04:47 -08:00
bjorn
662572c4e0
Add boot.lua back;
2017-12-18 16:01:12 -08:00
bjorn
4a2cc56fef
Move shaders into resources;
2017-12-10 12:41:43 -08:00
bjorn
2d2a4cf038
Rename data to resources;
2017-12-10 12:41:43 -08:00