1
0
Fork 0
mirror of https://github.com/bjornbytes/lovr.git synced 2024-07-08 15:13:35 +00:00
Commit graph

5435 commits

Author SHA1 Message Date
bjorn a0806928a4 More build fixes; 2024-06-06 09:46:54 -07:00
bjorn 929c1e850d Build fixes; 2024-06-06 09:46:54 -07:00
bjorn 48a6a8f906 xcb: mouse events; 2024-06-06 09:46:54 -07:00
bjorn b2993aa996 xcb: non-resizable window hints; 2024-06-06 09:46:54 -07:00
bjorn 1985eaee11 xcb: vulkan surface; 2024-06-06 09:46:54 -07:00
bjorn d1f9271982 Rebase fix; 2024-06-06 09:46:54 -07:00
bjorn a511b03ac0 xcb: private methods; 2024-06-06 09:46:54 -07:00
bjorn 030622c546 xcb: xkb; 2024-06-06 09:46:54 -07:00
bjorn 78115f9df6 xcb: window size/resize; 2024-06-06 09:46:54 -07:00
bjorn 04118da46f xcb: rm opengl stuff, add vk stuff; 2024-06-06 09:46:54 -07:00
bjorn fdf15d75c9 xcb: maybe os_set_mouse_mode; 2024-06-06 09:46:54 -07:00
bjorn d114818c46 xcb: fullscreen support; 2024-06-06 09:46:54 -07:00
bjorn 7999d2492e Window title; 2024-06-06 09:46:54 -07:00
bjorn 74a247ce9f Fixes; 2024-06-06 09:46:54 -07:00
bjorn 331467a836 Organization; 2024-06-06 09:46:54 -07:00
bjorn 75619a6bc4 Start xcb backend; 2024-06-06 09:46:54 -07:00
bjorn b7ca3b84f9 Improve physics thread safety;
- Error when trying to modify a collider during a world callback
- Use non-locking body interface when reading from a collider during a
  world callback to avoid deadlock
- Other Threads can still mess with colliders even while World:update is
  running in another thread, they will wait until the update is done.
- Use BodyInterface more, notably when reading collider pose info.

Remaining improvements:

There are still some places that aren't locking that maybe should be,
notably when using a body's MotionProperties?
2024-06-04 10:42:30 -07:00
bjorn eb55cae0bc Use thread_local instead of LOVR_THREAD_LOCAL; 2024-06-04 09:54:04 -07:00
bjorn 1b5302972f Flip the order of the optional Collider in Joint constructors;
Making the second collider the parent was messing up anchor points.
2024-06-03 09:46:02 -07:00
bjorn 38ac0e4022 Rename contact penetration to overlap; 2024-06-03 08:39:34 -07:00
bjorn 0966234a65 Motor force getters return forces instead of impulses; 2024-06-02 18:26:53 -07:00
bjorn a9b5bca102 Better defaults for spring setters; 2024-06-02 18:26:53 -07:00
bjorn 224f8f99cf Split motor target into mode and target; 2024-06-02 18:26:53 -07:00
bjorn 9de74d071f Rename TargetType to MotorMode;
No API change;
2024-06-02 18:26:53 -07:00
bjorn b28c6efb2e Don't check failure value when deciding to run CLI;
require returns true if the module doesn't return anything, so there are
situations where pcalling require would set the failure variable to
true, preventing the CLI from running.  I think it's fine to just check
the ok variable.
2024-05-30 18:12:37 -07:00
bjorn bbbd06f914 CMake puts LuaJIT library in APK;
Not sure what changed here
2024-05-29 08:33:42 -07:00
bjorn c7e97b9021 Fix/simplify single-collider joints; 2024-05-28 10:00:30 -07:00
bjorn 8e704f1a85 Rename HingeJoint motor force to torque; 2024-05-28 08:35:43 -07:00
bjorn 8a02defdf7 Rename get/setEnabledAxes to get/setDegreesOfFreedom; 2024-05-27 07:26:32 -07:00
bjorn 30352ee328 lovrColliderGetPose; 2024-05-27 06:58:45 -07:00
bjorn 051bb69495 Update Jolt; 2024-05-27 06:53:58 -07:00
bjorn 3d1dee2e42 Fix some issues with adding/replacing shapes; 2024-05-27 06:53:13 -07:00
bjorn e8e4ae5991 getInertia returns angle/axis instead of raw quat; 2024-05-27 06:17:39 -07:00
bjorn 5939961536 Update changelog; 2024-05-27 04:30:19 -07:00
Bjorn 4ba215a8e5
Merge pull request #727 from bjornbytes/watch
Live Reloading
2024-05-27 04:27:21 -07:00
bjorn 2df61e9a2b Watching ignores hidden paths; Android watches sdcard; 2024-05-27 04:19:50 -07:00
bjorn e2048f05a7 Only push events when event module is initialized;
Another solution might be retain/release.
2024-05-27 03:08:38 -07:00
bjorn 9b3041deba Maybe fix macOS build; 2024-05-27 03:08:38 -07:00
bjorn fcac1b13bf Fix bug in dmon_deinit;
Stale state prevented library from working when reinitialized.
2024-05-27 03:08:38 -07:00
bjorn 7e5aea54c5 Event module is threadsafe; 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 52488725b8 Fix unused resources being reported as non-existent; 2024-05-27 02:51:46 -07:00
bjorn b4525a39a8 Pass:send errors properly when not given a string; 2024-05-27 02:36:10 -07:00
bjorn dc4e6873ad Fix glslang revision; 2024-05-27 02:33:58 -07:00
bjorn 470a78a326 Collider:getRawPose; 2024-05-26 06:13:29 -07:00
bjorn af84992f1a Joint:getForce/Torque returns force instead of impulse; 2024-05-26 04:18:14 -07:00
bjorn 1a5113cfb6 Promote :getAnchors methods to superclass; 2024-05-26 04:08:11 -07:00
bjorn 7178ab0cf4 Remove damping threshold and clamp damping to 0. 2024-05-25 03:33:19 -07:00
bjorn f3cd4c5fd6 Add lovrColliderSetPose;
Results in less locks and broadphase updates.
2024-05-25 03:27:35 -07:00
bjorn 4e3c986468 Clamp friction and restitution to be non-negative; 2024-05-25 03:24:01 -07:00