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

Particle Integration 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 Rule Requirement Why Source
particle-format.integration.sprite Sprite integration Load particle sprites through ParticleSpriteFactory and let the backend choose atlas or direct-scene rendering. The factory exposes enabled runtime extensions and constructs ParticleSprite from ParticleManager. Source/Client/ParticleSprites.cpp
particle-format.integration.model Model attachment Use AttachParticles with a baked runtime resource and a valid model bone, then verify transforms and lifetime in a visible scene. The model baker verifies the resource and runtime creates the particle at the target joint. Source/Tools/ModelInfoBaker.cpp
Source/Client/ModelInstance.cpp
particle-format.integration.client-script Client script controls Use the client API for seeded playback, prewarm, scale, or live critter-bone effects and handle a false result where the API reports one. The exported methods narrow generic sprites to particle sprites before applying backend-neutral controls. Source/Scripting/ClientGlobalScriptMethods.cpp
Source/Scripting/ClientCritterScriptMethods.cpp
particle-format.integration.project-boundary Embedding-project ownership Keep particle catalogs, visual policy, backend selection, resource provenance, performance budgets, and acceptance scenes in project documentation. The Engine documents reusable mechanics but cannot define a game’s assets or production targets. Source/Client/ParticleRuntime.h
particle-format.integration.critter-run-particle Critter model particle Critter.RunParticle creates a named particle on a model bone only in FO_ENABLE_3D builds; the export is a no-op otherwise. The script method depends on an active ModelInstance and is not a 2D critter-sprite fallback. Source/Scripting/ClientCritterScriptMethods.cpp
particle-format.integration.model-attachment .fo3d AttachParticles A layer/value-selected .fo3d link stores a global baked .spk or .efk path and requires a valid target bone; it lives only while the selected link remains active. ModelInfoBaker validates the resource and bone, and runtime creates/removes the particle with model composition. Source/Tools/ModelInfoBaker.cpp
Source/Client/ModelInstance.cpp
Start typing to search.