16 var result =
new byte[vals.Length * 4];
17 for (var i = 0; i < vals.Length; ++i)
21 result[ndx + 0] = v.r;
22 result[ndx + 1] = v.g;
23 result[ndx + 2] = v.b;
24 result[ndx + 3] = v.a;
33 throw new NullReferenceException();
40 for (n.
z = 0; n.
z < volumeSize.
z; ++n.
z)
42 for (n.
y = 0; n.
y < volumeSize.
y; ++n.
y)
44 for (n.
x = 0; n.
x < volumeSize.
x; ++n.
x)
49 byte r = data[dataOffset];
50 byte g = data[dataOffset + 1];
51 byte b = data[dataOffset + 2];
52 byte a = data[dataOffset + 3];
54 var col =
new Color32(r, g, b, a);
68 var tex =
new Texture3D(volumeSizePow2.
x, volumeSizePow2.
y, volumeSizePow2.
z, TextureFormat.RGBA4444,
false);
69 tex.filterMode = FilterMode.Bilinear;
70 tex.wrapMode = TextureWrapMode.Clamp;
72 tex.SetPixels32(colorData);
static byte [] Color32ArrayToByteArray(Color32[] vals)
static Texture3D BuildTexture(byte[] data, Int3 volumeSize, Int3 volumeSizePow2)
static Color32 [] ByteArrayToColor32Array(byte[] data, Int3 volumeSize, Int3 volumeSizePow2)
Helper functions for dealing with volume data