Replace the projected Setup-sphere rectangle and independent physics-wall ray with retail's render-coupled picker: only visible server-object parts participate, each exact drawing sphere broad-phases the camera-eye ray, and first-in-DAT-order visual polygon hits globally outrank sphere fallbacks. Replace the devtools-only procedural triangles with the retained gameplay VividTargetIndicator using retail client-enum surfaces 1..4, radar-blip colorization, Setup selection-sphere framing, and the exact eight-pixel viewport clamp. Release build succeeds with zero warnings and all 5,886 tests pass with five intentional skips. Co-authored-by: OpenAI Codex <codex@openai.com>
17 lines
444 B
C#
17 lines
444 B
C#
using System.Numerics;
|
|
using AcDream.Core.World;
|
|
|
|
namespace AcDream.App.Rendering.Selection;
|
|
|
|
/// <summary>
|
|
/// Narrow seam from the normal world draw traversal to retail mouse selection.
|
|
/// Only entities which survive that traversal are published.
|
|
/// </summary>
|
|
internal interface IRetailSelectionRenderSink
|
|
{
|
|
void AddVisiblePart(
|
|
WorldEntity entity,
|
|
int partIndex,
|
|
uint gfxObjId,
|
|
Matrix4x4 partWorld);
|
|
}
|