Вопрос

Какой обычный способ прикрусить края на кубе, прямоугольный объект, как в примерах?

Введите описание изображения здесь  Введите описание изображения здесь

Идеальный результат будет выглядеть в значительной степени точно так же, как эти изображения.

(Естественно, вы можете буквально использовать сетку, которая тщательно округлые края и углы, но это требует много TRIS для достижения этого.)


Примечание, конечно, для не -задарной подход ...

Введите описание изображения здесь

Добавьте две маленькие плоские коробки и просто сделайте эту новую нормальную половину, то есть 45 градусов, между двумя сторонами:

Введите описание изображения здесь

Это будет сделано идеально круглым ...

GDG ниже предоставил статью, в которой кто-то утверждает, что это действительно лучший способ, если не используя подход шейдера.

Мне очень интересно, как сделать это с шейдером хотя.


Примечание - невероятно подробный учебник на подходе без шейдера

http://catlikeCoding.com/unity/tutorials/Ruonded-cube/

Это было полезно?

Решение

Использование отложенного затенения Вы можете получить доступ к G-буфере для определения размещения и круглых краев, подобных ему в Эта статья .Хотя это метод после обработки, поэтому он способен эмулировать округлость в пределах некоторых пикселей.

Введите описание изображения здесь

Простые усредненные нормали (1 ширина пикселей):

Введите описание изображения здесь

Простые усредненные нормали (2 ширина пикселей):

Введите описание изображения здесь

Простые усредненные нормали (ширина 3 пикселей):

Введите описание изображения здесь

Другие советы

Я бы, наверняка отложил на шефилерно-ориентированный ответ, но особенно если необходимые шейдеры не доступны на данной платформе, я выполнял это с несколькими «уровнями деталей» моделей AKA LOD.

    .
  • Дайте GameObject для этого объекта Meshes для 6-стороннего ящика, слегка изогнутой коробки, а также в конце концом.( http://www.wings3d.com/ - мой простых инструментов моделирования)
  • Дайте игровой скрипт поведения, который проверяет каждый кадр для расстояния от камеры.

  • Активируйте соответствующую сетку на основе расстояния, и деактивируйте остальные, это должно быть сделано на расстоянии, где изменение не обнаруживается на самом высоком разрешении, доступной для игрока.

Эта техника довольно широко используется в 3D-играх, хороший способ представить отдаленные рои вещей, которые могут стать гораздо более подробными после того, как камера встала близко.

Мы смогли выполнить скошенные кубики для нашей игры WorldTobuild.Ключ действительно то, что вы можете идти вперед и сделать скошенную модель, а затем просто переместить вершины в группы.

Так что короче, все, что мне нужно сделать, чтобы достичь эффекта:

    .
  • Создать скошенный кубик (я использовал блендер).
  • Найти, какие вершины вы собираетесь двигаться в каждом направлении по их позиции из центра.
  • Рассчитайте скошенные края и установите точный размер.

Я написал статью об этом здесь.Прокрутите до нижней части статьи, если вы просто хотите знать процесс:

https://www.linkedin.com/ Pulse / Coding-Remastiable - скошенные кубики-Unity-Richard-Christley

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top