Magic Effects and Custom Inspector Controller
Technical Artist Portfolio
This portfolio piece is a demonstration of different magic effects created using the particle system in Unity. These effects can be controlled individually or as groups, through a set of custom inspector controls inside the Unity editor. The brief for this work included constraints for the amount of control artists and designers could have over the effects. For example while colour controls are required to change the base colour of the effect, limits should be placed on the level the opacity, (alpha channel) can be set to. This will prevent effects from becoming entirely transparent or so high in opacity that they obscure the characters in the scene. Also certain elements of the effects should have a fixed colour and remain unaffected by any change to the base colour of the effect, (in order to add contrast and make the effects pop). It should also be possible to attach the effects to either the player or enemies, depending on the effect type and whether or not the player is in range of an enemy. This attack range should also be adjustable. This will give the designers options for upgrading the players attack range in the future.
Design Brief
-
Create a system to allow artists to integrate artwork, (2D sprites) into a particle effect system for making magic effects
-
Allow for designers to control effects using a set of custom editor controls
-
Set restrictions of certain controls such as opacity and attack range
-
Control over effect lighting colour, range and intensity
-
Include controls for switching key inputs that will trigger each effect
-
Ensure effects can target specific characters, (player or enemies)
-
Allow for audio to be toggled on and off
-
Include the ability to change the effect prefab to instantiate
-
Each effect must be able to be triggered using an inspector button for testing in play mode while in the editor
Helvetica Light is an easy-to-read font, with tall and narrow letters, that works well on almost every site.
These effects make full use of Unity’s built in particle system to make the magic look as realistic and exciting as possible, while still maintaining a stylised aesthetic. The example effects used in this demonstration can all be easily edited to use different custom sprites, sound effects and lighting.
These effects have been created using a mixture of custom sprites, (made in Affinity Designer) and the default particles in Unity. Through the use of various modules of the particle system it was possible to make these effects behave in a wide variety of ways. These include adding variance to the scale, colour, speed, rotation and direction of the particles over time. These changes are applied using constant values, random values between two constants and custom curves. In addition, Perlin noise is added to some of the effects to accentuate movement, rotation and scale. This also adds a more natural feel to the effects.
In order for artists and designers to more easily make changes to these effects there are a set of custom controls available in the inspector in the Unity editor. These controls have been specifically designed with custom sliders for float values, that have been locked to a range to fit the brief. This makes it easy for artists or designers to make quick changes to the effects and immediately see the results in the editor during play mode, without accidentally breaking the effects. There are also a set of options that control the main colour of the effects, (certain parts of the effects are exempt from colour changes as this makes up part of the predefined aesthetic of the effect). Also, the opacity, (alpha channel) of each effect’s colour can only be set to a value between 10% - 70%.
The main effect controls include:
-
Slot for each effect prefab to instantiate
-
Slot for changing sprite used in particle system
-
Dropdown menu for choosing effect activation key
-
Colour selector for changing the base effect colour
-
Slider for setting the alpha percentage of the effect, (min 10% - max 70% to avoid obscuring characters in the scene)
-
Toggle button for controlling audio effects on / off
-
Button to play the effect in play mode, within the Unity editor
Additional controls include:
-
Slider for player attack range, (attached to the player character). This controls the range the player can attack within by adding enemies to a public list when they enter the player’s attack range and removing them from that list when they leave
-
Button to reset effect to a set of default settings