Skip to content

Photon2 ​

Since 2.0.0

Photon is an in-game real-time VFX toolkit for Minecraft. It combines particle emitters, trails, beams, a non-linear Timeline, Shader Graph materials, and graph-based post-processing in one editor.

Maximized Photon editor with hierarchy, scene, inspector, resources, and timeline
The maximized Photon editor running the real tornado project. Hierarchy, Scene, Inspector, Resources, and Timeline stay visible together.

Photon 2.2 Showcase ​

The 2.2 release expands Photon from a particle editor into a complete VFX pipeline: Timeline sequencing, Shader Graph materials, Fullscreen Shader Graphs, Render Graph post effects, custom GPU data, force fields, mesh particles, and distributable FX Packs.

Classic Introduction Video ​

The original video remains available. It focuses on the foundational particle workflow and complements the 2.2 showcase above; its interface and feature coverage reflect the earlier release.

Choose a Path ​

GoalStart here
Create a first effect in the editorGetting Started
Learn particle emitters and modulesParticle System
Reuse an effect inside another oneFX Instances
Sequence effects and propertiesTimeline
Build materials and GPU effectsShaders and GPU
Light the world with effectsDynamic Lights
Create fullscreen effectsPost Processing
Load and control effects from a modJava API

How the Parts Fit Together ​

An exported .fx stores the authored object tree and Timeline. FX instances are baked into ordinary objects when the .fx loads. At runtime, FX#createRuntime() creates an independent playable instance. The runtime emits its objects into the client particle engine and submits active post-process clips once per frame.

Main Features ​

  • Particle authoring: particle, trail, beam, and AraTrail emitters with curves, gradients, sub-emitters, UV animation, custom renderers, and simulation spaces.
  • Collision: particles collide with blocks, fluid surfaces, entities, and Collider objects; triggers let particles pass and report them entering and leaving. See Particle Collision. Since 2.2.9
  • Models: mesh particles from OBJ, JSON, and glTF / glb models, including animated glTF. See glTF models. Since 2.2.5
  • Dynamic lights: point and spot lights with soft voxel shadows, volumetric light, fog volumes, and particles that emit or receive light. See Dynamic Lights. Since 2.2.8
  • Kila Material: an all-in-one VFX material with 27 presets that can be exported to a Shader Graph. See Kila Material. Since 2.2.8
  • FX instances: place one .fx inside another and save only what you change. See FX Instances. Since 2.2.9
  • Timeline: animation, activation, control, speed, signal, audio, group, and post-process tracks.
  • Timeline sections: named stretches of the Timeline that loop, branch, and play a release section when the effect is stopped, for effects of unknown length such as charges, lasers, and magic circles. See Sections. Since 2.2.11
  • Shader Graph: visual vertex and fragment shaders with scene inputs, particle inputs, reusable functions, and live previews.
  • GPU data: per-emitter custom streams readable from Shader Graph or GLSL.
  • Post-processing: fullscreen passes composed in a Render Graph, including weighted blending, priorities, custom textures, mask groups, and custom depth.
  • Distribution: plain .fx exports and self-contained .fxpack resource packs.
  • Java integration: built-in block/entity executors, direct control through FXRuntime, and preloading effects before they first play.

Requirements ​

  • Minecraft 1.21.1
  • NeoForge 21.1+
  • Photon 2.2.9 needs LDLib2 2.2.43 or newer. KilaGraph is bundled inside Photon's jar, so it needs no separate install.
  • A client environment: Photon rendering and playback APIs are client-side

Photon 1.x

This manual documents Photon 2.x. The original Photon 1.x wiki remains available in the legacy repository wiki.

Released under the MIT License.