namespace AcDream.App.Rendering.Wb; internal enum WbTextureResolutionKind : byte { SharedAtlas, OriginalTextureOverride, PaletteComposite, } /// /// Selects the retail texture ownership path for one rendered surface. /// Retail creates a palette-combined ImgTex only for indexed source /// images; ordinary surfaces continue to reference their shared image. /// internal static class WbTextureResolutionPolicy { public static WbTextureResolutionKind Select( bool hasOriginalTextureOverride, bool hasPaletteOverride, bool sourceIsPaletteIndexed) { if (hasPaletteOverride && sourceIsPaletteIndexed) return WbTextureResolutionKind.PaletteComposite; return hasOriginalTextureOverride ? WbTextureResolutionKind.OriginalTextureOverride : WbTextureResolutionKind.SharedAtlas; } }