Skip to content

Port Konstructs to run as a web app using WebGL under Emscripten with asm.js/wasm? #237

@satoshinm

Description

@satoshinm

Hello, curious if there is any interest in adding a "web browser platform" target to Konstructs (in addition to the current platforms of Linux, Windows, and Mac), taking advantage of WebGL and asm.js/wasm through emscripten? The end goal being to allow the Konstructs client to run directly in modern web browsers, and connect to servers with no need to download/install native software.

I found Konstructs after having gotten a basic port of Craft, Konstruct's predecessor, to function in the browser via Emscripten: fogleman/Craft#175 - and began searching for more developed forks of Craft. There's a lot of advanced features in Konstructs and I understand it is now no longer a fork, so it could be a promising alternative for this purpose if there is interest.

Here's what I have so far:

The biggest hurdle I see is Konstructs heavily relies on #version 330 GLSL shaders, using features not available in WebGL 1's version of GLSL equivalent to #version 100. Maybe would be more feasible after WebGL 2 is widely available, based on OpenGL ES 3.0, supporting these new features. The Nanogui library should also be possible to port, though I haven't gotten that far yet, and have abandoned development for now.

Current status: some progress but nonfunctional, posting this in case anyone wants to pick it up and develop further.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions