0.0.1 • Published 4 years ago

webgfx v0.0.1

Weekly downloads
5
License
LICENSE
Repository
github
Last release
4 years ago

webgfx

A minimal graphics library inspired by three.js written in Rust, compiled to wasm in order to be as fast as possible in the browser. Initially rendered via WebGL with an eye towards WebGPU and modern browser developments. Currently probably slower than using webgl directly from js (see Future section)

How to install

npm install webgfx

How to use

index.html

<html>
<body>
  <script module="">
  <canvas id="canvas"></canvas>
</body>
</html>

index.js

import { BoxGeometry, Mesh, MeshBasicMaterial, PerspectiveCamera, Renderer, Scene } from 'webgfx';

// 1. Build the Scene
const geometry = new BoxGeometry(1, 1, 1);
const material = new MeshBasicMaterial();
const cube = new Mesh(geometry, material);
const scene = new Scene();
scene.add(cube);

// 2. Render the Scene statically (not in an animation loop)
const camera = new PerspectiveCamera();
const canvas = document.getElementById('canvas');
const renderer = new WebGLRenderer({ canvas });
renderer.render(scene, camera);

Future

This library probably isn't usable until the following are implemented fully: