Skip to content

A modular FrameGraph rendering pipeline for JMonkeyEngine3

License

Notifications You must be signed in to change notification settings

codex128/Renthyl

Repository files navigation

Renthyl

VXGI-demo

Renthyl is a modular, code-first, and completely customizable rendering pipeline for JMonkeyEngine suitable for any game. It is designed to be as fast as possible by culling unnecessary render operations and minimizing resource creation.

Renthyl is currently in alpha status: there may be bugs. If one is encountered, please open an issue with stacktraces, example code, and screenshots if applicable. Also note that many features within the RenthylPlus subproject are work-in-progress.

Get Started

  1. Add Renthyl to your Gradle build script. Renthyl depends on Java 8 and JMonkeyEngine 3.8 minimum, along with some other libraries.
repositories {
    maven {
        url "https://jitpack.io"
    }
}
dependencies {
    implementation "com.github.codex128:RenthylCore:v1.2.5-alpha"
    implementation "com.github.codex128:RenthylCore:v1.2.5-alpha:sources"
    implementation "com.github.codex128:RenthylCore:v1.2.5-alpha:javadoc"
}
  1. Initialize Renthyl in your JMonkeyEngine application.
Renthyl.initialize(application);
  1. Create a FrameGraph and add it to the main ViewPort.
FrameGraph fg = Renthyl.forward(assetManager);
viewPort.setPipeline(fg);

Renthyl Guide

  1. Understanding Renthyl
  2. Modules
  3. Resource Definitions
  4. Features
  5. Porting Filters
  6. Resource System
  7. Multithreading

Contributing

Contributors are welcome and wanted! Please see the contribution guidelines to get started. If you have the know-how, consider implementing a rendering technique in the RenthylPlus subproject.