FOnline Engine
Current master GitHub
Documentation Docs/en/reference/particle-format/renderer.md

Particle Rendering Contract

Generated reference. Do not edit this page directly. Update BuildTools/ParticleFormatInterface.json, then run python BuildTools/docs_particle_format.py --write.

Reference index Source rules Formats and backends Rendering Tooling Runtime Integration Validation Canonical JSON model Guide Authoring tools
Stable ID Backend Field or route Default Behavior Source
particle-format.renderer.spark-draw-route spark DrawInScene false Use atlas rendering for ordinary particle sprites; enable DrawInScene when the effect must share the map scene and depth path. Source/Client/SparkExtension.cpp
particle-format.renderer.spark-resources spark EffectName / TextureName empty Select a baked FOnline effect and a texture path valid for the particle resource source. Source/Client/SparkExtension.cpp
particle-format.renderer.effekseer-direct-scene effekseer GetDrawInScene true Treat Effekseer effects as direct-scene particles and validate their supported renderer capabilities in the FOnline client. Source/Client/EffekseerExtension.cpp
particle-format.renderer.effekseer-geometry effekseer Sprite / Ring / Ribbon / Track / Model Engine-owned renderers Use only Root, None, Sprite, Ring, Ribbon, Track, and Model nodes; the five drawing families are converted to Engine-owned callback geometry. Source/Client/EffekseerExtension.cpp
particle-format.renderer.effekseer-material-profile effekseer material / blend / filter / wrap Default material; authored sampling Use the Default material, Normal/Add/Sub blending, nearest or linear filtering, and Clamp or Repeat wrapping. Multiply blending, mirrored wrapping, advanced texture slots, custom materials, soft particles, falloff, and flipbook interpolation are rejected. Source/Client/EffekseerExtension.cpp
particle-format.renderer.effekseer-depth-cull-sort effekseer ZTest / ZWrite / Culling / ZSort authored per node Sprite and Ring may use stable camera-depth sorting; Ribbon, Track, and Model reject Z-sort. Per-node ZTest/ZWrite select an effect depth variant, and Model face culling selects the Engine draw cull mode. Source/Client/EffekseerExtension.cpp
particle-format.renderer.effekseer-distortion effekseer BackDistortion / DistortionIntensity disabled Use scene distortion only on Sprite nodes with a distortion texture and finite intensity; the draw samples a deferred scene-background snapshot through BackgroundTex and ParticleSamplingBuf. Source/Client/EffekseerExtension.cpp
Source/Client/ParticleRuntime.h
particle-format.renderer.effekseer-global-exclusions effekseer GPU particles and external resources unsupported Do not use GPU particles, normal textures, sounds, custom materials, external curves, or procedural models. Referenced static model resources must load and pass FOnline validation. Source/Client/EffekseerExtension.cpp
particle-format.renderer.draw-in-scene spark draw in scene false When any group renderer enables draw in scene, the whole ParticleSprite uses the direct map-scene path instead of atlas refresh. Source/Client/SparkExtension.cpp
particle-format.renderer.effect spark effect empty Name a baked .fofx resource compatible with EffectUsage::QuadSprite; the renderer loads it through EffectManager. Source/Client/SparkExtension.cpp
particle-format.renderer.blend-mode spark blend mode unused Do not author blend mode: the descriptor declares it, but SparkQuadRenderer neither imports, exports, nor applies it. Select blending in the .fofx effect instead. Source/Client/SparkExtension.cpp
particle-format.renderer.texture spark texture empty Resolve a supported sprite resource relative to the .spark source directory and load its atlas texture through the provided texture loader. Source/Client/SparkExtension.cpp
particle-format.renderer.scale spark scale 1;1 One value changes X while retaining default Y; two values set X and Y particle-quad scale. Source/Client/SparkExtension.cpp
particle-format.renderer.atlas-dimensions spark atlas dimensions 1;1 One value sets the X cell count; two set X and Y. The particle texture-index parameter chooses atlas cells. Source/Client/SparkExtension.cpp
particle-format.renderer.look-orientation spark look orientation LOOK_CAMERA_PLANE Use one of the four recognized look-orientation names; other strings leave the default orientation unchanged. Source/Client/SparkExtension.cpp
particle-format.renderer.up-orientation spark up orientation UP_CAMERA Use one of the four recognized up-orientation names; other strings leave the default orientation unchanged. Source/Client/SparkExtension.cpp
particle-format.renderer.locked-axis spark locked axis LOCK_UP Use LOCK_LOOK or LOCK_UP when an axis-based orientation mode needs one vector held fixed. Source/Client/SparkExtension.cpp
particle-format.renderer.locked-look-vector spark locked look vector (0,0,1) Provide the world/local look vector used by the selected oriented-quad mode. Source/Client/SparkExtension.cpp
particle-format.renderer.locked-up-vector spark locked up vector (0,1,0) Provide the world/local up vector used by the selected oriented-quad mode. Source/Client/SparkExtension.cpp
Start typing to search.