Skip to content

Added nVerts parameter to OptimizeFaces#289

Open
walbourn wants to merge 8 commits intomainfrom
optfacesnverts
Open

Added nVerts parameter to OptimizeFaces#289
walbourn wants to merge 8 commits intomainfrom
optfacesnverts

Conversation

@walbourn
Copy link
Copy Markdown
Member

@walbourn walbourn commented Apr 17, 2026

The OptimizeFaces* methods need to take an nVerts parameter in order to validate the indices array content. This is a breaking change but improves the robustness of the code.

Includes refresh of the copilot instructions, and updating GHA to ignore changes to CoPilot instructions except for SuperLinter.

@walbourn walbourn marked this pull request as draft April 17, 2026 00:22
@walbourn walbourn self-assigned this Apr 17, 2026
@walbourn
Copy link
Copy Markdown
Member Author

@walbourn walbourn added the co_pilot Related to Co Pilot enablement for the project label Apr 20, 2026
@walbourn walbourn marked this pull request as ready for review April 21, 2026 23:19
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the DirectXMesh mesh-optimization public APIs (OptimizeFaces*) to require an nVerts parameter so the implementations can validate index buffer contents, improving robustness at the cost of an intentional breaking change.

Changes:

  • Added nVerts to OptimizeFaces, OptimizeFacesEx, OptimizeFacesLRU, and OptimizeFacesLRUEx (16-bit and 32-bit overloads) and propagated it through implementations/callers.
  • Added index-range validation in the OptimizeFaces implementations and updated meshconvert to pass mnVerts.
  • Updated release notes / Copilot instructions and adjusted GitHub Actions path filters to ignore .github/*.md changes.

Reviewed changes

Copilot reviewed 19 out of 19 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
README.md Documents the breaking API change and shows callsite update (plus minor formatting tweaks).
Meshconvert/Mesh.cpp Updates internal tool callsites to pass mnVerts into the new API signatures.
DirectXMesh/scoped.h Header comment block updated with additional fwlink URLs.
DirectXMesh/DirectXMeshOptimizeTVC.cpp Threads nVerts through TVC implementation and adds index validation.
DirectXMesh/DirectXMeshOptimizeLRU.cpp Threads nVerts through LRU implementation and adds index validation.
DirectXMesh/DirectXMesh.h Updates public API signatures to include nVerts and tweaks enum default literals.
.github/workflows/wsl.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/workflows/vcpkg.yml Expands paths-ignore to include .github/*.md/.nuget/*; whitespace normalization.
.github/workflows/uwp.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/workflows/test.yml Expands paths-ignore to include .github/*.md.
.github/workflows/msvc.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/workflows/msbuild.yml Expands paths-ignore to include .github/*.md.
.github/workflows/main.yml Expands paths-ignore to include .github/*.md.
.github/workflows/codeql.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/workflows/clangcl.yml Expands paths-ignore to include .github/*.md.
.github/workflows/bvt.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/workflows/arm64bvt.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/workflows/arm64.yml Expands paths-ignore to include .github/*.md; whitespace normalization.
.github/copilot-instructions.md Refreshes Copilot guidance text to match current project/tooling conventions.

Comment thread DirectXMesh/DirectXMeshOptimizeTVC.cpp
Comment thread DirectXMesh/DirectXMeshOptimizeLRU.cpp
Comment thread DirectXMesh/DirectXMeshOptimizeLRU.cpp
Comment thread DirectXMesh/DirectXMeshOptimizeTVC.cpp
Comment thread DirectXMesh/DirectXMeshOptimizeLRU.cpp
Comment thread DirectXMesh/DirectXMeshOptimizeLRU.cpp
Comment thread README.md Outdated
Comment thread DirectXMesh/scoped.h
Comment thread DirectXMesh/DirectXMeshOptimizeTVC.cpp
Comment thread DirectXMesh/DirectXMeshOptimizeTVC.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

co_pilot Related to Co Pilot enablement for the project enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

OptimizeFaces methods need breaking change to take nVerts for validation

2 participants