mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-05-18 16:53:15 -05:00
fix UNSIGNED_BYTE size
This commit is contained in:
parent
95fb2eba1d
commit
9bf6f45efc
|
|
@ -66,7 +66,7 @@ namespace VrmLib
|
|||
switch (t)
|
||||
{
|
||||
case AccessorValueType.BYTE: return 1;
|
||||
case AccessorValueType.UNSIGNED_BYTE: return 4;
|
||||
case AccessorValueType.UNSIGNED_BYTE: return 1;
|
||||
case AccessorValueType.SHORT: return 2;
|
||||
case AccessorValueType.UNSIGNED_SHORT: return 2;
|
||||
case AccessorValueType.UNSIGNED_INT: return 4;
|
||||
|
|
@ -111,11 +111,18 @@ namespace VrmLib
|
|||
/// </summary>
|
||||
public unsafe NativeArray<T> AsNativeArray<T>(Allocator allocator) where T : struct
|
||||
{
|
||||
fixed (byte* byteArray = Bytes.Array)
|
||||
if (Stride == Marshal.SizeOf(typeof(T)))
|
||||
{
|
||||
var nativeArray = new NativeArray<T>(Bytes.Count / Marshal.SizeOf<T>(), allocator);
|
||||
UnsafeUtility.MemCpy(nativeArray.GetUnsafePtr(), byteArray + Bytes.Offset, Bytes.Count);
|
||||
return nativeArray;
|
||||
fixed (byte* byteArray = Bytes.Array)
|
||||
{
|
||||
var nativeArray = new NativeArray<T>(Bytes.Count / Marshal.SizeOf<T>(), allocator);
|
||||
UnsafeUtility.MemCpy(nativeArray.GetUnsafePtr(), byteArray + Bytes.Offset, Bytes.Count);
|
||||
return nativeArray;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception($"Stride:{Stride}!= sizeof({typeof(T).Name}:{Marshal.SizeOf(typeof(T))}");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user