Commit Graph

2700 Commits

Author SHA1 Message Date
bjorn 42c85c39fb rm 1ms sleep from main loop;
It's causing massive problems on windows, and sleeping for zero ms
is good enough to relinquish CPU time to the OS.  VR APIs also do
their own sleeping.
2020-01-08 23:58:11 -08:00
Bjorn 14e197414c
Merge pull request #185 from mcclure/hash-pragma-once
core/hash.h is missing #pragma once
2020-01-08 16:02:19 -08:00
Bjorn 9eaa970bc9
Merge pull request #186 from alloverse/fix/184
Bump msdfgen + add move_dll for it
2020-01-08 16:02:06 -08:00
Nevyn Bengtsson d987dd0dc3 Bump msdfgen + add move_dll for it
Fixes #184
2020-01-06 20:19:52 +01:00
mcc dac50c4687 Pragma once in core/hash.h 2020-01-06 13:55:39 -05:00
bjorn 4dc1f6fe57 YEAR; 2020-01-02 18:42:55 -08:00
bjorn db6efbb5b2 Update README; 2020-01-02 18:42:55 -08:00
Bjorn e74fb01b59
Merge pull request #178 from Jcd1230/master
Remove bad pragma pack for OpenVR on Linux and Mac
2020-01-01 14:38:36 -08:00
Jason Dogariu 163367a3ba rm pragma pack to fix OpenVR on Linux and Mac 2020-01-01 17:34:45 -05:00
bjorn fc8c195ab1 Update glfw to work around macos vsync problem; 2020-01-01 02:55:40 -08:00
bjorn 1db51ed25f tup: fix typo; 2019-12-31 19:40:39 -08:00
bjorn c9b1f257bf api: try new file naming convention; Tupfile: cleanup;
I assume full responsibility for any catastrophes this causes.
2019-12-31 19:31:44 -08:00
bjorn 72328640b6 rm CONTRIBUTING;
It's a guide on the website now.
2019-12-31 18:51:47 -08:00
bjorn c06a20cd78 Update .editorconfig;
- Only apply to stuff in src folder.
- Add lua extension.
- Ignore lib folder.

Considering moving it into src or removing it completely.
2019-12-31 18:39:29 -08:00
bjorn f12a092739 OpenXR build instructions;
It is probably bad that there is not a better place to put this,
but it is better than nothing.
2019-12-31 18:29:18 -08:00
bjorn 9fdeb75802 I can't into gitignore; 2019-12-31 18:23:56 -08:00
bjorn d228dc95d7 Automatically convert binary resources;
- Teach CMake how to compile binary resources to C headers, like xxd.
- Note: tup is already using xxd to do this.
- gitignore binary resource headers to reduce git noise and avoid problematic
  interactions between git and build systems.
2019-12-29 11:25:30 -08:00
bjorn 6060dc12b1 Improve tup config;
- Add config folder that contains tup config files.  There is a default
  config added to source control, but everything else in that folder is
  gitignored so you can add your own custom configurations.
- Remove and gitignore tup.config.
- This results in the following setup:
  - You can now create a tup.config symlink that points at the config
    you want to use.
  - Or, you can use the `tup variant` command to manage multiple build
    configurations at the same time (e.g. debug, release, wasm).
2019-12-29 10:52:44 -08:00
bjorn b18baf4e3c rm .travis.yml;
I haven't been getting much value out of the emscripten CI, and having
two CI systems is kind of awkward.  Also, travis doesn't let you change
the location of .travis.yml and it's cluttering up the root folder.  It
is possible to add this back in the future if there's a need for it,
preferably using appveyor or some other system.
2019-12-29 10:34:28 -08:00
bjorn f88268b763 rm openxr submodule;
The OpenXR headset driver is not enabled by default, and it doesn't
seem like this will change soon, so let's omit the submodule
dependency to save the bytes/time.
2019-12-29 10:31:15 -08:00
bjorn 12fcaffc3b Slight update to lovrDirSep;
Macro instead of global variable.
2019-12-29 10:30:26 -08:00
bjorn 79fd5ad7d8 Name boot.lua chunk properly;
This makes error messages nicer.
2019-12-28 23:18:03 -08:00
bjorn e538965f77 Add newline to end of stb_image.h; 2019-12-28 23:16:36 -08:00
bjorn a5db2d6c5c mv appveyor config to resources folder; 2019-12-28 20:13:19 -08:00
Bjorn 4687f30024
Merge pull request #175 from mcclure/threadlocal-vflip
Patch in thread local storage for stb_image vflip
2019-12-20 14:06:05 -08:00
mcc 21a52368f5 Patch in thread local storage for stb_image vflip
This makes loading images in multiple threads concurrently safe.

Adds a new CMake variable LOVR_USE_THREADLOCAL, by default on
2019-12-20 16:09:18 -05:00
mcc 735d2e1011 Upgrade stb_image from v2.12 to v2.23 2019-12-20 16:24:05 -05:00
bjorn a103637419 Fix ModelData refcounting; 2019-12-20 04:52:55 -08:00
bjorn d1657f401d Fix some memory leaks; 2019-12-20 04:13:38 -08:00
bjorn f8ae50a3a5 Update .gitignore; 2019-12-20 03:48:53 -08:00
Bjorn ebde129204
Merge pull request #174 from mcclure/android-0.14
Android fixes. Major change is lovrMain() {} is now lovrMain {}
2019-12-17 17:23:50 -08:00
Bjorn 6c6e5bb60d
Merge pull request #173 from mcclure/file
Bring back old File C API (read-only currently)
2019-12-17 17:22:09 -08:00
mcc c563787f7d Android fixes. Major change is lovrMain() {} is now lovrMain {}
The oculus drivers choke on #define lovrMain()
2019-12-17 20:20:09 -05:00
mcc 3ff94d8797 Bring back old File C API (read-only currently)
This code path is not used anywhere in this commit, but aids in developing Lovr addons.
2019-12-17 20:06:42 -05:00
Bjorn 0c34279947
Merge pull request #172 from mcclure/hash-cpp
Fix C++ compilation
2019-12-17 17:05:04 -08:00
mcc ff1ae2c050 Minor fix to let header files compile in C++ 2019-12-17 20:02:33 -05:00
Bjorn ec2c8e01ee
Merge pull request #171 from mcclure/gitmodules-cleanup
Remove physfs from .gitmodules
2019-12-17 16:56:48 -08:00
Bjorn 9abb3f0dc7
Merge pull request #170 from mcclure/vs-ignore
Include .vs in .gitignore (visual studio code)
2019-12-17 16:55:13 -08:00
mcc 9caa01efeb Remove physfs from .gitmodules 2019-12-17 19:54:52 -05:00
mcc 8cf3556cf1 Include .vs in .gitignore (visual studio code) 2019-12-17 19:50:51 -05:00
bjorn 0e52e49529 Update CONTRIBUTING; 2019-12-15 17:04:26 -08:00
bjorn fd437423e7 Fix refcount alignment;
Once and for all?  How does alignment even work.
2019-12-15 17:04:26 -08:00
Bjorn 16b93869ee
Merge pull request #143 from bjornbytes/shadow-samplers
Shadow samplers;
2019-12-14 11:34:38 -08:00
bjorn 0d156549f7 Fix remaining references to platform; 2019-12-13 19:59:09 -08:00
bjorn bb279b451c Fix remaining platform references; 2019-12-13 19:58:22 -08:00
bjorn c55c6ff4d0 Typo; 2019-12-13 19:56:55 -08:00
bjorn e2d8f8c645 platform -> os;
The function names are staying the same for now.
2019-12-13 19:55:46 -08:00
bjorn 63dc8f6c9b Only use glfw for window creation;
This allows for headless operation.  Currently GLFW throws an error
if you call glfwInit without an X server running, preventing lovr
from starting at all in that situation.

Because GLFW is currently used for time functions, those had to be
moved into the platform layer.  There's lots of duplication here,
ideally the platform layer would just return raw timer values and the
timer module would handle the epoch logic, but it was too difficult to
coordinate that right now.

Also, lovrPlatformInit is guaranteed to set the time epoch to 0 now.
2019-12-13 19:55:46 -08:00
bjorn 5957a1d007 Channel:peek also returns status; 2019-12-13 19:53:31 -08:00
bjorn e2f67c106d Thread:start supports up to 4 arguments;
They are passed to the chunk.
2019-12-13 15:50:10 -08:00