bjorn
784d61ef4a
Modify module loading;
...
Dynamically loading things was cool but is causing more pain than
pleasure because it just barely doesn't work everywhere. Instead,
find a better way to load modules. Use a data driven luaL_Reg array
to define the module mapping and luaL_register to smoosh it into
package.preload at boot time. Benefits:
- LOVR_ENABLE_<x> defines are respected and only require a single #if
- Module list is data driven and defined in one place
- It's faster (luax_preloadmodule did a global lookup every invocation)
- It works everywhere
Oh also threads were totally broken and this (mostly) fixes them.
2018-11-15 07:51:21 -08:00
mcc
91daeae634
Style/functional fixes to args for PR. --inside is now --root
2018-11-13 22:07:19 -05:00
mcc
2213b3bcfd
Allow the mountpoint to be set "inside" a zip file, using an --inside parameter.
...
This is used in the oculus mobile driver, allowing replacement of the (dubious) recursive-copy-from-zip code.
In order for this to work, the argument parsing must be beefed up a bit and also PhysFS must be updated to the newest master in order to get a new PHYSFS_setRoot. The github submodule source has been changed to one which updates more frequently to get this.
2018-11-13 15:20:04 -05:00
mcc
26af794e3c
Adjust the lovr command line construction to follow the lua/love standards. This is a BC-breaking change.
...
Source for lua standard: https://en.wikibooks.org/wiki/Lua_Programming/command_line_parameter
2018-11-13 16:28:56 -05:00
bjorn
5f8f8a540e
lovr.filesystem no longer relies on arg global;
2018-10-23 11:12:13 -07:00
bjorn
238af0064f
Add missing lovr.filesystem.unmount function;
2018-09-27 18:38:44 -07:00
bjorn
cee3c28f4e
luax_atexit; rm lovrDestroy;
...
Modules register themselves in the registry for destruction at
lua_close instead of having a hardcoded list in lovrDestroy.
2018-09-27 18:38:44 -07:00
bjorn
92e6ad93cb
Dynamically load modules;
2018-09-27 18:38:44 -07:00
bjorn
e02d22365f
api: refactor;
2018-09-27 18:38:44 -07:00
bjorn
83ddb82162
Simplify Lua object management;
2018-07-24 20:13:54 -07:00
bjorn
c19d69cfdd
Fix dll/so loading; Respect hyphens;
2018-07-18 17:09:47 -07:00
bjorn
b1b9dc734d
Woops make sure to use cross platform dlsym;
2018-07-07 13:57:32 -07:00
bjorn
0214c7605e
Support requiring dll/so files;
...
Still WIP
2018-07-07 13:55:22 -07:00
bjorn
22f6e7831b
Support C require paths;
2018-07-06 21:21:07 -07:00
bjorn
57c8dfe146
Clean up includes;
2018-07-04 13:51:35 -07:00
bjorn
275006847d
Prepend @ to loaded Lua chunks for better errors;
2018-05-27 19:05:10 -07:00
bjorn
5fd20cc955
Fix lovr.filesystem.setRequirePath;
2018-03-22 10:39:31 -07:00
bjorn
adee0a3012
Replace dots with slashes instead of question marks;
...
In filesystem loader.
2018-03-22 10:07:19 -07:00
bjorn
4b82a12b15
Add lovr.filesystem.getWorkingDirectory;
2018-03-19 16:52:17 -07:00
bjorn
399544cf9d
lovr.filesystem.getRequirePath; setRequirePath;
2018-03-11 16:25:21 -07:00
bjorn
6916137dc6
VertexData and TextureData properly extend Blob;
...
...He hates it!
2018-03-10 21:28:22 -08:00
bjorn
4df836727c
Simplify refcounting;
2018-02-26 00:59:03 -08:00
bjorn
5493a980ff
Move Blob to lovr.data;
...
Keep lovr.filesystem.newBlob though...
2018-02-19 21:04:53 -08:00
bjorn
2727544408
Copy strings in loader;
2018-01-04 18:49:14 -08:00
bjorn
de320be1cd
Improve error messages in the filesystem loader;
...
Also fix a memory leak in lovr.filesystem.load.
2017-12-31 13:20:42 -08:00
bjorn
1d20e49829
Move api header;
2017-12-10 12:41:43 -08:00
bjorn
ecde864ec4
Use spooky BOOleans everywhere;
2017-10-31 01:14:09 -07:00
bjorn
9b3723145b
Changes for physfs 3; rm lovr.filesystem.exists;
2017-10-22 01:37:06 -07:00
bjorn
231056e7e0
Fix issues with model IO;
2017-10-21 20:19:33 -07:00
bjorn
a12a003ccb
Use custom IO callbacks for assimp;
2017-10-21 12:31:53 -07:00
bjorn
c518cadcf7
Cleanup;
2017-07-19 07:00:11 +09:00
bjorn
265a81c411
Add window title; Improve initial error handling;
2017-06-10 15:34:35 -07:00
bjorn
1061134800
Improve error messages;
2017-06-02 01:31:14 -07:00
bjorn
eddc7af482
Fix require leak;
2017-05-17 00:17:13 -06:00
bjorn
6695be5eb8
Add missing bindings for lovr.filesystem.createDirectory;
2017-04-02 15:10:46 -07:00
bjorn
7f687f9732
No game screen;
2017-04-02 05:55:21 -07:00
bjorn
66bb9063f5
Add Blobs;
2017-04-01 16:50:10 -07:00
bjorn
fce7746b16
Simplify api structure;
2017-03-11 03:08:07 -08:00
bjorn
fa74254e64
Rename lovr to api;
2017-03-11 02:25:39 -08:00