Adds network_send_bytestring(), network_send_bytestring_to(), and
HOOK_ON_PACKET_BYTESTRING_RECEIVE
This is as close to raw bytes as you can get in lua. It allows you
to efficiently pack as much data as possible into each packet.
The existing network_send() was built for ease of use, but is quite
inefficient when you want to send a lot of data. Each number or int
field in the table amounts to 9 bytes for the key and 9 bytes for the
value. (amounting to 18 bytes per value). Whereas with the new method
you can pack that information into 1, 2, 4, or 8 bytes depending on
your type's size.
---------
Co-authored-by: MysterD <myster@d>
Just making a brief commit and thats all to add onto dj's lighting engine improvements because I heard about the PR, in mine I
* allowed all Vtx objects to be manipulated/retrieved
* updated lighting engine demo to be an SM64 night mode with a flashlight
* Fixed longterm bug where lighting bugs out unless you spawn a light
* Added new default LE mode LE_MODE_AFFECT_ALL_SHADED_AND_COLORED which also affects vertex colored surfaces
- Renamed the `new` and `realloc` functions to `create` and `resize`
- Added `delete_all`
- Made Mod Data a class:
- Allocation is now limited to prevent out-of-memory crashes: 1024 display lists of max size 2048 and 1024 vertex buffers of max size 4096 per mod
- Added error codes to identify the cause of a failure (name not found, pointer not found, max size exceeded, item pool is full, ...)
* set_gfx_command part 2
* part 3
* get gfx/vtx from name; copy gfx/vtx
* gfx/vtx dynamic allocation lua
* gfx/vtx_new: don't take level/model/vanilla names
* Clean up gbi constants
* update example
* Isaac review; add gfx_get_next_command and vtx_get_next_vertex
* make all commands length 1; missing NULL checks
* CONCEPT: Basic vertex lighting engine
Set the geometry mode on your model to G_LIGHTING_ENGINE_EXT, spawn a `bhvAmbientLight`, spawn some `bhvPointLight`s, and then you got yourself a mighty interesting scene.
* Fixes
* How did I miss this
* Make light set home pos
* Proof of concept for loading rom assets at runtime
* Added skybox textures
* Adjusted format
* Load all texture assets from rom
* Adjusted rom asset loading
* Load all Vtx lists from rom
* clean up toad, wario and his cap conflicts
* Load sound samples from rom
* fix toad sounds
* Loaded sequences from rom
* Load collisions from rom
* Object animations are now loaded from the rom
* Load player animations from rom
* Load goddard anims from rom
* whoops
* fix some compile errors
* drag and drop rom checker, everything works now.
* fix errors due to merge conflicts
* fix compile errors on windows, switch to md5
* fix vertex colors during load
Co-Authored-By: Agent X <44549182+agent-11@users.noreply.github.com>
* Load dialogs from rom
* Loaded course/act names from rom
* Loaded ingame text from rom
* rerun autogen & blacklist smlua_text_utils_init
* fix ttc_seg7_vertex_0700B238 colors
---------
Co-authored-by: MysterD <myster@d>
Co-authored-by: Agent X <44549182+agent-11@users.noreply.github.com>