-
Лазил по форуму в надежде найти что-нибудь по созданию рельефа, создал вопрос. Ответили: нужно делать полигонами. Начал делать - очень неудобно: рельеф неочень гладкий, очень много ненужных полигонов и др. Нашёл скрин.
-
-
Ну так вот, вопрос: как мне сделать потипу такого рельефа и текстуры?
-
Дело не в рельефе. Дело в том, что рельеф получается ломанным за счет освещения. У тебя каждый полик - имеет свою нормаль, поэтому когда накладываешь освещение - перепад освещения очень явно выделяет стыки поликов. Чтобы этого не было, нужно применить сглаживание. Сглаживание делается на уровне нормалей. 1) сначала считаем для всех поликов нормали. Получаем жесткие нормали перпендикулярные полику. 2) Перебираем все вершины. Смотрим, каким поликам принадлежит эта вершина. Поулчаем среднее значение нормали из всех принадлежащих вершине поликов. 3) Запоминаем для каждой вершины новую нормаль. 4) при отображениии в качестве нормали задаем не нормаль перпендикулярную полику, а нормаль расчитанную ранее. 5) Наслаждаемся ровненьким рельефом. P.S. Кстати, использование жестких нормалей или сглаженных очень хорошо наблюдать на низополигональный сфере. Слева шарик с сглаженными нормалями. Справа - с классическими. http://afera-net.narod.ru/smoothgroups.PNGРезальтат на лице. P.P.S. 3dsMax по умолчанию уже модельки сглаживает. Да еще умеет группы сглаживания контролировать.
-
Ну, теоритически понятно. А как ты рельеф делал? Полигонами, или terrainrender, или как-то ещё?
-
> [4] Mr.Vlad (18.03.08 23:40)
Это обычная Максовская модель.
-
Вообще еще делал картой высот, но моделлерам это не удобно, поэтому перешли на модели.
-
1) И у тебя тоже модельки (поверхность) из Max'а? 2) А как, допустим, в Generals редактор карт сделан, что там сначала поверхность ровная, а потом поднимаешь и опускаешь? 3) Карта высот-это HeightField?
-
> 1) И у тебя тоже модельки (поверхность) из Max'а?
ИМХО самый оптимальный вариант...
> 2) А как, допустим, в Generals редактор карт сделан, что > там сначала поверхность ровная, а потом поднимаешь и опускаешь?
Там специфика другая. Там нужен: 1) простой редактор для модификаций. Не каждый юзер справится с Максом 2) Рельфе строго сеточный, для упрощения поиска пути
Да и вообще стратегии - это отдельный разговор, там свои проблемы с рельефом. Если делаешь стратегию, то рекомендую использовать карту высот, и хранить ее в каком нить легко доступном виде(например, bmp)
3) Карта высот-это HeightField? Да. Но это не обязательно картинка.
-
Спасибо за советы, а что за ИМХО? (Что-то с максом) 2) Я делаю что-то типа танчиков. 3) Как делать в максе поверхность - я умею, а как потом её текстурировать. Она очень большая. Такой JPEG получается =(. А если маленький, то качество никуда.
-
> , а что за ИМХО?
Имею Мнение Хрен Оспоришь... Или по-ненашему как то
-
> [10] Denis__ © (22.03.08 16:27)
По Моему Собственному Мнению
-
Спасибо за советы. Сделал в Максе plane, потом вершины подравнял как надо, затем Unwrap UWM, сохранил текстурку, но она получается очень большой, а если делать маленькой, то качество в игре плохое. Как делать?
-
> [12] Mr.Vlad (26.03.08 21:58)
Кури Мегатекстуры. На gamedev.ru есть статья. Смысл в том, что не нужно грузить в видеопамять всю текстуру сразу, а можно загрузить только нужные участки. с нужной детализацией. В итоге как бы рельеф покрыт одной огромной текстурой, но при этом для построения рельефа используеття набор текстур вполне приемлемых размеров, при этом качество, как быдуто мы действительно используем всю огромную текстуру.
-
А точнее, подробнее?
-
Точнее и подробнее на gamedev.ru, смысл мне пересказывать статью? Там все понятно, я лучше не объясню, плюс к статье топик на несколько страниц.
-
Я заметил: в хороших играх в симметричных текстурах рисуют только одну сторону, т. е. нет смысла рисовать, допустим, кусок асфальта размером 2048*2048, если он состоит из маленьких одинаковых кусков 256*256, только в максе для текстуры маппинг нужно сделать, а как - я не знаю. Пример: **-* **-* *--* *-** Это полная текстура, а получается: *-
З. Ы. Рельеф в максе Plane'ом делать?
|