rusty-wacc-viewer

By RancidBacon

Rusty-wacc-viewer Alternatives

Similar projects and alternatives to rusty-wacc-viewer

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better rusty-wacc-viewer alternative or higher similarity.

rusty-wacc-viewer reviews and mentions

Posts with mentions or reviews of rusty-wacc-viewer. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-08-08.
  • Why WebAssembly is innovative even outside the browser
    11 projects | news.ycombinator.com | 8 Aug 2021
    While a "host" application (for the WASM runtime used) is required to enable access to graphical output (or user input) it doesn't have to be a browser.

    At the (almost) most basic level a chunk of memory can be used as a framebuffer--the host application would read the pixel data which the WASM bytecode wrote and then write it to the host display via OS-level routines.

    There are some plans/experiments at making a framebuffer "device" available as part of WASI.

    I've written a couple of graphical WASM host applications that aren't browsers (and which don't use memory for pixel data transfer just integer values returned from a function):

    The "WebAssembly Calling Card (WACC) Viewer" is implemented via the Godot game engine and an addon that integrates the Wasmtime WASM runtime with the engine: https://wacc.rancidbacon.com

    (Also implemented a WACC Viewer in Rust: https://gitlab.com/RancidBacon/rusty-wacc-viewer)

    WACC specifies how to transform three integer values (returned from a function in a WASM module) into a coloured triangle in order to render it on screen.

    Another "host application" I implemented was a libretro compatible plugin that loads a WASM module and then feeds the module with input from libretro & retrieves framebuffer pixel data (one pixel at a time :D ) via a WASM function call & writes it to the libretro framebuffer for display.