Skip to content
AgusDropOut edited this page May 6, 2026 · 4 revisions

Welcome to the Cosmos Engine

The Cosmos Editor
The Cosmos Node Editor and Live Preview

Cosmos is a high-performance rendering engine and developer API for Minecraft.

Built from the ground up to solve the limitations of standard Minecraft entity rendering, Cosmos provides developers and visual artists with an industry-standard, data-driven pipeline for creating complex visual effects, geometric trails, volumetric beams, combined geometry shapes, screen and space distortions, and much more coming in the future.

What makes Cosmos different?

Standard Minecraft rendering relies on hardcoded vertex buffers and rigid entity models. Cosmos introduces modern game-engine architecture into the modding ecosystem:

  • True Data-Driven Rendering: Visuals are completely decoupled from Java logic. Effects and materials are defined entirely via JSON blueprints, allowing real-time edits without recompiling code.
  • Dynamic Material Instances: Cosmos manages a custom shader pipeline. It automatically compiles GLSL shaders, parses exposed uniforms (like colors, intensities, and vectors), and safely injects them into the GPU render batch.
  • AST Math Evaluation: Instead of hardcoding animations, Cosmos compiles mathematical expressions (Abstract Syntax Trees) directly from your configuration files, allowing for dynamic, time-based radius changes, orbit offsets, and visual pulsing.
  • Geometry & Math Abstraction: You don't need a degree in computer graphics to use Cosmos. The engine abstracts away the brutal linear algebra (like cross-product billboarding and spline interpolation), drastically reducing boilerplate code and isolating the complex math from developers who just want their effects to look good.

How to use this documentation

The Cosmos ecosystem is split into two distinct parts: Designing the effects (generating metadata) and Implementing the effects (writing the Java code).

1. Designing Visuals (Cosmos Engine & Metadata)

This section is for creating your visual blueprints. Using the Cosmos Node Editor, you can design complex visual contexts and export them. Similar to the shader graphs in tools like Blender or Unity, you can visually build custom materials and let Cosmos automatically handle the strict formalities of writing the underlying GLSL (.fsh and .vsh) code.

It is important to note that the files Cosmos exports (.mat, .beam, .trail, etc.) act as strict metadata. Their sole purpose is to be parsed and dynamically rendered by the API in-game.

2. Implementation (The cosmos-api Repository)

Once your metadata is generated, you need to bring it into the game. This section is for Java developers looking to integrate Cosmos rendering into custom entities, projectiles, or weapons. You will use our fluent API on Forge (and eventually NeoForge and Fabric) to link your exported metadata to your game objects with minimal code.


Cosmos is currently in active development.