**F·W·K** |Version: | 2024.10 | |:--------------|:------------| |Branch: | main | |Commit: | 11 | # [F·W·K 2024.10 ](https://github.com/r-lyeh/FWK) ## a b o u t - https://github.com/r-lyeh/FWK is a 3D game framework in C, with Luajit bindings. - Download latest release: https://github.com/r-lyeh/FWK/releases - WIP Documentation below. Need extra support? Join us. ![Image from demo.c](https://i.imgur.com/sInbRoA.gif)
Code style ```C linenumbers /// ## Markdown comments when documenting (3 slashes) // C++ comments allowed /*C comments too*/ // Order matters: includes -> defines -> enums -> structs -> functions #define puts(x) my_printf("%s", x) // lowercase defines allowed for syntax sugars #define VERSION "1.0.0" // uppercase defines otherwise enum { ZERO = 0 }; // uppercase enums. also, one-line brackets allowed void assert_positive( int my_int ) { // lowercase snake_case everywhere int *x = &my_int; // no spacing between pointers and variables if( *x < ZERO ) { // no outer padding space after if,do,while,for,switch puts( "Negative" ); // inner padding space around operators and parenthesis } // 4-spaces indents, 1TBS brackets } // when in doubt, dont worry & mimic style from codebase ```
## r e a d m e
Goals - [x] ~~Rich build system, Royaltie fee, Full featured, Fast, Modern C++~~. - [x] Single-file header, Unlicensed, Small, Naive, Simple C.
Features ᕦ(ᐛ)ᕤ - [x] Pipeline: configurable and integrated [asset pipeline](tools/cook.ini). - [x] Embedded: [single-file header](engine/joint.h), all dependencies included. - [x] Compiler: MSVC, MINGW64, TCC, GCC, clang, clang-cl and emscripten. - [x] Linkage: Both static linkage and dynamic .dll/.so/.dylib support. - [x] Platform: Windows, Linux and OSX. [Partial](https://github.com/r-lyeh/FWK/blob/main/demos/html5/README.md) HTML5/Web support. - [x] DS: hash, sort, array/vector, map, set. - [x] Math: rand, noise, ease, vec2/3/4, mat33/34/44, quat. - [x] Geometry: ray, line, plane, aabb, sphere, capsule, triangle, poly and frustum. - [x] Window: windowed, soft/hard fullscreen, msaa, icon, cursor handling. - [x] Input: keyboard, mouse and gamepads. input bindings. - [x] Script: Lua scripting, Luajit/Python bindings. - [x] Network: downloads (HTTPS) and sockets (TCP/UDP). - [x] UI: button, list, slider, toggle, checkbox, editbox, dialog, color, image, menu, window, notify... - [x] Font: TTF, OTF and TTC. Basic syntax highlighter. Glyph ranges. Atlasing. - [x] Localization/I18N: XLSX and INI. Unicode. - [x] Image: JPG, PNG, BMP, PSD, PIC, PNM, ICO. - [x] Texture: KTX/2, PVR, DDS, ASTC, BASIS, HDR, TGA. - [x] Texel: Depth, R, RG, RGB, RGBA, BC1/2/3/4/5/6/7, PVRI/II, ETC1/2, ASTC. - [x] Audio: WAV/FLAC, OGG/MP1/MP3, FUR, MOD/XM/S3M/IT, SFXR and MID+SF2/SF3. - [x] Video: MP4, MPG, OGV, MKV, WMV and AVI. Also, MP4 recording with MPEG-1 fallback. - [x] Model: IQM/E, GLTF/2, GLB, FBX, OBJ, DAE, BLEND, MD3/5, MS3D, SMD, X, 3DS, BVH, DXF, LWO. - [x] Render: Renderstate driven rendering. - [x] Render: Global frustum culling and scene mesh render sorting. - [x] Render: Light probes. Environmental probe generation. - [x] Render: PBR (metallic-roughness) workflow. - [x] Render: Soft shadows, Cascaded shadowmaps, Variance shadowmaps. - [x] Render: Cubemaps, panoramas and spherical harmonics. Rayleigh/Mie scattering. - [x] Render: Post-effects (SSAO,FXAA1/3,CRT,Contrast,Grain,Outline,Vignette...). - [x] Render: 3D Anims, skeletal anims, hardware skinning and instanced rendering. - [x] Render: 3D Debugdraw, batching and vectorial font. - [x] Render: 3D Sprites, spritesheets, AA zooming and batching: ASE. - [x] Render: 3D Tilemaps and tilesets: TMX, TSX. - [x] Render: Geometry and Compute shaders. SSBO support. - [x] Social: Steam/Steamworks. - [x] Time: Hires timers, tweens, easings, constant-time spline/catmulls. - [x] AI: Swarm/Boids, pathfinding, behavior trees (wip). - [x] Compression: DEFLATE, LZMA, LZ4, ULZ, BALZ, BCM, CRUSH, LZW3, LZSS and PPP. - [x] Virtual filesystem: ZIP, PAK, TAR and DIR. - [x] Level data: JSON, JSON5, SJSON, XML, INI. - [x] Reflection and serialization: JSON5, INI. - [x] Object system. - [x] Disk cache. - [x] Scene handling. - [x] Profiler, stats and leaks finder. - [x] [Editors (wip)](https://user-images.githubusercontent.com/35402248/174457347-f787a6a2-aac8-404c-a5da-f44310c3d432.mp4): scene, text editor. - [x] [Documentation (wip)](https://bit.ly/fwk2023).
Roadmap ᕕ(ᐛ)ᕗ - [x] Editor: - [ ] 00 World: world/entity/component/systems (W/OCS). - [ ] 01 World.BVH: 2D/3D spatial tree (grid? octree?), spatial queries. - [ ] 02 Scene v2: scenegraph, toggleviews (billboards, materials, un/lit, cast shadows, wireframe, skybox/mie, collide, physics). - [ ] 03 Editor: scene tree, property editor. - [ ] 04 Editor.Core: load/save, undo/redo, copy/paste, on/off (vis,tick,ddraw,log). - [ ] 05 Editor.Basic: volumes, collisions, triggers. - [ ] 06 Editor.Debug: object singleton display, object console, object labels, object outlines. - [ ] 07 Editor.SubMode: Node graphs. - [ ] 08 Tools: Extend asset pipeline (per-platform, per-asset options). GIF, PKM. - [ ] 09 Script: Pure Lua FFI bindings. - [ ] 10 fwkPlugins/fwkModules: DLL (module->plugin/sys), Lua, Luajit, Teal and TypeScript. - [ ] 11 fwkAnimation: playlists, blendshapes, additive, ik/bones, animgraph/controllers, track/events. Also 2D skeletal sprites (Spine). - [ ] 12 fwkAI: h/fsm state, behavior trees, planning (goap), actors, navpaths/waypoints, navmesh generation. - [x] Renderer: - [ ] 00 Render: integrate reii2 or any other renderstate abstraction. renderbuckets. - [ ] 01 Render: glslcc + shader variants compilation - [ ] 02 Material v2: colors, textures, matcaps, videos, shadertoys. Shadertoys as post-fx. - [ ] 03 Lighting: hard/soft shadow mapping, spotlights (VSM), omnilights (VSMCube), CSM. - [ ] 04 Lighting: baked lightmaps (xatlas). Refl probes. - [ ] 05 Render: LODs, object instancing, billboards, impostors, reverse-z. - [ ] 06 FX: particles and emitters (TLFX2json), trails, paths. - [x] Engine: - [ ] 00 Audio: 3D audio, HRTF, FFT, filtering, sound effects (reverb etc) and sound occlusion. - [ ] 01 Physics: immediate-mode physics wrapper API design - [ ] 02 Collisions: collision improvements + (room for cols resolution maybe?) - [ ] 03 Math: quat2, bezier, catmull - [ ] 04 GUI: api improvements - new widgets, improved positioning etc - [ ] 05 Netsync: improvements (data prediction, compression, encryption) - [ ] 06 Platform: Mobile iOS/Android, Web/WASM/Emscripten, RaspberryPi, VR/AR. - [ ] 07 OS: cpu usage, device orientation - [ ] 08 Social: Achievements, Scores, Rankings, Friends, Invites, Store integrations. - [ ] 09 Input: mouse clip, mouse wrap, touch input, touch gestures.
Hello FWK ```C #include "fwk.h" // Minimal C sample int main() { window_create(75.0, 0); // 75% size, no extra flags while( window_swap() && !input(KEY_ESC) ) { // game loop puts("hello FWK from C!"); } } ``` ```lua local fwk = require("fwk") -- Minimal Lua sample fwk.window_create(75.0,0) -- 75% size, no extra flags while fwk.window_swap() and fwk.input(fwk.KEY_ESC) == 0 do -- game loop print("hello FWK from Lua!") end ```
Quickstart - Double-click `MAKE.bat` (Win) or `sh MAKE.bat` (Linux/OSX) to quick start. - `MAKE.bat all` (Win) or `sh MAKE.bat all` (Linux/OSX) to build everything. - `MAKE.bat proj` (Win) or `sh MAKE.bat proj` (Linux/OSX) to generate solutions/makefiles. - `MAKE.bat help` (Win) or `sh MAKE.bat help` (Linux/OSX) for a bunch of options. - `MAKE.bat hello.c` (Win) or `sh MAKE.bat hello.c` (Linux/OSX) to build a single executable. - Alternatively, ```bat echo win/vc && cl hello.c echo win/clang-cl && clang-cl hello.c echo win/tcc && tools\tcc hello.c -m64 echo win/mingw && gcc hello.c -lws2_32 -lwinmm -ldbghelp -lole32 -luser32 -lgdi32 -lcomdlg32 echo win/clang && clang hello.c -lws2_32 -lwinmm -ldbghelp -lole32 -luser32 -lgdi32 -lcomdlg32 echo linux && cc hello.c -lm -ldl -lpthread -lX11 echo linux/tcc && tcc hello.c -lm -ldl -lpthread -lX11 -D__STDC_NO_VLA__ echo osx && cc -ObjC hello.c -framework cocoa -framework iokit -framework coreaudio -framework audiotoolbox ```
Cook - Assets need to be cooked before being consumed in your application. The [tools/](tools/) folder contains all the related binaries to perform any asset processing plus the [cookbook](tools/cook.ini) to do so. - Your game will cook your assets as long as the [`tools/`](tools/) folder is next to your executable. Alternatively, cook them all just by invoking supplied [`tools/cook` standalone binary](tools/). - In both cases, assets will be cooked and packed into .zipfiles next to your executable, then mounted before entering game loop. These .zipfiles plus your executable are the only required files when releasing your game. - Optionally, you could also run `MAKE.bat fuse` and merge your binaries and their .zipfiles all together. Redist ready.
Extra tips - Any ico/png file named after the executable name will be automatically used as app icon. - Similar to the ico/png case above, the cooked .zipfiles can be named after the main executable as well. - Dropped files into game window will be imported & saved into [`import/`](engine/art/import/) folder. - Update the gamepad controller database by upgrading the [`gamecontrollerdb.txt`](engine/art/input/) file. - Depending on your IDE, you might need to browse to [`engine/split/`](engine/split/) sources when debugging FWK. - Enable cooking assets on demand, by using `--cook-on-demand=1` flag. Similarly, `--vsync=0/1` can be toggled too. - Linux/OSX users can optionally install wine and use the Windows tools instead (by using `--cook-wine` flag). - Disable automatic cooking by using `--cook-jobs=0` flag (not recommended). - Generate a project solution by dropping `engine/fwk.h, fwk.c and fwk` files into it. - Auto-generated Luajit and Python bindings can be found in the [`engine/`](engine/) folder. - Windows Defender may tag as false positives some generated binaries with tcc. Use `make tcc static` instead.
Bindings - Auto-generated LuaJIT and Python bindings can be found [in this folder](demos/lua).
Credits **Artwork and demos** [Butch](https://opengameart.org/users/buch "for golden ui (CC-BY-SA 3.0)"), [David Lam](https://en.wikipedia.org/wiki/Tokamak_(software) "for tokamak physics engine (ZLIB)"), [Dean Evans, Raijin](https://youtu.be/RRvYkrrpMKo?t=147 "for their Map song (c)"), [FMS_Cat](https://gist.github.com/FMS-Cat/a1ccea3ce866c34706084e3526204f4f "for nicest VHS/VCR shader around (MIT)"), [Goblin165cm](https://sketchfab.com/3d-models/halloween-little-witch-ccc023590bfb4789af9322864e42d1ab "for witch 3D model (CC BY 4.0)"), [Nuulbee](https://sketchfab.com/3d-models/kgirls01-d2f946f58a8040ae993cda70c97b302c "for kgirls01 3D model (CC BY-NC-ND 4.0)"), [Pixel Frog](https://pixelfrog-assets.itch.io/ "for their lovely asesprites (CC0)"), [Quaternius](https://www.patreon.com/quaternius "for their lovely 3D robots (CC0)"), [Rotting Pixels](https://opengameart.org/content/2d-castle-platformer-tileset-16x16 "for castle-tileset (CC0)"), [Tom Lewandowski](https://QuestStudios.com "for their MIDI recordings (c)"), [Rye Terrell](https://github.com/wwwtyro/glsl-atmosphere "for nicest rayleigh/mie scattering shader around (CC0)"), [Rxi](https://github.com/rxi/autobatch "for their lovely sprites & cats demo (MIT)"), **Tools** [Aaron Barany](https://github.com/akb825/Cuttlefish "for cuttlefish (APACHE2)"), [Andreas Mantler](https://github.com/ands/sproutline/ "for sproutline (PD)"), [Arseny Kapoulkine](https://github.com/zeux/pugixml/ "for pugixml (MIT)"), [Assimp authors](https://github.com/assimp/assimp "for assimp (BSD3)"), [Bernhard Schelling](https://github.com/schellingb/TinySoundFont "for tml.h (Zlib) and tsf.h (MIT)"), [FFMPEG authors](https://www.ffmpeg.org/ "for ffmpeg (LGPL21)"), [Imagination](https://developer.imaginationtech.com/pvrtextool/ "for pvrtextoolcli (ITL)"), [Krzysztof Gabis](https://github.com/kgabis/ape "for split.py/join.py (MIT)"), [Lee Salzman](https://github.com/lsalzman/iqm/tree/5882b8c32fa622eba3861a621bb715d693573420/demo "for iqm.cpp (PD)"), [Leon Bottou](https://github.com/facebookresearch/CParser "for lcpp (MIT)"), [Martín Lucas Golini](https://github.com/SpartanJ/eepp/commit/8552941da19380d7a629c4da80a976aec5d39e5c "for emscripten-fs.html (CC0)"), [Mattias Gustavsson](https://github.com/mattiasgustavsson/libs "for mid.h (PD)"), [Morgan McGuire](https://casual-effects.com/markdeep/ "for markdeep (BSD2)"), [Olivier Lapicque, Konstanty Bialkowski](https://github.com/Konstanty/libmodplug "for libmodplug (PD)"), [Polyglot Team](https://docs.google.com/spreadsheets/d/17f0dQawb-s_Fd7DHgmVvJoEGDMH_yoSd8EYigrb0zmM/edit "for polyglot gamedev (CC0)"), [Randy Gaul](https://github.com/RandyGaul/cute_headers "for cute_asesprite (PD)"), [Rxi, Adam Harrison](https://github.com/rxi/lite "for the exquisite lite editor (MIT)"), [Sean Barrett et al.](https://github.com/nothings/stb "for stbiresize, stbrectpack (PD)"), [Sepehr Taghdisian](https://github.com/septag/atlasc/ "for glslcc+atlasc (BSD2)"), [Tildearrow](https://github.com/tildearrow/furnace/ "for Furnace (GPL2)"), [Tomas Pettersson](http://www.drpetter.se/ "for sfxr (PD)"), [Tor Andersson](https://github.com/ccxvii/asstools "for assiqe.c (BSD)"), [Wael El Oraiby](https://github.com/eloraiby/delaunay "for delaunay.c (AGPL3)"), **Runtime** [Andreas Mantler](https://github.com/ands "for lightmapper and math library (PD)"), [Barerose](https://github.com/barerose "for swrap (CC0) and math library (CC0)"), [Camilla Löwy](https://github.com/elmindreda "for glfw3 and gleq (Zlib)"), [Dave Rand](https://tools.ietf.org/html/rfc1978 "for ppp (PD)"), [David Herberth](https://github.com/dav1dde/ "for glad generated code (PD)"), [David Reid](https://github.com/mackron "for miniaudio (PD)"), [Dominic Szablewski](https://github.com/phoboslab/pl_mpeg "for pl_mpeg (MIT)"), [Dominik Madarász](https://github.com/zaklaus "for json5 parser (PD)"), [Eduard Suica](https://github.com/eduardsui/tlse "for tlse (PD)"), [Evan Wallace](https://github.com/evanw "for their math library (CC0)"), [Gargaj+cce/Peisik](https://github.com/gargaj/foxotron "for Foxotron/PBR shaders (UNLICENSE)"), [Guilherme Lampert](https://github.com/glampert "for their math library (PD)"), [Guillaume Vareille](http://tinyfiledialogs.sourceforge.net "for tinyfiledialogs (ZLIB)"), [Haruhiko Okumura](https://oku.edu.mie-u.ac.jp/~okumura/compression/ "for lzss (PD)"), [Igor Pavlov](https://www.7-zip.org/ "for LZMA (PD)"), [Ilya Muravyov](https://github.com/encode84 "for bcm, balz, crush, ulz, lz4x (PD)"), [James R. McKaskill](https://github.com/jmckaskill/luaffi "for luaffi (MIT)"), [Jon Olick](https://www.jonolick.com/ "for jo_mp1 and jo_mpeg (PD)"), [Joonas Pihlajamaa](https://github.com/jokkebk/JUnzip "for JUnzip library (PD)"), [Juliette Focault](https://github.com/juliettef/IconFontCppHeaders/blob/main/IconsMaterialDesign.h "for the generated MD header (ZLIB)"), [Kristoffer Grönlund](https://github.com/krig "for their math library (CC0)"), [Lee Salzman](https://github.com/lsalzman/iqm/tree/5882b8c32fa622eba3861a621bb715d693573420/demo "for IQM spec & player (PD)"), [Lee Salzman, V.Hrytsenko, D.Madarász](https://github.com/zpl-c/enet/ "for enet (MIT)"), [Libtomcrypt](https://github.com/libtom/libtomcrypt "for libtomcrypt (Unlicense)"), [Lua authors](https://www.lua.org/ "for Lua language (MIT)"), [Mattias Gustavsson](https://github.com/mattiasgustavsson/libs "for thread.h and https.h (PD)"), [Mattias Jansson](https://github.com/mjansson/rpmalloc "for rpmalloc (PD)"), [Micha Mettke](https://github.com/vurtun "for nuklear and their math library (PD)"), [Michael Galetzka](https://github.com/Cultrarius/Swarmz "for swarmz (UNLICENSE)"), [Morten Vassvik](https://github.com/vassvik/mv_easy_font "for mv_easy_font (Unlicense)"), [Mārtiņš Možeiko](https://gist.github.com/mmozeiko/68f0a8459ef2f98bcd879158011cc275 "for A* pathfinding (PD)"), [Omar Cornut, vaiorabbit](https://github.com/ocornut/imgui/pull/3627 "for tables of unicode ranges (MIT-0)"), [Peter Schulman, Chris Willcocks, Dmitry Hrabrov](https://github.com/vurtun/nuklear "for nuklear patches (PD)"), [Rabia Alhaffar](https://github.com/Rabios/ice_libs "for ice_batt.h (PD)"), [Randy Gaul](https://web.archive.org/*/http://www.randygaul.net/wp-content/uploads/2021/04/handle_table.cpp "for HandleTable (PD)"), [Rich Geldreich](https://github.com/richgel999/miniz "for miniz (PD)"), [Ross Williams](http://ross.net/compression/lzrw3a.html "for lzrw3a (PD)"), [Samuli Raivio](https://github.com/bqqbarbhg/bq_websocket "for bq_websocket (PD)"), [Scott Lembcke](https://github.com/slembcke/debugger.lua "for lua debugger (MIT)"), [Sean Barrett](https://github.com/nothings "for stb_image, stb_image_write, stb_sprintf, stb_truetype and stb_vorbis (PD)"), [Sebastian Steinhauer](https://github.com/kieselsteini "for sts_mixer (PD)"), [Stan Melax, Cloud Wu](https://web.archive.org/web/20031204035320/http://www.melax.com/polychop/gdmag.pdf "for polychop C algorithm (PD)"), [Stefan Gustavson](https://github.com/stegu/perlin-noise "for simplex noise (PD)"), [Sterling Orsten](https://github.com/sgorsten "for their math library (UNLICENSE)"), [Tor Andersson](https://github.com/ccxvii/minilibs "for xml.c (PD)"), [Werner Stoop](engine/split/3rd_eval.h "for their expression evaluator (PD)"), [Wolfgang Draxinger](https://github.com/datenwolf "for their math library (WTFPL2)"),
Unlicense This software is released into the [public domain](https://unlicense.org/). Also dual-licensed as [0-BSD](https://opensource.org/licenses/0BSD) or [MIT (No Attribution)](https://github.com/aws/mit-0) for those countries where public domain is a concern (sigh). Any contribution to this repository is implicitly subjected to the same release conditions aforementioned.
Links Still looking for alternatives? [amulet](https://github.com/ianmaclarty/amulet), [aroma](https://github.com/leafo/aroma/), [astera](https://github.com/tek256/astera), [blendelf](https://github.com/jesterKing/BlendELF), [bullordengine](https://github.com/MarilynDafa/Bulllord-Engine), [candle](https://github.com/EvilPudding/candle), [cave](https://github.com/kieselsteini/cave), [chickpea](https://github.com/ivansafrin/chickpea), [corange](https://github.com/orangeduck/Corange), [cute](https://github.com/RandyGaul/cute_framework), [dos-like](https://github.com/mattiasgustavsson/dos-like), [ejoy2d](https://github.com/ejoy/ejoy2d), [exengine](https://github.com/exezin/exengine), [gunslinger](https://github.com/MrFrenik/gunslinger), [hate](https://github.com/excessive/hate), [island](https://github.com/island-org/island), [juno](https://github.com/rxi/juno), [l](https://github.com/Lyatus/L), [lgf](https://github.com/Planimeter/lgf), [limbus](https://github.com/redien/limbus), [love](https://github.com/love2d/love/), [lovr](https://github.com/bjornbytes/lovr), [mini3d](https://github.com/mini3d/mini3d), [mintaro](https://github.com/mackron/mintaro), [mio](https://github.com/ccxvii/mio), [olive.c](https://github.com/tsoding/olive.c), [opensource](https://github.com/w23/OpenSource), [ouzel](https://github.com/elnormous/ouzel/), [pez](https://github.com/prideout/pez), [pixie](https://github.com/mattiasgustavsson/pixie), [punity](https://github.com/martincohen/Punity), [r96](https://github.com/badlogic/r96), [ricotech](https://github.com/dbechrd/RicoTech), [rizz](https://github.com/septag/rizz), [tigr](https://github.com/erkkah/tigr), [yourgamelib](https://github.com/duddel/yourgamelib) Issues Discord
## config
🄳 macro ENABLE_FASTCALL_LUA Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_PROFILER Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_SELFIES Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_MEMORY_POISON Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_MEMORY_LEAKS Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_LINUX_CALLSTACKS Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_AUTOTESTS Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro ENABLE_COOK Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro GLOBAL_FRUSTUM_ENABLED Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro GLOBAL_FRUSTUM_DEBUG_DRAW Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro GLOBAL_FRUSTUM_FOV_MULTIPLIER Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄳 macro GLOBAL_FX_PASS_ENABLED Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## ds
🄵 API int less_64(uint64_t a,uint64_t b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int less_int(int a,int b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int less_ptr(void* a,void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int less_str(char* a,char* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int less_64_ptr(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int less_int_ptr(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t unhash_32(uint32_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hash_32(uint32_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t hash_64(uint64_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t hash_flt(double x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t hash_int(int key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t hash_ptr(const void* ptr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t hash_bin(const void* ptr,unsigned len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t hash_str(const char* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t popcnt64(uint64_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* vrealloc(void* p,size_t sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API size_t vlen(void* p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct set_item; ~~~~~~C struct set_item { struct set_item* next; uint64_t keyhash; void* key; void* super; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct set; ~~~~~~C struct set { array(set_item*) array; int (*cmp)(void*, void*); uint64_t (*hash)(void*); int count; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void set_init(set* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void set_free(set* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void set_insert(set* m,set_item* p,void* key,uint64_t keyhash,void* super); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void set_erase(set* m,void* key,uint64_t keyhash); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* set_find(const set* m,void* key,uint64_t keyhash); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int set_isempty(const set* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int set_count(const set* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void set_gc(set* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void set_clear(set* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct pair; ~~~~~~C struct pair { struct pair* next; uint64_t keyhash; void* key; void* value; void* super; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct map; ~~~~~~C struct map { array(pair*) array; int (*cmp)(void*, void*); uint64_t (*hash)(void*); int count:31; int is_sorted:1; array(pair*) sorted; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void map_init(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void map_free(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void map_insert(map* m,pair* p,void* key,void* value,uint64_t keyhash,void* super); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void map_erase(map* m,void* key,uint64_t keyhash); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* map_find(map* m,void* key,uint64_t keyhash); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int map_isempty(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int map_count(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void map_gc(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool map_sort(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void map_clear(map* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## math
🅂 union vec2i; ~~~~~~C union vec2i { struct { int X,Y; }; struct { int x,y; }; struct { int r,g; }; struct { int w,h; }; struct { int min,max; }; struct { int from,to; }; struct { int src,dst; }; int v2[2]; int array[1]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 union vec3i; ~~~~~~C union vec3i { struct { int X,Y,Z; }; struct { int x,y,z; }; struct { int r,g,b; }; struct { int w,h,d; }; struct { int min,max; }; struct { int from,to,step; }; struct { int src,dst; }; int v3[3]; int array[1]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 union vec2; ~~~~~~C union vec2 { struct { float X,Y; }; struct { float x,y; }; struct { float r,g; }; struct { float w,h; }; struct { float min,max; }; struct { float from,to; }; struct { float src,dst; }; float v2[2]; float array[1]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 union vec3; ~~~~~~C union vec3 { struct { float X,Y,Z; }; struct { float x,y,z; }; struct { float r,g,b; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec2 rg; vec2 wh; float v3[3]; float array[1]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 union vec4; ~~~~~~C union vec4 { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; struct { float r,g,b,a; }; struct { float min,max; }; struct { float from,to; }; vec2 xy; vec3 xyz; vec2 rg; vec3 rgb; vec2 wh; vec3 whd; float v4[4]; float array[1]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 union quat; ~~~~~~C union quat { struct { float X,Y,Z,W; }; struct { float x,y,z,w; }; vec3 xyz; vec4 xyzw; float v4[4]; float array[1]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef float mat33[9]; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef float mat34[12]; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef float mat44[16]; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void randset(uint64_t state); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t rand64(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double randf(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int randi(int mini,int maxi); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float simplex1(float x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float simplex2(vec2 xy); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float simplex3(vec3 xyz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float simplex4(vec4 xyzw); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float deg(float radians); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float rad(float degrees); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float cycle180(float angle); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float cycle360(float angle); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int mini(int a,int b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int maxi(int a,int b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int absi(int a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int clampi(int v,int a,int b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float minf(float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float maxf(float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float absf(float a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float pmodf(float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float signf(float a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float clampf(float v,float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float mixf(float a,float b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float unmixf(float a,float b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float mapf(float x,float a,float b,float c,float d); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float slerpf(float a,float b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float fractf(float a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 ptr2(const float* a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 neg2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 add2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 sub2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 mul2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 div2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 inc2(vec2 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 dec2(vec2 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 scale2(vec2 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 pmod2(vec2 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 min2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 max2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 abs2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 floor2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 fract2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 ceil2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float dot2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 refl2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float cross2(vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float len2sq(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float len2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 norm2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int finite2(vec2 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 mix2(vec2 a,vec2 b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 clamp2(vec2 v,vec2 a,vec2 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 clamp2f(vec2 v,float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 rnd3(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 ptr3(const float* a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 vec23(vec2 a,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 neg3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 add3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 sub3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 mul3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 div3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 inc3(vec3 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 dec3(vec3 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 scale3(vec3 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 pmod3(vec3 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 min3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 max3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 abs3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 floor3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 fract3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 ceil3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 cross3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float dot3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 refl3(vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float len3sq(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float len3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 norm3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 norm3sq(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int finite3(vec3 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 mix3(vec3 a,vec3 b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 clamp3(vec3 v,vec3 a,vec3 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 clamp3f(vec3 v,float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ortho3(vec3* left,vec3* up,vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 rotatex3(vec3 dir,float degrees); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 rotatey3(vec3 dir,float degrees); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 rotatez3(vec3 dir,float degrees); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 ptr4(const float* a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 vec34(vec3 a,float w); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 neg4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 add4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 sub4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 mul4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 div4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 inc4(vec4 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 dec4(vec4 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 scale4(vec4 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 pmod4(vec4 a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 min4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 max4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 abs4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 floor4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 fract4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 ceil4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float dot4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 refl4(vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float len4sq(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float len4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 norm4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 norm4sq(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int finite4(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 mix4(vec4 a,vec4 b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 clamp4(vec4 v,vec4 a,vec4 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 clamp4f(vec4 v,float a,float b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat idq(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat ptrq(const float* a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat vec3q(vec3 a,float w); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat vec4q(vec4 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat negq(quat a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat conjq(quat a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat addq(quat a,quat b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat subq(quat a,quat b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat mulq(quat p,quat q); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat scaleq(quat a,float s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat normq(quat a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float dotq(quat a,quat b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat mixq(quat a,quat b,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat slerpq(quat a,quat b,float s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat rotationq(float deg,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat mat44q(mat44 M); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 rotate3q_2(vec3 v,quat q); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 rotate3q(vec3 v,quat r); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 euler(quat q); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API quat eulerq(vec3 pyr_degrees); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void scaling33(mat33 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void scale33(mat33 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void id33(mat33 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void extract33(mat33 m,const mat44 m4); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void copy33(mat33 m,const mat33 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 mulv33(mat33 m,vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply33x2(mat33 m,const mat33 a,const mat33 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void rotation33(mat33 m,float degrees,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void rotationq33(mat33 m,quat q); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void rotate33(mat33 r,float degrees,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void compose33(mat33 m,quat r,vec3 s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void id34(mat34 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void copy34(mat34 m,const mat34 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void scale34(mat34 m,float s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void add34(mat34 m,mat34 n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void muladd34(mat34 m,mat34 n,float s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void add34x2(mat34 m,mat34 n,mat34 o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void lerp34(mat34 m,mat34 n,mat34 o,float alpha); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply34x2(mat34 m,const mat34 m0,const mat34 m1); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply34(mat34 m,const mat34 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply34x3(mat34 m,const mat34 a,const mat34 b,const mat34 c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void compose34(mat34 m,vec3 t,quat q,vec3 s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void invert34(mat34 m,const mat34 o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void id44(mat44 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void identity44(mat44 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void copy44(mat44 m,const mat44 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply44x2(mat44 m,const mat44 a,const mat44 b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply44x3(mat44 m,const mat44 a,const mat44 b,const mat44 c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void multiply44(mat44 m,const mat44 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ortho44(mat44 m,float l,float r,float b,float t,float n,float f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void frustum44(mat44 m,float l,float r,float b,float t,float n,float f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void perspective44(mat44 m,float fovy_degrees,float aspect,float nearp,float farp); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void lookat44(mat44 m,vec3 eye,vec3 center,vec3 up); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 pos44(mat44 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void translation44(mat44 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void translate44(mat44 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void relocate44(mat44 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void rotationq44(mat44 m,quat q); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void rotation44(mat44 m,float degrees,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void rotate44(mat44 m,float degrees,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void scaling44(mat44 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void scale44(mat44 m,float x,float y,float z); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void transpose44(mat44 m,const mat44 a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float det44(const mat44 M); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool invert44(mat44 T,const mat44 M); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void compose44(mat44 m,vec3 t,quat q,vec3 s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 transformq(const quat q,const vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 transform33(const mat33 m,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 transform344(const mat44 m,const vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 transform444(const mat44 m,const vec4 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool unproject44(vec3* out,vec3 xyd,vec4 viewport,mat44 mvp); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print2i(vec2i v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print3i(vec3i v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print2(vec2 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print3(vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print4(vec4 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void printq(quat q); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print33(float* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print34(float* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void print44(float* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## hash
🄵 API uint32_t hh_mem(const void* data,size_t size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_str(const char* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_float(float f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_int(int i); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_vec2(vec2 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_vec3(vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_vec4(vec4 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_mat33(mat33 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t hh_mat44(mat44 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## obj
🄵 API uintptr_t id_make(void* ptr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* id_handle(uintptr_t id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void id_dispose(uintptr_t id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool id_valid(uintptr_t id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct obj; ~~~~~~C struct obj { }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct entity; ~~~~~~C struct entity { EN}; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 void* obj_malloc(unsigned sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 void* obj_free(void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uintptr_t obj_header(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uintptr_t obj_id(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* obj_type(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned obj_typeid(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_sizeof(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_size(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* obj_data(void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* obj_datac(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_payload(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_zero(void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_ref(void* oo); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_unref(void* oo); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_detach(void* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_attach(void* o,void* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_root(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_parent(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(obj*)* obj_children(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(obj*)* obj_siblings(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_dumptree(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_setmeta(void* o,const char* key,const char* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* obj_meta(const void* o,const char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_setname(void* o,const char* name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* obj_name(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_swap(void* dst,void* src); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_copy_fast(void* dst,const void* src); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_copy(void* dst,const void* src); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_comp_fast(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_comp(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_lesser(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_greater(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_equal(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t obj_hash(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool obj_hexdump(const void* oo); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_print(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_printf(const void* o,const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_console(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* obj_saveini(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_mergeini(void* o,const char* ini); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_loadini(void* o,const char* ini); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* obj_savejson(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_mergejson(void* o,const char* json); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_loadjson(void* o,const char* json); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* obj_savebin(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_mergebin(void* o,const char* sav); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_loadbin(void* o,const char* sav); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* obj_savempack(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_mergempack(void* o,const char* sav); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API obj* obj_loadmpack(void* o,const char* sav); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_push(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int obj_pop(void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool entity_addcomponent(entity* e,unsigned c,void* ptr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool entity_hascomponent(entity* e,unsigned c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* entity_getcomponent(entity* e,unsigned c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool entity_delcomponent(entity* e,unsigned c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool entity_usecomponent(entity* e,unsigned c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool entity_offcomponent(entity* e,unsigned c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* entity_save(entity* self); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_clone(const void* src); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_merge(void* dst,const void* src); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_mutate(void* dst,const void* src); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* obj_make(const char* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum OBJTYPE_BUILTINS; ~~~~~~C enum OBJTYPE_BUILTINS { OBJTYPE_obj = 0, OBJTYPE_entity = 1, OBJTYPE_vec2 = 2, OBJTYPE_vec3 = 3, OBJTYPE_vec4 = 4, OBJTYPE_quat = 5, OBJTYPE_mat33 = 6, OBJTYPE_mat34 = 7, OBJTYPE_mat44 = 8, OBJTYPE_vec2i = 9, OBJTYPE_vec3i = 10, ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## ai
🄵 API int pathfind_astar(int width,int height,const unsigned* map,vec2i src,vec2i dst,vec2i* path,size_t maxpath); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef bt_func; ~~~~~~C typedef int (*bt_func)(); ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct bt_t; ~~~~~~C struct bt_t { uint64_t type; int (*action)(); union { int argi; float argf; }; array(struct bt_t) children; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bt_t bt(const char* ini_file,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int bt_run(bt_t* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void bt_addfun(const char* name,int (*func)()); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bt_func bt_findfun(const char* name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* bt_funcname(bt_func fn); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_bt(bt_t* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum SWARM_DISTANCE; ~~~~~~C enum SWARM_DISTANCE { SWARM_DISTANCE_LINEAR, SWARM_DISTANCE_INVERSE_LINEAR, SWARM_DISTANCE_QUADRATIC, SWARM_DISTANCE_INVERSE_QUADRATIC }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct boid_t; ~~~~~~C struct boid_t { vec3 position; vec3 velocity; vec3 acceleration; vec3 prev_position; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct swarm_t; ~~~~~~C struct swarm_t { array(boid_t) boids; float perception_radius; float separation_weight; SWARM_DISTANCE separation_type; float alignment_weight; float cohesion_weight; float steering_weight; array(vec3) steering_targets; SWARM_DISTANCE steering_target_type; float blindspot_angledeg; float max_acceleration; float max_velocity; map(vec3*, array(boid_t*)) voxel_cache_; float blindspot_angledeg_compare_value_; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API swarm_t swarm(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swarm_update(swarm_t* self,float delta); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swarm_update_acceleration_only(swarm_t* self,float delta); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swarm_update_acceleration_and_velocity_only(swarm_t* self,float delta); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_swarm(swarm_t* self); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## audio
🄵 API void midi_send(unsigned midi_msg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct audio_handle* audio_t; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API audio_t audio_clip(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API audio_t audio_stream(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_play(audio_t s,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_play_gain(audio_t a,int flags,float gain); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_play_gain_pitch(audio_t a,int flags,float gain,float pitch); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_play_gain_pitch_pan(audio_t a,int flags,float gain,float pitch,float pan); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_stop(audio_t a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void audio_loop(audio_t a,bool loop); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool audio_playing(audio_t a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float audio_volume_clip(float gain); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float audio_volume_stream(float gain); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float audio_volume_master(float gain); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_mute(int mute); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_muted(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_audio(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum AUDIO_FLAGS; ~~~~~~C enum AUDIO_FLAGS { AUDIO_1CH = 0, AUDIO_2CH = 1, AUDIO_8 = 2, AUDIO_16 = 0, AUDIO_32 = 4, AUDIO_FLOAT = 8, AUDIO_8KHZ = 16, AUDIO_11KHZ = 32, AUDIO_22KHZ = 0, AUDIO_32KHZ = 64, AUDIO_44KHZ = 128, AUDIO_MIXER_GAIN = 0, AUDIO_IGNORE_MIXER_GAIN = 256, AUDIO_MULTIPLE_INSTANCES = 0, AUDIO_SINGLE_INSTANCE = 512 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int audio_queue(const void* samples,int num_samples,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## collide
🅂 struct line; ~~~~~~C struct line { vec3 a,b; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct sphere; ~~~~~~C struct sphere { vec3 c; float r; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct aabb; ~~~~~~C struct aabb { vec3 min,max; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct plane; ~~~~~~C struct plane { vec3 p,n; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct capsule; ~~~~~~C struct capsule { vec3 a,b; float r; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct ray; ~~~~~~C struct ray { vec3 p,d; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct triangle; ~~~~~~C struct triangle { vec3 p0,p1,p2; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct poly; ~~~~~~C struct poly { vec3* verts; int cnt; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 union frustum; ~~~~~~C union frustum { struct { vec4 l,r,t,b,n,f; }; vec4 pl[6]; float v[24]; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct hit; ~~~~~~C struct hit { union { float depth; struct { float t0,t1; }; struct { int hits; vec3 p0,p1; float distance2; int iterations; }; }; union { vec3 p; vec3 contact_point; }; union { vec3 n; vec3 normal; }; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float line_distance2_point(line l,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 line_closest_point(line l,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ray_test_plane(ray r,vec4 p4); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ray_test_triangle(ray r,triangle t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ray_test_sphere(float* t0,float* t1,ray r,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ray_test_aabb(float* t0,float* t1,ray r,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* ray_hit_plane(ray r,plane p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* ray_hit_triangle(ray r,triangle t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* ray_hit_sphere(ray r,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* ray_hit_aabb(ray r,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 sphere_closest_point(sphere s,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* sphere_hit_aabb(sphere s,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* sphere_hit_capsule(sphere s,capsule c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* sphere_hit_sphere(sphere a,sphere b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int sphere_test_aabb(sphere s,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int sphere_test_capsule(sphere s,capsule c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int sphere_test_sphere(sphere a,sphere b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 aabb_closest_point(aabb a,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float aabb_distance2_point(aabb a,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int aabb_contains_point(aabb a,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* aabb_hit_aabb(aabb a,aabb b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* aabb_hit_capsule(aabb a,capsule c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* aabb_hit_sphere(aabb a,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int aabb_test_aabb(aabb a,aabb b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int aabb_test_capsule(aabb a,capsule c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int aabb_test_sphere(aabb a,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float capsule_distance2_point(capsule c,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 capsule_closest_point(capsule c,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* capsule_hit_aabb(capsule c,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* capsule_hit_capsule(capsule a,capsule b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API hit* capsule_hit_sphere(capsule c,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int capsule_test_aabb(capsule c,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int capsule_test_capsule(capsule a,capsule b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int capsule_test_sphere(capsule c,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 plane4(vec3 p,vec3 n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API frustum frustum_build(mat44 projview); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int frustum_test_sphere(frustum f,sphere s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int frustum_test_aabb(frustum f,aabb a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API poly poly_alloc(int cnt); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void poly_free(poly* p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API poly pyramid(vec3 from,vec3 to,float size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API poly diamond(vec3 from,vec3 to,float size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void collide_demo(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## cook
🄴 enum COOK_FLAGS; ~~~~~~C enum COOK_FLAGS { COOK_SYNC = 0, COOK_ASYNC = 1, COOK_CANCELABLE = 2, COOK_DEBUGLOG = 4 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cook_config(const char* path_to_cook_ini); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool cook_start(const char* path_to_cook_ini,const char* masks,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cook_stop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cook_cancel(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int cook_jobs(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int cook_progress(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool have_tools(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## data
🅂 union json_t; ~~~~~~C union json_t { char* s; double f; int64_t i; uintptr_t p; array(union json_t) arr; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool json_push(const char* json_content); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* json_key(const char* keypath); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API json_t* json_find(const char* type_keypath); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API json_t json_get(const char* type_keypath); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int json_count(const char* keypath); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool json_pop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int xml_push(const char* xml_content); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* xml_string(char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned xml_count(char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(char) xml_blob(char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void xml_pop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool data_tests(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## extend
🄵 API void* dll(const char* filename,const char* symbol); Load dynamic library `file` and search for `symbol`. |Return| NULL if not found, found symbol otherwise.| |-----|------| |`filename`| path to dynamic library file. must contain extension.| |`symbol`| symbol name. must not be NULL.| !!! WARNING `filename` must contain extension ~~~~~~C linenumbers /* dll example */ bool (*plugin_init)(void) = dll("plugin.dll", "init"); assert(plugin_init()); ~~~~~~ See also: dlopen, dlclose
🄴 enum {; ~~~~~~C enum { SCRIPT_LUA = 1, SCRIPT_DEBUGGER = 2 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void script_init(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* script_init_env(unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool script_push(void* env); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void script_run(const char* script); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void script_runfile(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void script_bind_class(const char* objname,int num_methods,const char** c_names,void** c_functions); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void script_bind_function(const char* c_name,void* c_function); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void script_call(const char* lua_function); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool script_tests(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool script_pop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## file
🄵 API array(char*) file_list(const char* pathmasks); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_write(const char* file,const void* ptr,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_append(const char* file,const void* ptr,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_read(const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_load(const char* filename,int* len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t file_size(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_directory(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_pathabs(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_path(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_name(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_base(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_ext(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_id(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_normalize(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_counter(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t file_stamp(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t file_stamp10(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_exist(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_delete(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_copy(const char* src,const char* dst); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_move(const char* src,const char* dst); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API FILE* file_temp(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* file_tempname(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* file_md5(const char* file); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* file_sha1(const char* file); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* file_crc32(const char* file); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(char*) file_zip_list(const char* zipfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(char) file_zip_extract(const char* zipfile,const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_zip_append(const char* zipfile,const char* filename,int clevel); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool file_zip_appendmem(const char* zipfile,const char* entryname,const void* ptr,unsigned len,int clevel); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void storage_mount(const char* folder); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void storage_read(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void storage_flush(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool vfs_mount(const char* mount_point); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(char*) vfs_list(const char* masks); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* vfs_read(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* vfs_load(const char* pathfile,int* size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int vfs_size(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void vfs_reload(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* vfs_resolve(const char* fuzzyname); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API FILE* vfs_handle(const char* pathfile); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* cache_insert(const char* key,void* value,int size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* cache_lookup(const char* key,int* size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef ini_t; ~~~~~~C typedef map(char*, char*) ini_t; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API ini_t ini(const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API ini_t ini_from_mem(const char* data); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ini_destroy(ini_t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool ini_write(const char* filename,const char* section,const char* key,const char* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## font
🄴 enum FONT_FLAGS; ~~~~~~C enum FONT_FLAGS { FONT_512 = 0x0, FONT_1024 = 0x1, FONT_2048 = 0x2, FONT_4096 = 0x4, FONT_NO_OVERSAMPLE = 0x0, FONT_OVERSAMPLE_X = 0x08, FONT_OVERSAMPLE_Y = 0x10, FONT_ASCII = 0x800, FONT_AR = 0x001000, FONT_ZH = 0x002000, FONT_EL = 0x004000, FONT_EM = 0x008000, FONT_EU = 0x010000, FONT_HE = 0x020000, FONT_JP = 0x040000, FONT_KR = 0x080000, FONT_RU = 0x100000, FONT_TH = 0x200000, FONT_VI = 0x400000, FONT_CJK = FONT_ZH|FONT_JP|FONT_KR }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct font_metrics_t; ~~~~~~C struct font_metrics_t { float ascent; float descent; float linegap; float linedist; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void font_face(const char* face_tag,const char* filename_ttf,float font_size,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void font_face_from_mem(const char* tag,const void* ttf_buffer,unsigned ttf_len,float font_size,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void font_scale(const char* face_tag,int scale_index,float value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void font_scales(const char* face_tag,float h1,float h2,float h3,float h4,float h5,float h6); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void font_color(const char* color_tag,uint32_t color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 font_xy(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void font_goto(float x,float y); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 font_print(const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 font_clip(const char* text,vec4 rect); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* font_wrap(const char* text,float max_width); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 font_rect(const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API font_metrics_t font_metrics(const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* font_colorize(const char* text,const char* comma_types,const char* comma_keywords); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 font_highlight(const char* text,const void* colors); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_font(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## input
🄵 API int input_use(int controller_id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float input(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input2(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float input_diff(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_diff2(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* input_string(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float input_frame(int vk,int Nth_frame); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_frame2(int vk,int Nth_frame); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_up(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_down(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_held(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_idle(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_click(int vk,int ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_click2(int vk,int ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_repeat(int vk,int ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_chord2(int vk1,int vk2); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_chord3(int vk1,int vk2,int vk3); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_chord4(int vk1,int vk2,int vk3,int vk4); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float input_filter_positive(float v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_filter_positive2(vec2 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_filter_deadzone(vec2 v,float deadzone_treshold); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_filter_deadzone_4way(vec2 v,float deadzone_treshold); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum TOUCH_BUTTONS; ~~~~~~C enum TOUCH_BUTTONS { TOUCH_0, TOUCH_1 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void input_touch_area(unsigned button,vec2 begin_coord_ndc,vec2 end_coord_ndc); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_touch(unsigned button,float sensitivity); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_touch_delta(unsigned button,float sensitivity); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 input_touch_delta_from_origin(unsigned button,float sensitivity); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool input_touch_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void input_mappings(const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char input_keychar(unsigned code); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_enum(const char* sym); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_anykey(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int input_eval(const char* expression); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void input_send(int vk); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(char) save_input(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool load_input(array(char) replay); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_keyboard(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_mouse(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_gamepad(int id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_gamepads(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum INPUT_ENUMS; ~~~~~~C enum INPUT_ENUMS { KEY_0, KEY_1, KEY_2, KEY_3, KEY_4, KEY_5, KEY_6, KEY_7, KEY_8, KEY_9, KEY_TICK, KEY_BS, KEY_ESC, KEY_TAB, KEY_Q, KEY_W, KEY_E, KEY_R, KEY_T, KEY_Y, KEY_U, KEY_I, KEY_O, KEY_P, KEY_CAPS, KEY_A, KEY_S, KEY_D, KEY_F, KEY_G, KEY_H, KEY_J, KEY_K, KEY_L, KEY_ENTER, KEY_LSHIFT, KEY_Z, KEY_X, KEY_C, KEY_V, KEY_B, KEY_N, KEY_M, KEY_RSHIFT, KEY_UP, KEY_LCTRL, KEY_LALT, KEY_SPACE, KEY_RALT, KEY_RCTRL, KEY_LEFT, KEY_DOWN, KEY_RIGHT, KEY_INS, KEY_HOME, KEY_PGUP, KEY_DEL, KEY_END, KEY_PGDN, KEY_LMETA, KEY_RMETA, KEY_MENU, KEY_PRINT, KEY_PAUSE, KEY_SCROLL, KEY_NUMLOCK, KEY_MINUS, KEY_EQUAL, KEY_LSQUARE, KEY_RSQUARE, KEY_SEMICOLON, KEY_QUOTE, KEY_HASH, KEY_BAR, KEY_COMMA, KEY_DOT, KEY_SLASH, KEY_F1, KEY_F2, KEY_F3, KEY_F4, KEY_F5, KEY_F6, KEY_F7, KEY_F8, KEY_F9, KEY_F10, KEY_F11, KEY_F12, KEY_PAD1, KEY_PAD2, KEY_PAD3, KEY_PAD4, KEY_PAD5, KEY_PAD6, KEY_PAD7, KEY_PAD8, KEY_PAD9, KEY_PAD0, KEY_PADADD, KEY_PADSUB, KEY_PADMUL, KEY_PADDIV, KEY_PADDOT, KEY_PADENTER, MOUSE_L, MOUSE_M, MOUSE_R, GAMEPAD_CONNECTED, GAMEPAD_A, GAMEPAD_B, GAMEPAD_X, GAMEPAD_Y, GAMEPAD_UP, GAMEPAD_DOWN, GAMEPAD_LEFT, GAMEPAD_RIGHT, GAMEPAD_MENU, GAMEPAD_START, GAMEPAD_LB, GAMEPAD_RB, GAMEPAD_LTHUMB, GAMEPAD_RTHUMB, WINDOW_BLUR, WINDOW_FOCUS, WINDOW_CLOSE, WINDOW_MINIMIZE, WINDOW_MAXIMIZE, WINDOW_FULLSCREEN, WINDOW_WINDOWED, GAMEPAD_LPAD, GAMEPAD_LPADX = GAMEPAD_LPAD, GAMEPAD_LPADY, GAMEPAD_RPAD, GAMEPAD_RPADX = GAMEPAD_RPAD, GAMEPAD_RPADY, GAMEPAD_LTRIGGER, GAMEPAD_LT = GAMEPAD_LTRIGGER, GAMEPAD_RTRIGGER, GAMEPAD_RT = GAMEPAD_RTRIGGER, GAMEPAD_BATTERY, MOUSE, MOUSE_X = MOUSE, MOUSE_Y, MOUSE_W, TOUCH_X1, TOUCH_Y1, TOUCH_X2, TOUCH_Y2, WINDOW_RESIZE, WINDOW_RESIZEX = WINDOW_RESIZE, WINDOW_RESIZEY, WINDOW_ORIENTATION, WINDOW_BATTERY, GAMEPAD_GUID, GAMEPAD_NAME }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum INPUT_ALIASES; ~~~~~~C enum INPUT_ALIASES { KEY_SHIFT = KEY_LSHIFT, KEY_ALT = KEY_LALT, KEY_CTRL = KEY_LCTRL }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## memory
🄵 API void* xrealloc(void* p,size_t sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API size_t xsize(void* p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* xstats(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* stack(int bytes); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* watch(void* ptr,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* forget(void* ptr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## network
🄵 API array(char) download(const char* url); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int download_file(FILE* out,const char* url); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int portname(const char* service_name,unsigned retries); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool network_tests(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int udp_bind(const char* address,const char* port); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int udp_open(const char* address,const char* port); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int udp_send(int,const void* buf,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int udp_sendto(int,const char* ip,const char* port,const void* buf,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int udp_recv(int,void* buf,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int udp_peek(int); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_open(const char* address,const char* port); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_bind(const char* interface_,const char* port,int queue); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_peek(int,int (*callback)(int)); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_send(int,const void* buf,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_recv(int,void* buf,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* tcp_host(int); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* tcp_port(int); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_close(int); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int tcp_debug(int); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## netsync
🄴 enum {; ~~~~~~C enum { NETWORK_BIND = 2, NETWORK_CONNECT = 4, NETWORK_NOFAIL = 8 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void network_create(unsigned max_clients,const char* ip,const char* port,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_SEND = 2, NETWORK_RECV = 4 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_UNRELIABLE = 8, NETWORK_UNORDERED = 16 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* network_buffer(void* ptr,unsigned sz,uint64_t flags,int64_t rank); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char** network_sync(unsigned timeout_ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_EVENT_CONNECT, NETWORK_EVENT_DISCONNECT, NETWORK_EVENT_RECEIVE, NETWORK_EVENT_DISCONNECT_TIMEOUT, NETWORK_EVENT_RPC = 10, NETWORK_EVENT_RPC_RESP }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int network_event(const char* msg,int* errcode,char** errstr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_RANK = 0 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_PING = 1 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_PORT = 2, NETWORK_IP, NETWORK_LIVE }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_SEND_MS = 4 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_BUF_CLEAR_ON_JOIN = 5 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { NETWORK_USERID = 7, NETWORK_COUNT, NETWORK_CAPACITY }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int64_t network_get(uint64_t key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int64_t network_put(uint64_t key,int64_t value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void network_rpc(const char* signature,void* function); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void network_rpc_send_to(int64_t rank,unsigned id,const char* cmdline); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void network_rpc_send(unsigned id,const char* cmdline); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool server_bind(int max_clients,int port); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char** server_poll(unsigned timeout_ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char** client_poll(unsigned timeout_ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_broadcast_bin_flags(const void* ptr,int len,uint64_t flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_broadcast_bin(const void* ptr,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_broadcast_flags(const char* msg,uint64_t flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_broadcast(const char* msg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_terminate(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_send(int64_t handle,const char* msg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_send_bin(int64_t handle,const void* ptr,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void server_drop(int64_t handle); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int64_t client_join(const char* ip,int port); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void client_send_flags(const char* msg,uint64_t flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void client_send(const char* msg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void client_send_bin_flags(const void* ptr,int len,uint64_t flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void client_send_bin(const void* ptr,int len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void client_terminate(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## pack
🄴 enum COMPRESS_FLAGS; ~~~~~~C enum COMPRESS_FLAGS { COMPRESS_RAW = 0, COMPRESS_PPP = (1<<4), COMPRESS_ULZ = (2<<4), COMPRESS_LZ4 = (3<<4), COMPRESS_CRUSH = (4<<4), COMPRESS_DEFLATE = (5<<4), COMPRESS_LZP1 = (6<<4), COMPRESS_LZMA = (7<<4), COMPRESS_BALZ = (8<<4), COMPRESS_LZW3 = (9<<4), COMPRESS_LZSS = (10<<4), COMPRESS_BCM = (11<<4), COMPRESS_ZLIB = (12<<4) }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned zbounds(unsigned inlen,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned zencode(void* out,unsigned outlen,const void* in,unsigned inlen,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned zexcess(unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned zdecode(void* out,unsigned outlen,const void* in,unsigned inlen,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* interleave(void* out,const void* list,int list_count,int sizeof_item,unsigned columns); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned cobs_bounds(unsigned len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned cobs_encode(const void* in,unsigned inlen,void* out,unsigned outlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned cobs_decode(const void* in,unsigned inlen,void* out,unsigned outlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned base92_encode(const void* in,unsigned inlen,void* out,unsigned outlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned base92_decode(const void* in,unsigned inlen,void* out,unsigned outlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned base92_bounds(unsigned inlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned netstring_bounds(unsigned inlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned netstring_encode(const char* in,unsigned inlen,char* out,unsigned outlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned netstring_decode(const char* in,unsigned inlen,char* out,unsigned outlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta8_encode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta8_decode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta16_encode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta16_decode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta32_encode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta32_decode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta64_encode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void delta64_decode(void* buffer,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t zig64(int64_t value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int64_t zag64(uint64_t value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t enczig32u(int32_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t enczig64u(int64_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int32_t deczig32i(uint32_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int64_t deczig64i(uint64_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* arc4(void* buffer,unsigned buflen,const void* pass,unsigned passlen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t crc64(uint64_t h,const void* ptr,uint64_t len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void entropy(void* buf,unsigned n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int semver(int major,int minor,int patch); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int semvercmp(int v1,int v2); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct byte2; ~~~~~~C struct byte2 { uint8_t x,y; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct byte3; ~~~~~~C struct byte3 { uint8_t x,y,z; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct byte4; ~~~~~~C struct byte4 { uint8_t x,y,z,w; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct int2; ~~~~~~C struct int2 { int x,y; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct int3; ~~~~~~C struct int3 { int x,y,z; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct int4; ~~~~~~C struct int4 { int x,y,z,w; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct uint2; ~~~~~~C struct uint2 { unsigned int x,y; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct uint3; ~~~~~~C struct uint3 { unsigned int x,y,z; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct uint4; ~~~~~~C struct uint4 { unsigned int x,y,z,w; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct float2; ~~~~~~C struct float2 { float x,y; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct float3; ~~~~~~C struct float3 { float x,y,z; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct float4; ~~~~~~C struct float4 { float x,y,z,w; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct double2; ~~~~~~C struct double2 { double x,y; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct double3; ~~~~~~C struct double3 { double x,y,z; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct double4; ~~~~~~C struct double4 { double x,y,z,w; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* cc4str(unsigned cc); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* cc8str(uint64_t cc); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { #define _(a, b, c, d, e) cc__##a, cc__##b, cc__##c, cc__##d, cc__##e cc__1 = '1', _(2, 3, 4, 5, 6), _(7, 8, 9, 0, _), cc__ = ' ', cc__A = 'A', _(B, C, D, E, F), _(G, H, I, J, K), _(L, M, N, O, P), _(Q, R, S, T, U), _(V, W, X, Y, Z), cc__a = 'a', _(b, c, d, e, f), _(g, h, i, j, k), _(l, m, n, o, p), _(q, r, s, t, u), _(v, w, x, y, z), #undef _ }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* ftoa1(float v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* ftoa2(vec2 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* ftoa3(vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* ftoa4(vec4 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float atof1(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 atof2(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 atof3(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 atof4(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* itoa1(int v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* itoa2(vec2i v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* itoa3(vec3i v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int atoi1(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2i atoi2(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3i atoi3(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int is_big(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int is_little(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint16_t swap16(uint16_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t swap32(uint32_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t swap64(uint64_t x); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float swap32f(float n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double swap64f(double n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swapf(float* a,float* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swapf2(vec2* a,vec2* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swapf3(vec3* a,vec3* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void swapf4(vec4* a,vec4* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint16_t lil16(uint16_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t lil32(uint32_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t lil64(uint64_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float lil32f(float n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double lil64f(double n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint16_t big16(uint16_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t big32(uint32_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t big64(uint64_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float big32f(float n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double big64f(double n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint16_t* lil16p(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t* lil32p(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t* lil64p(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float* lil32pf(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double* lil64pf(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint16_t* big16p(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t* big32p(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t* big64p(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float* big32pf(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double* big64pf(void* p,int sz); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef uint16_t half; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float half_to_float(half value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API half float_to_half(float value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void pack16i(uint8_t* buf,uint16_t i,int swap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void pack32i(uint8_t* buf,uint32_t i,int swap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void pack64i(uint8_t* buf,uint64_t i,int swap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int16_t unpack16i(const uint8_t* buf,int swap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int32_t unpack32i(const uint8_t* buf,int swap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int64_t unpack64i(const uint8_t* buf,int swap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t pack754(long double f,unsigned bits,unsigned expbits); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API long double unpack754(uint64_t i,unsigned bits,unsigned expbits); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t pack64uv(uint8_t* buffer,uint64_t value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t unpack64uv(const uint8_t* buffer,uint64_t* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t pack64iv(uint8_t* buffer,int64_t value_); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t unpack64iv(const uint8_t* buffer,int64_t* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack(const char* fmt,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgunpack(const char* fmt,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_new(uint8_t* w,size_t l); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_nil(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_chr(bool n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_uns(uint64_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_int(int64_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_str(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_bin(const char* s,size_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_flt(double g); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_ext(uint8_t key,void* val,size_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_arr(uint32_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_map(uint32_t n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_eof(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int msgpack_err(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_new(const void* opaque_or_FILE,size_t bytes); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_nil(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_chr(bool* chr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_uns(uint64_t* uns); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_int(int64_t* sig); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_str(char** str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_bin(void** bin,uint64_t* len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_flt(float* flt); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_dbl(double* dbl); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_ext(uint8_t* key,void** val,uint64_t* len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_arr(uint64_t* len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_map(uint64_t* len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_eof(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool msgunpack_err(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int savef(FILE* file,const char* format,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int saveb(unsigned char* buf,const char* format,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int loadf(FILE* file,const char* format,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int loadb(const unsigned char* buf,const char* format,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## profile
🄼 macro profile(section) Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄼 macro profile_incstat(name,accum) Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄼 macro profile_setstat(name,value) Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int profiler_enable(bool on); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## reflect
🅂 struct reflect_t; ~~~~~~C struct reflect_t { unsigned id,objtype; union { unsigned sz; unsigned member_offset; unsigned enum_value; }; const char* name; const char* info; void* addr; unsigned parent; const char* type; unsigned bytes; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned enum_find(const char* E); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* function_find(const char* F); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API reflect_t member_find(const char* T,const char* M); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* member_findptr(void* obj,const char* T,const char* M); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(reflect_t)* members_find(const char* T); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void type_inscribe(const char* TY,unsigned TYsz,const char* infos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void enum_inscribe(const char* E,unsigned Eval,const char* infos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void struct_inscribe(const char* T,unsigned Tsz,unsigned OBJTYPEid,const char* infos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void member_inscribe(const char* T,const char* M,unsigned Msz,const char* infos,const char* type,unsigned bytes); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void function_inscribe(const char* F,void* func,const char* infos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* symbol_naked(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_reflect(const char* mask); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## render
🅃 typedef unsigned handle; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct renderstate_t; ~~~~~~C struct renderstate_t { float clear_color[4]; bool color_mask[4]; double clear_depth; bool depth_test_enabled; bool depth_write_enabled; unsigned depth_func; bool reverse_z; bool polygon_offset_enabled; float polygon_offset; float polygon_offset_factor; bool blend_enabled; unsigned blend_func; unsigned blend_src; unsigned blend_dst; unsigned blend_src_alpha; unsigned blend_dst_alpha; bool cull_face_enabled; unsigned cull_face_mode; bool stencil_test_enabled; unsigned stencil_func; unsigned stencil_op_fail,stencil_op_zfail,stencil_op_zpass; int stencil_ref; unsigned stencil_read_mask; unsigned stencil_write_mask; unsigned front_face; bool line_smooth_enabled; float line_width; bool point_size_enabled; float point_size; unsigned polygon_mode_face; unsigned polygon_mode_draw; bool scissor_test_enabled; bool seamless_cubemap; bool depth_clamp_enabled; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API renderstate_t renderstate(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool renderstate_compare(const renderstate_t* stateA,const renderstate_t* stateB); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t renderstate_checksum(const renderstate_t* state); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void renderstate_apply(const renderstate_t* state); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned rgba(uint8_t r,uint8_t g,uint8_t b,uint8_t a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned bgra(uint8_t b,uint8_t g,uint8_t r,uint8_t a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned rgbaf(float r,float g,float b,float a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned bgraf(float b,float g,float r,float a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned alpha(unsigned rgba); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned atorgba(const char* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* rgbatoa(unsigned rgba); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum IMAGE_FLAGS; ~~~~~~C enum IMAGE_FLAGS { IMAGE_R = 0x01000, IMAGE_RG = 0x02000, IMAGE_RGB = 0x04000, IMAGE_RGBA = 0x08000, IMAGE_FLIP = 0x10000, IMAGE_FLOAT = 0x20000 }; ~~~~~~ Flags when constructing the image_t type. |Enum|| |-----|------| |`IMAGE_R`| 1-channel image (R)| |`IMAGE_RG`| 2-channel image (R,G)| |`IMAGE_RGB`| 3-channel image (R,G,B)| |`IMAGE_RGBA`| 4-channel image (R,G,B,A)| |`IMAGE_FLIP`| Flip image vertically| |`IMAGE_FLOAT`| Float pixel components| See also: [image](#image), [image_from_mem](#image_from_mem)
🅂 struct image_t; ~~~~~~C struct image_t { union { unsigned x,w; }; union { unsigned y,h; }; union { unsigned n,comps; }; union { void* pixels; uint8_t* pixels8; uint16_t* pixels16; uint32_t* pixels32; float* pixelsf; }; }; ~~~~~~ Type that holds linear uncompressed bitmap of any given dimensions. |Member|| |-----|------| |`w,h`| image dimensions in pixels. `x,y` alias.| |`comps`| number of components per pixel. `n` alias.| |`pixels`| untyped pointer to linear bitmap data. typed pointers use `pixels8/16/32/f` aliases.| See also: [texture_t](#texture_t)
🄵 API image_t image(const char* pathfile,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API image_t image_from_mem(const void* ptr,int len,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void image_destroy(image_t* img); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum TEXTURE_FLAGS; ~~~~~~C enum TEXTURE_FLAGS { TEXTURE_BC1 = 8, TEXTURE_BC2 = 16, TEXTURE_BC3 = 32, TEXTURE_NEAREST = 0, TEXTURE_LINEAR = 64, TEXTURE_MIPMAPS = 128, TEXTURE_ANISOTROPY = 1<<30, TEXTURE_CLAMP = 0, TEXTURE_BORDER = 0x100, TEXTURE_REPEAT = 0x200, TEXTURE_BYTE = 0, TEXTURE_FLOAT = IMAGE_FLOAT, TEXTURE_COLOR = 0, TEXTURE_DEPTH = 0x800, TEXTURE_R = IMAGE_R, TEXTURE_RG = IMAGE_RG, TEXTURE_RGB = IMAGE_RGB, TEXTURE_RGBA = IMAGE_RGBA, TEXTURE_FLIP = IMAGE_FLIP, TEXTURE_UNIQUE = 1<<31, TEXTURE_SRGB = 1<<24, TEXTURE_BGR = 1<<25, TEXTURE_BGRA = TEXTURE_BGR, TEXTURE_ARRAY = 1<<26 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct texture_t; ~~~~~~C struct texture_t { union { unsigned x,w; }; union { unsigned y,h; }; union { unsigned z,d; }; union { unsigned n,bpp; }; handle id; unsigned texel_type; unsigned flags; char* filename; bool transparent; bool mipmaps_generated; unsigned fbo; union { unsigned userdata,delay; }; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t texture_compressed(const char* filename,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t texture_compressed_from_mem(const void* data,int len,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t texture(const char* filename,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t texture_from_mem(const void* ptr,int len,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t texture_create(unsigned w,unsigned h,unsigned n,const void* pixels,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t texture_checker(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void texture_destroy(texture_t* t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned texture_update(texture_t* t,unsigned w,unsigned h,unsigned n,const void* pixels,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void texture_params(texture_t* t,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool texture_rec_begin(texture_t* t,unsigned w,unsigned h); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void texture_rec_end(texture_t* t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t brdf_lut(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct colormap_t; ~~~~~~C struct colormap_t { vec4 color; texture_t* texture; bool no_mipmaps; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool colormap(colormap_t* cm,const char* texture_name,bool load_as_srgb); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned query_test_point(mat44 proj,mat44 view,vec3 pos,float size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fullscreen_quad_rgb_gamma(texture_t texture_rgb,float gamma); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fullscreen_quad_rgb_flipped_gamma(texture_t texture_rgb,float gamma); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fullscreen_quad_rgb(texture_t texture_rgb); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fullscreen_quad_rgb_flipped(texture_t texture); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fullscreen_quad_ycbcr(texture_t texture_YCbCr[3]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fullscreen_quad_ycbcr_flipped(texture_t texture_YCbCr[3]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void quad_render_id(int texture_type,int texture_id,vec2 dims,vec2 tex_start,vec2 tex_end,int rgba,vec2 start,vec2 end); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void quad_render(texture_t texture,vec2 tex_start,vec2 tex_end,int rgba,vec2 start,vec2 end); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct cubemap_t; ~~~~~~C struct cubemap_t { unsigned id; vec3 sh[9]; int framebuffers[6]; int textures[6]; int depth_buffers[6]; unsigned width,height; float* pixels; int step; vec3 pos; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API cubemap_t cubemap(texture_t texture,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cubemap_destroy(cubemap_t* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API cubemap_t* cubemap_get_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cubemap_beginbake(cubemap_t* c,vec3 pos,unsigned width,unsigned height); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool cubemap_stepbake(cubemap_t* c,mat44 proj,mat44 view); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cubemap_endbake(cubemap_t* c,int step,float sky_intensity); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cubemap_sh_reset(cubemap_t* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cubemap_sh_addlight(cubemap_t* c,vec3 light,vec3 dir,float strength); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void cubemap_sh_blend(vec3 pos,float max_dist,unsigned count,cubemap_t* probes,vec3 out_sh[9]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum FBO_FLAGS; ~~~~~~C enum FBO_FLAGS { FBO_NO_DEPTH = 1, FBO_NO_COLOR = 2 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum FBO_BLIT_MODE; ~~~~~~C enum FBO_BLIT_MODE { FBO_BLIT_COPY, FBO_BLIT_ADDITIVE, FBO_BLIT_COPY_ALPHA }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct fbo_t; ~~~~~~C struct fbo_t { unsigned id; texture_t texture_color; texture_t texture_depth; unsigned width,height; int flags; int texture_flags; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API fbo_t fbo(unsigned width,unsigned height,int flags,int texture_flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned fbo_id(unsigned texture_color,unsigned texture_depth,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_resize(fbo_t* f,unsigned width,unsigned height); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_attach(unsigned id,int slot,texture_t texture); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_attach_depth(unsigned id,texture_t texture); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_bind(unsigned id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_unbind(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_destroy(fbo_t f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_destroy_id(unsigned id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fbo_blit(unsigned id,texture_t texture,int mode); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum LIGHT_TYPE; ~~~~~~C enum LIGHT_TYPE { LIGHT_DIRECTIONAL, LIGHT_POINT, LIGHT_SPOT }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum SHADOW_TECHNIQUE; ~~~~~~C enum SHADOW_TECHNIQUE { SHADOW_VSM, SHADOW_CSM }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct light_t; ~~~~~~C struct light_t { OBJ char* name; unsigned type; vec3 diffuse,specular,ambient; vec3 pos,dir; struct { float constant,linear,quadratic; } falloff; float radius; float specularPower; float innerCone,outerCone; bool cast_shadows; bool hard_shadows; unsigned shadow_technique; float shadow_distance; float shadow_near_clip; mat44 shadow_matrix[NUM_SHADOW_CASCADES]; float min_variance; float variance_transition; float shadow_bias; float normal_bias; float shadow_softness; float penumbra_size; bool cached; bool processed_shadows; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 OBJTYPEDEF(light_t,OBJTYPE_light); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API light_t light(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_type(light_t* l,char type); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_diffuse(light_t* l,vec3 color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_specular(light_t* l,vec3 color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_ambient(light_t* l,vec3 color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_pos(light_t* l,vec3 pos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_dir(light_t* l,vec3 dir); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_power(light_t* l,float power); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_radius(light_t* l,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_falloff(light_t* l,float constant,float linear,float quadratic); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void light_cone(light_t* l,float innerCone,float outerCone); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_light(light_t* l); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_lights(unsigned num_lights,light_t* lights); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct shadowmap_t; ~~~~~~C struct shadowmap_t { mat44 V; mat44 PV; int vsm_texture_width; int csm_texture_width; int step; int light_step; int cascade_index; unsigned shadow_technique; float cascade_splits[NUM_SHADOW_CASCADES]; frustum shadow_frustum; bool skip_render; int lights_pushed; handle fbo; uint64_t vram_usage; uint64_t vram_usage_total; uint64_t vram_usage_vsm; uint64_t vram_usage_csm; handle depth_texture; handle depth_texture_2d; float blend_region; int filter_size,window_size; handle offsets_texture; struct { int gen; unsigned shadow_technique; handle texture; handle texture_2d[NUM_SHADOW_CASCADES]; float cascade_distances[NUM_SHADOW_CASCADES]; } maps[MAX_SHADOW_LIGHTS]; handle saved_fb; handle saved_pass; int saved_vp[4]; int gen; int old_filter_size; int old_window_size; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API shadowmap_t shadowmap(int vsm_texture_width,int csm_texture_width); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shadowmap_offsets_build(shadowmap_t* s,int filter_size,int window_size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shadowmap_destroy(shadowmap_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shadowmap_begin(shadowmap_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool shadowmap_step(shadowmap_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shadowmap_light(shadowmap_t* s,light_t* l,mat44 cam_proj,mat44 cam_view); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shadowmap_end(shadowmap_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_shadowmap(shadowmap_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned shader(const char* vs,const char* fs,const char* attribs,const char* fragcolor,const char* defines); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned shader_geom(const char* gs,const char* vs,const char* fs,const char* attribs,const char* fragcolor,const char* defines); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned shader_bind(unsigned program); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int shader_uniform(const char* name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_bool(const char* uniform,bool i); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_int(const char* uniform,int i); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_uint(const char* uniform,unsigned i); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_float(const char* uniform,float f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_vec2(const char* uniform,vec2 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_vec3(const char* uniform,vec3 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_vec3v(const char* uniform,int count,vec3* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_vec4(const char* uniform,vec4 v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_mat44(const char* uniform,mat44 m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_texture(const char* sampler,unsigned texture,unsigned unit); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_cubemap(const char* sampler,unsigned texture,unsigned unit); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned shader_get_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_destroy(unsigned shader); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned shader_properties(unsigned shader); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char** shader_property(unsigned shader,unsigned property_no); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_apply_param(unsigned shader,unsigned param_no); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void shader_apply_params(unsigned shader,const char* parameter_mask); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_shader(unsigned shader); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_shaders(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum BUFFER_MODE; ~~~~~~C enum BUFFER_MODE { BUFFER_READ, BUFFER_WRITE, BUFFER_READ_WRITE }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned compute(const char* cs); Loads the compute shader and compiles a GL program. |Return| GL program, 0 if failed.| |-----|------| |`cs`| shader source code|
🄵 API void compute_dispatch(unsigned wx,unsigned wy,unsigned wz); Runs the compute program with provided global workgroup size on x y z grid. |Return|| |-----|------| |`wx`| global workgroup size x| |`wy`| global workgroup size y| |`wz`| global workgroup size z|
🄵 API void shader_image(texture_t t,unsigned unit,unsigned level,int layer,unsigned access); Binds a texture to the program. |Return|| |-----|------| |`t`| texture to bind| |`unit`| texture unit bind index| |`level`| texture level access (MIP0, MIP1, ...)| |`layer`| bind layer| |`access`| texture access policy| !!! WARNING Set `layer` to -1 to disable layered access. See also: [BUFFER_MODE](#BUFFER_MODE)
🄵 API void shader_image_unit(unsigned texture,unsigned unit,unsigned level,int layer,unsigned texel_type,unsigned access); Binds a texture to the program. |Return|| |-----|------| |`texture`| GL texture handle| |`unit`| texture unit bind index| |`level`| texture level access (MIP0, MIP1, ...)| |`layer`| bind layer| |`texel_type`| image texel format (RGBA8, RGBA32F, ...)| |`access`| texture access policy| !!! WARNING Set `layer` to -1 to disable layered access. See also: [BUFFER_MODE](#BUFFER_MODE)
🄵 API void write_barrier(); Blocks main thread until all memory operations are done by the GPU.
🄵 API void write_barrier_image(); Blocks main thread until all image operations are done by the GPU.
🄴 enum BUFFER_USAGE; ~~~~~~C enum BUFFER_USAGE { STATIC_DRAW, STATIC_READ, STATIC_COPY, DYNAMIC_DRAW, DYNAMIC_READ, DYNAMIC_COPY, STREAM_DRAW, STREAM_READ, STREAM_COPY }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum SSBO_ACCESS; ~~~~~~C enum SSBO_ACCESS { SSBO_READ = BUFFER_READ, SSBO_WRITE = BUFFER_WRITE, SSBO_READ_WRITE = BUFFER_READ_WRITE }; ~~~~~~ `STATIC`, `DYNAMIC` AND `STREAM` specify the frequency at which we intend to access the data. `DRAW` favors CPU->GPU operations. `READ` favors GPU->CPU operations. `COPY` favors CPU->GPU->CPU operations.
🄵 API unsigned ssbo_create(const void* data,int len,unsigned usage); Create Shader Storage Buffer Object. |Return|| |-----|------| |`data`| optional pointer to data to upload| |`len`| buffer size, must not be 0| |`usage`| buffer usage policy| !!! WARNING `data` can be NULL See also: [SSBO_USAGE](#SSBO_USAGE)
🄵 API void ssbo_destroy(unsigned ssbo); Destroys an SSBO resource.
🄵 API void ssbo_update(int offset,int len,const void* data); Updates an existing SSBO. |Return|| |-----|------| |`offset`| offset to buffer memory| |`len`| amount of data to write| |`data`| pointer to data we aim to write, can not be NULL| !!! WARNING `len` can not exceed the original buffer size specified in `ssbo_create` !
🄵 API void ssbo_bind(unsigned ssbo,unsigned unit); Bind an SSBO resource to the provided bind unit index. |Return|| |-----|------| |`ssbo`| resource object| |`unit`| bind unit index|
🄵 API void* ssbo_map(unsigned access); Map an SSBO resource to the system memory. |Return| pointer to physical memory of the buffer| |-----|------| |`access`| buffer access policy| !!! WARNING Make sure to `ssbo_unmap` the buffer once done working with it. See also: [SSBO_ACCESS](#SSBO_ACCESS)
🄵 API void ssbo_unmap(); Unmaps an SSBO resource. !!! WARNING Pointer provided by `ssbo_map` becomes invalid.
🄵 API void ssbo_unbind(); Unbinds an SSBO resource.
🄵 API unsigned ubo_create(void* data,int size,unsigned usage); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ubo_update(unsigned ubo,int offset,void* data,int size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ubo_bind(unsigned ubo,unsigned unit); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ubo_unbind(unsigned unit); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ubo_destroy(unsigned ubo); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum MESH_FLAGS; ~~~~~~C enum MESH_FLAGS { MESH_STATIC = 0, MESH_STREAM = 1, MESH_TRIANGLE_STRIP = 2 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct mesh_t; ~~~~~~C struct mesh_t { handle vao,vbo,ibo; unsigned vertex_count; unsigned index_count; unsigned flags; array(int) lod_collapse_map; union { array(unsigned) in_index; array(vec3i) in_index3; }; union { array(unsigned) out_index; array(vec3i) out_index3; }; union { array(float) in_vertex; array(vec3) in_vertex3; }; union { array(float) out_vertex; array(vec3) out_vertex3; }; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API mesh_t mesh(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void mesh_update(mesh_t* m,const char* format,int vertex_stride,int vertex_count,const void* interleaved_vertex_data,int index_count,const void* index_data,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void mesh_render(mesh_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void mesh_render_prim(mesh_t* sm,unsigned prim); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void mesh_destroy(mesh_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API aabb mesh_bounds(mesh_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum SKYBOX_FLAGS; ~~~~~~C enum SKYBOX_FLAGS { SKYBOX_RAYLEIGH, SKYBOX_CUBEMAP, SKYBOX_PBR }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct skybox_t; ~~~~~~C struct skybox_t { handle program,rayleigh_program; mesh_t geometry; cubemap_t cubemap; int flags; bool rayleigh_immediate; texture_t sky,refl,env; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API skybox_t skybox(const char* panorama,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API skybox_t skybox_pbr(const char* sky_map,const char* refl_map,const char* env_map); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int skybox_render(skybox_t* sky,mat44 proj,mat44 view); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void skybox_destroy(skybox_t* sky); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void skybox_calc_sh(skybox_t* probe,skybox_t* sky,float sky_intensity); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void skybox_mie_calc_sh(skybox_t* sky,float sky_intensity); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void skybox_sh_reset(skybox_t* sky); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void skybox_sh_shader(skybox_t* sky); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void skybox_sh_add_light(skybox_t* sky,vec3 light,vec3 dir,float strength); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int skybox_push_state(skybox_t* sky,mat44 proj,mat44 view); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int skybox_pop_state(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum MATERIAL_ENUMS; ~~~~~~C enum MATERIAL_ENUMS { MATERIAL_CHANNEL_ALBEDO, MATERIAL_CHANNEL_NORMALS, MATERIAL_CHANNEL_ROUGHNESS, MATERIAL_CHANNEL_METALLIC, MATERIAL_CHANNEL_AO, MATERIAL_CHANNEL_AMBIENT, MATERIAL_CHANNEL_EMISSIVE, MATERIAL_CHANNEL_PARALLAX, MAX_CHANNELS_PER_MATERIAL }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct material_layer_t; ~~~~~~C struct material_layer_t { char texname[32]; float value; float value2; colormap_t map; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct material_t; ~~~~~~C struct material_t { char* name; material_layer_t layer[MAX_CHANNELS_PER_MATERIAL]; float cutout_alpha; float ssr_strength; bool _loaded; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void material_texparams(material_t* m,unsigned texture_flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t material_checksum(material_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_material(material_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum {; ~~~~~~C enum { SHADERTOY_FLIP_Y = 2, SHADERTOY_IGNORE_FBO = 4, SHADERTOY_IGNORE_MOUSE = 8 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct shadertoy_t; ~~~~~~C struct shadertoy_t { handle vao,program; int uniforms[32]; int texture_channels[4]; int frame; uint64_t t; texture_t tx; vec2i dims; int flags; vec4 mouse; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API shadertoy_t shadertoy(const char* shaderfile,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API shadertoy_t* shadertoy_render(shadertoy_t* s,float delta); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum ANIM_FLAGS; ~~~~~~C enum ANIM_FLAGS { ANIM_LOOP = 1, ANIM_DONT_RESET_AFTER_USE = 2 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct anim_t; ~~~~~~C struct anim_t { int from; int to; float blendtime; unsigned flags; float curframe; unsigned easing; float alpha; float timer; bool active; vec3 pose; char* name; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API anim_t clip(float minframe,float maxframe,float blendtime,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API anim_t loop(float minframe,float maxframe,float blendtime,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(anim_t) animlist(const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum UNIFORM_KIND; ~~~~~~C enum UNIFORM_KIND { UNIFORM_BOOL, UNIFORM_INT, UNIFORM_UINT, UNIFORM_FLOAT, UNIFORM_VEC2, UNIFORM_VEC3, UNIFORM_VEC4, UNIFORM_MAT3, UNIFORM_MAT4, UNIFORM_SAMPLER2D, UNIFORM_SAMPLER3D, UNIFORM_SAMPLERCUBE }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct model_uniform_t; ~~~~~~C struct model_uniform_t { const char* name; int kind; union { float f; int i; bool b; unsigned u; vec2 v2; vec3 v3; vec4 v4; mat33 m33; mat44 m44; }; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool model_compareuniform(const model_uniform_t* a,const model_uniform_t* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool model_compareuniforms(unsigned s1,const model_uniform_t* a,unsigned s2,const model_uniform_t* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t model_uniforms_checksum(unsigned count,model_uniform_t* uniforms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum MODEL_FLAGS; ~~~~~~C enum MODEL_FLAGS { MODEL_PBR = 0, MODEL_NO_ANIMATIONS = 1, MODEL_NO_MESHES = 2, MODEL_NO_TEXTURES = 4, MODEL_NO_FILTERING = 8, MODEL_NO_PBR = 16, MODEL_MATCAPS = 32, MODEL_RIMLIGHT = 64, MODEL_TRANSPARENT = 128, MODEL_STREAM = 256, MODEL_CACHED = 0, MODEL_SHARED = 512, MODEL_UNIQUE = 1024, MODEL_PROCEDURAL = 2048 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum SHADING_MODE; ~~~~~~C enum SHADING_MODE { SHADING_NONE, SHADING_PHONG, SHADING_VERTEXLIT, SHADING_PBR }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum FOG_MODE; ~~~~~~C enum FOG_MODE { FOG_NONE, FOG_LINEAR, FOG_EXP, FOG_EXP2, FOG_DEPTH }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum RENDER_PASS; ~~~~~~C enum RENDER_PASS { RENDER_PASS_OPAQUE, RENDER_PASS_TRANSPARENT, RENDER_PASS_OVERRIDES_BEGIN, RENDER_PASS_MATERIAL, RENDER_PASS_SHADOW_BEGIN, RENDER_PASS_SHADOW_CSM, RENDER_PASS_SHADOW_VSM, RENDER_PASS_SHADOW_END, RENDER_PASS_CUSTOM, RENDER_PASS_OVERRIDES_END, NUM_RENDER_PASSES }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum MODEL_UNIFORMS; ~~~~~~C enum MODEL_UNIFORMS { MODEL_UNIFORM_MV, MODEL_UNIFORM_MVP, MODEL_UNIFORM_VP, MODEL_UNIFORM_CAM_POS, MODEL_UNIFORM_CAM_DIR, MODEL_UNIFORM_BILLBOARD, MODEL_UNIFORM_MODEL, MODEL_UNIFORM_VIEW, MODEL_UNIFORM_INV_VIEW, MODEL_UNIFORM_PROJ, MODEL_UNIFORM_SKINNED, MODEL_UNIFORM_INSTANCED, MODEL_UNIFORM_VS_BONE_MATRIX, MODEL_UNIFORM_U_MATCAPS, MODEL_UNIFORM_FRAME_COUNT, MODEL_UNIFORM_FRAME_TIME, MODEL_UNIFORM_SHADOW_CAMERA_TO_SHADOW_VIEW, MODEL_UNIFORM_SHADOW_CAMERA_TO_SHADOW_PROJECTOR, MODEL_UNIFORM_SHADOW_TECHNIQUE, MODEL_UNIFORM_U_SHADOW_RECEIVER, MODEL_UNIFORM_U_BLEND_REGION, MODEL_UNIFORM_SHADOW_OFFSETS, MODEL_UNIFORM_SHADOW_FILTER_SIZE, MODEL_UNIFORM_SHADOW_WINDOW_SIZE, MODEL_UNIFORM_RESOLUTION, MODEL_UNIFORM_HAS_TEX_ENV_CUBEMAP, MODEL_UNIFORM_HAS_TEX_SKYSPHERE, MODEL_UNIFORM_HAS_TEX_SKYENV, MODEL_UNIFORM_TEX_ENV_CUBEMAP, MODEL_UNIFORM_TEX_SKYSPHERE, MODEL_UNIFORM_SKYSPHERE_MIP_COUNT, MODEL_UNIFORM_TEX_SKYENV, MODEL_UNIFORM_TEX_BRDF_LUT, MODEL_UNIFORM_SHADOW_CASCADE_DISTANCES, MODEL_UNIFORM_SHADOW_CASCADE_DISTANCES_COUNT = MODEL_UNIFORM_SHADOW_CASCADE_DISTANCES+NUM_SHADOW_CASCADES, MODEL_UNIFORM_SHADOW_MAP_2D, MODEL_UNIFORM_SHADOW_MAP_2D_COUNT = MODEL_UNIFORM_SHADOW_MAP_2D+NUM_SHADOW_CASCADES, MODEL_UNIFORM_SHADOW_MAP_CUBEMAP, MODEL_UNIFORM_SHADOW_MAP_CUBEMAP_COUNT = MODEL_UNIFORM_SHADOW_MAP_CUBEMAP+MAX_LIGHTS, NUM_MODEL_UNIFORMS }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum MODEL_TEXTURE_SLOTS; ~~~~~~C enum MODEL_TEXTURE_SLOTS { MODEL_TEXTURE_ALBEDO, MODEL_TEXTURE_NORMALS, MODEL_TEXTURE_ROUGHNESS, MODEL_TEXTURE_METALLIC, MODEL_TEXTURE_AO, MODEL_TEXTURE_AMBIENT, MODEL_TEXTURE_EMISSIVE, MODEL_TEXTURE_PARALLAX, MODEL_TEXTURE_ENV_CUBEMAP, MODEL_TEXTURE_SKYSPHERE, MODEL_TEXTURE_SKYENV, MODEL_TEXTURE_BRDF_LUT, MODEL_TEXTURE_SHADOW_OFFSETS, MODEL_TEXTURE_SHADOW_MAP_2D, MODEL_TEXTURE_SHADOW_MAP_2D_COUNT = MODEL_TEXTURE_SHADOW_MAP_2D+NUM_SHADOW_CASCADES, MODEL_TEXTURE_SHADOW_MAP_CUBEMAP, MODEL_TEXTURE_SHADOW_MAP_CUBEMAP_COUNT = MODEL_TEXTURE_SHADOW_MAP_CUBEMAP+MAX_SHADOW_LIGHTS, MODEL_TEXTURE_USER_DEFINED, NUM_MODEL_TEXTURE_SLOTS }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct lightarray_t; ~~~~~~C struct lightarray_t { light_t* base; unsigned count; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct model_shaderinfo_t; ~~~~~~C struct model_shaderinfo_t { int shading; char* vs; char* fs; char* defines; array(char*) switches; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct model_t; ~~~~~~C struct model_t { struct iqm_t* iqm; char* filename; int shading; unsigned num_textures; char** texture_names; array(material_t) materials; texture_t sky_refl,sky_env,sky_cubemap; unsigned num_meshes; unsigned num_triangles; unsigned num_joints; unsigned num_anims; unsigned num_frames; shadowmap_t* shadow_map; lightarray_t lights; bool shadow_receiver; float curframe; mat44 pivot; int stride; void* verts; int num_verts; void* tris; int num_tris; handle vao,ibo,vbo,vao_instanced; array(int) lod_collapse_map; void* lod_verts; int lod_num_verts; void* lod_tris; int lod_num_tris; unsigned flags; unsigned billboard; float* instanced_matrices; unsigned num_instances; int stored_flags; renderstate_t rs[NUM_RENDER_PASSES]; bool frustum_enabled; frustum frustum_state; array(model_uniform_t) uniforms; model_shaderinfo_t shaderinfo; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct model_vertex_t; ~~~~~~C struct model_vertex_t { vec3 position; vec2 texcoord; vec3 normal; vec4 tangent; uint8_t blend_indices[4]; uint8_t blend_weights[4]; float blend_vertex_index; vec4 color; vec2 texcoord2; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum BILLBOARD_MODE; ~~~~~~C enum BILLBOARD_MODE { BILLBOARD_X = 0x1, BILLBOARD_Y = 0x2, BILLBOARD_Z = 0x4, BILLBOARD_CYLINDRICAL = BILLBOARD_X|BILLBOARD_Z, BILLBOARD_SPHERICAL = BILLBOARD_X|BILLBOARD_Y|BILLBOARD_Z }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API model_t model(const char* filename,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API model_t model_from_mem(const void* mem,int sz,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_sync(model_t m,int num_vertices,model_vertex_t* vertices,int num_indices,uint32_t* indices); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float model_animate(model_t,float curframe); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float model_animate_clip(model_t,float curframe,int minframe,int maxframe,bool loop); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float model_animate_blends(model_t m,anim_t* primary,anim_t* secondary,float delta); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int model_texture_unit(model_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API aabb model_aabb(model_t,mat44 transform); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API sphere model_bsphere(model_t,mat44 transform); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_lod(model_t*, float lo_detail,float hi_detail,float morph); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_setstyle(model_t*, int shading); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_setshader(model_t*, int shading,const char* vs,const char* fs,const char* defines); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_adduniform(model_t*, model_uniform_t uniform); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_adduniforms(model_t*, unsigned count,model_uniform_t* uniforms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_addswitch(model_t*, const char* name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_delswitch(model_t*, const char* name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint32_t model_uniforms_checksum(unsigned count,model_uniform_t* uniforms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_fog(model_t*, unsigned mode,vec3 color,float start,float end,float density); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_skybox(model_t*, skybox_t sky); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_cubemap(model_t*, cubemap_t* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_probe(model_t*, vec3 center,float radius,unsigned count,cubemap_t* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_shadow(model_t*, shadowmap_t* sm); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_light(model_t*, unsigned count,light_t* lights); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_rimlight(model_t*, vec3 rim_range,vec3 rim_color,vec3 rim_pivot,bool rim_ambient); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_render(model_t,mat44 proj,mat44 view,mat44 model); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_render_skeleton(model_t,mat44 model); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_render_instanced(model_t,mat44 proj,mat44 view,mat44* models,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_render_instanced_pass(model_t m,mat44 proj,mat44 view,mat44* models,unsigned count,int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_render_pass(model_t m,mat44 proj,mat44 view,mat44 model,int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_set_texture(model_t*, texture_t t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool model_has_transparency_mesh(model_t m,int mesh); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool model_has_transparency(model_t m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_set_frustum(model_t* m,frustum f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_clear_frustum(model_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool model_get_bone_pose(model_t m,unsigned joint,mat34* out); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool model_get_bone_position(model_t m,unsigned joint,mat44 M,vec3* out); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void model_destroy(model_t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned model_getpass(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned model_setpass(unsigned pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 pose(bool forward,float curframe,int minframe,int maxframe,bool loop,float* opt_retframe); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_materials(model_t* m); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct drawmat_t; ~~~~~~C struct drawmat_t { handle fbo_id; texture_t matprops; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API drawmat_t drawmat(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void drawmat_destroy(drawmat_t* lookup); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void drawmat_clear(drawmat_t* lookup); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void drawmat_render_instanced(drawmat_t* lookup,model_t m,mat44 proj,mat44 view,mat44* models,unsigned count); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void drawmat_render(drawmat_t* lookup,model_t m,mat44 proj,mat44 view,mat44 model); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void viewport_color(unsigned color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void viewport_clear(bool color,bool depth); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void viewport_clip(vec2 from,vec2 to); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void viewport_area(vec2 from,vec2 to); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int fx_load(const char* file); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int fx_load_from_mem(const char* nameid,const char* content); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool fx_begin(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool fx_begin_res(int w,int h); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool fx_end(unsigned texture_id,unsigned depth_id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_apply(texture_t color_texture,texture_t depth_texture); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_enable(int pass,int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int fx_enable_ordered(int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int fx_enabled(int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_enable_all(int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* fx_name(int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int fx_find(const char* name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_setparam(int pass,const char* name,float value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_setparami(int pass,const char* name,int value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_setparam3(int pass,const char* name,vec3 value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_setparam4(int pass,const char* name,vec4 value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_setparamt(int pass,const char* name,texture_t value,int unit); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int fx_order(int pass,unsigned priority); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned fx_program(int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_fx(int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_fxs(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_drawpass_rs(int pass,texture_t color,texture_t depth,renderstate_t* rs); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void fx_drawpass(int pass,texture_t color,texture_t depth); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct passfx; ~~~~~~C struct passfx { char* name; unsigned program; int uniforms[16]; unsigned priority; bool enabled; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct postfx; ~~~~~~C struct postfx { unsigned vao; unsigned fb[2]; texture_t diffuse[2],depth[2]; array(passfx) pass; bool enabled; unsigned rolling_id; set(char*) added; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_create(postfx* fx,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_destroy(postfx* fx); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool postfx_load(postfx* fx,const char* filemask); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool postfx_begin(postfx* fx,int width,int height); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool postfx_end(postfx* fx,unsigned texture_id,unsigned depth_id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool postfx_apply(postfx* fx,texture_t color_texture,texture_t depth_texture); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool postfx_enabled(postfx* fx,int pass_number); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool postfx_enable(postfx* fx,int pass_number,bool enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int postfx_enable_ordered(postfx* fx,int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_enable_all(postfx* fx,bool enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_clear(postfx* fx); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int postfx_order(postfx* fx,int pass,unsigned priority); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned postfx_program(postfx* fx,int pass); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_setparam(postfx* fx,int pass,const char* name,float value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_setparami(postfx* fx,int pass,const char* name,int value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_setparam3(postfx* fx,int pass,const char* name,vec3 value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_setparam4(postfx* fx,int pass,const char* name,vec4 value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_setparamt(postfx* fx,int pass,const char* name,texture_t value,int unit); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* postfx_name(postfx* fx,int slot); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API passfx* postfx_pass(postfx* fx,int slot); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_drawpass_rs(postfx* fx,int pass,texture_t color,texture_t depth,renderstate_t* rs); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void postfx_drawpass(postfx* fx,int pass,texture_t color,texture_t depth); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_postfx(postfx* fx,int slot); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_postfxs(postfx* fx); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct bloom_params_t; ~~~~~~C struct bloom_params_t { int mips_count; float filter_radius; float strength; float threshold; float soft_threshold; bool suppress_fireflies; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t fxt_bloom(texture_t color,bloom_params_t params); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct reflect_params_t; ~~~~~~C struct reflect_params_t { bool disabled; float max_distance; float reflection_strength; float metallic_threshold; int downsample; cubemap_t* cubemap; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t fxt_reflect(texture_t color,texture_t depth,texture_t normal,texture_t matprops,mat44 proj,mat44 view,reflect_params_t params); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* screenshot(int components); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* screenshot_async(int components); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## renderdd
🄵 API void ddraw_line_width(float width); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_line_width_push(float scale); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_line_width_pop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_color(unsigned rgb); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_color_push(unsigned rgb); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_color_pop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_ontop(int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_ontop_push(int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_ontop_pop(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_push_2d(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_pop_2d(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_aabb(vec3 minbb,vec3 maxbb); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_aabb_corners(vec3 minbb,vec3 maxbb); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_arrow(vec3 begin,vec3 end); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_axis(float units); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_boid(vec3 pos,vec3 dir); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_bone(vec3 center,vec3 end); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_bounds(const vec3 points[8]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_box(vec3 center,vec3 extents); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_capsule(vec3 from,vec3 to,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_circle(vec3 pos,vec3 n,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_ring(vec3 pos,vec3 n,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_cone(vec3 center,vec3 top,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_cube(vec3 center,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_cube33(vec3 center,vec3 radius,mat33 M); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_diamond(vec3 from,vec3 to,float size); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_frustum(float projview[16]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_ground(float scale); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_grid(float scale); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_hexagon(vec3 pos,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_line(vec3 from,vec3 to); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_line_dashed(vec3 from,vec3 to); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_line_thin(vec3 from,vec3 to); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_normal(vec3 pos,vec3 n); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_pentagon(vec3 pos,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_plane(vec3 p,vec3 n,float scale); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_point(vec3 from); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_position(vec3 pos,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_position_dir(vec3 pos,vec3 dir,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_pyramid(vec3 center,float height,int segments); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_cylinder(vec3 center,float height,int segments); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_sphere(vec3 pos,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_square(vec3 pos,float radius); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_text(vec3 pos,float scale,const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_text2d(vec2 pos,const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_triangle(vec3 p1,vec3 p2,vec3 p3); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_prism(vec3 center,float radius,float height,vec3 normal,int segments); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_demo(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_flush(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_flush_projview(mat44 proj,mat44 view); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int gizmo(vec3* pos,vec3* rot,vec3* sca); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gizmo_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gizmo_hover(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## scene
🅂 struct camera_t; ~~~~~~C struct camera_t { OBJ mat44 view,proj; vec3 position,updir,lookdir,rightdir; float yaw,pitch,roll; float speed,accel,fov,aspect; float near_clip,far_clip; float frustum_fov_multiplier; float move_friction,move_damping; float look_friction,look_damping; vec3 last_look; vec3 last_move; bool damping; bool orthographic; ],isometric[if pitch = = 35.264]float distance; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 OBJTYPEDEF(camera_t,OBJTYPE_camera); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API camera_t camera(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_teleport(camera_t* cam,vec3 pos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_moveby(camera_t* cam,vec3 inc); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_fov(camera_t* cam,float fov); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_fps(camera_t* cam,float yaw,float pitch); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_fps2(camera_t* cam,float yaw,float pitch,float roll); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_orbit(camera_t* cam,float yaw,float pitch,float inc_distance); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_lookat(camera_t* cam,vec3 target); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_enable(camera_t* cam); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void camera_freefly(camera_t* cam); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API frustum camera_frustum_build(camera_t* cam); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API camera_t* camera_get_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_camera(camera_t* cam); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ddraw_camera(camera_t* cam); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct node_t; ~~~~~~C struct node_t { ENTITY uint64_t renderbucket; mat44 transform; quat rot; vec3 sca,pos,euler,pivot; array(texture_t) textures; model_t model,model_shadow; anim_t anim; float anim_speed; aabb bounds; unsigned billboard; bool disable_frustum_check; bool cast_shadows; bool fullbright; bool batchable; float distance; bool skip_draw; bool was_batched; array(mat44) instances; unsigned num_instances; array(unsigned) pair_instance; uint32_t checksum; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 OBJTYPEDEF(node_t,OBJTYPE_node); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool node_compare(node_t* obj1,node_t* obj2); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_rotate(node_t* obj,vec3 euler); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_pivot(node_t* obj,vec3 euler); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_teleport(node_t* obj,vec3 pos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_move(node_t* obj,vec3 inc); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 node_position(node_t* obj); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_scale(node_t* obj,vec3 sca); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_batchable(node_t* obj,bool batchable); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_model(node_t* obj,model_t model); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_model_shadow(node_t* obj,model_t model); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_anim(node_t* obj,anim_t anim,float speed); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_diffuse(node_t* obj,texture_t tex); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void node_billboard(node_t* obj,unsigned mode); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum SCENE_FLAGS; ~~~~~~C enum SCENE_FLAGS { SCENE_WIREFRAME = 1, SCENE_CULLFACE = 2, SCENE_BACKGROUND = 4, SCENE_FOREGROUND = 8, SCENE_UPDATE_SH_COEF = 16, SCENE_SHADOWS = 32, SCENE_POSTFX = 64, SCENE_DRAWMAT = 128 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct scene_t; ~~~~~~C struct scene_t { OBJ int flags; array(node_t*) renderlist; array(light_t*) lights; skybox_t skybox; shadowmap_t shadowmap; drawmat_t drawmat; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 OBJTYPEDEF(scene_t,OBJTYPE_scene); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int scene_merge(scene_t* s,const char* source); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void scene_render(scene_t* s,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## string
🄵 API char* tempvl(const char* fmt,va_list); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* tempva(const char* fmt,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* strcatf(char** s,const char* buf); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 char* strtok_s(char* str,const char* delimiters,char** context); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int strmatch(const char* s,const char* wildcard); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int strmatchi(const char* s,const char* wildcard); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int strcmp_qsort(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int strcmpi_qsort(const void* a,const void* b); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool strbeg(const char* src,const char* sub); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool strend(const char* src,const char* sub); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool strbegi(const char* src,const char* sub); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool strendi(const char* src,const char* sub); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* strstri(const char* src,const char* sub); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* strupper(const char* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* strlower(const char* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* strrepl(char** copy,const char* target,const char* replace); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* strswap(char* copy,const char* target,const char* replace); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* strcut(char* copy,const char* target); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* strlerp(unsigned numpairs,const char** pairs,const char* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API size_t strlcat(char* dst,const char* src,size_t dstcap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API size_t strlcpy(char* dst,const char* src,size_t dstcap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(char*) strsplit(const char* string,const char* delimiters); Split `string` after any of `delimiters` character is found. Returns: temporary array of split strings. ~~~~~~C linenumbers /* strsplit example */ array(char*) tokens = strsplit("hello! world!", " !"); // [0]="hello",[1]="world", ~~~~~~ See also: [strjoin](#strjoin)
🄵 API char* strjoin(array(char*) list,const char* separator); Concatenate all elements within `list`, with `separator` string in between. Returns: temporary joint string. ~~~~~~C linenumbers /* strjoin example */ array(char*) tokens = strsplit("hello! world!", " !"); // [0]="hello",[1]="world", char *joint = strjoin(tokens, "+"); // joint="hello+world" ~~~~~~ See also: [strsplit](#strsplit)
🄵 API char* string8(const wchar_t* str); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API array(uint32_t) string32(const char* utf8); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* codepoint_to_utf8(unsigned cp); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned intern(const char* string); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* quark(unsigned key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct quarks_db; ~~~~~~C struct quarks_db { array(char) blob; array(vec2i) entries; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned quark_intern(quarks_db*, const char* string); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* quark_string(quarks_db*, unsigned key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool kit_load(const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool kit_merge(const char* filename); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void kit_insert(const char* id,const char* translation); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void kit_clear(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void kit_set(const char* variable,const char* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void kit_reset(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void kit_dump_state(FILE* fp); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* kit_translate2(const char* id,const char* langcode_iso639_1); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void kit_locale(const char* langcode_iso639_1); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* kit_translate(const char* id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## sprite
🄴 enum SPRITE_FLAGS; ~~~~~~C enum SPRITE_FLAGS { SPRITE_PROJECTED = 1, SPRITE_ADDITIVE = 2, SPRITE_CENTERED = 4, SPRITE_RESOLUTION_INDEPENDANT = 128 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite(texture_t texture,float position[3],float rotation,unsigned color,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_rect(texture_t t,vec4 rect,vec4 pos,vec4 scaleoff,float tilt_deg,unsigned tint_rgba,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_sheet(texture_t texture,float sheet[3],float position[3],float rotation,float offset[2],float scale[2],unsigned rgba,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_flush(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct tileset_t; ~~~~~~C struct tileset_t { texture_t tex; unsigned tile_w,tile_h; unsigned cols,rows; unsigned selected; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API tileset_t tileset(texture_t tex,unsigned tile_w,unsigned tile_h,unsigned cols,unsigned rows); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_tileset(tileset_t t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct tilemap_t; ~~~~~~C struct tilemap_t { int blank_chr; unsigned cols,rows; array(int) map; vec3 position; float zindex; float tilt; unsigned tint; bool is_additive; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API tilemap_t tilemap(const char* map,int blank_chr,int linefeed_chr); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tilemap_render(tilemap_t m,tileset_t style); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tilemap_render_ext(tilemap_t m,tileset_t style,float zindex,float xy_zoom[3],float tilt,unsigned tint,bool is_additive); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct tiled_t; ~~~~~~C struct tiled_t { char* map_name; unsigned first_gid,tilew,tileh,w,h; bool parallax; vec3 position; array(bool) visible; array(tilemap_t) layers; array(tileset_t) sets; array(char*) names; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API tiled_t tiled(const char* file_tmx); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tiled_render(tiled_t tmx,vec3 pos); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_tiled(tiled_t* t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct spine_t spine_t; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API spine_t* spine(const char* file_json,const char* file_atlas,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void spine_skin(spine_t* p,unsigned skin); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void spine_render(spine_t* p,vec3 offset,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void spine_animate(spine_t* p,float delta); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void ui_spine(spine_t* p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct atlas_frame_t; ~~~~~~C struct atlas_frame_t { unsigned delay; vec4 sheet; vec2 anchor; array(vec3i) indices; array(vec2) coords; array(vec2) uvs; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct atlas_anim_t; ~~~~~~C struct atlas_anim_t { unsigned name; array(unsigned) frames; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct atlas_slice_frame_t; ~~~~~~C struct atlas_slice_frame_t { vec4 bounds; bool has_9slice; vec4 core; vec2 pivot; unsigned color; char* text; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct atlas_slice_t; ~~~~~~C struct atlas_slice_t { unsigned name; array(unsigned) frames; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct atlas_t; ~~~~~~C struct atlas_t { texture_t tex; array(atlas_frame_t) frames; array(atlas_anim_t) anims; array(atlas_slice_t) slices; array(atlas_slice_frame_t) slice_frames; quarks_db db; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API atlas_t atlas_create(const char* inifile,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_atlas(atlas_t* a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_atlas_frame(atlas_frame_t* f); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void atlas_destroy(atlas_t* a); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct sprite_t; ~~~~~~C struct sprite_t { OBJ vec4 gamepad; vec2 fire; vec4 pos; vec2 sca; float tilt; unsigned tint; unsigned frame; unsigned timer,timer_ms; unsigned flip_,flipped; unsigned play; bool paused; struct atlas_t* a; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 OBJTYPEDEF(sprite_t,OBJTYPE_sprite); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_ctor(sprite_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_dtor(sprite_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_tick(sprite_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_draw(sprite_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_edit(sprite_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API sprite_t* sprite_new(const char* ase,int bindings[6]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_del(sprite_t* s); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sprite_setanim(sprite_t* s,unsigned name); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## gui
🅂 struct guiskin_t; ~~~~~~C struct guiskin_t { void (*drawrect)(void* userdata,const char* skin,const char* fallback,vec4 rect); void (*getskinsize)(void* userdata,const char* skin,const char* fallback,vec2* size); void (*getskincolor)(void* userdata,const char* skin,const char* fallback,unsigned* color); void (*getscissorrect)(void* userdata,const char* skin,const char* fallback,vec4 rect,vec4* dims); bool (*ismouseinrect)(void* userdata,const char* skin,const char* fallback,vec4 rect); void (*free)(void* userdata); void* userdata; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void gui_pushskin(guiskin_t skin); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* gui_userdata(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 gui_getskinsize(const char* skin,const char* fallback); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned gui_getskincolor(const char* skin,const char* fallback); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gui_ismouseinrect(const char* skin,const char* fallback,vec4 rect); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec4 gui_getscissorrect(const char* skin,const char* fallback,vec4 rect); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void gui_panel_id(int id,vec4 rect,const char* skin); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void gui_rect_id(int id,vec4 rect,const char* skin); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void gui_label_id(int id,const char* skin,const char* text,vec4 rect); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gui_button_id(int id,vec4 rect,const char* skin); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gui_button_label_id(int id,const char* text,vec4 rect,const char* skin); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gui_slider_id(int id,vec4 rect,const char* skin,float min,float max,float step,float* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool gui_slider_label_id(int id,const char* text,vec4 rect,const char* skin,float min,float max,float step,float* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void gui_panel_end(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void gui_popskin(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct skinned_t; ~~~~~~C struct skinned_t { atlas_t atlas; float scale; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API guiskin_t gui_skinned(const char* asefile,float scale); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## steam
🄵 API bool steam_init(unsigned app_id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void steam_tick(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void steam_trophy(const char* trophy_id,bool redeem); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void steam_screenshot(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void steam_destroy(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_steam(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## system
🄵 API void* thread(int (*thread_func)(void* user_data),void* user_data); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void thread_destroy(void* thd); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int argc(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* argv(int); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void argvadd(const char* arg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int flag(const char* commalist); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* option(const char* commalist,const char* defaults); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int optioni(const char* commalist,int defaults); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float optionf(const char* commalist,float defaults); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tty_attach(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tty_detach(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tty_color(unsigned color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tty_reset(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_exec(const char* command); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int app_spawn(const char* command); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int app_cores(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int app_battery(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_name(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_path(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_cache(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_temp(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_cmdline(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void app_beep(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void app_hang(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void app_crash(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void app_singleton(const char* guid); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool app_open(const char* folder_file_or_url); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_loadfile(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* app_savefile(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* callstack(int traces); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int callstackf(FILE* fp,int traces); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void die(const char* message); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void alert(const char* message); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void alert_caption(const char* caption,const char* message); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void hexdump(const void* ptr,unsigned len); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void hexdumpf(FILE* fp,const void* ptr,unsigned len,int width); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void breakpoint(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool has_debugger(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void trap_install(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* trap_name(int signal); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void trap_on_ignore(int signal); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void trap_on_quit(int signal); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void trap_on_abort(int signal); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void trap_on_debug(int signal); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int PANIC(const char* error,const char* file,int line); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int PRINTF(const char* text,const char* stack,const char* file,int line,const char* function); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int test(const char* file,int line,const char* expr,bool result); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## time
🄵 API uint64_t date(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t date_epoch(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* date_string(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double time_hh(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double time_mm(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double time_ss(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t time_ms(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t time_us(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t time_ns(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sleep_ss(double ss); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sleep_ms(double ms); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sleep_us(double us); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void sleep_ns(double us); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API unsigned timer(unsigned ms,unsigned (*callback)(unsigned ms,void* arg),void* arg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void timer_destroy(unsigned timer_handle); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅃 typedef vec3i guid; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API guid guid_create(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_zero(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_one(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_linear(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_sine(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_quad(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_cubic(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_quart(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_quint(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_expo(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_circ(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_back(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_elastic(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_out_bounce(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_sine(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_quad(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_cubic(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_quart(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_quint(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_expo(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_circ(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_back(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_elastic(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_in_bounce(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_sine(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_quad(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_cubic(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_quart(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_quint(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_expo(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_circ(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_back(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_elastic(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_bounce(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_inout_perlin(float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum EASE_FLAGS; ~~~~~~C enum EASE_FLAGS { EASE_SINE, EASE_QUAD, EASE_CUBIC, EASE_QUART, EASE_QUINT, EASE_EXPO, EASE_CIRC, EASE_BACK, EASE_ELASTIC, EASE_BOUNCE, EASE_IN, EASE_OUT = 0, EASE_INOUT = EASE_IN* 2, EASE_ZERO = EASE_INOUT|(EASE_BOUNCE+1), EASE_ONE, EASE_LINEAR, EASE_INOUT_PERLIN, EASE_NUM }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease(float t01,unsigned fn); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_pong(float t01,unsigned fn); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_ping_pong(float t,unsigned fn1,unsigned fn2); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float ease_pong_ping(float t,unsigned fn1,unsigned fn2); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* ease_enum(unsigned fn); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char** ease_enums(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct tween_keyframe_t; ~~~~~~C struct tween_keyframe_t { float t; vec3 v; unsigned ease; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct tween_t; ~~~~~~C struct tween_t { array(tween_keyframe_t) keyframes; vec3 result; float time; float duration; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API tween_t tween(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tween_setkey(tween_t* tw,float t,vec3 v,unsigned easing_mode); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tween_delkey(tween_t* tw,float t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float tween_update(tween_t* tw,float dt); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tween_reset(tween_t* tw); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void tween_destroy(tween_t* tw); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct curve_t; ~~~~~~C struct curve_t { array(float) lengths; array(unsigned) colors; array(vec3) samples; array(vec3) points; array(int) indices; }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API curve_t curve(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void curve_add(curve_t* c,vec3 p); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void curve_end(curve_t* c,int num_points); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 curve_eval(curve_t* c,float dt,unsigned* color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void curve_destroy(curve_t* c); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## ui
🄴 enum PANEL_FLAGS; ~~~~~~C enum PANEL_FLAGS { PANEL_OPEN = 1 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_notify(const char* title,const char* body); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_window(const char* title,int* enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_panel(const char* title,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_collapse(const char* label,const char* id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_collapseo(const char* label,const char* id); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_contextual(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_section(const char* title); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_int(const char* label,int* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_bool(const char* label,bool* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_short(const char* label,short* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float_(const char* label,float* value,float step); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float2_(const char* label,float value[2],float step); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float3_(const char* label,float value[3],float step); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float4_(const char* label,float value[4],float step); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float(const char* label,float* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float2(const char* label,float value[2]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float3(const char* label,float value[3]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_float4(const char* label,float value[4]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_mat33(const char* label,float mat33[9]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_mat34(const char* label,float mat34[12]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_mat44(const char* label,float mat44[16]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_double(const char* label,double* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_buffer(const char* label,char* buffer,int buflen); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_string(const char* label,char** string); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_color3(const char* label,unsigned* color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_color3f(const char* label,float color[3]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_color4(const char* label,unsigned* color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_color4f(const char* label,float color[4]); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_unsigned(const char* label,unsigned* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_unsigned2(const char* label,unsigned* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_unsigned3(const char* label,unsigned* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_button(const char* label); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_button_transparent(const char* label); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_buttons(int buttons,...); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_toolbar(const char* options); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_submenu(const char* options); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_browse(const char** outfile,bool* inlined); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_toggle(const char* label,bool* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_dialog(const char* title,const char* text,int choices,bool* show); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_list(const char* label,const char** items,int num_items,int* selector); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_radio(const char* label,const char** items,int num_items,int* selector); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_texture(const char* label,texture_t t); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_subtexture(const char* label,texture_t t,unsigned x,unsigned y,unsigned w,unsigned h); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_image(const char* label,handle id,unsigned w,unsigned h); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_subimage(const char* label,handle id,unsigned iw,unsigned ih,unsigned sx,unsigned sy,unsigned sw,unsigned sh); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_colormap(const char* label,colormap_t* cm); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_separator(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_bitmask8(const char* label,uint8_t* bits); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_bitmask16(const char* label,uint16_t* bits); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_console(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_clampf_(const char* label,float* value,float minf,float maxf,float step); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_clampf(const char* label,float* value,float minf,float maxf); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_label(const char* label); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_label2(const char* label,const char* caption); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_label2_bool(const char* label,bool enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_label2_float(const char* label,float value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_label2_toolbar(const char* label,const char* icons); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_slider(const char* label,float* value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_slider2(const char* label,float* value,const char* caption); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_contextual_end(int close); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_collapse_clicked(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_collapse_end(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_panel_end(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_window_end(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_show(const char* panel_or_window_title,int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_dims(const char* panel_or_window_title,float width,float height); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_visible(const char* panel_or_window_title); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 ui_get_dims(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_enable(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_enabled(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_disable(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_hide(bool); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_has_menubar(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_menu(const char* items); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_menu_editbox(char* buf,int bufcap); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_item(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_popups(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_hover(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_demo(int do_windows); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* ui_handle(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## video
🄴 enum VIDEO_FLAGS; ~~~~~~C enum VIDEO_FLAGS { VIDEO_YCBCR = 0, VIDEO_RGB = 2, VIDEO_AUDIO = 0, VIDEO_NO_AUDIO = 4, VIDEO_LOOP = 8 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🅂 struct video_t video_t; Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API video_t* video(const char* filename,int flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t* video_decode(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API texture_t* video_textures(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int video_has_finished(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double video_duration(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int video_seek(video_t* v,double seek_to); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double video_position(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void video_pause(video_t* v,bool paused); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool video_is_paused(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool video_is_rgb(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void video_destroy(video_t* v); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool record_start(const char* outfile_mp4); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool record_active(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void record_stop(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## window
🄴 enum WINDOW_FLAGS; ~~~~~~C enum WINDOW_FLAGS { WINDOW_MSAA2 = 0x02, WINDOW_MSAA4 = 0x04, WINDOW_MSAA8 = 0x08, WINDOW_SQUARE = 0x20, WINDOW_PORTRAIT = 0x40, WINDOW_LANDSCAPE = 0x80, WINDOW_ASPECT = 0x100, WINDOW_FIXED = 0x200, WINDOW_TRANSPARENT = 0x400, WINDOW_BORDERLESS = 0x800, WINDOW_TRUE_BORDERLESS = 0x4000, WINDOW_VSYNC = 0x2000, WINDOW_VSYNC_ADAPTIVE = 0x1000 }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool window_create(float scale,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API bool window_create_from_handle(void* handle,float scale,unsigned flags); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_destroy(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_reload(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_frame_begin(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_frame_end(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_frame_swap(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_swap(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_loop(void (*function)(void* loopArg),void* loopArg); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_loop_exit(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_title(const char* title); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_color(unsigned color); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char window_msaa(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 window_canvas(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* window_handle(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* window_stats(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API uint64_t window_frame(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_width(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_height(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double window_time(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double window_delta(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_focus(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_focus(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_fullscreen(int mode); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_fullscreen(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_cursor(int visible); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_cursor(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_pause(int paused); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_pause(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_visible(int visible); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_visible(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_maximize(int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_maximize(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_set_resolution(int width,int height); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_transparent(int enabled); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_transparent(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_icon(const char* file_icon); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_icon(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_debug(int visible); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_has_debug(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double window_aspect(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_aspect_lock(unsigned numer,unsigned denom); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_aspect_unlock(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double window_fps(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API double window_fps_target(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_fps_lock(float fps); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_fps_unlock(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_fps_vsync(int vsync); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_screenshot(const char* outfile_png); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int window_record(const char* outfile_mp4); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 window_dpi(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum CURSOR_SHAPES; ~~~~~~C enum CURSOR_SHAPES { CURSOR_NONE, CURSOR_HW_ARROW, CURSOR_HW_IBEAM, CURSOR_HW_HDRAG, CURSOR_HW_VDRAG, CURSOR_HW_HAND, CURSOR_HW_CROSS, CURSOR_SW_AUTO }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_cursor_shape(unsigned shape); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* window_clipboard(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void window_setclipboard(const char* text); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## editor
🅂 struct editor_bind_t; ~~~~~~C struct editor_bind_t { const char* command; const char* bindings; void (*fn)(); }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_addbind(editor_bind_t bind); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_destroy_properties(void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_load_on_boot(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_save_on_quit(void); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄴 enum EDITOR_MODE; ~~~~~~C enum EDITOR_MODE { EDITOR_PANEL, EDITOR_WINDOW, EDITOR_WINDOW_NK, EDITOR_WINDOW_NK_SMALL }; ~~~~~~ Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int editor_begin(const char* title,int mode); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int editor_end(int mode); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int editor_filter(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_select(const char* mask); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_unselect(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_select_aabb(aabb box); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_selectgroup(obj* first,obj* last); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* editor_first_selected(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* editor_last_selected(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_addtoworld(obj* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_watch(const void* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void* editor_spawn(const char* ini); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_spawn1(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_destroy_selected(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_inspect(obj* o); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec3 editor_pick(float mouse_x,float mouse_y); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char* editor_path(const char* path); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_setmouse(int x,int y); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 editor_glyph(int x,int y,const char* style,unsigned codepoint); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API vec2 editor_glyphs(int x,int y,const char* style,const char* utf8); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_gizmos(int dim); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int editor_send(const char* cmd); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API const char* editor_recv(int jobid,double timeout_ss); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_pump(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API void editor_frame(void (*game)(unsigned,float,double)); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API float* engine_getf(const char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int* engine_geti(const char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API char** engine_gets(const char* key); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int engine_send(const char* cmd,const char* optional_value); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
🄵 API int ui_engine(); Under construction. Yet to be documented. Other documentation examples: [dll](#dll), [strsplit](#strsplit), [strjoin](#strjoin), [IMAGE_FLAGS](#IMAGE_FLAGS) or [image_t](#image_t).
## 🄳 defines [ALLOCA](#ALLOCA), [ALLOCSIZE](#ALLOCSIZE), [ANYHOST_IPV4](#ANYHOST_IPV4), [ANYHOST_IPV6](#ANYHOST_IPV6), [API](#API), [AQUA](#AQUA), [ASSERT](#ASSERT), [ASSERT_ONCE](#ASSERT_ONCE), [AUTORUN](#AUTORUN), [AUTORUN_](#AUTORUN_), [AUTOTEST](#AUTOTEST), [BLACK](#BLACK), [BLUE](#BLUE), [BUILD_VERSION](#BUILD_VERSION), [C_CAST](#C_CAST), [C_EPSILON](#C_EPSILON), [C_PI](#C_PI), [CALLOC](#CALLOC), [COMPONENTS_ONLY](#COMPONENTS_ONLY), [CYAN](#CYAN), [DEFAULT_COOK_ON_DEMAND](#DEFAULT_COOK_ON_DEMAND), [DEFAULT_SHADOW_CSM_RESOLUTION](#DEFAULT_SHADOW_CSM_RESOLUTION), [DEFAULT_SHADOW_VSM_RESOLUTION](#DEFAULT_SHADOW_VSM_RESOLUTION), [DEFAULT_VSYNC](#DEFAULT_VSYNC), [EDITOR_BIND](#EDITOR_BIND), [EDITOR_PROPERTYDEF](#EDITOR_PROPERTYDEF), [EDITOR_VERSION](#EDITOR_VERSION), [ENABLE_AUTOTESTS](#ENABLE_AUTOTESTS), [ENABLE_COOK](#ENABLE_COOK), [ENABLE_FASTCALL_LUA](#ENABLE_FASTCALL_LUA), [ENABLE_LINUX_CALLSTACKS](#ENABLE_LINUX_CALLSTACKS), [ENABLE_MEMORY_LEAKS](#ENABLE_MEMORY_LEAKS), [ENABLE_MEMORY_POISON](#ENABLE_MEMORY_POISON), [ENABLE_PROFILER](#ENABLE_PROFILER), [ENABLE_RETAIL](#ENABLE_RETAIL), [ENABLE_REVERSE_Z](#ENABLE_REVERSE_Z), [ENABLE_RPMALLOC](#ENABLE_RPMALLOC), [ENABLE_SELFIES](#ENABLE_SELFIES), [ENTITY](#ENTITY), [ENUM](#ENUM), [EXPAND](#EXPAND), [EXPORT](#EXPORT), [EXTEND](#EXTEND), [EXTEND_T](#EXTEND_T), [FILELINE](#FILELINE), [FINITE](#FINITE), [FIXME](#FIXME), [FONT_BASELINE](#FONT_BASELINE), [FONT_BOTTOM](#FONT_BOTTOM), [FONT_CENTER](#FONT_CENTER), [FONT_COLOR1](#FONT_COLOR1), [FONT_COLOR2](#FONT_COLOR2), [FONT_COLOR3](#FONT_COLOR3), [FONT_COLOR4](#FONT_COLOR4), [FONT_COLOR5](#FONT_COLOR5), [FONT_COLOR6](#FONT_COLOR6), [FONT_FACE1](#FONT_FACE1), [FONT_FACE10](#FONT_FACE10), [FONT_FACE2](#FONT_FACE2), [FONT_FACE3](#FONT_FACE3), [FONT_FACE4](#FONT_FACE4), [FONT_FACE5](#FONT_FACE5), [FONT_FACE6](#FONT_FACE6), [FONT_FACE7](#FONT_FACE7), [FONT_FACE8](#FONT_FACE8), [FONT_FACE9](#FONT_FACE9), [FONT_H1](#FONT_H1), [FONT_H2](#FONT_H2), [FONT_H3](#FONT_H3), [FONT_H4](#FONT_H4), [FONT_H5](#FONT_H5), [FONT_H6](#FONT_H6), [FONT_JUSTIFY](#FONT_JUSTIFY), [FONT_LEFT](#FONT_LEFT), [FONT_MIDDLE](#FONT_MIDDLE), [FONT_RIGHT](#FONT_RIGHT), [FONT_TOP](#FONT_TOP), [FORCE_INLINE](#FORCE_INLINE), [FORGET](#FORGET), [FREE](#FREE), [FUNCTION](#FUNCTION), [GLOBAL_FRUSTUM_DEBUG_DRAW](#GLOBAL_FRUSTUM_DEBUG_DRAW), [GLOBAL_FRUSTUM_ENABLED](#GLOBAL_FRUSTUM_ENABLED), [GLOBAL_FRUSTUM_FOV_MULTIPLIER](#GLOBAL_FRUSTUM_FOV_MULTIPLIER), [GLOBAL_FX_PASS_ENABLED](#GLOBAL_FX_PASS_ENABLED), [GRAY](#GRAY), [GREEN](#GREEN), [ID_COUNT_BITS](#ID_COUNT_BITS), [ID_INDEX_BITS](#ID_INDEX_BITS), [IMPORT](#IMPORT), [INLINE](#INLINE), [IS_BIG](#IS_BIG), [IS_LITTLE](#IS_LITTLE), [LOCALHOST_IPV4](#LOCALHOST_IPV4), [LOCALHOST_IPV6](#LOCALHOST_IPV6), [MALLOC](#MALLOC), [MAP_DONT_ERASE](#MAP_DONT_ERASE), [MAP_HASHSIZE](#MAP_HASHSIZE), [MAX_LIGHTS](#MAX_LIGHTS), [MAX_SHADOW_LIGHTS](#MAX_SHADOW_LIGHTS), [NUM_SHADOW_CASCADES](#NUM_SHADOW_CASCADES), [OBJ](#OBJ), [OBJ_CTOR](#OBJ_CTOR), [OBJ_CTOR_HDR](#OBJ_CTOR_HDR), [OBJ_CTOR_PTR](#OBJ_CTOR_PTR), [OBJ_MIN_PRAGMAPACK_BITS](#OBJ_MIN_PRAGMAPACK_BITS), [OBJCOMPONENTS_ALL_ENABLED](#OBJCOMPONENTS_ALL_ENABLED), [OBJCOMPONENTS_ALL_FLAGGED](#OBJCOMPONENTS_ALL_FLAGGED), [OBJCOMPONENTS_MAX](#OBJCOMPONENTS_MAX), [OBJHEADER](#OBJHEADER), [OBJTYPE](#OBJTYPE), [OBJTYPEDEF](#OBJTYPEDEF), [ORANGE](#ORANGE), [PANIC](#PANIC), [PINK](#PINK), [PRINTF](#PRINTF), [PURPLE](#PURPLE), [REALLOC](#REALLOC), [RED](#RED), [RGB3](#RGB3), [RGB4](#RGB4), [RGBX](#RGBX), [SEMVER](#SEMVER), [SEMVERCMP](#SEMVERCMP), [SEMVERFMT](#SEMVERFMT), [SET_DONT_ERASE](#SET_DONT_ERASE), [SET_HASHSIZE](#SET_HASHSIZE), [SHADOW_CASCADE_BLEND_REGION](#SHADOW_CASCADE_BLEND_REGION), [SILVER](#SILVER), [STATIC](#STATIC), [STATIC_ASSERT](#STATIC_ASSERT), [STRDUP](#STRDUP), [STRINGIZE](#STRINGIZE), [STRUCT](#STRUCT), [TO_DEG](#TO_DEG), [TO_RAD](#TO_RAD), [TODO](#TODO), [TYPEDEF_ENTITY](#TYPEDEF_ENTITY), [TYPEDEF_STRUCT](#TYPEDEF_STRUCT), [VA_COUNT](#VA_COUNT), [VA_FIRST](#VA_FIRST), [VA_REST](#VA_REST), [VA_SELECT_10TH](#VA_SELECT_10TH), [VA_SPLIT](#VA_SPLIT), [WARN1NG](#WARN1NG), [WARNING](#WARNING), [WATCH](#WATCH), [WHITE](#WHITE) ## 🄴 enums [ANIM_FLAGS](#ANIM_FLAGS), [AUDIO_FLAGS](#AUDIO_FLAGS), [BILLBOARD_MODE](#BILLBOARD_MODE), [BUFFER_MODE](#BUFFER_MODE), [BUFFER_USAGE](#BUFFER_USAGE), [COMPRESS_FLAGS](#COMPRESS_FLAGS), [COOK_FLAGS](#COOK_FLAGS), [CURSOR_SHAPES](#CURSOR_SHAPES), [EASE_FLAGS](#EASE_FLAGS), [EDITOR_MODE](#EDITOR_MODE), [FBO_BLIT_MODE](#FBO_BLIT_MODE), [FBO_FLAGS](#FBO_FLAGS), [FOG_MODE](#FOG_MODE), [FONT_FLAGS](#FONT_FLAGS), [IMAGE_FLAGS](#IMAGE_FLAGS), [INPUT_ALIASES](#INPUT_ALIASES), [INPUT_ENUMS](#INPUT_ENUMS), [LIGHT_TYPE](#LIGHT_TYPE), [MATERIAL_ENUMS](#MATERIAL_ENUMS), [MESH_FLAGS](#MESH_FLAGS), [MODEL_FLAGS](#MODEL_FLAGS), [MODEL_TEXTURE_SLOTS](#MODEL_TEXTURE_SLOTS), [MODEL_UNIFORMS](#MODEL_UNIFORMS), [OBJTYPE_BUILTINS](#OBJTYPE_BUILTINS), [PANEL_FLAGS](#PANEL_FLAGS), [RENDER_PASS](#RENDER_PASS), [SCENE_FLAGS](#SCENE_FLAGS), [SHADING_MODE](#SHADING_MODE), [SHADOW_TECHNIQUE](#SHADOW_TECHNIQUE), [SKYBOX_FLAGS](#SKYBOX_FLAGS), [SPRITE_FLAGS](#SPRITE_FLAGS), [SSBO_ACCESS](#SSBO_ACCESS), [SWARM_DISTANCE](#SWARM_DISTANCE), [TEXTURE_FLAGS](#TEXTURE_FLAGS), [TOUCH_BUTTONS](#TOUCH_BUTTONS), [UNIFORM_KIND](#UNIFORM_KIND), [VIDEO_FLAGS](#VIDEO_FLAGS), [WINDOW_FLAGS](#WINDOW_FLAGS), [{](#{) ## 🅃 types [aabb](#aabb), [anim_t](#anim_t), [atlas_anim_t](#atlas_anim_t), [atlas_frame_t](#atlas_frame_t), [atlas_slice_frame_t](#atlas_slice_frame_t), [atlas_slice_t](#atlas_slice_t), [atlas_t](#atlas_t), [audio_handle*](#audio_handle*), [bloom_params_t](#bloom_params_t), [boid_t](#boid_t), [bt_func](#bt_func), [bt_t](#bt_t), [byte2](#byte2), [byte3](#byte3), [byte4](#byte4), [camera_t](#camera_t), [capsule](#capsule), [colormap_t](#colormap_t), [cubemap_t](#cubemap_t), [curve_t](#curve_t), [double2](#double2), [double3](#double3), [double4](#double4), [drawmat_t](#drawmat_t), [editor_bind_t](#editor_bind_t), [entity](#entity), [fbo_t](#fbo_t), [float2](#float2), [float3](#float3), [float4](#float4), [font_metrics_t](#font_metrics_t), [frustum](#frustum), [guid](#guid), [guiskin_t](#guiskin_t), [half](#half), [handle](#handle), [hit](#hit), [image_t](#image_t), [ini_t](#ini_t), [int2](#int2), [int3](#int3), [int4](#int4), [json_t](#json_t), [light_t](#light_t), [lightarray_t](#lightarray_t), [line](#line), [map](#map), [mat33](#mat33), [mat34](#mat34), [mat44](#mat44), [material_layer_t](#material_layer_t), [material_t](#material_t), [mesh_t](#mesh_t), [model_shaderinfo_t](#model_shaderinfo_t), [model_t](#model_t), [model_uniform_t](#model_uniform_t), [model_vertex_t](#model_vertex_t), [node_t](#node_t), [obj](#obj), [pair](#pair), [passfx](#passfx), [plane](#plane), [poly](#poly), [postfx](#postfx), [quarks_db](#quarks_db), [quat](#quat), [ray](#ray), [reflect_params_t](#reflect_params_t), [reflect_t](#reflect_t), [renderstate_t](#renderstate_t), [scene_t](#scene_t), [set](#set), [set_item](#set_item), [shadertoy_t](#shadertoy_t), [shadowmap_t](#shadowmap_t), [skinned_t](#skinned_t), [skybox_t](#skybox_t), [sphere](#sphere), [spine_t](#spine_t), [sprite_t](#sprite_t), [swarm_t](#swarm_t), [texture_t](#texture_t), [tiled_t](#tiled_t), [tilemap_t](#tilemap_t), [tileset_t](#tileset_t), [triangle](#triangle), [tween_keyframe_t](#tween_keyframe_t), [tween_t](#tween_t), [uint2](#uint2), [uint3](#uint3), [uint4](#uint4), [vec2](#vec2), [vec2i](#vec2i), [vec3](#vec3), [vec3i](#vec3i), [vec4](#vec4), [video_t](#video_t) ## 🄵 functions [aabb_closest_point](#aabb_closest_point), [aabb_contains_point](#aabb_contains_point), [aabb_distance2_point](#aabb_distance2_point), [aabb_hit_aabb](#aabb_hit_aabb), [aabb_hit_capsule](#aabb_hit_capsule), [aabb_hit_sphere](#aabb_hit_sphere), [aabb_test_aabb](#aabb_test_aabb), [aabb_test_capsule](#aabb_test_capsule), [aabb_test_sphere](#aabb_test_sphere), [abs2](#abs2), [abs3](#abs3), [abs4](#abs4), [absf](#absf), [absi](#absi), [add2](#add2), [add3](#add3), [add34](#add34), [add34x2](#add34x2), [add4](#add4), [addq](#addq), [alert](#alert), [alert_caption](#alert_caption), [alpha](#alpha), [animlist](#animlist), [app_battery](#app_battery), [app_beep](#app_beep), [app_cache](#app_cache), [app_cmdline](#app_cmdline), [app_cores](#app_cores), [app_crash](#app_crash), [app_exec](#app_exec), [app_hang](#app_hang), [app_loadfile](#app_loadfile), [app_name](#app_name), [app_open](#app_open), [app_path](#app_path), [app_savefile](#app_savefile), [app_singleton](#app_singleton), [app_spawn](#app_spawn), [app_temp](#app_temp), [arc4](#arc4), [argc](#argc), [argv](#argv), [argvadd](#argvadd), [atlas_create](#atlas_create), [atlas_destroy](#atlas_destroy), [atof1](#atof1), [atof2](#atof2), [atof3](#atof3), [atof4](#atof4), [atoi1](#atoi1), [atoi2](#atoi2), [atoi3](#atoi3), [atorgba](#atorgba), [audio_clip](#audio_clip), [audio_loop](#audio_loop), [audio_mute](#audio_mute), [audio_muted](#audio_muted), [audio_play](#audio_play), [audio_play_gain](#audio_play_gain), [audio_play_gain_pitch](#audio_play_gain_pitch), [audio_play_gain_pitch_pan](#audio_play_gain_pitch_pan), [audio_playing](#audio_playing), [audio_queue](#audio_queue), [audio_stop](#audio_stop), [audio_stream](#audio_stream), [audio_volume_clip](#audio_volume_clip), [audio_volume_master](#audio_volume_master), [audio_volume_stream](#audio_volume_stream), [base92_bounds](#base92_bounds), [base92_decode](#base92_decode), [base92_encode](#base92_encode), [bgra](#bgra), [bgraf](#bgraf), [big16](#big16), [big16p](#big16p), [big32](#big32), [big32f](#big32f), [big32p](#big32p), [big32pf](#big32pf), [big64](#big64), [big64f](#big64f), [big64p](#big64p), [big64pf](#big64pf), [brdf_lut](#brdf_lut), [breakpoint](#breakpoint), [bt](#bt), [bt_addfun](#bt_addfun), [bt_findfun](#bt_findfun), [bt_funcname](#bt_funcname), [bt_run](#bt_run), [cache_insert](#cache_insert), [cache_lookup](#cache_lookup), [callstack](#callstack), [callstackf](#callstackf), [camera](#camera), [camera_enable](#camera_enable), [camera_fov](#camera_fov), [camera_fps](#camera_fps), [camera_fps2](#camera_fps2), [camera_freefly](#camera_freefly), [camera_frustum_build](#camera_frustum_build), [camera_get_active](#camera_get_active), [camera_lookat](#camera_lookat), [camera_moveby](#camera_moveby), [camera_orbit](#camera_orbit), [camera_teleport](#camera_teleport), [capsule_closest_point](#capsule_closest_point), [capsule_distance2_point](#capsule_distance2_point), [capsule_hit_aabb](#capsule_hit_aabb), [capsule_hit_capsule](#capsule_hit_capsule), [capsule_hit_sphere](#capsule_hit_sphere), [capsule_test_aabb](#capsule_test_aabb), [capsule_test_capsule](#capsule_test_capsule), [capsule_test_sphere](#capsule_test_sphere), [cc4str](#cc4str), [cc8str](#cc8str), [ceil2](#ceil2), [ceil3](#ceil3), [ceil4](#ceil4), [clamp2](#clamp2), [clamp2f](#clamp2f), [clamp3](#clamp3), [clamp3f](#clamp3f), [clamp4](#clamp4), [clamp4f](#clamp4f), [clampf](#clampf), [clampi](#clampi), [client_join](#client_join), [client_poll](#client_poll), [client_send](#client_send), [client_send_bin](#client_send_bin), [client_send_bin_flags](#client_send_bin_flags), [client_send_flags](#client_send_flags), [client_terminate](#client_terminate), [clip](#clip), [cobs_bounds](#cobs_bounds), [cobs_decode](#cobs_decode), [cobs_encode](#cobs_encode), [codepoint_to_utf8](#codepoint_to_utf8), [collide_demo](#collide_demo), [colormap](#colormap), [compose33](#compose33), [compose34](#compose34), [compose44](#compose44), [compute](#compute), [compute_dispatch](#compute_dispatch), [conjq](#conjq), [cook_cancel](#cook_cancel), [cook_config](#cook_config), [cook_jobs](#cook_jobs), [cook_progress](#cook_progress), [cook_start](#cook_start), [cook_stop](#cook_stop), [copy33](#copy33), [copy34](#copy34), [copy44](#copy44), [crc64](#crc64), [cross2](#cross2), [cross3](#cross3), [cubemap](#cubemap), [cubemap_beginbake](#cubemap_beginbake), [cubemap_destroy](#cubemap_destroy), [cubemap_endbake](#cubemap_endbake), [cubemap_get_active](#cubemap_get_active), [cubemap_sh_addlight](#cubemap_sh_addlight), [cubemap_sh_blend](#cubemap_sh_blend), [cubemap_sh_reset](#cubemap_sh_reset), [cubemap_stepbake](#cubemap_stepbake), [curve](#curve), [curve_add](#curve_add), [curve_destroy](#curve_destroy), [curve_end](#curve_end), [curve_eval](#curve_eval), [cycle180](#cycle180), [cycle360](#cycle360), [data_tests](#data_tests), [date](#date), [date_epoch](#date_epoch), [date_string](#date_string), [ddraw_aabb](#ddraw_aabb), [ddraw_aabb_corners](#ddraw_aabb_corners), [ddraw_arrow](#ddraw_arrow), [ddraw_axis](#ddraw_axis), [ddraw_boid](#ddraw_boid), [ddraw_bone](#ddraw_bone), [ddraw_bounds](#ddraw_bounds), [ddraw_box](#ddraw_box), [ddraw_camera](#ddraw_camera), [ddraw_capsule](#ddraw_capsule), [ddraw_circle](#ddraw_circle), [ddraw_color](#ddraw_color), [ddraw_color_pop](#ddraw_color_pop), [ddraw_color_push](#ddraw_color_push), [ddraw_cone](#ddraw_cone), [ddraw_cube](#ddraw_cube), [ddraw_cube33](#ddraw_cube33), [ddraw_cylinder](#ddraw_cylinder), [ddraw_demo](#ddraw_demo), [ddraw_diamond](#ddraw_diamond), [ddraw_flush](#ddraw_flush), [ddraw_flush_projview](#ddraw_flush_projview), [ddraw_frustum](#ddraw_frustum), [ddraw_grid](#ddraw_grid), [ddraw_ground](#ddraw_ground), [ddraw_hexagon](#ddraw_hexagon), [ddraw_line](#ddraw_line), [ddraw_line_dashed](#ddraw_line_dashed), [ddraw_line_thin](#ddraw_line_thin), [ddraw_line_width](#ddraw_line_width), [ddraw_line_width_pop](#ddraw_line_width_pop), [ddraw_line_width_push](#ddraw_line_width_push), [ddraw_normal](#ddraw_normal), [ddraw_ontop](#ddraw_ontop), [ddraw_ontop_pop](#ddraw_ontop_pop), [ddraw_ontop_push](#ddraw_ontop_push), [ddraw_pentagon](#ddraw_pentagon), [ddraw_plane](#ddraw_plane), [ddraw_point](#ddraw_point), [ddraw_pop_2d](#ddraw_pop_2d), [ddraw_position](#ddraw_position), [ddraw_position_dir](#ddraw_position_dir), [ddraw_prism](#ddraw_prism), [ddraw_push_2d](#ddraw_push_2d), [ddraw_pyramid](#ddraw_pyramid), [ddraw_ring](#ddraw_ring), [ddraw_sphere](#ddraw_sphere), [ddraw_square](#ddraw_square), [ddraw_text](#ddraw_text), [ddraw_text2d](#ddraw_text2d), [ddraw_triangle](#ddraw_triangle), [dec2](#dec2), [dec3](#dec3), [dec4](#dec4), [deczig32i](#deczig32i), [deczig64i](#deczig64i), [deg](#deg), [delta16_decode](#delta16_decode), [delta16_encode](#delta16_encode), [delta32_decode](#delta32_decode), [delta32_encode](#delta32_encode), [delta64_decode](#delta64_decode), [delta64_encode](#delta64_encode), [delta8_decode](#delta8_decode), [delta8_encode](#delta8_encode), [det44](#det44), [diamond](#diamond), [die](#die), [div2](#div2), [div3](#div3), [div4](#div4), [dll](#dll), [dot2](#dot2), [dot3](#dot3), [dot4](#dot4), [dotq](#dotq), [download](#download), [download_file](#download_file), [drawmat](#drawmat), [drawmat_clear](#drawmat_clear), [drawmat_destroy](#drawmat_destroy), [drawmat_render](#drawmat_render), [drawmat_render_instanced](#drawmat_render_instanced), [ease](#ease), [ease_enum](#ease_enum), [ease_enums](#ease_enums), [ease_in_back](#ease_in_back), [ease_in_bounce](#ease_in_bounce), [ease_in_circ](#ease_in_circ), [ease_in_cubic](#ease_in_cubic), [ease_in_elastic](#ease_in_elastic), [ease_in_expo](#ease_in_expo), [ease_in_quad](#ease_in_quad), [ease_in_quart](#ease_in_quart), [ease_in_quint](#ease_in_quint), [ease_in_sine](#ease_in_sine), [ease_inout_back](#ease_inout_back), [ease_inout_bounce](#ease_inout_bounce), [ease_inout_circ](#ease_inout_circ), [ease_inout_cubic](#ease_inout_cubic), [ease_inout_elastic](#ease_inout_elastic), [ease_inout_expo](#ease_inout_expo), [ease_inout_perlin](#ease_inout_perlin), [ease_inout_quad](#ease_inout_quad), [ease_inout_quart](#ease_inout_quart), [ease_inout_quint](#ease_inout_quint), [ease_inout_sine](#ease_inout_sine), [ease_linear](#ease_linear), [ease_one](#ease_one), [ease_out_back](#ease_out_back), [ease_out_bounce](#ease_out_bounce), [ease_out_circ](#ease_out_circ), [ease_out_cubic](#ease_out_cubic), [ease_out_elastic](#ease_out_elastic), [ease_out_expo](#ease_out_expo), [ease_out_quad](#ease_out_quad), [ease_out_quart](#ease_out_quart), [ease_out_quint](#ease_out_quint), [ease_out_sine](#ease_out_sine), [ease_ping_pong](#ease_ping_pong), [ease_pong](#ease_pong), [ease_pong_ping](#ease_pong_ping), [ease_zero](#ease_zero), [editor_addbind](#editor_addbind), [editor_addtoworld](#editor_addtoworld), [editor_begin](#editor_begin), [editor_destroy_properties](#editor_destroy_properties), [editor_destroy_selected](#editor_destroy_selected), [editor_end](#editor_end), [editor_filter](#editor_filter), [editor_first_selected](#editor_first_selected), [editor_frame](#editor_frame), [editor_gizmos](#editor_gizmos), [editor_glyph](#editor_glyph), [editor_glyphs](#editor_glyphs), [editor_inspect](#editor_inspect), [editor_last_selected](#editor_last_selected), [editor_load_on_boot](#editor_load_on_boot), [editor_path](#editor_path), [editor_pick](#editor_pick), [editor_pump](#editor_pump), [editor_recv](#editor_recv), [editor_save_on_quit](#editor_save_on_quit), [editor_select](#editor_select), [editor_select_aabb](#editor_select_aabb), [editor_selectgroup](#editor_selectgroup), [editor_send](#editor_send), [editor_setmouse](#editor_setmouse), [editor_spawn](#editor_spawn), [editor_spawn1](#editor_spawn1), [editor_unselect](#editor_unselect), [editor_watch](#editor_watch), [enczig32u](#enczig32u), [enczig64u](#enczig64u), [engine_getf](#engine_getf), [engine_geti](#engine_geti), [engine_gets](#engine_gets), [engine_send](#engine_send), [entity_addcomponent](#entity_addcomponent), [entity_delcomponent](#entity_delcomponent), [entity_getcomponent](#entity_getcomponent), [entity_hascomponent](#entity_hascomponent), [entity_offcomponent](#entity_offcomponent), [entity_save](#entity_save), [entity_usecomponent](#entity_usecomponent), [entropy](#entropy), [enum_find](#enum_find), [enum_inscribe](#enum_inscribe), [euler](#euler), [eulerq](#eulerq), [extract33](#extract33), [fbo](#fbo), [fbo_attach](#fbo_attach), [fbo_attach_depth](#fbo_attach_depth), [fbo_bind](#fbo_bind), [fbo_blit](#fbo_blit), [fbo_destroy](#fbo_destroy), [fbo_destroy_id](#fbo_destroy_id), [fbo_id](#fbo_id), [fbo_resize](#fbo_resize), [fbo_unbind](#fbo_unbind), [file_append](#file_append), [file_base](#file_base), [file_copy](#file_copy), [file_counter](#file_counter), [file_crc32](#file_crc32), [file_delete](#file_delete), [file_directory](#file_directory), [file_exist](#file_exist), [file_ext](#file_ext), [file_id](#file_id), [file_list](#file_list), [file_load](#file_load), [file_md5](#file_md5), [file_move](#file_move), [file_name](#file_name), [file_normalize](#file_normalize), [file_path](#file_path), [file_pathabs](#file_pathabs), [file_read](#file_read), [file_sha1](#file_sha1), [file_size](#file_size), [file_stamp](#file_stamp), [file_stamp10](#file_stamp10), [file_temp](#file_temp), [file_tempname](#file_tempname), [file_write](#file_write), [file_zip_append](#file_zip_append), [file_zip_appendmem](#file_zip_appendmem), [file_zip_extract](#file_zip_extract), [file_zip_list](#file_zip_list), [finite2](#finite2), [finite3](#finite3), [finite4](#finite4), [flag](#flag), [float_to_half](#float_to_half), [floor2](#floor2), [floor3](#floor3), [floor4](#floor4), [font_clip](#font_clip), [font_color](#font_color), [font_colorize](#font_colorize), [font_face](#font_face), [font_face_from_mem](#font_face_from_mem), [font_goto](#font_goto), [font_highlight](#font_highlight), [font_metrics](#font_metrics), [font_print](#font_print), [font_rect](#font_rect), [font_scale](#font_scale), [font_scales](#font_scales), [font_wrap](#font_wrap), [font_xy](#font_xy), [forget](#forget), [fract2](#fract2), [fract3](#fract3), [fract4](#fract4), [fractf](#fractf), [frustum44](#frustum44), [frustum_build](#frustum_build), [frustum_test_aabb](#frustum_test_aabb), [frustum_test_sphere](#frustum_test_sphere), [ftoa1](#ftoa1), [ftoa2](#ftoa2), [ftoa3](#ftoa3), [ftoa4](#ftoa4), [fullscreen_quad_rgb](#fullscreen_quad_rgb), [fullscreen_quad_rgb_flipped](#fullscreen_quad_rgb_flipped), [fullscreen_quad_rgb_flipped_gamma](#fullscreen_quad_rgb_flipped_gamma), [fullscreen_quad_rgb_gamma](#fullscreen_quad_rgb_gamma), [fullscreen_quad_ycbcr](#fullscreen_quad_ycbcr), [fullscreen_quad_ycbcr_flipped](#fullscreen_quad_ycbcr_flipped), [function_find](#function_find), [function_inscribe](#function_inscribe), [fx_apply](#fx_apply), [fx_begin](#fx_begin), [fx_begin_res](#fx_begin_res), [fx_drawpass](#fx_drawpass), [fx_drawpass_rs](#fx_drawpass_rs), [fx_enable](#fx_enable), [fx_enable_all](#fx_enable_all), [fx_enable_ordered](#fx_enable_ordered), [fx_enabled](#fx_enabled), [fx_end](#fx_end), [fx_find](#fx_find), [fx_load](#fx_load), [fx_load_from_mem](#fx_load_from_mem), [fx_name](#fx_name), [fx_order](#fx_order), [fx_program](#fx_program), [fx_setparam](#fx_setparam), [fx_setparam3](#fx_setparam3), [fx_setparam4](#fx_setparam4), [fx_setparami](#fx_setparami), [fx_setparamt](#fx_setparamt), [fxt_bloom](#fxt_bloom), [fxt_reflect](#fxt_reflect), [gizmo](#gizmo), [gizmo_active](#gizmo_active), [gizmo_hover](#gizmo_hover), [gui_button_id](#gui_button_id), [gui_button_label_id](#gui_button_label_id), [gui_getscissorrect](#gui_getscissorrect), [gui_getskincolor](#gui_getskincolor), [gui_getskinsize](#gui_getskinsize), [gui_ismouseinrect](#gui_ismouseinrect), [gui_label_id](#gui_label_id), [gui_panel_end](#gui_panel_end), [gui_panel_id](#gui_panel_id), [gui_popskin](#gui_popskin), [gui_pushskin](#gui_pushskin), [gui_rect_id](#gui_rect_id), [gui_skinned](#gui_skinned), [gui_slider_id](#gui_slider_id), [gui_slider_label_id](#gui_slider_label_id), [gui_userdata](#gui_userdata), [guid_create](#guid_create), [half_to_float](#half_to_float), [has_debugger](#has_debugger), [hash_32](#hash_32), [hash_64](#hash_64), [hash_bin](#hash_bin), [hash_flt](#hash_flt), [hash_int](#hash_int), [hash_ptr](#hash_ptr), [hash_str](#hash_str), [have_tools](#have_tools), [hexdump](#hexdump), [hexdumpf](#hexdumpf), [hh_float](#hh_float), [hh_int](#hh_int), [hh_mat33](#hh_mat33), [hh_mat44](#hh_mat44), [hh_mem](#hh_mem), [hh_str](#hh_str), [hh_vec2](#hh_vec2), [hh_vec3](#hh_vec3), [hh_vec4](#hh_vec4), [id33](#id33), [id34](#id34), [id44](#id44), [id_dispose](#id_dispose), [id_handle](#id_handle), [id_make](#id_make), [id_valid](#id_valid), [identity44](#identity44), [idq](#idq), [image](#image), [image_destroy](#image_destroy), [image_from_mem](#image_from_mem), [inc2](#inc2), [inc3](#inc3), [inc4](#inc4), [ini](#ini), [ini_destroy](#ini_destroy), [ini_from_mem](#ini_from_mem), [ini_write](#ini_write), [input](#input), [input2](#input2), [input_anykey](#input_anykey), [input_chord2](#input_chord2), [input_chord3](#input_chord3), [input_chord4](#input_chord4), [input_click](#input_click), [input_click2](#input_click2), [input_diff](#input_diff), [input_diff2](#input_diff2), [input_down](#input_down), [input_enum](#input_enum), [input_eval](#input_eval), [input_filter_deadzone](#input_filter_deadzone), [input_filter_deadzone_4way](#input_filter_deadzone_4way), [input_filter_positive](#input_filter_positive), [input_filter_positive2](#input_filter_positive2), [input_frame](#input_frame), [input_frame2](#input_frame2), [input_held](#input_held), [input_idle](#input_idle), [input_keychar](#input_keychar), [input_mappings](#input_mappings), [input_repeat](#input_repeat), [input_send](#input_send), [input_string](#input_string), [input_touch](#input_touch), [input_touch_active](#input_touch_active), [input_touch_area](#input_touch_area), [input_touch_delta](#input_touch_delta), [input_touch_delta_from_origin](#input_touch_delta_from_origin), [input_up](#input_up), [input_use](#input_use), [interleave](#interleave), [intern](#intern), [invert34](#invert34), [invert44](#invert44), [is_big](#is_big), [is_little](#is_little), [itoa1](#itoa1), [itoa2](#itoa2), [itoa3](#itoa3), [json_count](#json_count), [json_find](#json_find), [json_get](#json_get), [json_key](#json_key), [json_pop](#json_pop), [json_push](#json_push), [kit_clear](#kit_clear), [kit_dump_state](#kit_dump_state), [kit_insert](#kit_insert), [kit_load](#kit_load), [kit_locale](#kit_locale), [kit_merge](#kit_merge), [kit_reset](#kit_reset), [kit_set](#kit_set), [kit_translate](#kit_translate), [kit_translate2](#kit_translate2), [len2](#len2), [len2sq](#len2sq), [len3](#len3), [len3sq](#len3sq), [len4](#len4), [len4sq](#len4sq), [lerp34](#lerp34), [less_64](#less_64), [less_64_ptr](#less_64_ptr), [less_int](#less_int), [less_int_ptr](#less_int_ptr), [less_ptr](#less_ptr), [less_str](#less_str), [light](#light), [light_ambient](#light_ambient), [light_cone](#light_cone), [light_diffuse](#light_diffuse), [light_dir](#light_dir), [light_falloff](#light_falloff), [light_pos](#light_pos), [light_power](#light_power), [light_radius](#light_radius), [light_specular](#light_specular), [light_type](#light_type), [lil16](#lil16), [lil16p](#lil16p), [lil32](#lil32), [lil32f](#lil32f), [lil32p](#lil32p), [lil32pf](#lil32pf), [lil64](#lil64), [lil64f](#lil64f), [lil64p](#lil64p), [lil64pf](#lil64pf), [line_closest_point](#line_closest_point), [line_distance2_point](#line_distance2_point), [load_input](#load_input), [loadb](#loadb), [loadf](#loadf), [lookat44](#lookat44), [loop](#loop), [map_clear](#map_clear), [map_count](#map_count), [map_erase](#map_erase), [map_find](#map_find), [map_free](#map_free), [map_gc](#map_gc), [map_init](#map_init), [map_insert](#map_insert), [map_isempty](#map_isempty), [map_sort](#map_sort), [mapf](#mapf), [mat44q](#mat44q), [material_checksum](#material_checksum), [material_texparams](#material_texparams), [max2](#max2), [max3](#max3), [max4](#max4), [maxf](#maxf), [maxi](#maxi), [member_find](#member_find), [member_findptr](#member_findptr), [member_inscribe](#member_inscribe), [members_find](#members_find), [mesh](#mesh), [mesh_bounds](#mesh_bounds), [mesh_destroy](#mesh_destroy), [mesh_render](#mesh_render), [mesh_render_prim](#mesh_render_prim), [mesh_update](#mesh_update), [midi_send](#midi_send), [min2](#min2), [min3](#min3), [min4](#min4), [minf](#minf), [mini](#mini), [mix2](#mix2), [mix3](#mix3), [mix4](#mix4), [mixf](#mixf), [mixq](#mixq), [model](#model), [model_aabb](#model_aabb), [model_addswitch](#model_addswitch), [model_adduniform](#model_adduniform), [model_adduniforms](#model_adduniforms), [model_animate](#model_animate), [model_animate_blends](#model_animate_blends), [model_animate_clip](#model_animate_clip), [model_bsphere](#model_bsphere), [model_clear_frustum](#model_clear_frustum), [model_compareuniform](#model_compareuniform), [model_compareuniforms](#model_compareuniforms), [model_cubemap](#model_cubemap), [model_delswitch](#model_delswitch), [model_destroy](#model_destroy), [model_fog](#model_fog), [model_from_mem](#model_from_mem), [model_get_bone_pose](#model_get_bone_pose), [model_get_bone_position](#model_get_bone_position), [model_getpass](#model_getpass), [model_has_transparency](#model_has_transparency), [model_has_transparency_mesh](#model_has_transparency_mesh), [model_light](#model_light), [model_lod](#model_lod), [model_probe](#model_probe), [model_render](#model_render), [model_render_instanced](#model_render_instanced), [model_render_instanced_pass](#model_render_instanced_pass), [model_render_pass](#model_render_pass), [model_render_skeleton](#model_render_skeleton), [model_rimlight](#model_rimlight), [model_set_frustum](#model_set_frustum), [model_set_texture](#model_set_texture), [model_setpass](#model_setpass), [model_setshader](#model_setshader), [model_setstyle](#model_setstyle), [model_shadow](#model_shadow), [model_skybox](#model_skybox), [model_sync](#model_sync), [model_texture_unit](#model_texture_unit), [model_uniforms_checksum](#model_uniforms_checksum), [msgpack](#msgpack), [msgpack_arr](#msgpack_arr), [msgpack_bin](#msgpack_bin), [msgpack_chr](#msgpack_chr), [msgpack_eof](#msgpack_eof), [msgpack_err](#msgpack_err), [msgpack_ext](#msgpack_ext), [msgpack_flt](#msgpack_flt), [msgpack_int](#msgpack_int), [msgpack_map](#msgpack_map), [msgpack_new](#msgpack_new), [msgpack_nil](#msgpack_nil), [msgpack_str](#msgpack_str), [msgpack_uns](#msgpack_uns), [msgunpack](#msgunpack), [msgunpack_arr](#msgunpack_arr), [msgunpack_bin](#msgunpack_bin), [msgunpack_chr](#msgunpack_chr), [msgunpack_dbl](#msgunpack_dbl), [msgunpack_eof](#msgunpack_eof), [msgunpack_err](#msgunpack_err), [msgunpack_ext](#msgunpack_ext), [msgunpack_flt](#msgunpack_flt), [msgunpack_int](#msgunpack_int), [msgunpack_map](#msgunpack_map), [msgunpack_new](#msgunpack_new), [msgunpack_nil](#msgunpack_nil), [msgunpack_str](#msgunpack_str), [msgunpack_uns](#msgunpack_uns), [mul2](#mul2), [mul3](#mul3), [mul4](#mul4), [muladd34](#muladd34), [mulq](#mulq), [multiply33x2](#multiply33x2), [multiply34](#multiply34), [multiply34x2](#multiply34x2), [multiply34x3](#multiply34x3), [multiply44](#multiply44), [multiply44x2](#multiply44x2), [multiply44x3](#multiply44x3), [mulv33](#mulv33), [neg2](#neg2), [neg3](#neg3), [neg4](#neg4), [negq](#negq), [netstring_bounds](#netstring_bounds), [netstring_decode](#netstring_decode), [netstring_encode](#netstring_encode), [network_buffer](#network_buffer), [network_create](#network_create), [network_event](#network_event), [network_get](#network_get), [network_put](#network_put), [network_rpc](#network_rpc), [network_rpc_send](#network_rpc_send), [network_rpc_send_to](#network_rpc_send_to), [network_sync](#network_sync), [network_tests](#network_tests), [node_anim](#node_anim), [node_batchable](#node_batchable), [node_billboard](#node_billboard), [node_compare](#node_compare), [node_diffuse](#node_diffuse), [node_model](#node_model), [node_model_shadow](#node_model_shadow), [node_move](#node_move), [node_pivot](#node_pivot), [node_position](#node_position), [node_rotate](#node_rotate), [node_scale](#node_scale), [node_teleport](#node_teleport), [norm2](#norm2), [norm3](#norm3), [norm3sq](#norm3sq), [norm4](#norm4), [norm4sq](#norm4sq), [normq](#normq), [obj_attach](#obj_attach), [obj_children](#obj_children), [obj_clone](#obj_clone), [obj_comp](#obj_comp), [obj_comp_fast](#obj_comp_fast), [obj_console](#obj_console), [obj_copy](#obj_copy), [obj_copy_fast](#obj_copy_fast), [obj_data](#obj_data), [obj_datac](#obj_datac), [obj_detach](#obj_detach), [obj_dumptree](#obj_dumptree), [obj_equal](#obj_equal), [obj_free](#obj_free), [obj_greater](#obj_greater), [obj_hash](#obj_hash), [obj_header](#obj_header), [obj_hexdump](#obj_hexdump), [obj_id](#obj_id), [obj_lesser](#obj_lesser), [obj_loadbin](#obj_loadbin), [obj_loadini](#obj_loadini), [obj_loadjson](#obj_loadjson), [obj_loadmpack](#obj_loadmpack), [obj_make](#obj_make), [obj_malloc](#obj_malloc), [obj_merge](#obj_merge), [obj_mergebin](#obj_mergebin), [obj_mergeini](#obj_mergeini), [obj_mergejson](#obj_mergejson), [obj_mergempack](#obj_mergempack), [obj_meta](#obj_meta), [obj_mutate](#obj_mutate), [obj_name](#obj_name), [obj_parent](#obj_parent), [obj_payload](#obj_payload), [obj_pop](#obj_pop), [obj_print](#obj_print), [obj_printf](#obj_printf), [obj_push](#obj_push), [obj_ref](#obj_ref), [obj_root](#obj_root), [obj_savebin](#obj_savebin), [obj_saveini](#obj_saveini), [obj_savejson](#obj_savejson), [obj_savempack](#obj_savempack), [obj_setmeta](#obj_setmeta), [obj_setname](#obj_setname), [obj_siblings](#obj_siblings), [obj_size](#obj_size), [obj_sizeof](#obj_sizeof), [obj_swap](#obj_swap), [obj_type](#obj_type), [obj_typeid](#obj_typeid), [obj_unref](#obj_unref), [obj_zero](#obj_zero), [OBJTYPEDEF](#OBJTYPEDEF), [option](#option), [optionf](#optionf), [optioni](#optioni), [ortho3](#ortho3), [ortho44](#ortho44), [pack16i](#pack16i), [pack32i](#pack32i), [pack64i](#pack64i), [pack64iv](#pack64iv), [pack64uv](#pack64uv), [pack754](#pack754), [PANIC](#PANIC), [pathfind_astar](#pathfind_astar), [perspective44](#perspective44), [plane4](#plane4), [pmod2](#pmod2), [pmod3](#pmod3), [pmod4](#pmod4), [pmodf](#pmodf), [poly_alloc](#poly_alloc), [poly_free](#poly_free), [popcnt64](#popcnt64), [portname](#portname), [pos44](#pos44), [pose](#pose), [postfx_apply](#postfx_apply), [postfx_begin](#postfx_begin), [postfx_clear](#postfx_clear), [postfx_create](#postfx_create), [postfx_destroy](#postfx_destroy), [postfx_drawpass](#postfx_drawpass), [postfx_drawpass_rs](#postfx_drawpass_rs), [postfx_enable](#postfx_enable), [postfx_enable_all](#postfx_enable_all), [postfx_enable_ordered](#postfx_enable_ordered), [postfx_enabled](#postfx_enabled), [postfx_end](#postfx_end), [postfx_load](#postfx_load), [postfx_name](#postfx_name), [postfx_order](#postfx_order), [postfx_pass](#postfx_pass), [postfx_program](#postfx_program), [postfx_setparam](#postfx_setparam), [postfx_setparam3](#postfx_setparam3), [postfx_setparam4](#postfx_setparam4), [postfx_setparami](#postfx_setparami), [postfx_setparamt](#postfx_setparamt), [print2](#print2), [print2i](#print2i), [print3](#print3), [print33](#print33), [print34](#print34), [print3i](#print3i), [print4](#print4), [print44](#print44), [PRINTF](#PRINTF), [printq](#printq), [profiler_enable](#profiler_enable), [ptr2](#ptr2), [ptr3](#ptr3), [ptr4](#ptr4), [ptrq](#ptrq), [pyramid](#pyramid), [quad_render](#quad_render), [quad_render_id](#quad_render_id), [quark](#quark), [quark_intern](#quark_intern), [quark_string](#quark_string), [query_test_point](#query_test_point), [rad](#rad), [rand64](#rand64), [randf](#randf), [randi](#randi), [randset](#randset), [ray_hit_aabb](#ray_hit_aabb), [ray_hit_plane](#ray_hit_plane), [ray_hit_sphere](#ray_hit_sphere), [ray_hit_triangle](#ray_hit_triangle), [ray_test_aabb](#ray_test_aabb), [ray_test_plane](#ray_test_plane), [ray_test_sphere](#ray_test_sphere), [ray_test_triangle](#ray_test_triangle), [record_active](#record_active), [record_start](#record_start), [record_stop](#record_stop), [refl2](#refl2), [refl3](#refl3), [refl4](#refl4), [relocate44](#relocate44), [renderstate](#renderstate), [renderstate_apply](#renderstate_apply), [renderstate_checksum](#renderstate_checksum), [renderstate_compare](#renderstate_compare), [rgba](#rgba), [rgbaf](#rgbaf), [rgbatoa](#rgbatoa), [rnd3](#rnd3), [rotate33](#rotate33), [rotate3q](#rotate3q), [rotate3q_2](#rotate3q_2), [rotate44](#rotate44), [rotatex3](#rotatex3), [rotatey3](#rotatey3), [rotatez3](#rotatez3), [rotation33](#rotation33), [rotation44](#rotation44), [rotationq](#rotationq), [rotationq33](#rotationq33), [rotationq44](#rotationq44), [save_input](#save_input), [saveb](#saveb), [savef](#savef), [scale2](#scale2), [scale3](#scale3), [scale33](#scale33), [scale34](#scale34), [scale4](#scale4), [scale44](#scale44), [scaleq](#scaleq), [scaling33](#scaling33), [scaling44](#scaling44), [scene_merge](#scene_merge), [scene_render](#scene_render), [screenshot](#screenshot), [screenshot_async](#screenshot_async), [script_bind_class](#script_bind_class), [script_bind_function](#script_bind_function), [script_call](#script_call), [script_init](#script_init), [script_init_env](#script_init_env), [script_pop](#script_pop), [script_push](#script_push), [script_run](#script_run), [script_runfile](#script_runfile), [script_tests](#script_tests), [semver](#semver), [semvercmp](#semvercmp), [server_bind](#server_bind), [server_broadcast](#server_broadcast), [server_broadcast_bin](#server_broadcast_bin), [server_broadcast_bin_flags](#server_broadcast_bin_flags), [server_broadcast_flags](#server_broadcast_flags), [server_drop](#server_drop), [server_poll](#server_poll), [server_send](#server_send), [server_send_bin](#server_send_bin), [server_terminate](#server_terminate), [set_clear](#set_clear), [set_count](#set_count), [set_erase](#set_erase), [set_find](#set_find), [set_free](#set_free), [set_gc](#set_gc), [set_init](#set_init), [set_insert](#set_insert), [set_isempty](#set_isempty), [shader](#shader), [shader_apply_param](#shader_apply_param), [shader_apply_params](#shader_apply_params), [shader_bind](#shader_bind), [shader_bool](#shader_bool), [shader_cubemap](#shader_cubemap), [shader_destroy](#shader_destroy), [shader_float](#shader_float), [shader_geom](#shader_geom), [shader_get_active](#shader_get_active), [shader_image](#shader_image), [shader_image_unit](#shader_image_unit), [shader_int](#shader_int), [shader_mat44](#shader_mat44), [shader_properties](#shader_properties), [shader_property](#shader_property), [shader_texture](#shader_texture), [shader_uint](#shader_uint), [shader_uniform](#shader_uniform), [shader_vec2](#shader_vec2), [shader_vec3](#shader_vec3), [shader_vec3v](#shader_vec3v), [shader_vec4](#shader_vec4), [shadertoy](#shadertoy), [shadertoy_render](#shadertoy_render), [shadowmap](#shadowmap), [shadowmap_begin](#shadowmap_begin), [shadowmap_destroy](#shadowmap_destroy), [shadowmap_end](#shadowmap_end), [shadowmap_light](#shadowmap_light), [shadowmap_offsets_build](#shadowmap_offsets_build), [shadowmap_step](#shadowmap_step), [signf](#signf), [simplex1](#simplex1), [simplex2](#simplex2), [simplex3](#simplex3), [simplex4](#simplex4), [skybox](#skybox), [skybox_calc_sh](#skybox_calc_sh), [skybox_destroy](#skybox_destroy), [skybox_mie_calc_sh](#skybox_mie_calc_sh), [skybox_pbr](#skybox_pbr), [skybox_pop_state](#skybox_pop_state), [skybox_push_state](#skybox_push_state), [skybox_render](#skybox_render), [skybox_sh_add_light](#skybox_sh_add_light), [skybox_sh_reset](#skybox_sh_reset), [skybox_sh_shader](#skybox_sh_shader), [sleep_ms](#sleep_ms), [sleep_ns](#sleep_ns), [sleep_ss](#sleep_ss), [sleep_us](#sleep_us), [slerpf](#slerpf), [slerpq](#slerpq), [sphere_closest_point](#sphere_closest_point), [sphere_hit_aabb](#sphere_hit_aabb), [sphere_hit_capsule](#sphere_hit_capsule), [sphere_hit_sphere](#sphere_hit_sphere), [sphere_test_aabb](#sphere_test_aabb), [sphere_test_capsule](#sphere_test_capsule), [sphere_test_sphere](#sphere_test_sphere), [spine](#spine), [spine_animate](#spine_animate), [spine_render](#spine_render), [spine_skin](#spine_skin), [sprite](#sprite), [sprite_ctor](#sprite_ctor), [sprite_del](#sprite_del), [sprite_draw](#sprite_draw), [sprite_dtor](#sprite_dtor), [sprite_edit](#sprite_edit), [sprite_flush](#sprite_flush), [sprite_new](#sprite_new), [sprite_rect](#sprite_rect), [sprite_setanim](#sprite_setanim), [sprite_sheet](#sprite_sheet), [sprite_tick](#sprite_tick), [ssbo_bind](#ssbo_bind), [ssbo_create](#ssbo_create), [ssbo_destroy](#ssbo_destroy), [ssbo_map](#ssbo_map), [ssbo_unbind](#ssbo_unbind), [ssbo_unmap](#ssbo_unmap), [ssbo_update](#ssbo_update), [stack](#stack), [steam_destroy](#steam_destroy), [steam_init](#steam_init), [steam_screenshot](#steam_screenshot), [steam_tick](#steam_tick), [steam_trophy](#steam_trophy), [storage_flush](#storage_flush), [storage_mount](#storage_mount), [storage_read](#storage_read), [strbeg](#strbeg), [strbegi](#strbegi), [strcatf](#strcatf), [strcmp_qsort](#strcmp_qsort), [strcmpi_qsort](#strcmpi_qsort), [strcut](#strcut), [strend](#strend), [strendi](#strendi), [string32](#string32), [string8](#string8), [strjoin](#strjoin), [strlcat](#strlcat), [strlcpy](#strlcpy), [strlerp](#strlerp), [strlower](#strlower), [strmatch](#strmatch), [strmatchi](#strmatchi), [strrepl](#strrepl), [strsplit](#strsplit), [strstri](#strstri), [strswap](#strswap), [strtok_s](#strtok_s), [struct_inscribe](#struct_inscribe), [strupper](#strupper), [sub2](#sub2), [sub3](#sub3), [sub4](#sub4), [subq](#subq), [swap16](#swap16), [swap32](#swap32), [swap32f](#swap32f), [swap64](#swap64), [swap64f](#swap64f), [swapf](#swapf), [swapf2](#swapf2), [swapf3](#swapf3), [swapf4](#swapf4), [swarm](#swarm), [swarm_update](#swarm_update), [swarm_update_acceleration_and_velocity_only](#swarm_update_acceleration_and_velocity_only), [swarm_update_acceleration_only](#swarm_update_acceleration_only), [symbol_naked](#symbol_naked), [tcp_bind](#tcp_bind), [tcp_close](#tcp_close), [tcp_debug](#tcp_debug), [tcp_host](#tcp_host), [tcp_open](#tcp_open), [tcp_peek](#tcp_peek), [tcp_port](#tcp_port), [tcp_recv](#tcp_recv), [tcp_send](#tcp_send), [tempva](#tempva), [tempvl](#tempvl), [test](#test), [texture](#texture), [texture_checker](#texture_checker), [texture_compressed](#texture_compressed), [texture_compressed_from_mem](#texture_compressed_from_mem), [texture_create](#texture_create), [texture_destroy](#texture_destroy), [texture_from_mem](#texture_from_mem), [texture_params](#texture_params), [texture_rec_begin](#texture_rec_begin), [texture_rec_end](#texture_rec_end), [texture_update](#texture_update), [thread](#thread), [thread_destroy](#thread_destroy), [tiled](#tiled), [tiled_render](#tiled_render), [tilemap](#tilemap), [tilemap_render](#tilemap_render), [tilemap_render_ext](#tilemap_render_ext), [tileset](#tileset), [time_hh](#time_hh), [time_mm](#time_mm), [time_ms](#time_ms), [time_ns](#time_ns), [time_ss](#time_ss), [time_us](#time_us), [timer](#timer), [timer_destroy](#timer_destroy), [transform33](#transform33), [transform344](#transform344), [transform444](#transform444), [transformq](#transformq), [translate44](#translate44), [translation44](#translation44), [transpose44](#transpose44), [trap_install](#trap_install), [trap_name](#trap_name), [trap_on_abort](#trap_on_abort), [trap_on_debug](#trap_on_debug), [trap_on_ignore](#trap_on_ignore), [trap_on_quit](#trap_on_quit), [tty_attach](#tty_attach), [tty_color](#tty_color), [tty_detach](#tty_detach), [tty_reset](#tty_reset), [tween](#tween), [tween_delkey](#tween_delkey), [tween_destroy](#tween_destroy), [tween_reset](#tween_reset), [tween_setkey](#tween_setkey), [tween_update](#tween_update), [type_inscribe](#type_inscribe), [ubo_bind](#ubo_bind), [ubo_create](#ubo_create), [ubo_destroy](#ubo_destroy), [ubo_unbind](#ubo_unbind), [ubo_update](#ubo_update), [udp_bind](#udp_bind), [udp_open](#udp_open), [udp_peek](#udp_peek), [udp_recv](#udp_recv), [udp_send](#udp_send), [udp_sendto](#udp_sendto), [ui_active](#ui_active), [ui_atlas](#ui_atlas), [ui_atlas_frame](#ui_atlas_frame), [ui_audio](#ui_audio), [ui_bitmask16](#ui_bitmask16), [ui_bitmask8](#ui_bitmask8), [ui_bool](#ui_bool), [ui_browse](#ui_browse), [ui_bt](#ui_bt), [ui_buffer](#ui_buffer), [ui_button](#ui_button), [ui_button_transparent](#ui_button_transparent), [ui_buttons](#ui_buttons), [ui_camera](#ui_camera), [ui_clampf](#ui_clampf), [ui_clampf_](#ui_clampf_), [ui_collapse](#ui_collapse), [ui_collapse_clicked](#ui_collapse_clicked), [ui_collapse_end](#ui_collapse_end), [ui_collapseo](#ui_collapseo), [ui_color3](#ui_color3), [ui_color3f](#ui_color3f), [ui_color4](#ui_color4), [ui_color4f](#ui_color4f), [ui_colormap](#ui_colormap), [ui_console](#ui_console), [ui_contextual](#ui_contextual), [ui_contextual_end](#ui_contextual_end), [ui_demo](#ui_demo), [ui_dialog](#ui_dialog), [ui_dims](#ui_dims), [ui_disable](#ui_disable), [ui_double](#ui_double), [ui_enable](#ui_enable), [ui_enabled](#ui_enabled), [ui_engine](#ui_engine), [ui_float](#ui_float), [ui_float2](#ui_float2), [ui_float2_](#ui_float2_), [ui_float3](#ui_float3), [ui_float3_](#ui_float3_), [ui_float4](#ui_float4), [ui_float4_](#ui_float4_), [ui_float_](#ui_float_), [ui_font](#ui_font), [ui_fx](#ui_fx), [ui_fxs](#ui_fxs), [ui_gamepad](#ui_gamepad), [ui_gamepads](#ui_gamepads), [ui_get_dims](#ui_get_dims), [ui_handle](#ui_handle), [ui_has_menubar](#ui_has_menubar), [ui_hide](#ui_hide), [ui_hover](#ui_hover), [ui_image](#ui_image), [ui_int](#ui_int), [ui_item](#ui_item), [ui_keyboard](#ui_keyboard), [ui_label](#ui_label), [ui_label2](#ui_label2), [ui_label2_bool](#ui_label2_bool), [ui_label2_float](#ui_label2_float), [ui_label2_toolbar](#ui_label2_toolbar), [ui_light](#ui_light), [ui_lights](#ui_lights), [ui_list](#ui_list), [ui_mat33](#ui_mat33), [ui_mat34](#ui_mat34), [ui_mat44](#ui_mat44), [ui_material](#ui_material), [ui_materials](#ui_materials), [ui_menu](#ui_menu), [ui_menu_editbox](#ui_menu_editbox), [ui_mouse](#ui_mouse), [ui_notify](#ui_notify), [ui_panel](#ui_panel), [ui_panel_end](#ui_panel_end), [ui_popups](#ui_popups), [ui_postfx](#ui_postfx), [ui_postfxs](#ui_postfxs), [ui_radio](#ui_radio), [ui_reflect](#ui_reflect), [ui_section](#ui_section), [ui_separator](#ui_separator), [ui_shader](#ui_shader), [ui_shaders](#ui_shaders), [ui_shadowmap](#ui_shadowmap), [ui_short](#ui_short), [ui_show](#ui_show), [ui_slider](#ui_slider), [ui_slider2](#ui_slider2), [ui_spine](#ui_spine), [ui_steam](#ui_steam), [ui_string](#ui_string), [ui_subimage](#ui_subimage), [ui_submenu](#ui_submenu), [ui_subtexture](#ui_subtexture), [ui_swarm](#ui_swarm), [ui_texture](#ui_texture), [ui_tiled](#ui_tiled), [ui_tileset](#ui_tileset), [ui_toggle](#ui_toggle), [ui_toolbar](#ui_toolbar), [ui_unsigned](#ui_unsigned), [ui_unsigned2](#ui_unsigned2), [ui_unsigned3](#ui_unsigned3), [ui_visible](#ui_visible), [ui_window](#ui_window), [ui_window_end](#ui_window_end), [unhash_32](#unhash_32), [unmixf](#unmixf), [unpack16i](#unpack16i), [unpack32i](#unpack32i), [unpack64i](#unpack64i), [unpack64iv](#unpack64iv), [unpack64uv](#unpack64uv), [unpack754](#unpack754), [unproject44](#unproject44), [vec23](#vec23), [vec34](#vec34), [vec3q](#vec3q), [vec4q](#vec4q), [vfs_handle](#vfs_handle), [vfs_list](#vfs_list), [vfs_load](#vfs_load), [vfs_mount](#vfs_mount), [vfs_read](#vfs_read), [vfs_reload](#vfs_reload), [vfs_resolve](#vfs_resolve), [vfs_size](#vfs_size), [video](#video), [video_decode](#video_decode), [video_destroy](#video_destroy), [video_duration](#video_duration), [video_has_finished](#video_has_finished), [video_is_paused](#video_is_paused), [video_is_rgb](#video_is_rgb), [video_pause](#video_pause), [video_position](#video_position), [video_seek](#video_seek), [video_textures](#video_textures), [viewport_area](#viewport_area), [viewport_clear](#viewport_clear), [viewport_clip](#viewport_clip), [viewport_color](#viewport_color), [vlen](#vlen), [vrealloc](#vrealloc), [watch](#watch), [window_aspect](#window_aspect), [window_aspect_lock](#window_aspect_lock), [window_aspect_unlock](#window_aspect_unlock), [window_canvas](#window_canvas), [window_clipboard](#window_clipboard), [window_color](#window_color), [window_create](#window_create), [window_create_from_handle](#window_create_from_handle), [window_cursor](#window_cursor), [window_cursor_shape](#window_cursor_shape), [window_debug](#window_debug), [window_delta](#window_delta), [window_destroy](#window_destroy), [window_dpi](#window_dpi), [window_focus](#window_focus), [window_fps](#window_fps), [window_fps_lock](#window_fps_lock), [window_fps_target](#window_fps_target), [window_fps_unlock](#window_fps_unlock), [window_fps_vsync](#window_fps_vsync), [window_frame](#window_frame), [window_frame_begin](#window_frame_begin), [window_frame_end](#window_frame_end), [window_frame_swap](#window_frame_swap), [window_fullscreen](#window_fullscreen), [window_handle](#window_handle), [window_has_cursor](#window_has_cursor), [window_has_debug](#window_has_debug), [window_has_focus](#window_has_focus), [window_has_fullscreen](#window_has_fullscreen), [window_has_icon](#window_has_icon), [window_has_maximize](#window_has_maximize), [window_has_pause](#window_has_pause), [window_has_transparent](#window_has_transparent), [window_has_visible](#window_has_visible), [window_height](#window_height), [window_icon](#window_icon), [window_loop](#window_loop), [window_loop_exit](#window_loop_exit), [window_maximize](#window_maximize), [window_msaa](#window_msaa), [window_pause](#window_pause), [window_record](#window_record), [window_reload](#window_reload), [window_screenshot](#window_screenshot), [window_set_resolution](#window_set_resolution), [window_setclipboard](#window_setclipboard), [window_stats](#window_stats), [window_swap](#window_swap), [window_time](#window_time), [window_title](#window_title), [window_transparent](#window_transparent), [window_visible](#window_visible), [window_width](#window_width), [write_barrier](#write_barrier), [write_barrier_image](#write_barrier_image), [xml_blob](#xml_blob), [xml_count](#xml_count), [xml_pop](#xml_pop), [xml_push](#xml_push), [xml_string](#xml_string), [xrealloc](#xrealloc), [xsize](#xsize), [xstats](#xstats), [zag64](#zag64), [zbounds](#zbounds), [zdecode](#zdecode), [zencode](#zencode), [zexcess](#zexcess) ## 🄼 macros [aabb](#aabb), [acosf](#acosf), [array](#array), [array_at](#array_at), [array_back](#array_back), [array_bytes](#array_bytes), [array_cast](#array_cast), [array_clear](#array_clear), [array_copy](#array_copy), [array_count](#array_count), [array_data](#array_data), [array_empty](#array_empty), [array_erase_fast](#array_erase_fast), [array_erase_slow](#array_erase_slow), [array_foreach](#array_foreach), [array_foreach_ptr](#array_foreach_ptr), [array_free](#array_free), [array_init](#array_init), [array_insert](#array_insert), [array_pop](#array_pop), [array_pop_front](#array_pop_front), [array_push](#array_push), [array_push_front](#array_push_front), [array_realloc_](#array_realloc_), [array_reserve](#array_reserve), [array_resize](#array_resize), [array_reverse](#array_reverse), [array_search](#array_search), [array_shuffle](#array_shuffle), [array_sort](#array_sort), [array_unique](#array_unique), [array_vlen_](#array_vlen_), [asinf](#asinf), [atan2f](#atan2f), [axis](#axis), [benchmark](#benchmark), [benchmark_ms](#benchmark_ms), [boid](#boid), [byte2](#byte2), [byte3](#byte3), [byte4](#byte4), [capsule](#capsule), [cc3](#cc3), [cc4](#cc4), [cc5](#cc5), [cc6](#cc6), [cc7](#cc7), [cc8](#cc8), [ceilf](#ceilf), [concat](#concat), [copysignf](#copysignf), [cosf](#cosf), [countof](#countof), [defer](#defer), [do_once](#do_once), [double2](#double2), [double3](#double3), [double4](#double4), [each_array](#each_array), [each_array_ptr](#each_array_ptr), [each_map](#each_map), [each_map_ptr](#each_map_ptr), [each_map_ptr_sorted](#each_map_ptr_sorted), [each_member](#each_member), [each_objchild](#each_objchild), [each_objmember](#each_objmember), [each_set](#each_set), [each_set_ptr](#each_set_ptr), [each_substring](#each_substring), [entity_addcomponent](#entity_addcomponent), [entity_delcomponent](#entity_delcomponent), [entity_getcomponent](#entity_getcomponent), [entity_hascomponent](#entity_hascomponent), [entity_new](#entity_new), [entity_new_ext](#entity_new_ext), [entity_offcomponent](#entity_offcomponent), [entity_save](#entity_save), [entity_usecomponent](#entity_usecomponent), [expf](#expf), [float2](#float2), [float3](#float3), [float4](#float4), [floorf](#floorf), [fmodf](#fmodf), [frustum](#frustum), [gui_button](#gui_button), [gui_button_label](#gui_button_label), [gui_label](#gui_label), [gui_panel](#gui_panel), [gui_rect](#gui_rect), [gui_slider](#gui_slider), [gui_slider_label](#gui_slider_label), [hit](#hit), [hton16](#hton16), [hton32](#hton32), [hton64](#hton64), [hypotf](#hypotf), [ifdef](#ifdef), [ifdef_32](#ifdef_32), [ifdef_64](#ifdef_64), [ifdef_bsd](#ifdef_bsd), [ifdef_c](#ifdef_c), [ifdef_cl](#ifdef_cl), [ifdef_cook](#ifdef_cook), [ifdef_cpp](#ifdef_cpp), [ifdef_debug](#ifdef_debug), [ifdef_ems](#ifdef_ems), [ifdef_false](#ifdef_false), [ifdef_gcc](#ifdef_gcc), [ifdef_linux](#ifdef_linux), [ifdef_mingw](#ifdef_mingw), [ifdef_nocook](#ifdef_nocook), [ifdef_O0](#ifdef_O0), [ifdef_O1](#ifdef_O1), [ifdef_O2](#ifdef_O2), [ifdef_O3](#ifdef_O3), [ifdef_osx](#ifdef_osx), [ifdef_release](#ifdef_release), [ifdef_retail](#ifdef_retail), [ifdef_reversez](#ifdef_reversez), [ifdef_tcc](#ifdef_tcc), [ifdef_true](#ifdef_true), [ifdef_win32](#ifdef_win32), [ifndef](#ifndef), [int2](#int2), [int3](#int3), [int4](#int4), [is](#is), [isnt](#isnt), [json_count](#json_count), [json_float](#json_float), [json_int](#json_int), [json_key](#json_key), [json_string](#json_string), [line](#line), [log10f](#log10f), [logf](#logf), [macro](#macro), [map](#map), [map_cast](#map_cast), [map_clear](#map_clear), [map_count](#map_count), [map_erase](#map_erase), [map_find](#map_find), [map_find_or_add](#map_find_or_add), [map_find_or_add_allocated_key](#map_find_or_add_allocated_key), [map_foreach](#map_foreach), [map_foreach_ptr](#map_foreach_ptr), [map_foreach_ptr_sorted](#map_foreach_ptr_sorted), [map_free](#map_free), [map_gc](#map_gc), [map_init](#map_init), [map_init_int](#map_init_int), [map_init_ptr](#map_init_ptr), [map_init_str](#map_init_str), [map_insert](#map_insert), [map_isempty](#map_isempty), [mat33](#mat33), [mat34](#mat34), [mat44](#mat44), [model_uniform](#model_uniform), [ntoh16](#ntoh16), [ntoh32](#ntoh32), [ntoh64](#ntoh64), [obj](#obj), [obj_aabb](#obj_aabb), [obj_ctor](#obj_ctor), [obj_draw](#obj_draw), [obj_dtor](#obj_dtor), [obj_edit](#obj_edit), [obj_extend](#obj_extend), [obj_extend_t](#obj_extend_t), [obj_hasmethod](#obj_hasmethod), [obj_icon](#obj_icon), [obj_init](#obj_init), [obj_lerp](#obj_lerp), [obj_load](#obj_load), [obj_menu](#obj_menu), [obj_method](#obj_method), [obj_new](#obj_new), [obj_new_ext](#obj_new_ext), [obj_printf](#obj_printf), [obj_quit](#obj_quit), [obj_save](#obj_save), [obj_test](#obj_test), [obj_tick](#obj_tick), [obj_vtable](#obj_vtable), [obj_vtable_null](#obj_vtable_null), [pack754_16](#pack754_16), [pack754_32](#pack754_32), [pack754_64](#pack754_64), [pack754_8](#pack754_8), [plane](#plane), [poly](#poly), [powf](#powf), [profile](#profile), [profile_incstat](#profile_incstat), [profile_setstat](#profile_setstat), [profiler_enable](#profiler_enable), [profiler_init](#profiler_init), [quat](#quat), [ray](#ray), [scope](#scope), [set](#set), [set_cast](#set_cast), [set_clear](#set_clear), [set_count](#set_count), [set_erase](#set_erase), [set_find](#set_find), [set_find_or_add](#set_find_or_add), [set_find_or_add_allocated_key](#set_find_or_add_allocated_key), [set_foreach](#set_foreach), [set_foreach_ptr](#set_foreach_ptr), [set_free](#set_free), [set_gc](#set_gc), [set_init](#set_init), [set_init_int](#set_init_int), [set_init_ptr](#set_init_ptr), [set_init_str](#set_init_str), [set_insert](#set_insert), [set_isempty](#set_isempty), [sinf](#sinf), [sphere](#sphere), [sqrtf](#sqrtf), [strcatf](#strcatf), [strcmpi](#strcmpi), [stringf](#stringf), [strtok_r](#strtok_r), [swap16](#swap16), [swap32](#swap32), [swap64](#swap64), [tanf](#tanf), [test](#test), [triangle](#triangle), [ui_profiler](#ui_profiler), [uint2](#uint2), [uint3](#uint3), [uint4](#uint4), [unique](#unique), [unpack754_16](#unpack754_16), [unpack754_32](#unpack754_32), [unpack754_64](#unpack754_64), [unpack754_8](#unpack754_8), [va](#va), [vac](#vac), [vec2](#vec2), [vec2i](#vec2i), [vec3](#vec3), [vec3i](#vec3i), [vec4](#vec4), [xml_blob](#xml_blob), [xml_count](#xml_count), [xml_float](#xml_float), [xml_int](#xml_int)