Commit Graph

3860 Commits

Author SHA1 Message Date
bjorn be1cedc922 Always enable fullIndexBufferRange feature; 2022-04-22 01:07:07 -07:00
bjorn 0ee4a105c5 tup: add -s USE_WEBGPU properly; 2022-04-21 18:08:11 -07:00
bjorn 557f18ab3c Add gpu_webgpu;
Send help
2022-04-21 17:58:26 -07:00
bjorn 41dfd64548 tup: Don't export webxr_attach/webxr_detach if webxr is disabled; 2022-04-21 17:48:40 -07:00
bjorn 9a54102387 Image rework: KTX1 and KTX2 loaders; 2022-04-21 17:39:59 -07:00
bjorn f37c1824da lovr.graphics.getDevice/getFeatures/getLimits; 2022-04-21 17:39:59 -07:00
bjorn 40e9a4ab73 core/gpu; 2022-04-21 17:39:59 -07:00
bjorn f0827de864 Re-add ASTC loader; 2022-04-21 17:39:59 -07:00
bjorn f2e95e147a Re-add STB loader; 2022-04-21 17:39:59 -07:00
bjorn 0c4d3cb8da WIP new Image implementation and DDS loader;
- Image supports loading files with multiple layers
- Image supports semantic flags like srgb, premultiplied, etc.
- Image:getPixel and :setPixel support more formats
- DDS loader supports BC4-BC7, DXT2/DXT4, uncompressed formats, etc.
2022-04-21 17:39:59 -07:00
bjorn cf2f63f147 Add missing include; 2022-04-21 17:39:59 -07:00
bjorn 60cabcff3e rm unused variables in headset bindings; 2022-04-21 17:39:59 -07:00
bjorn e05c2cd593 renderTo no longer uses removed graphics functions; 2022-04-21 17:39:59 -07:00
bjorn d9ec003e79 Start Image rework; 2022-04-21 17:39:59 -07:00
bjorn 37221afbc6 rm graphics module; 2022-04-21 17:39:58 -07:00
bjorn 218134d79c Compile miniaudio without pedantic;
It throws warnings when compiling as wasm.
2022-04-19 22:45:17 -07:00
bjorn c2847cedce Details; 2022-04-19 22:45:06 -07:00
bjorn 2dc9081d02 wasm target uses gnu11 standard;
This is because compiling with newer versions of emscripten warns
on use of EM_ASM without GNU C, and miniaudio uses EM_ASM.
2022-04-19 22:43:05 -07:00
bjorn 66c74a7cd3 CMake moves OpenXR loader on Linux; 2022-04-19 22:41:18 -07:00
bjorn a2cb611b6c Fix mipmaps with nearest filtering; 2022-04-14 16:16:22 -07:00
bjorn 85ee89d36f Fix weirdness with vec2 scale arguments; 2022-04-06 10:10:27 -07:00
bjorn 8af8d7922a tup: Lua also defines linux flag on android; 2022-04-06 09:22:50 -07:00
bjorn 972a0f2333 tup: define platform-specific Lua define; 2022-04-01 17:10:25 -07:00
bjorn dd7ed4eb51 tup: simplify tup.config overrides; 2022-04-01 16:54:28 -07:00
bjorn 7d3aa3e061 tup: s/overrides/troublemakers; 2022-04-01 16:05:16 -07:00
bjorn afbf98929f Clean up tup a bit; 2022-04-01 15:58:13 -07:00
bjorn cd0e458af9 lovr.filesystem.write/append returns success instead of size;
We don't have a good way of returning filesystem error messages yet,
but it's still useful to return a boolean instead of a number to
detect failure of zero byte writes.  Exposing the number of bytes
written is kind of weird since it's not very actionable.
2022-03-30 22:45:09 -07:00
bjorn 42e618fa00 World:getContacts; 2022-03-30 22:32:20 -07:00
bjorn 8fcdfd2bb4 Minor physics cleanup; 2022-03-30 22:05:10 -07:00
bjorn b115e5865f Fix miniaudio warning; 2022-03-30 21:15:51 -07:00
bjorn efbcb5e4c2 Merge branch 'master' into dev 2022-03-30 13:52:58 -07:00
bjorn fdfc63db63 Windows yells at ode less; 2022-03-30 13:40:27 -07:00
bjorn b32244b787 OpenXR: Make update idempotent;
The state tracking here is getting pretty complicated... oh well!
2022-03-30 13:33:02 -07:00
bjorn 0238549e66 OpenXR: sync all subaction paths; 2022-03-30 13:33:02 -07:00
bjorn 8235965eca rm util from os_macos; 2022-03-30 12:42:01 -07:00
bjorn 5d271de91a mv map util; 2022-03-30 12:34:38 -07:00
bjorn faa42ee38b mv resources etc; 2022-03-30 12:34:34 -07:00
bjorn 2ec5a1a9dd OpenXR: Valve Index grip improvements; 2022-03-30 11:13:55 -07:00
bjorn 3972a8df20 Reset OpenXR event type after polling;
Otherwise the struct will have the wrong type when polling the next
event.  Kind of annoying.
2022-03-29 08:56:26 -07:00
bjorn 72c93630ce Shift arguments up by one in fused mode;
There's a bug where arguments start at 0 instead of 1 in fused mode.

In fused mode, we aren't going to consume one of the command line
arguments for the project path like we normally do, so in order to
provide that argument to the lovr project at index 1, shift them all up
by one in boot.lua.  We can only do this after the filesystem module is
loaded, so it can't go in main.c with all the other arg stuff.

The zero'th argument in fused mode is now the source path, just like how
it works in non-fused mode.  This means the executable path is in the
arg table twice, which is sensible since in fused mode both the
interpreter and the interpreter's source are the same file.
2022-03-28 13:24:44 -07:00
monolifed af3ec874f0 Keep winding with flip 2022-03-28 12:37:21 -07:00
bjorn d70619ec96 Source:isSpatial; Separate spatial from effects; 2022-03-27 19:09:25 -07:00
bjorn c824c5c135 obj: triangulate faces;
Supports faces with any number of vertices by converting to triangle
fans.
2022-03-27 18:35:38 -07:00
bjorn e47f3eb108 Use doubles for noise; 2022-03-27 14:51:06 -07:00
bjorn f347ac98d9 Switch to simplex noise;
Pending test
2022-03-27 01:21:52 -07:00
bjorn 342f92940e Add :equals method to vector objects; 2022-03-25 16:05:38 -07:00
bjorn 03df236e63 Fix Canvas depth buffer mipmap generation; 2022-03-25 13:12:18 -07:00
bjorn 6c9531564e Make physics structs private; 2022-03-25 12:40:29 -07:00
bjorn 018b94a0fb Update ODE to include header changes; 2022-03-25 12:38:07 -07:00
bjorn 05c15d47ac Update ODE submodule;
Includes a fix for a crash with colliders that are out of bounds.
2022-03-25 12:28:16 -07:00