Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > D3DXComputeNormalMap |
Автор: CPlusPlusFAN 6.8.2007, 21:37 | ||
Здравствуйте! Функция D3DXComputeNormalMap в качестве последнего параметра требует значение Amplitude. SDK:
Т.е. коэффициент, на который умножается значение высоты. Если он мал, то карта нормалей практически соответствует плоскости. А если велик, то ландшафт становится уж слишком рельефным! Это ИМХО, как aspect в перспективе: может быть произвольным, но для нормального изображения он равен width/height. Так вот, чему должен быть равен этот коэффициент для правильного построения карты нормалей? Формула нужна. |
Автор: WERITAS 15.8.2007, 20:59 | ||
Насколько Я знаю, четкой формулы нет. Это надо смотреть как лучше смотрится |
Автор: CPlusPlusFAN 18.8.2007, 13:34 |
Да быть такого не может. Ведь карта нормалей должна чётко соответствовать рельефу местности, а значит и должна быть чёткая формула. |
Автор: WERITAS 19.8.2007, 17:57 |
Карта нормалей ненастоящая, фэйковая. Четкие карты нормали делаются другим способом, не таким фильтром. Из плоской текстуры не достать карту высот (реальный рельеф) |
Автор: CPlusPlusFAN 19.8.2007, 22:27 |
Например? Раньше можно было достать, а сейчас нельзя? |
Автор: WERITAS 23.8.2007, 12:29 | ||
Рисуется выоскополигональная модель и с неё снимается. Прога есть нвидиевская которая это делает.. наверняка плагины для 3д-макса есть.. P.S. Карта нормалей показывает нормаль в каждой точке. НЕЛЬЗЯ из неё глубину вытащить, потому как она fake'овая |