void BufferTest(int init, params int[] size) { var initBytes = init == 0 ? null : new byte[init]; var storage = new ArrayByteBuffer(initBytes); var buffer = new glTFBuffer(storage); var values = new List <byte>(); int offset = 0; foreach (var x in size) { var nums = Enumerable.Range(offset, x).Select(y => (Byte)y).ToArray(); values.AddRange(nums); var bytes = new ArraySegment <Byte>(nums); offset += x; buffer.Append(bytes, glBufferTarget.NONE); } Assert.AreEqual(values.Count, buffer.byteLength); Assert.True(Enumerable.SequenceEqual(values, buffer.GetBytes().ToArray())); }
public MeshUpdater(GltfData data) { _data = data; _buffer = new ArrayByteBuffer(new byte[data.Bin.Length]); }