Git Product home page Git Product logo

rend3's Introduction

rend3

GitHub Workflow Status Crates.io Documentation License Matrix Discord

Easy to use, customizable, efficient 3D renderer library built on wgpu.

Library is under active development. While internals will likely change quite a bit, the external api will only experience minor changes as features are added.

To use rend3 add the following to your Cargo.toml:

rend3 = "0.2.0"

Screenshots

scifi-base emerald-square example

Examples

Take a look at the examples getting started with the api.

Purpose

rend3 tries to fulfill the following usecases:

  1. Games and visualizations that need a customizable, and efficient renderer.
  2. Small projects that just want to put objects on screen, but want lighting and effects.
  3. A small cog in a big machine: a renderer doesn't interfere with the rest of the program.

rend3 is not:

  1. A framework or engine. It does not include all the parts needed to make an advanced game or simulation nor care how you structure your program. I do have plans for a rend3-util (or similar) crate that is a very basic framework for the second use case listed above.

Helper Crates

This is the primary crate which holds the main [Renderer] struct. We have some other crates:

  • rend3-gltf: contains code to load from a .gltf or .glb file.
  • rend3-routine: contains render routines for drawing PBR-style objects.

GPU Culling

On Vulkan and DX12 "gpu mode" is enabled by default, which uses modern bindless resources and gpu-based culling. This reduces CPU load and allows significantly more powerful culling.

Future Plans

I have grand plans for this library. An overview can be found in the issue tracker under the enhancement label.

Matrix Chatroom

We have a matrix chatroom that you can come and join if you want to chat about using rend3 or developing it:

Matrix

If discord is more your style, our meta project has a channel which mirrors the matrix:

Discord

Helping Out

We welcome all contributions and ideas. If you want to participate or have ideas for this library, we'd love to hear them!

License: MIT OR Apache-2.0 OR Zlib

rend3's People

Contributors

catcode79 avatar cedric-h avatar cwfitzgerald avatar dasifefe avatar dependabot-preview[bot] avatar dependabot[bot] avatar jamen avatar liamcs98 avatar mindswipe avatar noxime avatar rustynixietube avatar scoopr avatar setzer22 avatar zarik5 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.