![]() |
Создание SkyBox'а. Один из видов. (Урок)
Вложений: 6
И так, в этом уроке я расскажу один из способов, как сделать небо.
Плюсы и минусы этого способа: Плюсы: ++ В отличии от сфероидного скайбокса, вертикально сверху, нету дефектов стыковок текстуры. + В отличии от кубического скайбокса, не нужно делать много текстур, лишь одну, и очень просто. + Нет мест стыковок текстур. Минусы: - Вид скайбокса ограничен верхом, а то что на горизонте и ниже, пусто - Только небо. - Солнце или подобные, большие космические тела, нужно делать отдельно, т.к. есть несоответствия в перспективе. Что нам нужно, чтобы сделать такой скайбокс: 1. Photoshop, или другой подобный графический редактор. 2. MilkShape3D, можно и 3Д Макс, но объяснять буду как делать в MilkShap’e. Синими выделениями я помечал места, где нужно делать действие. Если вы впервые в милке, то включите показатели видов (Window > Show Viewport Caption) Начнём с Модели: 1. Открываем Милку. 2. Выбираем инструмент Sphere и создаём сферу на виде сверху, с настройками: Stacks: 12 Slices: 24 3. Выбираем инструмент Rotate и поворачиваем с настройками: Z: 90 4. Выбираем инструмент Select и выделяем нижнюю часть сферы в виде сбоку, с настройками: Face Ignore Backfaces: 0 By Vertex: 1 5. Удаляем выбранное (Жмём Delete). 6. Теперь, выделяем в виде спереди, крайние фэйсы и удаляем их. 7. Сейчас у нас выходит 12х6 квадров. Выделяем в виде сбоку, лишние по 3 квадра с каждой стороны и удаляем их. 8. Теперь у нас 6х6 квадров, но форма сверху, не квадратная. В виде сверху, выделяем вертексы вертикальных рядов. И масштабируем их инструментом Scale с настройками: X: Выкл. Y: Выкл. Z: Вкл. 9. Выделяем всю модель, и жмём Ctrl+Shift+F (Вывернуть все трианглы на изнанку). 10. Двигаем всю модель, чтобы самые нижние вертексы были на горизонте. Модель готова, теперь делаем развёртку: 1. Идём в закладку Materials, и создаём новый материал (New). 2. Выделяем всю модель Ctrl+A, и присваиваем материал (Assign). 3. Теперь, жмём Ctrl+T, вылезает окно развёртки, ставим вид Top (там где по стандарту Front), далее жмём Remap. Примечание: До этого не нужно тыкать на экране развёртки, т.к. собьется Регион, и придётся его обводить инструментом Region с установленной галочкой Clamp. Всё, скайбокс готов, теперь рисуем текстуру, но здесь я не буду объяснять поэтапно, т.к. это уже для каждого неба по своему, но есть только правила: 1. Текстура должна быть квадратной. 2. Нужно чтобы на самом верхнем слою была ограничительная картинка, цветом с фон за небом. В аттаче, png формата, с альфой, формата 1024х1024. Либо, более хороший, но менее производительный способ, это сделать текстуру, но там где маска установить альфу. Такой способ, лучше если цвет фона меняется, например смена дня и ночи. Что делать в коде: 1. Загружаем модель 2. Загружаем текстуру и текстурим модель. 3. Масштабируем модель. 4. Ставим FX 1+8 5. Каждый цикл, ставим позицию модели на позицию камеры. Пишите вопросы! ©MoKa |
Re: Создание SkyBox'а. Один из видов. (Урок)
а низя взять огромную сферу такую. что бы она весь левел накрыла. отрезать половину и внутри натянуть тектуру. а пото сверху одеть это на левел ?
|
Re: Создание SkyBox'а. Один из видов. (Урок)
будут стыки, если это только не GeoSphere.
|
Re: Создание SkyBox'а. Один из видов. (Урок)
Цитата:
|
Re: Создание SkyBox'а. Один из видов. (Урок)
Не используй EntityOrder, он выворачивает буффер, и альфу уже не сможешь использовать, т.к. она будет вывернута.
|
Re: Создание SkyBox'а. Один из видов. (Урок)
Почему? Я наоборот бы его использовал потому, что при использовании ордера отключается z-буффер и модель типа SkyBox, которая занимает весь экран рендерится быстрее.
|
Re: Создание SkyBox'а. Один из видов. (Урок)
Ну если, ты не используешь текстуры с альфой или маской, то конечно пожалуста, но попробуй, затем использовать что-либо с альфой, например дерево с кроной, и увидишь что будет, поэтому появляется потребность в алгоритме сортировки трисов, что-бы нормализовать рендеринг, ну и т.д. В итоге ты тролько проигрываешь.
|
Часовой пояс GMT +4, время: 14:02. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot