Fix PixelFormatSampler.Write` in C# to actually work
This commit is contained in:
@@ -157,7 +157,7 @@ namespace FlaxEngine
|
||||
#endif
|
||||
var v = new Float4(value);
|
||||
fixed (byte* data = _data)
|
||||
_sampler.Write(data + index * _stride, ref v);
|
||||
_sampler.Write(data + index * _stride, &v);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -173,7 +173,7 @@ namespace FlaxEngine
|
||||
#endif
|
||||
var v = new Float4(value);
|
||||
fixed (byte* data = _data)
|
||||
_sampler.Write(data + index * _stride, ref v);
|
||||
_sampler.Write(data + index * _stride, &v);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -189,7 +189,7 @@ namespace FlaxEngine
|
||||
#endif
|
||||
var v = new Float4(value, 0.0f, 0.0f);
|
||||
fixed (byte* data = _data)
|
||||
_sampler.Write(data + index * _stride, ref v);
|
||||
_sampler.Write(data + index * _stride, &v);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -205,7 +205,7 @@ namespace FlaxEngine
|
||||
#endif
|
||||
var v = new Float4(value, 0.0f);
|
||||
fixed (byte* data = _data)
|
||||
_sampler.Write(data + index * _stride, ref v);
|
||||
_sampler.Write(data + index * _stride, &v);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -220,7 +220,7 @@ namespace FlaxEngine
|
||||
throw new NullReferenceException("Missing stream data. Ensure to allocate mesh buffer or check for its existence.");
|
||||
#endif
|
||||
fixed (byte* data = _data)
|
||||
_sampler.Write(data + index * _stride, ref value);
|
||||
_sampler.Write(data + index * _stride, &value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -259,7 +259,7 @@ namespace FlaxEngine
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
var v = new Float4(src[i], 0.0f, 0.0f);
|
||||
_sampler.Write(data + i * _stride, ref v);
|
||||
_sampler.Write(data + i * _stride, &v);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -287,7 +287,7 @@ namespace FlaxEngine
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
var v = new Float4(src[i], 0.0f);
|
||||
_sampler.Write(data + i * _stride, ref v);
|
||||
_sampler.Write(data + i * _stride, &v);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -315,7 +315,7 @@ namespace FlaxEngine
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
var v = (Float4)src[i];
|
||||
_sampler.Write(data + i * _stride, ref v);
|
||||
_sampler.Write(data + i * _stride, &v);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -352,7 +352,7 @@ namespace FlaxEngine
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
var v = new Float4(src[i]);
|
||||
_sampler.Write(data + i * _stride, ref v);
|
||||
_sampler.Write(data + i * _stride, &v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace FlaxEngine
|
||||
/// <summary>
|
||||
/// Write data function.
|
||||
/// </summary>
|
||||
public delegate* unmanaged<void*, ref Float4, void> Write;
|
||||
public delegate* unmanaged<void*, Float4*, void> Write;
|
||||
|
||||
/// <summary>
|
||||
/// Tries to get a sampler tool for the specified format to read pixels.
|
||||
@@ -38,7 +38,7 @@ namespace FlaxEngine
|
||||
Format = format,
|
||||
PixelSize = pixelSize,
|
||||
Read = (delegate* unmanaged<void*, Float4>)read.ToPointer(),
|
||||
Write = (delegate* unmanaged<void*, ref Float4, void>)write.ToPointer(),
|
||||
Write = (delegate* unmanaged<void*, Float4*, void>)write.ToPointer(),
|
||||
};
|
||||
return pixelSize != 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user