website templates

Spline Decorator

Watch the example using a free asset:



Instantiate Any Asset along the Spline
Use any Sprite, Prefab, GameObject, Asset, Lights, Cameras, Animations, physics objects, etc
Once you define your decoration material, you can use it on any spline..

Additionally customizable per spline:
- randomize the elements
- tint color and gradients to groups
- shaders and materials
- Order in Layer or position

Decoration Material

Its a selection of Decoration Groups.

Each group contains a list of assets and a few rules that controls how each asset in the group will be instantiated. 

The groups can be shared between decoration materials.
Like this you can just drag a presets of groups and quickly combine into new materials in seconds.

- Having group of 5 Coins can be very practical
- A group of Clouds can be reused in a material with City style and also in a material for Forest style

Time Saving:
When you update the material, every Spline in scene using the material also gets updated.

This allows you to instantly add, replace or delete all the objects in the scene in a single place, at the same time.

Updated Assets:
This ensures your scenario always have updated assets.
Forget updating manually one by one, or prefabs with old values. ALL the assets in your scene can be updated at the same time.

Faster iterations:
Now you can try tons of combinations much faster having total control of it, withouth coding.

Each group you create can define its own properties:

As a group:
- Amount of created assets
- Distribution pf created assets ( randomized, distributed, one after each other)
- Order of appeareance
- Scales of assets (or range of scales)
- How far from the Spline each object is
- Sorting Layer and Order in Layer

extra control per element:
- scale (or range of scales)
- extra offset
- tint color
- rotation limits
- enable/disable random flip horizontally

Any asset in your project, prefabs, Lights, Cameras, terrains2d.

... Basically anything you want.

Decoration Material


Use this area to see or modify the settings of the group.

When using default settings and a group is modified, the changes are automatically reflected in every material.

When using local settings, local changes are only used in this material, also prevents from synchronization when groups are modified.

Default is great for synchronizing and updating every material in the project.

Local is great for creating variations reusing existing data.

(Elements of the group are added/removed in each group inspector)

Render Order


Auto position

The elements are distributed between a range of selected distances

First group at front, last group at the back.

(optional) + 2D Order:
Order in layer is distributed between a range of selected values.

Auto 2D order can be set without the need of 3D positioning


Manual position

Select manually the position and area to cover for each group.

Elements from groups can overlap with other groups

(optional) + 2D Order:
The order in layer is set automatically depending on the 3D position or can be set manually.


2D order in Layer

Used for setting 2D layers but no added 3d position. (elements remain at spline position)

Similar to 3D controls, order in layer for is selected between a range of selected values. First group on front, Last group on the back.

Select manually the position and area to cover for each group.


Tint and materials

Applying gradients to the elements makes extremely easy the instantiation of elements with different colors.

A gradient can be applied to all the groups or elements on the group, or each group can set manually its own gradient of colors, modifying only the selected group.

Same goes for shaders/materials.

Apply or update shaders to every element in a simpe control.

Coloring does not affect the default group.


Kolibri2d - 2020         Extra art by : ASKA animation , Freepik & Unity Asset store