Skip to content

Remove dead USE_TESS_NEEDS_ST2 / needsST2 tessellation wiring#220

Draft
cursor[bot] wants to merge 1 commit into
mainfrom
cursor/obsolete-feature-flags-6449
Draft

Remove dead USE_TESS_NEEDS_ST2 / needsST2 tessellation wiring#220
cursor[bot] wants to merge 1 commit into
mainfrom
cursor/obsolete-feature-flags-6449

Conversation

@cursor
Copy link
Copy Markdown

@cursor cursor Bot commented May 18, 2026

Summary

Removes the compile-time USE_TESS_NEEDS_ST2 path and all needsST2 state that never shipped: the macro was commented out in both tr_local.h variants, so the preprocessor always took the unconditional branch (always emit second UV / lightmap coords).

Flags / toggles removed

Item Why safe
USE_TESS_NEEDS_ST2 (commented define removed) Never defined in Vulkan or OpenGL headers; no build matrix enabled it.
shader_t::needsST2 Only consumed by the removed tess path and DetectNeeds; no remaining readers.
shaderCommands_t::needsST2 / tess.needsST2 assignments Same; active behavior was always “copy ST2”.

Behavioral parity

  • OpenGL and Vulkan Release builds via ./scripts/compile_engine.sh opengl and ./scripts/compile_engine.sh vulkan.
  • ctest --output-on-failure in build-gl-Release: all 26 tests passed (smoke, renderer regression scripts, unit tests).

Notes

  • USE_TESS_NEEDS_NORMAL remains as-is (still enabled for OpenGL, disabled for Vulkan) to avoid mixing unrelated parity work into this change.
Open in Web View Automation 

USE_TESS_NEEDS_ST2 was never defined in either renderer; the active
path always copied lightmap/ST2 coordinates. Drop the macro, shader
and tess state, DetectNeeds bookkeeping, and redundant conditionals.

Co-authored-by: Tim Fox <timfox@outlook.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant