mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-09-22 06:45:11 +00:00
This change looks dramatic, but it's just separating out the already-split namespaces into separate top-level folders. In theory, every single one could be built into their own Nuget package. `SabreTools.Serialization` still builds the normal Nuget package that is used by all other projects and includes all namespaces.
42 lines
1.3 KiB
C#
42 lines
1.3 KiB
C#
using System.Runtime.InteropServices;
|
|
|
|
namespace SabreTools.Data.Models.BSP
|
|
{
|
|
/// <summary>
|
|
/// The ambient lighting lumps (Lumps 55 and 56) are present in
|
|
/// BSP version 20 and later. Lump 55 is used for HDR lighting,
|
|
/// and Lump 56 is used for LDR lighting. These lumps are used to
|
|
/// store the volumetric ambient lighting information in each leaf
|
|
/// (i.e. lighting information for entities such as NPCs, the
|
|
/// viewmodel, and non-static props). Prior to version 20, this
|
|
/// data was stored in the leaf lump (Lump 10), in the dleaf_t
|
|
/// structure, with far less precision than this newer lump allows.
|
|
/// </summary>
|
|
/// <see href="https://developer.valvesoftware.com/wiki/BSP_(Source)"/>
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public sealed class LeafAmbientLighting
|
|
{
|
|
public CompressedLightCube Cube = new();
|
|
|
|
/// <summary>
|
|
/// Fixed point fraction of leaf bounds
|
|
/// </summary>
|
|
public byte X;
|
|
|
|
/// <summary>
|
|
/// Fixed point fraction of leaf bounds
|
|
/// </summary>
|
|
public byte Y;
|
|
|
|
/// <summary>
|
|
/// Fixed point fraction of leaf bounds
|
|
/// </summary>
|
|
public byte Z;
|
|
|
|
/// <summary>
|
|
/// Unused
|
|
/// </summary>
|
|
public byte Pad;
|
|
}
|
|
}
|