Thanks to @JaWalli for reporting the lack of support for two-sided materials (like leaves) and noticing the normals were pointing in the wrong direction. This resulted in this PR which adds support for two-sided materials and corrects the normals by refactoring the geometry generation code, reducing lines of code, complexity, and optimizing the approach to scale and rotation.
Thanks to @JaWalli for reporting the lack of support for two-sided materials (like leaves) and noticing the normals were pointing in the wrong direction. This resulted in this PR which adds support for two-sided materials and corrects the normals by refactoring the geometry generation code, reducing lines of code, complexity, and optimizing the approach to scale and rotation.