Просмотр исходного кода

Update rmodels.c - 'fix' for GenMeshSphere artifact (#4460)

When creating a new sphere mesh with high number of slices/rings the top and bottom parts of the generated sphere are removed. This happens because the triangles in those parts, due to high resolution, end up being very small and are removed as part of the 'par_shapes' library's optimization. Adding par_shapes_set_epsilon_degenerate_sphere(0.0); before generating the sphere mesh sets the threshold for removal of small triangles is removed and the sphere is returned to raylib correctly.
pull/4461/head
MikiZX1 2 недель назад
committed by GitHub
Родитель
Сommit
8e5d5f89c2
Не найден GPG ключ соответствующий данной подписи Идентификатор GPG ключа: B5690EEEBB952194
1 измененных файлов: 1 добавлений и 0 удалений
  1. +1
    -0
      src/rmodels.c

+ 1
- 0
src/rmodels.c Просмотреть файл

@ -2820,6 +2820,7 @@ Mesh GenMeshSphere(float radius, int rings, int slices)
if ((rings >= 3) && (slices >= 3))
{
par_shapes_set_epsilon_degenerate_sphere(0.0);
par_shapes_mesh *sphere = par_shapes_create_parametric_sphere(slices, rings);
par_shapes_scale(sphere, radius, radius, radius);
// NOTE: Soft normals are computed internally

Загрузка…
Отмена
Сохранить