SUPCOM RTS

Dev Journal Entry

Performance Optimization Batch

Active Iteration

Performance

Priority optimization backlog for the next batch

Primary Target

Frame-Time p95

Reduce sustained spikes in heavy battles.

Scope

CPU + GPU + IO

Optimization tracks are cross-stack, not single subsystem.

Validation

Fixed Seed Benchmarks

All gains are measured on repeatable scenarios.

This cycle identified ten high impact optimization targets with clear ownership and measurable output criteria. They are ordered by expected impact on frame time, startup latency, and scalability in large maps.

The objective is to reduce both average cost and worst case spikes in heavy combined scenes with trees, terrain, particles, and large unit counts.

  • 1) GPU visible instance compaction and indirect draws for scatter paths.
  • 2) Hi Z occlusion integration for tree and rock scatter in far field.
  • 3) Shadow caster budget partitioning by cascade and object class.
  • 4) Packed instance buffer format with quantized rotation and scale.
  • 5) Multi worker scatter pipeline to overlap densify and poisson stages.
  • 6) Incremental terrain annotation and texture update by dirty rect only.
  • 7) Adaptive terrain chunk LOD update budget tied to camera velocity.
  • 8) Compressed texture delivery for terrain and vegetation assets.
  • 9) Ballistics and unit behavior decimation for distant low relevance actors.
  • 10) Framegraph pass fusion for compatible post and lighting stages.

Why these ten are high impact

Most of the list targets multiplicative costs: per instance work, per pass bandwidth, and per frame update loops. Reducing those layers improves both desktop headroom and weaker adapter stability.

The selections intentionally mix CPU, GPU, and data movement work so wins are not limited to a single bottleneck profile.

  • Scatter and shadow changes attack the largest draw call and overdraw contributors.
  • Worker and dirty rect changes reduce main thread and startup stalls.
  • Asset compression and pass fusion reduce memory pressure and bandwidth.

Execution order and safeguards

Implementation starts with low risk, high leverage plumbing that unlocks measurement, then moves to algorithmic changes. Each step has a rollback path and quality gates.

No optimization ships without side by side benchmarks on fixed seeds and scripted camera paths.

  • Phase A: instrumentation and baseline lock with fixed scenario captures.
  • Phase B: scatter and shadow workload reductions.
  • Phase C: terrain and simulation update throttling.
  • Phase D: texture compression and final framegraph cleanup.
  • Gate each phase on FPS, frame time variance, and visual parity checks.

Key metrics snapshot

The batch is judged on repeatable benchmark trends, not isolated wins. Every optimization candidate must improve at least one primary KPI without regressing visual or simulation quality.

Benchmarks run under fixed seeds and scripted camera paths to keep results comparable.

  • Frame-time percentiles (p50/p95/p99) across benchmark scenes.
  • Visible instance count, draw-call count, and culling efficiency.
  • Time-to-first-interactive-frame during startup.
  • GPU/CPU memory footprint trend before and after each phase.

Next Steps