Editor/Decompiler/Lumps/DisplacementVertexLump.cs
namespace BspImport.Decompiler.Lumps;
public class DisplacementVertexLump : BaseLump
{
public DisplacementVertexLump( ImportContext context, byte[] data, int version = 0 ) : base( context, data, version ) { }
protected override void Parse( BinaryReader reader )
{
var vertCount = reader.GetLength() / Marshal.SizeOf<DisplacementVertex>();
var verts = new DisplacementVertex[vertCount];
for ( int i = 0; i < vertCount; i++ )
{
verts[i] = new DisplacementVertex( reader.ReadVector3(), reader.ReadSingle(), reader.ReadSingle() );
}
Context.Geometry.SetDisplacementVertices( verts );
}
}
public struct DisplacementVertex
{
public Vector3 Displacement;
public float Distance;
public float Alpha;
public DisplacementVertex( Vector3 displacement, float distance, float alpha )
{
Displacement = displacement;
Distance = distance;
Alpha = alpha;
}
}