Commit Graph

55 Commits

Author SHA1 Message Date
Adam
edf9be7e1c library: swap args in setuniformdepthbuffer
Makes it consistent with every other setuniform function in the API
2025-08-06 18:56:53 +01:00
Adam
5a9d7cbefb library: copy-paste error 2025-07-20 00:26:39 +01:00
Adam
5c7f5d4093 library: cameraposition APIs 2025-07-19 17:49:12 +01:00
Adam
543827b594 library: point toscreen and togameview API 2025-07-19 15:50:31 +01:00
Adam
0c4ce6e830 library: shaderprogram:setuniformdepthbuffer API 2025-07-19 03:54:36 +01:00
Adam
7ba215dfc4 library: add gameview event and related APIs 2025-07-19 02:46:17 +01:00
Adam
22bf2ba37c library: add missing event:modelmatrix function 2025-07-10 03:46:07 +01:00
Adam
5ddc379b24 library: add renderbillboard events
Totally untested right now, also involves a bunch more deduping and
standardises projectionmatrix being an alias for projmatrix.
2025-07-10 01:55:02 +01:00
Adam
9cb883b752 library: standardise matrix functions
Reduces clutter and adds render3d:inverseviewmatrix and
renderparticles:viewprojmatrix
2025-07-09 22:28:34 +01:00
Adam
541fd3d576 library: first swapbuffers APIs 2025-07-03 17:49:13 +01:00
Adam
d8d0537b46 library: add newlines to new errors 2025-06-07 02:24:01 +01:00
Adam
7274171c79 library: fix double-fclose 2025-06-07 02:10:44 +01:00
Adam
10267c027e library: make createsurfacefrompng fail non-fatal
This function was calling error() on failure, and that behaviour was
specifically mentioned in the docs. I can't see any particular reason
why I made the decision to do that instead of just returning nil.
2025-06-07 01:49:59 +01:00
Adam
53ef306f5b library: fix return type of scroll_direction
Documented as boolean, but was actually integer (1 or 0) until now
2025-06-07 01:35:21 +01:00
Adam
3af09e7252 library: include limits.h as needed 2025-02-16 23:38:34 +00:00
Adam
4dd0b13072 library: fix how embedded window positioning works
Now, if an embedded window or browser is forcibly repositioned by the
game window changing size, it will try to snap back to its previous
position and size, or as close as possible, when the game window is
resized again. The position it's trying to snap to will be overwritten
if the user repositions it again during this process.
2025-02-14 12:09:43 +00:00
Adam
915a4883cd library: characterid API 2025-02-11 20:32:57 +00:00
Adam
56b94ce69d library: isfocused API 2025-02-11 19:15:03 +00:00
Adam
5ab1d43959 library: add all window events to embeddedbrowser 2025-02-05 22:28:56 +00:00
ohkannaduh
f97c389fa5 Remove window_size and add lock to window_xywh 2025-02-05 02:19:50 +00:00
ohkannaduh
fe8bf35b6a library: Add xywh to window 2025-02-04 18:32:30 +00:00
Adam
c3447d0735 library: flashwindow API 2025-02-02 15:37:06 +00:00
Adam
82b65117db library: alias renderparticles vertexcolour 2025-01-17 19:18:39 +00:00
Adam
92085b13b7 library: renderparticles view matrix API 2025-01-17 10:53:15 +00:00
Adam
c6e525829d library: renderparticles UV API 2025-01-17 01:57:52 +00:00
Adam
da01075a99 library: particle origin and offset APIs
Still not documented though
2025-01-16 23:00:29 +00:00
Adam
4f46218c9c library: renderparticles APIs
no docs yet and not thoroughly tested
2025-01-13 23:16:57 +00:00
Adam
5aeeb42d39 library: playerposition api
Previously didn't think this was possible, but found an excellent way to
do it now.
2024-12-26 19:40:08 +00:00
Adam
7e7bd18372 browser,library: browser custom-js api 2024-12-16 19:38:49 +00:00
Adam
729351f155 library: onrenderbigicon API
This was a ton of work in the GL backend, hope it hasn't broken anything
else...
2024-12-12 20:10:26 +00:00
Adam
1d9b9fbb40 library: custom shader uniforms
I spent a whole day researching this, but finally I've come up with a
design that I'm pretty confident will be able to be translated to a Mac
backend. I mean, it probably will... maybe. I think.
2024-12-07 18:03:44 +00:00
Adam
216115a3a5 library: surface settint + setalpha api 2024-12-07 01:39:09 +00:00
Adam
9f91b35ba5 library: custom shader APIs
All works, but no support for uniforms yet.
2024-12-07 00:19:09 +00:00
Adam
925353d759 library: return depth from aspixels 2024-12-04 19:48:58 +00:00
Adam
bc055321ee library: createsurfacefrompng api fixes 2024-12-03 18:40:01 +00:00
Adam
7477d4f243 library: targetsize() api for all 2d render events 2024-12-01 21:36:24 +00:00
Adam
b27b30d468 library: itemicon colour() api 2024-12-01 19:26:16 +00:00
Adam
159909678d library: separate renderminimap functions 2024-12-01 01:15:06 +00:00
Adam
12d8f0a135 library: rework minimap events 2024-11-30 22:24:53 +00:00
Adam
6d63aeabeb library: most of the item icon APIs 2024-11-30 19:12:45 +00:00
Adam
e59b7296ec library: rework 2d atlas and uv APIs 2024-11-29 14:56:56 +00:00
Adam
f644e2dcef library: gamewindowsize + gameviewxywh 2024-11-25 15:54:40 +00:00
Adam
4e09d70266 library: render3d viewmatrix + projectionmatrix 2024-11-24 22:06:42 +00:00
Adam
1ad464028d library: support smooth-skinning vertex animation
This comes with some API changes: it turns out most animated models use
a feature called "smooth skinning", which means animation transforms are
per vertex as well as per bone. Because of this, there's no longer any
need to expose bone IDs to plugins.
2024-11-22 03:39:18 +00:00
Adam
c86ce42ea8 library: don't do arithmetic on void* 2024-11-16 18:22:36 +00:00
Adam
6a70b62baf library: redo buffer APIs
Completely changed the way Buffer objects are exposed in the API to make
them more in line with JavaScript's DataView. There are a few advantages
to this:
1. Much easier to understand how to send binary data from Lua<->Browser.
   Basically only need to understand one API instead of two.
2. More depth than before with less complexity.
3. Buffer read functions can now also be used on strings.
2024-11-16 18:12:33 +00:00
Adam
65a26a1bb4 library: batch2d -> render2d 2024-11-11 03:14:14 +00:00
Adam
0580411c6e library, browser: devtools APIs 2024-11-09 20:23:56 +00:00
Adam
9f0d43485a library: more functions in the wrong lists 2024-11-09 00:21:43 +00:00
Adam
1f2439a54d library: add missing function to new lists 2024-11-08 23:34:16 +00:00