MCPcopy Index your code
hub / github.com/djefrey/Colorwheel

github.com/djefrey/Colorwheel @1.2.9+1.20.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.2.9+1.20.1 ↗ · + Follow
984 symbols 2,493 edges 149 files 12 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Original logo by jnix, edited by djefrey

Colorwheel

About

The goal of this project is to provide a Flywheel backend that is compatible with Iris 1.x.
It does so by providing new shader programs to be provided by shaderpacks. Documentation is available here: https://djefrey.github.io/colorwheel/.

This project started as an attempt to port Iris Flywheel Compat from Flywheel 0.6 to 1.0.
However, with the amount of changes made to Flywheel, I decided to start from scratch.

Aperture, the new shader standard for Iris 2.0, is expected to support Flywheel.
As such, this mod will no longer be required.

Difference with Iris Flywheel Compat

As of writing, Iris Flywheel Compat 1.x is able to adapt the shader code from the shaderpack to work with Flywheel 0.6.
This was possible because the internal shaders used by Flywheel were very basic.

However, this changed drastically since Flywheel 1.0. The new release introduced many internal changes, including a new material system.
Internal shaders are now much more complex (from 10 lines to over 1000 lines) and are generated on the fly, as mods such as Create use custom materials with custom shader code.

Colorwheel, instead, implements an extension to the Iris shader standard. This means shaderpacks must include specific programs that will be used by Colorwheel.

How to use

To use this mod, you need to install Iris and a mod that includes Flywheel (like Create or Vanillin).
You also need to use a compatible shaderpack.

You can find Colorwheel releases in the Releases section.
The Colorwheel Patcher mod can be used to apply automatically patches for shaderpack I support myself. This is not required for shaderpacks supporting Colorwheel themselves.

Credits

  • Jozufozu & PepperCode1 : Author and maintainers of Flywheel and Vanillin
  • leon-o : Author of Iris Flywheel Compat
  • IMS : Lead developer of Iris
  • douira : Author of glsl-transformer

License

All code in this repository is licensed under the MIT license. You are free to read, distribute and modify the code.
This does not apply to the shaderpack patches provided in the Releases section.

This project is partially based on code from Flywheel, licensed under the MIT license.

This project uses glsl-transformer, licensed under the GNU Affero General Public License version 3. This may affect your ability to distribute Colorwheel.

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 808
Class 144
Interface 24
Enum 8

Languages

Java100%

Modules by API surface

common/src/main/java/dev/djefrey/colorwheel/engine/ClrwlEngine.java38 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/ClrwlVertexView.java33 symbols
common/src/main/java/dev/djefrey/colorwheel/compile/ClrwlPipelines.java31 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/IrisTerrainVertexView.java30 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/ClrwlMeshPool.java27 symbols
common/src/main/java/dev/djefrey/colorwheel/instancing/ClrwlInstancedDrawManager.java23 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/ClrwlDrawManager.java22 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/ClrwlInstanceHandle.java20 symbols
common/src/main/java/dev/djefrey/colorwheel/compile/ClrwlProgram.java17 symbols
forge/src/main/java/dev/djefrey/colorwheel/forge/mixin/flw/v10006/ForgeMeshEmitterMixin.java16 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/ClrwlMaterialRenderState.java16 symbols
common/src/main/java/dev/djefrey/colorwheel/engine/uniform/ClrwlFrameUniforms.java15 symbols

For agents

$ claude mcp add Colorwheel \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page