17 releases (8 breaking)
0.10.4 | Jan 10, 2019 |
---|---|
0.10.2 |
|
0.9.0 | Oct 23, 2018 |
0.7.0 | May 19, 2018 |
0.3.0 | Mar 31, 2016 |
#42 in #amethyst
844 downloads per month
Used in 7 crates
(2 directly)
575KB
13K
SLoC
Amethyst - Rendering Engine
High-level rendering engine with multiple backends. This project is a work in progress and is very incomplete. Pardon the dust!
lib.rs
:
A data parallel rendering engine developed by the Amethyst project.
The source code is available for download on GitHub. See the online book for a complete guide to using Amethyst.
Background
This crate provides OpenGL graphics rendering functionality through various rendering passes. The rendering passes may handle different domains of rendering, such as "draw game objects" vs "render text"; or they can handle the same domain with different variations, such as "draw objects with lighting" vs "draw objects ignoring lighting".
Skinning: Interleaved Versus Separate Passes
In an application, objects may be composed of multiple renderable entities, such as a main body and separate limbs. Where the limbs join the the body, it will look more realistic if the vertex positions are affected by the relative positions to the body and limb.
This is where, for a DrawX
pass, you will find a corresponding DrawXSeparate
pass which
supports vertex skinning and joint transformations to improve the render. An exception to this
is the DrawFlat2D
pass, which does not support joint transformations.
Dependencies
~25–37MB
~457K SLoC