1
0
Fork 0
mirror of https://github.com/bjornbytes/lovr.git synced 2024-07-20 12:43:34 +00:00
Commit graph

513 commits

Author SHA1 Message Date
bjorn 44f7ed6d28 CMake: avoid include_directories; 2024-06-14 03:01:25 -07:00
bjorn 7663167aa8 CMake: Tell Jolt to generate debug symbols sometimes; 2024-06-13 21:49:05 -07:00
bjorn 6b18734e83 Remove OVERRIDE_MSVCCRT glslang CMake variable;
It was removed from newer versions of glslang.
2024-06-12 14:26:28 -07:00
bjorn bb48cdadfb xcb backend respects LOVR_USE_GLFW; 2024-06-06 09:57:30 -07:00
bjorn 44ef12c59c More CMake fixes; 2024-06-06 09:46:54 -07:00
bjorn 5648aff209 CMake: link against xcb-xinput; 2024-06-06 09:46:54 -07:00
bjorn 840455d123 Explicitly tell LuaJIT to use PIC; 2024-06-06 09:46:54 -07:00
bjorn a0806928a4 More build fixes; 2024-06-06 09:46:54 -07:00
bjorn bbbd06f914 CMake puts LuaJIT library in APK;
Not sure what changed here
2024-05-29 08:33:42 -07:00
bjorn 9b3041deba Maybe fix macOS build; 2024-05-27 03:08:38 -07:00
bjorn 9301c73f14 Live reloading;
Use -w or --watch to watch source directory for changes and call
lovr.filechanged when a file is changed.

By default lovr.filechanged will restart lovr.

It's powered by lovr.filesystem.watch/lovr.filesystem.unwatch functions,
but these are currently hardcoded to only watch the whole source folder.

Currently there is a bug where it only restarts on the first change,
this is seemingly a problem with dmon.
2024-05-27 03:08:38 -07:00
bjorn c796248bf5 Update Jolt; 2024-05-22 13:51:34 -07:00
bjorn a92df1ca38 Try to get everything using the same MSVC runtime library; 2024-05-19 01:09:19 -07:00
bjorn 4d509c0102 Temporary fix for win32 debug builds;
Currently doing a debug build on windows spews libc linker errors.

Jolt clobbers the global CMake C flags, and CMake uses those C flags for
the MSVCRT library, so Jolt is using the wrong libc.

Both projects realized that they were doing something sus, so:

- Jolt added OVERRIDE_CXX_FLAGS to opt out of clobbering the cflags, but
  joltc hasn't copied over this change yet.
- CMake added a higher level MSVC_RUNTIME_LIBRARY target property for
  changing the MSVCRT, but it's only enabled if you opt into policy #91.

For now we're just going to enable the policy...
2024-05-19 00:32:35 -07:00
bjorn 33d3efeb27 rm ode; 2024-05-18 18:30:33 -07:00
bjorn ef4ddd3284 Build Jolt as a static library;
joltc's current CMakeLists forces itself to build as a shared library on
PC/Android.  However, it builds Jolt using the current value of
BUILD_SHARED_LIBS.

We currently have BUILD_SHARED_LIBS set to ON when adding joltc, so we
end up with 2 shared libraries, which is cumbersome.  We'd rather just
have a single library for Jolt.  So instead, let's set BUILD_SHARED_LIBS
to off when adding the project, which will build Jolt as a static
library and joltc as a shared library (linking to the static library).

That way we just end up with a single shared library that contains both
joltc and Jolt.
2024-05-07 12:28:46 -07:00
bjorn 979dd044d8 Add contact callback and Contact object; 2024-05-03 13:28:47 -07:00
bjorn bdeee99953 Tracy; 2024-04-10 14:06:57 -07:00
bjorn f4d1161a3d Disable Jolt profiler and debug renderer; 2024-04-07 13:46:57 -07:00
bjorn 822eb94993 CMake: rm physics library log messages; 2024-03-29 14:54:35 -07:00
bjorn cfd2374449 Update Jolt; 2024-03-29 14:50:00 -07:00
bjorn e7d0764e49 Update Jolt;
Also disable the HelloWorldNative sample...
2024-03-28 15:28:40 -07:00
bjorn f4553075cb Upgrade Jolt;
Seems we can add the root CMake project directly now.
2024-03-28 12:58:33 -07:00
bjorn 7373bb6b83 Bump minimum CMake version;
Newer versions of CMake show a deprecation warning that < 3.5 will be
unsupported soon.
2024-03-28 12:42:22 -07:00
Josip Miskovic 8a5b88e851 Allow joltc fns without explicit argument list
The C4255 warning in MSVC complains about function lacking explicit list
of arguments (`f()` instead of `f(void)`). Disabling this warning allows
joltc to build on windows platform.
2024-03-04 19:03:22 +01:00
Ilya f77a8f6cb2
Fixed nogame.zip creatrion
logo.spv wasn't packed in nogame.zip, therefore nogame is failed to start. Now all files in nogame folder are packed.
2024-02-29 11:35:55 +03:00
bjorn 6347114030 Job system; 2024-02-28 12:31:34 -08:00
Bjorn f2bcfee8be
Merge pull request #735 from jmiskovic/jolt-rebase
Jolt physics engine integration
2024-02-17 12:11:41 -08:00
Josip Miskovic 0b8546fd62 Jolt MSVC workaround; set ODE as default engine 2024-02-13 17:34:18 +01:00
bjorn 78586c3770 CMake: disable BUILD_WITH_WAYLAND_HEADERS for OpenXR; 2024-02-09 11:01:06 -08:00
Josip Miskovic 1ad8f23fb8 Jolt physics engine integration 2024-01-30 18:22:27 +01:00
bjorn a90c4092f8 glslang: Add -gVS when compiling default shaders for debug build;
This allows RenderDoc to debug the default shaders.
2024-01-20 21:47:27 -08:00
bjorn 2aed5135b7 Android: default ANDROID_ASSETS to nogame bundle; 2023-11-27 18:42:49 -08:00
bjorn b5922656a8 macos: Put nogame bundle in Resources folder instead of appending to exe; 2023-11-27 18:42:49 -08:00
bjorn 0a17cc566d Add nogame bundle; CMake zips and concats nogame; 2023-11-27 18:42:49 -08:00
bjorn a8d44b27f0 Fix CMakeLists; 2023-11-21 19:07:59 -08:00
bjorn f50e9f6fe1 Use miniz to decompress files; 2023-11-21 18:49:32 -08:00
bjorn d0f1462e51 Make Archive a refcounted object;
- Archive is now an object that has a refcount
- Archives are stored in linked list instead of array
- Not exposed to Lua yet, but could be in the future
- core/zip was merged into the filesystem module
- Mountpoints are handled centrally instead of per-archive
- Zip doesn't pre-hash with the mountpoint anymore
- mtime is truly only computed on request for zips

Mountpoints don't work properly yet.
2023-11-21 18:49:32 -08:00
bjorn 72aac1c58a Start Layers; 2023-10-25 15:23:41 -07:00
bjorn f0686f0115 Update msdfgen; Orient contours properly;
This fixes issues where some fonts would have glyphs with weird windings
and they would get rendered inside-out.

Unfortunately updating msdfgen increased its size by a factor of 2-3x.
2023-10-03 11:12:38 -07:00
bjorn a2f539de56 Update glslang; Shader #include uses virtual filesystem;
This update seemed to increased glslang's binary size even more...
2023-09-28 22:04:05 -07:00
bjorn 1d91ea1fde Replace tinycthread with C11 threads.h polyfill; 2023-09-21 23:26:16 -07:00
bjorn 479983fede gpu: surface improvements;
Restores ability to open window after initializing graphics module.

Surface is created lazily instead of being required upfront.

Use native platorm handles instead of GLFW's callbacks.

Some minor reorganization around core/gpu present API and xr transitions.

Linux links against libxcb/libX11/libX11-xcb for XGetXCBConnection.
2023-09-20 21:17:24 -07:00
bjorn f35d5c9c70 Re-enable objective-c extensions on os_macos;
Locally this worked, but maybe CMake was stale.
2023-09-20 17:58:13 -07:00
bjorn c5793c2410 macos: replace remaining Objective C with C API; 2023-09-20 17:48:01 -07:00
Bjorn c38165a154
Merge pull request #688 from bjornbytes/mesh
Mesh
2023-07-29 18:21:01 -07:00
bjorn 0fe80e4ef9 CMake: recompile shaders when lovr.glsl changes; 2023-07-29 13:36:52 -07:00
bjorn 4892d228b3 WIP; 2023-07-24 15:34:44 -07:00
bjorn 0d30055dd7 webgpu/wasm updates;
Some compile fixes and a rename from gpu_wgpu to gpu_web, since wgpu
refers to a specific implementation of WebGPU and I'm really bad at
typing it for some reason.
2023-07-09 13:13:58 -07:00
bjorn 447e746d41 Rename desktop driver to simulator internally;
The HeadsetDriver enumerant remains the same for now.
2023-06-29 16:24:51 -07:00