Creating a custom character - LunaCapra/CrewBoom GitHub Wiki
Creating a character from a model
Once you've set up your model you can turn it into a custom character by right clicking it in the project browser and selecting Crew Boom > Create from model
This will create a corresponding prefab.
This prefab will remain connected to your original model file, meaning you can change your model, re-export it over the same FBX file and the prefab will update accordingly.
[!CAUTION]
Make sure all files related to your character are placed in their own separate folder, otherwise things will break and cause issues with your character.
The Unity project provides a Characters folder for this.Example:
Editing a custom character
The main way to edit a custom character is to open the prefab and edit the CharacterDefinition
on it via a Inspector window.
[!TIP] Some properties and previews are only visible while inspecting the
CharacterDefinition
.
If you want to keep these available while editing other parts of the character, you can lock the inspector via the lock icon at its top.
More info on how to use the inspector
An example character has been provided in the Characters folder of the project.
You can refer to the example character if you're having trouble creating your own.
This example character is also available as a fully compiled bundle here
Property Groups
[!NOTE] The editor will warn you if any of the properties are invalid and cause the character to not be able to be built.
Character Properties
Main Properties
- Name
The name of the custom character.
This will be displayed in-game when selecting them. - Cypher Dance
The character from the base game to use the cypher dance animations from. - Idle Dance
The character from the base game to use the idle dance animations from. - Move Style
The default move style (skateboard, bike or skates) to use for when this character is loaded into an additional character slot.
Graffiti
- Title
The name of the graffiti as displayed in-game when spraying. - Artist
The name of the artist of the graffiti. - Material
The material used to display the graffiti.
Blinking
Allows you to enable or disable blinking on this character if they have at least one BlendShape.
Outfits
The renderers are what meshes the game will use to display the character and each of their outfits.
You can assign any amount of meshes/renderers your model has here.
[!WARNING] Make sure every mesh is of type
SkinnedMeshRenderer
, otherwise your character will not animate when in-game.
There needs to be at least one renderer.
Each outfit has a list corresponding to the renderers set up in the Renderers property of the CharacterDefinition.
They can be edited individually by clicking on the arrow next to the label of the renderer, or the label itself.
The checkbox next to the renderer determines whether this renderer should be active for this outfit.
As this sets the GameObject of the renderer's active status, you can use this for much more than just enabling or disabling meshes.
When opened, each renderer will display a list of materials that you can replace per outfit.
It also displays the original material found on the renderer, for easier editing.
[!NOTE] When using multiple meshes or materials for a character, the game will use the first available active renderer per outfit.
This means the first renderer that has its checkbox checked for that oufit in order of the Renderers list.
If Use game shader is enabled, the mesh will automatically use the same shader as characters from Bomb Rush Cyberfunk for this material.
Disabling it allows the use of custom shaders.
[!CAUTION] When using custom shaders, if you reuse the same material for multiple outfits, you need to turn off Use game shader for ALL occurences of the material, otherwise the shader will get overwritten.
If you want an individual outfit to have a different shader, create a new material instead.
Rig Properties
Displays all necessary humanoid bones/extra bones and whether they exist and are named correctly.
Example for a valid bone:
Example for an invalid bone:
[!NOTE] The editor will automatically create any extra non-humanoid bones for you.
For the humanoid bones section refer to the Model Setup page.
You can also toggle the previews for the phone & spraycan and the boost effect here.
Offset Properties
This section allows you to add offsets for the inline skates model, in case it does not align properly in-game by default.
You can preview the inline skates' mesh by keeping the Preview Skates toggle on.
Example of a skate offset setup:
Custom Voice
Here you can assign any number of voice clips to a given list of clips and the game will randomly select one to play.
For example VoiceCombo
is a list of voice clips played when you perform a trick combo that increases your multiplier.
[!NOTE] If you choose to not replace a character, but give your character a new character slot, the custom voice will always be used, even if there are no clips assigned.
This means that using a base game character's voice has to be done manually by extracting their files from the game and using them here.
Materials & Shaders
Any material intended to use the Team Reptile shader needs to use a shader with the property _MainTex
set to the texture that should be used for color, and optionally a property _Emissive
set to the texture for emission/full bright areas.
There is a simple shader provided for this under BrcCustomCharacters/Preview Character
in the shader selection for a material.
It allows for the assignment of a base texture and and emission texture.
You can use the emission texture to make a part of the character brighter and less affected by shadows.