Всем доброго времени суток. Решил я создать тему, про такой вот способ создания ландшафта.
Что из себя представляет в GZDoom.
Видео записывал на [GZDoom v1.8.7+QEffect]:
Видео записанное с GZDoom v 2.2, более светлое.
Скрытый текст:
А еще вот можно сказать демострация ландшафта в недоделанной рпг
Сетка:
Скрытый текст:
Несколько скринов такого ландшафта:
Скрытый текст:
Что для этого нужно:
Скрытый текст:
GZDB последние билды(версии) тут. Программа EarthSculptor. Я лично пользуюсь 1.05 версией. Ландшафт что на видео был создан в EarthSculptor.
По идее можно(и даже нужно) использовать тот же Blender или любой другой подобный 3D редактор умеющий импортировать 3D модель в .obj.
Плюсы 3д пакетов вроде блендера как минимум полный контроль над каждым полигоном, точкой, линией, что позволяет создавать оптимизированные ландшафты(пример на видео далеко не оптимизирован, хотя я пытался в гздб его разгрузить, сделать сетку по реже, но GZDB пока что не пригоден для полноценного редактирования таких ландшафтов).
Минусы, в основном для тех кто не умеет пользоваться 3д редакторами вроде blender и т.д.
ИМХО EarthSculptor все же удобнее и проще, для тех кто не умеет работать в крупных, громоздких 3д пакетах.
Собственно кому лень искать, небольшие уроки как пользоваться программой(в комментариях), там же и ссылка на 1.05 версию Ссылка
От себя добавлю..
Скрытый текст:
Что бы сохранить свою карту жмите Export>Obj Export и выставляйте примерно такие параметры:
Скрытый текст:
LOD 0.01 или 0.02 по моему лучше всего для большого ландшафта(1024х1024) т.к. меньше лагов в GZDoom.
Что бы добавить готовый ландшафт XXX.Obj на карту, открываем GZDoomBuilder, жмем File>Import>WaveFront.obj as Terrain..
В открывшемся окне выбираете свой файл xxx.obj, выставляете Scale (имхо лучше от 10.0000 до 15.0000)
Up Axis ставим на Y
И ставим галочку Sloped Terrain. Если не поставить, посмотрите что будет, по своему интересно..
Жмем Import и ждем, если вы делали ландшафт размером 1024x1024 и выше, придется ждать долго. (Как показала практика достаточно 1024х1024.)
Так же ландшафт можно экспортировать из GZDoomBuilder в 3D модель формата .obj (Просто выделяем нужные сектора и жмем File>Export>Selection to WaveFront.obj) получившийся .obj файл удобно редактировать в Blender. В EarthSculptor я не знаю можно ли импортировать .obj путем конвертирования в .MAP
В EarthSculptor можно наложить текстуру на ландшафт, потом импортировать ее.
Export>Terrain Textures в открывшихся настройках HardwareRender ставим галочку, Size картинки лучше ставить не более 2048х2048 и убрать галочку с Color (если не убрать уж сильно засвечивает картинку..) и жмем RUN.
Можно и 4096х4096, но картинка экспортируется в .PNG формате, что не очень хорошо для GZDoom и ее вес будет около 20мб., лучше переделайте ее в .jpg с помощью Photoshop или чего другого, тем самым уменьшите вес картинки.
Что бы натянуть картинку на ландшафт в GZDoom, добавляем ее в pk3 архив(или Wad), выделяем все секторы ландшафта в GZDB(если большой придется подождать) и цепляем на пол картинку, и подгоняем ее (с помощью Scale) или весь ландшафт под размер картинки.
В итоге полученные карты объединить в HUB, получится довольно красочный мод, на котором можно выстраивать здания и т.д. уже в GZDoomBuilder, будет ли тормозить такая карта? Все зависит от самого себя, как сделаешь так и будет.
Еще есть небольшой нюанс.. Как правило у карты будет много треугольников, причем не нужных их надо удалять или объединить в 1 сектор с другими треугольниками такой же высоты, на худой конец просто сделать Z высоту Vertices(точки) у всех не нужных треугольников одинаковой, это не много снизит нагрузку.
Вообще на эту тему можно даже спидмапы устраивать, думаю интересно было бы.
Так же предлагаю тут выкладывать готовые ландшафты в .obj или уже в Wad архиве.
alekv Хорошая идея, в своё время я предлагал landscape map contest, но все крутили носом, правда и способ создания уровня из карты высот, с помощью одного заброшенного генератора, был немного извращённый.
alekv Хорошая идея, в своё время я предлагал landscape map contest, но все крутили носом, правда и способ создания уровня из карты высот, с помощью одного заброшенного генератора, был немного извращённый.
Ну данный способ прост и результат очень хорош если постараться, и возможен благодаря разработчику GZDB MaxEd, за что ему большое спасибо И если делать ландшафт так сказать продуманным(заранее представить где будет например вход в пещеру или озеро или подъем на скалу и т.д.) + стараться закрывать слишком большие сектора и "урезать треугольники" там где они не надо, то даже большая карта лагать не будет (почти). А тот старый редактор я видел, и помоему там такого результата не добиться, но в свое время был интересен для меня, только до сих пор не знаю как им пользоватся.
alekv Ландшафт, конечно, красивый. но ты подумал, как на таком ландшафте класть скрипты? Делать 3д полы? Задавать поведение объектов и монстров? Как вообще потом работать с такой картой? Не одной картинкой сыт игрок, нужен еще и геймплей. Потому мне кажется, что данный способ все же не подойдет для гоззо-вадов. Разве что - как декоративный ландшафт на области, куда не должна ступать нога человека.
Shadowman На самом деле, карта-пример у alekv хорошо оптимизирована и добавить туда архитектуру не особо-то и проблематично:
Скрытый текст:
А что по поводу моих успехов... Ну качнул я прогу с официального сайта, оказалось демкой где каждая 1,5 функция отключена нахрен %) Экспортируя дефолтный ландшафт в .obj мне показали большой и толстый по поводу упрощения геометрии, так что полигоны нарезал в блендере. В итоге, вышло какое-то уг:
alekv Ландшафт, конечно, красивый. но ты подумал, как на таком ландшафте класть скрипты? Делать 3д полы? Задавать поведение объектов и монстров? Как вообще потом работать с такой картой? Не одной картинкой сыт игрок, нужен еще и геймплей. Потому мне кажется, что данный способ все же не подойдет для гоззо-вадов. Разве что - как декоративный ландшафт на области, куда не должна ступать нога человека.
Все тобой перечисленное хорошо сочетается с подобным ландшафтом, единственное это проблема с 3д и воксельными моделями(и то только в гоззе 2х) Тут скорее другой вопрос, потянет ли мапер такую планку ? Я к сожалению не тяну, но пытаюсь
Jurijus:
Зачем это вообще нужно? Doom - апофеоз геометрической чистоты (в идеале). Хороший ландшафт у нас по-другому делается.
Doom быть может и "апофеоз геометрической чистоты (в идеале)", но гозза уже нечто другое и такие ландшафты имеют место быть. И "Хороший ландшафт" все тем же wavefront.obj as Terrain можно делать кубикоподобные уровни, достаточно убрать при импорте галочку Sloped Terrain.
Добавлено спустя 7 минут 22 секунды:
ChaingunPredator:
А что по поводу моих успехов... Ну качнул я прогу с официального сайта, оказалось демкой где каждая 1,5 функция отключена нахрен %) Экспортируя дефолтный ландшафт в .obj мне показали большой и толстый по поводу упрощения геометрии, так что полигоны нарезал в блендере. В итоге, вышло какое-то уг:
Я не знаю можно ли тут выкладывать версии с кряком, так бы дал ссылку. Карта пример сделана в размере 256х256, и растянута на 15.0000, я сейчас делаю другую пример карту, 1024х1024 постараюсь сделать получше, мб и мобов добавлю с 3д полами
А с блендером сам мучался, там уменя проблемы с размером ландшафта, и я брал карту .obj сделанную EarthSculptor ом и загружал в блендер, не очень удобно, но у блендера кистей поболее.. В GZDB Terrain можно не только импортировать, но и експортнуть выделенные сектора File>Export...
alekv Вообще у тебя очень хорошо получается делать оптимизированные сетки. Я думал в своё время попробовать сделать ещё фейковые lightmaps, но там есть проблема с переносом освещения на окружающие объекты.
Вообще у тебя очень хорошо получается делать оптимизированные сетки. Я думал в своё время попробовать сделать ещё фейковые lightmaps, но там есть проблема с переносом освещения на окружающие объекты.
По поводу оптимизированных сеток не знаю хорошо или плохо, карта пример просто очень маленькая, с большими картами явно есть не большие проблемки, но они касаются только текстуры которая натягивается на ландшафт. К примеру если сделать ландшафт размером 1024х1024 и картинку 4000х4000 в .png, то в гоззе поидее будет вместо текстуры чернота и сильные лаги, если запихнуть эту же картинку только в .jpg и немного ухудшить качество не размер!(я это делаю в ФШ) тогда нормально работает. Так же можно делать кучу маленьких карт потипу примера в шапке, и объединять в 1 большой уровень или делать только горы...
При експорте картинки EarthSculptor может сохранять и лайтмап прямо на картинке(будет эффект тени на горах..), но тогда к примеру скрипт динамической смены дня и ночи будет глупо смотрется.
Нет лайт бэйкинг в текстуру само по-себе глупое занятие. Если только AO добавить можно.
Вобщем доделаю скоро карту пример побольше, там видно будет Если вообще сделаю такую карту... Все времени нет, но без запекания света на текстуру в гоззе ландшафт смотрится убого как в целом и все 3д модели без AO.
Нашёл решение: сначала в 3д редакторе сделать уровень полностью... затем запечь light map отдельно для определённой поверхности (в данном случае ландшафт), после этого сохранить сам ландшафт отдельно от сцены, и перевести его в формат ГЗО, затем в уже в ГЗО мы применяем light map как bright карту текстуры ландшафта. Но тут есть гемморой: чтобы тени совпали нужно точно расположить все объекты, и карту делать два раза в моделере и бюлдере
Нет лайт бэйкинг в текстуру само по-себе глупое занятие. Если только AO добавить можно.
В чем глупость?
BFG2407:
Нашёл решение: сначала в 3д редакторе сделать уровень полностью... затем запечь light map отдельно для определённой поверхности (в данном случае ландшафт), после этого сохранить сам ландшафт отдельно от сцены, и перевести его в формат ГЗО, затем в уже в ГЗО мы применяем light map как bright карту текстуры ландшафта. Но тут есть гемморой: чтобы тени совпали нужно точно расположить все объекты, и карту делать два раза в моделере и бюлдере
В чем смысл запихивания освещение в брайтмап вообще? Гздум все равно не умеет изменять освещенность акторов по брайтмапу пола
BFG2407 Я видимо не совсем понял про лайт мап... ты имел ввиду такую чернобелую текстурку которая в 3д моделях налаживается как эффект? Скульптор ее может делать, но увы ее никак не прикрутить к ландшафту в гоззе, в принцыпе в шапке на 4 скрине хорошо видно тень на горах и земле, в игре создаеся сильное впечатление будто светит солнце, такая тень делается в EarthSculptorе и там можно поворачивать лучи солнца, без такого эффекта ландшафт смотрится очень не красиво.
Гозза понимает какие-то BrightMap, но я догадываюсь что это больше для спрайтов, как бы дает понять где надо спрайт делать ярче а где нет.
ChaingunPredator:
В чем смысл запихивания освещение в брайтмап вообще? Гздум все равно не умеет изменять освещенность акторов по брайтмапу пола
Теперь более понятно что за брайтмап. ИМХО, чисто в теории можно симитировать такой эффект(незнаю стоит оно того) с помощью acs и CheckTextureFloor или как-то так называлось спомощью простого If else освещать спрайт или затемнять (как в декорейте проперти +Bright) но думаю это титанический труд.. хороший ландшафт за 1-2 дня не сделать, его ведь и в GZDB потом редактировать надо и очень долго, а если еще и текстуру разрезать на части для имитации эффекта brightmap... Еще и звуки шагов на таком ландшафте проблематично делать
Добавил видео такого ландшафта, кому интересно смотрим.. К сожалению записалось как-то темно, в действительности все не так темно, это видимо из-за qeffect, но без него записывать не хотел что бы показать что карта все таки более менее играбельна с qeffect и на гоззе 1.8х! На гздум 2х все еще шустрее работает.
Добавлено спустя 33 минуты 35 секунд:
Добавил еще и записанное с GZDoom v2.2. Уже светлее, быстрее. Собс-но играя лагов вообще не чувствую. Я так же пробовал такую карту полностью засадить 3д травой(там где она типа должна быть), в целом лаги были, но терпимые и то были потому что 3д модели не отключались когда игрок не смотрит на них.. т.е. за бугром траву все равно рендерило.. Жаль только карта с травой не сохранилась, потерял ее где-то =(
Как у тебя есть продвижения? Мне интересно: если адовую стилистику по Shadowman'у и этот ландшафт совместить, должно выйти кульно (главное скайбокс со скалами)
Мне это напомнило те горы которые я видел на е1м1, там где берешь зеленый броник. Эээх как я в детстве хотел туда попасть.. Теперь Алек почти исполнил мою мечту У меня тут появились даже несколько идеи насчет сюжета.