The 'arrayType' option allows the type of the array for voxels to be configured, but it requires passing a constructor - problematic in some situations since it cannot be directly JSON serialized. For example, voxel-client/voxel-server sends the voxel-engine settings over the network as JSON, or other modules may want to otherwise persist these settings, but arrayType: Uint16Array doesn't make it through.
So this PR adds an alternative option, arrayTypeSize - an easily-serializable integer, representing the number of bytes for the typed array (1, 2, or 4 for Uint8Array, Uint16Array, or Uint32Array, respectively).
The 'arrayType' option allows the type of the array for voxels to be configured, but it requires passing a constructor - problematic in some situations since it cannot be directly JSON serialized. For example, voxel-client/voxel-server sends the voxel-engine settings over the network as JSON, or other modules may want to otherwise persist these settings, but
arrayType: Uint16Array
doesn't make it through.So this PR adds an alternative option, arrayTypeSize - an easily-serializable integer, representing the number of bytes for the typed array (1, 2, or 4 for Uint8Array, Uint16Array, or Uint32Array, respectively).