Commit Graph

  • 04028b29d3 Used __builtin_wasm_memory_size(0) instead of having the Javascript code call init_mem with the initial page count. Added a simple <div> below the canvas that can hold any number of labels that can be filled/updated through jsSetLabel which lives in a new file misc_functions.js. main Taylor Robbins 2025-09-02 16:05:53 -07:00
  • f45c2d88e0 Added some simple background textures from OpenGameArt.org and rendered them with a little parallax effect Taylor Robbins 2025-09-02 12:20:11 -07:00
  • 3aee6123c6 Removed unneeded semicolons in macros for memset, memcpy, and memmove in std/string.h Taylor Robbins 2025-09-02 12:00:25 -07:00
  • bed90ad8e1 Small change to test_app.c. Committing as I'm reconfiguring local clone of the repo so I don't lose the work Taylor Robbins 2025-09-02 11:58:49 -07:00
  • f2d590be13 Added an asynchronous resource loading mechanism through App_GetResourcePath and App_ResourceLoaded. Added stb_image.h and used it to parse a .png file loaded from the server and upload it to app.testTexture. There is some ugliness around the edges images with transparency, probably caused by something pre-multiplied alpha related. Taylor Robbins 2025-09-02 11:43:19 -07:00
  • 1a9775d670 Added cwasm_vectors.c and cwasm_matrices.c. Vectors API is completely finished, Matrices API is partially finished. Added Clamp(value, min, max) macro to cwasm.h. Fixed types on jsGl functions that take vectors or matrices (and Arena*). Taylor Robbins 2025-09-02 00:15:03 -07:00
  • b62f0d279b Add cAllocMem to cwasm.c which the javascript side can use to allocate memory from an opaque Arena pointer that was passed to it. Used this to implement jsGlGetParameterString, jsGlGetShaderInfoLog, and jsGlGetProgramInfoLog in gl_functions.js. Added NotNull macro and fixed bug in ScratchBegin macro. Added a bool return for App_Initialize which allows us to stop the main loop from beginning (which prevents log spew when something goes wrong) Taylor Robbins 2025-09-01 21:53:24 -07:00
  • 7c61189d3a Added texture related functions to gl_functions.js Taylor Robbins 2025-09-01 20:46:25 -07:00
  • 81f5457b61 Added some more WebGL functions to gl_functions.js. Made the test_app render something more interesting. Added a bool return from App_UpdateAndRender which allows it to request that the application loop ends. Taylor Robbins 2025-09-01 19:21:47 -07:00
  • 42cf6d9e9f Added a bunch of WebGL functions related to shader uniforms to gl_functions.js Taylor Robbins 2025-09-01 18:50:14 -07:00
  • b548b7bb26 Set up a basic "front-end" for the webassembly module to be tested locally from a data folder (I use python -m http.server). The WebAssembly application is now responsible for all setup/rendering through the WebGL2 context. Taylor Robbins 2025-09-01 12:13:56 -07:00
  • cca61ea163 Added cwasm_arena.c and cwasm_debug.c. Arena API hasn't been tested well yet. There's also something wrong with our DebugOutputLineBuffer usage for splitting lines to multiple Javascript output calls. Also added an int level to jsStdPrint and a bunch of macros to cwasm.h Taylor Robbins 2025-08-31 17:33:48 -07:00
  • d0aa7a1d0e Added math.h, stdlib.h, float.h, and stbool.h to std folder (and all their implementations). Opted to NOT implement malloc/free/etc. in favor of having our own functions init_mem, grow_mem, and get_mem. Taylor Robbins (Piggybank Studios) 2025-08-28 13:20:08 -07:00
  • deae3ccd12 Got a basic WebAssembly module compiling with support for calling jsStdPrint through printf implementation (provided by stb_sprintf.h). We have a single function "HelloFromWasm" exported for testing purposes. Pulled in a bunch of standard library headers from PigCore's wasm layer. Taylor Robbins (Piggybank Studios) 2025-08-28 09:44:32 -07:00
  • aa2faca658 Initial commit robbitay 2025-08-28 14:41:57 +00:00