Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refine vertex normal optimisation checks #127

Conversation

zilmarinen
Copy link
Contributor

Description

Proposal to remove the polygon face normal inequality check when calling hasVertexNormals as suggested in Issue 125

This aims to solve use cases where face normals are not included when creating SCNGeometry instances from a Mesh in instances where the vertex normals are equal to the polygons plane normal.

Discussion

I have removed the offending clause from the hasVertexNormals and updated the failing unit tests accordingly.

The following unit tests have been removed as these are no longer necessary;

  • testMeshWithoutVertexNormals
  • testExportSphereWithoutTexcoordsOrNormals

I had considered extending these by replacing calls to smoothingNormals(:) with a withoutNormals() equivalent but these would only flag up the assertions for non-zero normal values when initialising a polygon so these tests have instead been removed in favour of brevity.

@nicklockwood nicklockwood changed the base branch from develop to main August 11, 2024 06:17
@nicklockwood nicklockwood changed the base branch from main to develop August 11, 2024 06:18
@nicklockwood nicklockwood merged commit eee79b3 into nicklockwood:develop Aug 11, 2024
0 of 5 checks passed
@zilmarinen zilmarinen deleted the feature/vertex_normal_optimisation_removal branch August 12, 2024 10:04
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.

2 participants