Как я могу сгладить края прямоугольника без сглаживания?

StackOverflow https://stackoverflow.com/questions/3480161

Вопрос

Я создаю игру в кости для iPhone.Я использую SIO2 в качестве движка, но я думаю, что этот вопрос более общий, связанный с OpenGL.

Поскольку в iPhone отсутствует поддержка сглаживания, my dice выглядит несколько неряшливо.Если возможно, я бы хотел сделать края матрицы закругленными и гладкими, а не острыми.Я нашел одно приложение, MotionX, которому удается это делать, и я думаю, без использования сглаживания.Смотрите скриншот здесь.Если вы внимательно посмотрите на края кубика, то увидите плавающий переход от ярко освещенной верхней грани к затененной боковой грани.Издалека это выглядит немного округлым.

Кто-нибудь знает, как воссоздать такой эффект?

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

Решение

Если вы внимательно посмотрите на края кости, вы видите, что есть плавающий переход от ярко освещенного верхнего лица к затененной боковой поверхности

Не уверен, что iPhone поддерживает это, но вы сможете достичь этого эффекта с обычной картой:

http://en.wikipedia.org/wiki/normal_mapping.

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

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

Вам нужно создать кубик со слегка закругленными краями и углами.Таким образом, не будет резкого перехода между гранями.

Если ваш пакет моделирования может их создавать, вы могли бы использовать Суперквадрильи чтобы создать такого рода модель.Вы можете изменить параметры уравнения, чтобы добиться нужного эффекта.

Смотрите верхний левый рисунок на этот образ

alt text
(источник: free-online.co.uk)

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