How it works...

This shader relies on things that have not been introduced before in this book; the first one is arrays. Cg allows arrays that can be created with the following syntax:

uniform float3 _Points [20];     

Cg doesn't support arrays with an unknown size: you must preallocate all the space that you need beforehand. The preceding line of code creates an array of 20 elements.

Unity allows us to set arrays through using a number of methods, including SetVectorArray, SetColorArray, SetFloatArray, and GetMatrixArray.

The SetVectorArray function only works with the Vector4 class at present. That will not cause us any issues, though, as you can automatically assign a Vector3 to a Vector4, and Unity will automatically include a zero in for ...

Get Unity 2018 Shaders and Effects Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.