Cromos – Color animations and outline for Unity 3D

Cromos – Color animations and outline for Unity 3D

Cromos – Color animations and outline for Unity 3D is a set of components that allows users to create easily many types of color animation and outline effects.

The components in this package are recommended for both artists and programmers, since they are fully configurable from Unity 3D editor and from code.

Cromos - Color animations and outline for Unity 3D


  • Any type of mesh is supported (Skinned meshes too) for outline, color animation and highlight effects.
  • Highlighter and Outline
    • Create and control full customizable highlight effects with color animations and outline effect
    • Glow and solid effects for Outline
    • Animate the color and thickness of outline over time
  • Color Transition
    • Animate the colors of a game object with many mix effects
    • Works with any shader and any shader property (Unity Standard Shader fully supported)
    • Unity UI system fully supported
  • VR support: GearVR

Highlighter component and Outline effects

The Highlighter component extends the Color Transition capabilities to create complex highlight and de-highlight effects on game objects. Highlight and de-highlight effects include color animations just as the Color Transition component, as well as Outline.

The component exposes a set of parameters similar to Color Transition component, but it can work in three different modes (Highlight Mode property):

  • Color: only colors will be animated during highlight and de-highlight, as the Color Transition component does. If a Color Transition component is already running on the game object, the Highlighter Mix Mode defines the color mixing policy, that takes in account the colors computed by Color Transition component
  • Outline: the highlight effect consists of drawing an outline-faded line around the game object. The color of the outline is defined by Colors gradient and can change over time. Moreover, the thickness too can vary over time. It is defined by the Outline Thickness property of the component.
  • Colors and Outline: this mode is a mix of the previous ones and the Highlighter will animate both colors and outline

Our Outline effect is extremely cheap and mobile friendly (tested on Android and Windows Phone devices).

It is possible to play many different outlines at the same time on many game objects with different animated colors and thickness.

Highlighter exposes other parameters Besides to Color Transition component ones:

  • Highlight Mode
  • Outline Thickness (when highlight mode is set to Outline or Colors and Outline)

This component too supports editable events.

User handled Outline Effect

The user can add an outline effect to any game object using the Outline Target component. Usually the Highlighter component does it for you when highlight mode is set to Outline or Colors and Outline

The Outline Target component can be added in editor or at runtime by the user and exposes the properties Outline Color and Outline Thickness. These properties can be set and changed by the user in Editor and at runtime.


outline for Unity 3D

Color Transition component

The fundamental component of the package is Color Transition. It allows users to easily create and modify color animation effects on 3D objects and UI elements (Unity ver. 4.6+ UI system is fully supported).
The Color Transition component is able to animate any material property for every shader (Unity Standard Shader is fully supported). By default, a number of common shader properties is available and selectable from editor and code, but it’s possible to handle any color property for custom shaders.
Here they are some features of the Color Transition component:

  • Color gradient: the gradient where the user can define the color and Alpha animation keyframes
  • Target: Color, Alpha, or Color and Alpha
  • Mix Mode: the animation will mix the animation colors with the original ones with different modes: Replace, Multiply, Add, AddHDR, Subtract, Invert, And, Or, Xor, If Darker, If Lighter
  • Material Property: Main Color, Specular, Emission, Reflect, Tint or any custom property you need to animate
  • Animate the children: of a game object
  • After Animation behavior: default behaviors for after-transition
  • Start and End events: to perform complex actions when a color transition starts or ends. Editable from editor and code
  • Loops: Play once, Repeat, Ping Pong
  • Duration of animation, Delayed animation, Different wrap modes
  • Many low-level parameters and methods accessible from code to obtain the maximum control

Other components in the package

The Cromos package includes other components too.

The Fullscreen Fade component allows user to create easily fullscreen fade effects. This is particularly helpful for effects to be played while changing levels of a game or for contextual fullscreen animations. 

outline for Unity 3D


version 1.7.2
FIX: fixed issue Accurate Glow

FIX: in some cases a compiling error about Gradient component occurred

version 1.7.1
ADD/FIX: now Outline Target support LOD groups: only the renderers of the current LOD are outlined
FIX: now outline works correctly with skinned mesh renderers with multiple sub-meshes

-- GLOBAL --
ADD: now Color Transition and Highlighter components can use shared materials instead of instanced materials
ADD: now it's possible to exclude particle system renderers from color transitions, highlighting and outline

version 1.7.0
PERFORMANCE: Outline system optimized to work with single render camera + command buffer. It provides better performance.
ADD: 2 new outline modes added: Fast Solid and Fast Glow, optimized for mobile and low-end devices. Previous outline modes are now called Accurate Solid and Accurate Glow, optimized for PC and other mid/high-end devices.
ADD: It is now possible to switch outline between single game object and whole hierarchy
FIX: in some cases the rendered image of outlined object was vertically flipped

-- GLOBAL --
ADD: new After Transition Actions in Property Animator: DeactivateGameObject (formerly Deactivate), DestroyGameObject (formerly Destroy), DisableComponent, DestroyComponent)
CHANGE: PropertyAnimatorEvent moved to a new file

FIX: now in FullscreenFade the fade sphere size is automatically computed correctly

previous versions: 1.6.6