Skip to content
This repository has been archived by the owner on May 18, 2023. It is now read-only.

justahero/noire-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

noire-rs

A minimal 3d rendering library written in Rust, it's mostly a port from existing code. It is first and foremost designed to experiment with Open GL shaders.

Build

First install cargo-watch to constantly compile the project while changing code.

cargo install cargo-watch

Then run the watch task

cargo watch -c -x "+nightly build"

Examples

There are a number of example applications using this library, found in the examples folder. Run

cargo run --example

to list the examples.

To run one example. e.g. triangles run

cargo run --example triangles

The latter example also supports live editing of the shader files, check shader files, open files in ./examples/triangles/shaders in your text editor, edit and save it. If the new shader code compiles successfully, changes are applied immediately or otherwise error logs are displayed in the terminal.

Other Frameworks / Projects

Low level libraries

  • cgmath - a linear algebra and math library for computer graphics
  • gfx-rs/wgpu - an idiomatic wrapper library around WebGPU implementation
  • image - a fast image processing library
  • spirv-reflect - a reflection API to analyze SPIR-V shader byte code
  • ultraviolent - a fast linear & geometric algebra library
  • winit - a cross platform window handling library

Engines / Frameworks

  • amethyst - data driven & data oriented game engine
  • bevy - a modern data driven engine
  • coffee - a 2D game engine
  • ggez - a 2D game engine to create Good Game Easily
  • piston - a modular game engine, one of the first written
  • p5.js - a JavaScript library for creative coding based on processing

About

A small 3d rendering engine written in Rust and OpenGL

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages