Sparkifier
Used to create new or edit Sparks.
Details
Converts 3D objects, such as GLB and gITF files, into a usable asset in Bonfire known as a Spark.
Supports the conversion (or âSparkificationâ) of Entity, Config, Symbol, and Audio assets.
Note that the Sparkifier application is accessible only to Bonfire Pro users.
Types of Sparks:
Entity - An interactive 3D object, such as houses, walls, or tables, that can be placed in the world and anchored to a physical space. This is the most commonly used type of Spark.
Config - Use a Config Spark to add Causes, Effects, and Traits without displaying any in-book visuals. Examples include systems such as an inventory manager, timer, or data holder.
Symbol - Symbol Sparks represent symbols like text, images, or input fields used in graphical interfaces, such as forms or on screen health bars.
Audio - Although there's no visual in the Book, the placed Spark location will serve as the point for spatial audio playback.
Creating Sparks
Entity
Prerequisites
Ensure that a .glb or .gITF file is ready for conversion.
Creating an Entity Spark
Navigate to the Sparkifier homepage and click the New Spark button.
A window will appear, prompting for the selection of the Spark type to be created. Choose Entity Spark Type from the available options.
Observe that the Spark Type dropdown in the lower left corner now displays âSpark.Entities.Entityâ.
To import the .glb or .gltf file, click the browse button located underneath the Loaded Actor File Path field and select the intended file for conversion.
Assign a name to the new Spark, for example, âSample Entityâ.
Click the Build Spark button in the lower left corner and choose a folder for the export location.
Config
Symbol
Prerequisites
Ensure that a .jpg or .png file is ready for conversion.
Creating a Symbol Spark
Navigate to the Sparkifier homepage and click the New Spark button.
A window will appear, prompting for the selection of the Spark type to be created. Choose Symbol Spark Type from the available options
Observe that the Spark Type dropdown in the lower left corner now displays âSpark.Symbols.Symbolâ.
To import the .jpg or .png file, click the browse button located underneath the Loaded Actor File Path field and select the intended file for conversion.
Assign a name to the new Spark, for example, âSample Symbolâ.
Click the Build Spark button in the lower left corner and choose a folder for the export location.
Audio
The following instructions describe creating an Audio Spark and configuring its settings.
Prerequisites
Ensure that a sample .mp3 file is available for conversion.
Creating an Audio Spark
Navigate to the Sparkifier homepage and click the New Spark button.
A window will appear, prompting for the selection of the Spark type to be created. Choose Audio Spark Type from the available options.
Observe that the Spark Type dropdown in the lower left corner now displays âSparks.Configs.Audioâ. This indicates that an Audio Spark is being created.
Assign a name to the new Spark, for example, âSample Audioâ.
Click the Build Spark button in the lower left corner and choose a folder for the export location.
Basic
Selecting a Basic Spark allows a Spark Type to be chosen, such as Entity, Config, Symbol, or Audio. Once the Spark is built, it can be imported into the Builder based on its type.
Advanced
Selecting an Advanced Spark follows the same process as a Basic Spark but includes the ability to specify a Spark Type during creation. For example, when creating an Entity, the type can be defined as a Creature Entity, with additional subtypes such as Humanoid or ReadyPlayerMe. Once imported into the Builder, the Spark retains the assigned type set during its creation.
Custom
The Custom Spark feature allows users to create new Sparks with custom types, providing greater flexibility and consistency in Spark generation. By importing existing Custom Sparks, users can preserve their custom traits and create new visual representations.
Custom Grab Points
Overview A grab point is a designated position or reference on a 3D game object that defines where an interaction, such as grabbing or attaching, occurs. It guides how an object is held or manipulated during gameplay.
Setting Up 3D Objects for Grab Points
Game objects and their first-degree child objects, whether they contain components or are empty objects, are considered potential grab points.
For example, in a 3D modeling software like Blender:
An empty object named "Corner Grab Point" positioned at the corner of a parent cube object.
A "Sphere" object positioned on the face side of the parent cube.
These two child objects, along with the parent cube's origin position, are treated as potential grab points.
Note: When the cube object is converted into a Spark file, the default grab point will be set to the center of the parent object, regardless of the number of child objects in the exported 3D asset.
Defining Custom Grab Points in an Existing Spark
By default, any Sparkified 3D object has its grab point set to the center of the object.
To define a custom grab point in an existing Spark:
Open the Spark file.
Enable the "Use Custom Grab Points" checkbox.
Two dropdown options, Grab Point Primary and Grab Point Secondary, will appear. These dropdowns allow the selection of:
The parent object (e.g., CubeM).
Any child objects, such as "Corner Grab Point" or "Sphere."
Example:
The primary grab point can be set to "Corner Grab Point."
The secondary grab point can be set to "Sphere."
Limitations (as of v1.16.1): Custom grab points cannot be defined during the Spark creation process. They can only be configured by opening an existing Spark in the Sparkifier app.
Adding Grab Points to an Existing Spark Adding new grab points directly to an existing Spark is not supported in version 1.16.1.
Workaround:
Access the source 3D object file.
Add empty objects to define desired grab points.
Convert the 3D object to a Spark.
Open the Spark in the Sparkifier app to define custom grab points.
This feature is under development, and future updates will include enhanced functionality for adding grab points directly to Sparks.
Last updated
Was this helpful?