|
|
|
|
|
WWW : Профиль : |
|
Создавая эту тему, обращаюсь прежде всего, к тебе, jm
Хочу поделиться мыслями по поводу своего движка и игр, которые можно будет на нем делать.
В той или иной степени рендер написан, редактор тоже в основной части рабочий. Другое дело, что все это полно глюков, и не хватает самой важной графической составляющей - шейдеров ))))) Проблема в том, что я не знаю, сколько займет времени доработка. Но сейчас не об этом.
Просто помечтаем
Итак, план такой: я на полном серьезе планирую сделать движок, который способен обрабатывать огромный город со всеми домами, чтобы была возможность их разрушать. Но это еще не самое Наполеоновское. В этом движке будет возможно зайти в ЛЮБУЮ квартиру через любую дверь или окно. Т.е. кроме самих улиц будет неограниченное колличество помещений, комнат, и т.д. и т.п.. А это уже заява каанкретная Но и это еще не все. Я сказал, что дома можно будет разрушать. Конкретнее: можно сделать дыру в любой стене, полу или потолке... и дома рушить по частям, т.е. чтобы торчали куски квартир, по которым тоже можно было бы свободно передвигаться и лазать. Без тумана. Без невидимых стен. Без границ.
(кароч копите на Blu-Ray привод )) )
Звучит дико. Теперь о реализации.
Рендерить город будет не так уж и сложно. Улицы - как в GTA4 или ей подобной, а отдельные квартиры можно подгружать с жесткого диска. Причем снаружи на дальнем расстоянии в окнах дома можно будет увидеть не непосредственные комнаты квартир, а paralax mapping текстуру, на которой будет она нарисована Естественно, будет очень много LOD-уровней.
Хорошо, может быть, не так уж и муторно будет все это отрисовывать. КАК ЭТО СОЗДАВАТЬ?
Это будет самая главная фишка моего движка. Редактор - очень легкий в освоении и крайне мощный в действии. В его основе лежит моя методика "зас*рания" уровня геометрией - Trash Mesh, которую я придумал года 3 назад Эта технология в зачаточном состоянии мной уже реализована.
Out-door пространство будет традиционным - карта высот, текстуры, подгрузка деталей, Lod-уровни и т.д. и т.п.. Дома будут создаватья, как кубы или более сложные по форме фигуры.
In-door - это секторная система типа Build. Т.е. основная работа - в виде сверху рисовать план здания. Затем указывать высоты комнат, выбирать текстуры... короче то, что мы все здесь умеем и любим делать больше всего
Ключевым элементом Trash Mesh будет СТЕНА. Каждой стене назначается свой стиль - не просто текстура, а геометрические данные. Т.е. форма стен, косяки, трехмерные окна и прочее будет появляться автоматически, как только ты выберешь стиль для этой стены из списка.
Я планирую сделать свой редактор этого "геометрического" стиля с возможностью лофтинга, создание прилепленных брашей и т.д.. Однако на данный момент эта функция еще не реализована, и пока эти стили нужно изготавливать в 3ds max. За основу берется прямоугольный plane с Y=0 (можно просто нарисовать в Left-проекции, любого размера), и уже на него накладываются плинтуса или окошки.
Такая геометрия уже отлично позиционируется в билде движка без малейших прорех и щелей. Осталось реализовать "разрезание" этой модельки для стен, которые уже, чем эта самая моделька.
Если разместить источник света (пока что статичный vertex-light), то в результате очень простой в изготовлении (буквальнр за 15 секунд) уровень смотрится вполне неплохо.
В будущем этот же редактор будет генерировать текстуры, на которых будет "спроецирована" такая стена (color, normal map и т.д.), этой текстурой будет заменяться стена на большом расстоянии. Вот вам и готовый LOD
И еще один плюс секторной системы. Ведь это уже готовое BSP-дерево с порталами! Если сектор (дверь или окно из комнаты в комнату) легко можно создать в редакторе, почему бы не дать игроку возможность создавать их в самой игре? В результате - можно будет не только вышибать любые двери, но и громить стены неподалеку рядом с этими дверьми!
Последний вопрос. Как же создать такой большой мир, как город? Неужели, я соизволю нанять 1000 дизайнеров, сколько же на это нужно баксов...
Еще одна фишка редактора (нереализованная, но реализовать ее будет легче всего перечисленного) - возможность доверить создания квартир компьютеру. Не надо забывать, что все этажи у домов имеют один и тот же план. Т.е. чтобы создать 16 этажный дом, нужно будет нарисовать план для одного этажа! (правда при этом я не сосчитал подвал и чердак, но как складно прозвучало ). Останется указать, какие из секторов являются квартирами, какие коридором или лифтом... Потом компьютер, руководствуясь скриптом, присвоит этим квартирам различный уровень "богатства" и "дизайнерского взгляда хозяев" и сам заставит подходящей мебелью. Причем, в туалетах не будет диванов, об этом позаботится скрипт )))
Да, конечно, будет необходима огромная база различной мебели и прочей утвари. Но это всего лишь дело времени. Можно каждый день делать по диванчику или тарелочке, а уж компьютер найдет, куда все это поставить. Причем, к каждому дивану он будет выбирать случайную цветовую гамму (в разумных пределах), таким же образом он будет раскрашивать стены домов.
Разумеется, нужна будет большая база "стилей" стен, но редактор который я создам будет очень прост и быстр, таких стенок можно будет плодить хоть по 100 в день
Какие игры можно будет сделать на таком пакете? Правдоподобные! ОЧЕНЬ правдоподобные Это может быть апокалиптический экшн с атомными взрывами и разрушением целых кварталов домов. Может быть стелс-экшн. Может быть умопомрачительная он-лайн стрелялка с возможностью снимать друг друга через окна... И так далее
Вот я и перечислил основные принципы разрабатываемого мной движка. Просто надоело носить в себе, хочется поделиться наболевшим Можете кидать тухлыми помидорами, я стерплю
----- Я убиваю не рукой; тот кто убивает рукой, забыл лицо своего отца. Я убиваю сердцем. |
|
Всего записей: 1694 : Дата рег-ции: Июль 2004 : Отправлено: 15 Марта, 2010 - 16:18:41 |
|
|
|
|
Профиль : |
|
Доработка не имеет конца
От меня толку мало. Я давно "вне игры"
Если серьезно, я не уверен, что создание подобной темы здесь хорошая идея. Ее следовало создавать на форумах того же www.gamedev.ru Впрочем, какая там сейчас атмосфера я не знаю.
Не вижу связи "секторной схемы" с bsp. Например в том же build'е bsp не используется. Об этом говорил в интервью сам Кен.
С тотальным разрушением всего и все ты по моему тоже погорячился Кстати о тотальном разрушении и уже упомянутом Кене: http://advsys.net/ken/voxlap.htm Рекомендуется к ознакомлению хотя бы потому, что в топике темы ты что-то упомянул про будущее Кармак не то в idtech5 не то в idtech6 планирует использовать воксели. Вопрос, конечно, как это будет реализовано. У Кена вот это программная реализация на CPU.
Создание уникальных комнат не проблема. Проблема в том, чтобы сохранить весь этот мир и при необходимости подгружать нужные части. Какие это будут объемы ? Если использовать некие шаблоны не будет ли все выглядеть однообразно ?
Главный вопрос - что именно ты собираешься создавать на таком "моторе" ?
Все "претензии" озвучивать не буду Дерзай. Сам все увидишь
(Отредактировано автором: 16 Марта, 2010 - 06:04:40)
----- Shine on you crazy diamond WBR jm ( aka x-ray aka ведьМЫШ ) http://vedmysh.livejournal.com |
|
Всего записей: 528 : Дата рег-ции: Март 2005 : Отправлено: 16 Марта, 2010 - 05:34:39 |
|
|
|
|
WWW : Профиль : |
|
>> bsp
Ну да, я не так выразился. Скорее не бинарное, а просто портальная система, но тоже фактически дерево. Его вообще не надо оптимизировать - гораздо легче вычислить видимость в реальном времени. Т.е. есть узлы - комнаты, и если комната видна, рисовать все объекты внутри нее.
Не исключаю, что далекие порталы буду заменять картинками )))
>> разнообразие
Если подумать, в помещениях не так много разнообразия в любой игре. Максимум - трещины и дыры в потолке. Я сделаю инструмент по созданию трещин. Сами по себе комнаты могут быть любой формы, ничто не мешает дизайнеру сделать каждый этаж отдельно и обставить несколько комнат, важных в сюжете. Я имею в виду многоэтажные дома, которые не реализованы на данный момент ни в одной игре.
Да и не в красоте тут скорее дело, а в возможностях Скажем, для сетевого боевичка вполне пойдет
>> Ее следовало создавать на форумах того же www.gamedev.ru
Да ну, украдут еще идею ))))) Шутка. Это просто флейм пока еще без всяких оснований, не хочу поднимать шум ))))
>> С тотальным разрушением всего и все ты по моему тоже погорячился
Думаю, нисколько. Дыра в стене - тупо сделать дверь в ближайшую комнату, а внутрь посадить модель каких нибудь корявых кусков. Я не считаю, что физически правильный подход обязателен Что касается обрушения домов - та же фигня. Ведь никто не мешает только "обрезать" фрагмент упавшего дома, создав несколько порталов в располовиненные комнаты. Во время падения синусами-косинусами или каким-нибудь шумом искажаем стены и опускаем упавший участок вниз. Я же не собираюсь делать 1000000 досок, арматур и всякую физически правильную пыль в глаза.
>> воксели
Я кстати играл в демку Двухэтажный дом с садом вокруг. Можно прошибать любые дыры. Я бы сравнил этот принцип с игрушкой Worms (двухмерной, где разрушением убирались пиксели на рисунке карты), только в 3d. Графика желала лучшего - кубы да и только, традиционный плоскостной рендеринг выглядит конечно покрасивше.
Нет, мой движок будет не настолько продвинутым )))) Тоже будущее, но не такое далекое )
Я читал. Кармак совместно с еще одним чуваком (не помню имени, но точно не с Кеном) делает воксельный двиг, это id tech 6. Я видел в интернете видеоролик, где была модель монстра. Да, согласен, выглядит офигенно, но какие вычислительные мощности нужны, чтобы отрисовать не только этого монстра, но и весь окружающий мир! Сам Кармак сказал, что на имеющейся процессорной архитектуре рассчитывать долго. Аппаратура, способная на быстрое отображение вокселей, недорога в изготовлении уже сейчас, но кто за это возьмется?
Добавлю от себя за Кармака - ускорение 3d графики фактически было реализовано именно под Кармака, как я слышал, под GLQuake ))))) Возможно такое, что под воксельные двиги тоже будет создано железо - сначала дорогое и штучное, а потом................ А возможно, такая поддержка сразу войдет в обычные видео карты, типа как всякие там CUDA и подобные инструменты... |
|
Всего записей: 1694 : Дата рег-ции: Июль 2004 : Отправлено: 16 Марта, 2010 - 18:18:21 |
|
|
|
|
Профиль : |
|
Уже много раз тебе говорил - надо выражаться "так"
Когда то и плоскостной рендеринг выглядел так же. Важно то, что Кен развивает что-то более или менее уникальное.
Про тотальное разрушение спорить не буду. Тебе виднее С далеко идущими планами в России никогда проблем не было. Не повтори судьбу GSC с их Сталкером
Ну ты задвинул. Ускорение графики было реализовано и до Кармака Просто работало оно на специализированных рабочих станциях. А далее ежели переходить на простых смертных то уместнее было бы вспомнить почившую ныне 3dfx. Кармак ну совершенно не причем. У 3dfx был и свой апи - glide. Просто Кармак пожалуй единственный, кто активно продвигает твой любимый OpenGL на PC
Да и вообще, не нужно демонизировать Кармака Он не придумал ничего нового. Он просто удачно реализовал то, что уже было документировано до него. Даже недавно 'звеневшая' 'мегатекстура' (кстати название имхо не совсем удачное) это далеко не его 'придумка'
Если уж и искать гениев среди сотрудников (уже бывших) id то на мой взгляд это скорее будет Майк Абраш.
----- Shine on you crazy diamond WBR jm ( aka x-ray aka ведьМЫШ ) http://vedmysh.livejournal.com |
|
Всего записей: 528 : Дата рег-ции: Март 2005 : Отправлено: 17 Марта, 2010 - 04:29:53 |
|
|
|
|
WWW : Профиль : |
|
От кена новостей за все 10 лет не густо. Да и придумщик он такой же, как Кармак - Build ведь по сути сделан по принципам движка Doom, хоть и с большим числом фишек. А воксели разве изобретение Кена? Насколько я знаю, все принципы и алгоритмы 3D изобретают задолго до того, как они попадают в игрушки......
ИМХО, но GSC реабилитировалась после Зова Припяти. Пусть они и превратили ТЧ в коридорный шутер (кстати, однозначно ради бабла, потому что подстраивались под железо большинства и из-за этого загубили идею). Уже в ЧН наблюдается некая свобода (а также целый адд-он глюков и сервис пак тормозов). А уж в ЗП, хорошенько его отладив, с 3-й попытки они добрались-таки до "нормальных" размеров локаций и сделали наконец "каанкретную" Припять (точнее 1/2 Припяти... но хоть так) )) Может это они и имели в виду, когда пиарили Обливион Лост, а позже Сталкер, просто говорили "не так"? : Правда графа в ЧН красивее, ИМХО, в ЗП она какая то унылая |
|
Всего записей: 1694 : Дата рег-ции: Июль 2004 : Отправлено: 17 Марта, 2010 - 15:01:59 |
|
|
|
|
Профиль : |
|
Build это sector based engine опять таки по заявлениям самого Кена. Doom использует BSP. Так что по сути это разные движки
Я не о коридорности. Я о том, какой был размах изначально и о том, как стухли под конец
----- Shine on you crazy diamond WBR jm ( aka x-ray aka ведьМЫШ ) http://vedmysh.livejournal.com |
|
Всего записей: 528 : Дата рег-ции: Март 2005 : Отправлено: 17 Марта, 2010 - 17:13:14 |
|
|
|
|
WWW : Профиль : |
|
Просто задачу поставили невыполнимую. Иногда так и нужно делать, чтобы совершенствоваться, но зачем трендеть всем и каждому о своих задумках...
(окружающие изумленно посмотрели на автора этих строк и подумали: превед Медвед, а ты как будто не это щас делаешь)
За мегатекстуру Кармака не надо ругать. Это всего лишь его попытка выбраться из коридорности так, как он считает лучшим. Весь пиар мегатекстуры - дело прессы: вот, сам Кармак придумал новую афигенную технологию... А каждый журналюга хочет написать про новую технологию Кармака, вот и раздули. При этом сам же Кармак сказал, что его методика не такая уж и гениальная, как все считают, просто никто еще не пробовал пользоваться таким подходом. Вспоминается IGI Project, чем тебе не мегатекстура... И вообще что это за "мегатекстура", когда там куча файлов. Тогда уж "мега-куча-текстур" )))))))
По поводу вокселей и тотального разрушения. Помнишь, какие воронки от взрывов оставались в первом Delta Force? Я, кстати, тоже планирую воронки, но буду корректировать карту высот и текстурой земли закрашивать.
|
|
Всего записей: 1694 : Дата рег-ции: Июль 2004 : Отправлено: 17 Марта, 2010 - 21:52:02 |
|
|
|
|
Профиль : |
|
Цитата:Помнишь, какие воронки от взрывов оставались в первом Delta Force? |
Чего-чего??? Может я невнимательно играл, но такого не припомню. Благодаря вокселям там было реализовано огромное открытое пространство, но не более. |
|
Всего записей: 888 : Дата рег-ции: Июнь 2004 : Отправлено: 17 Марта, 2010 - 22:02:17 |
|
|
|
|
Профиль : |
|
То есть они задачу поставили не выполнимую, в отличие от тебя ?
Не понимаю причем тут попытки выбраться из 'коридорности'. 'Коридорность' это имхо болезнь исключительно: - первоначальной разработки движка - дизайнеров Если ты изначально 'учел', что тебе придется рендерить открытые пространства никаких проблем не должно возникнуть. Только если все не испортят дизайнеры. Я хочу сказать, что вот например Doom3 такой коридорный не потому, что до этого 'не было' 'мегатекстуры', которую 'придумал' Кармак, а потому, что Кармак поленился/не пытался реализовать аутдор в Doom3.
И до появления 'мегатекстуры' очень легко было этой самой коридорности избегать. Примеры приводить не буду. Ты уже вспомнил одну игру. Еще раз - не Кармак придумал эту технологию, афаик это не его 'методика':
Цитата: Алгоритм мегатекстуры был известен еще в 98-ом году, его представили на SIGRAPH’е Michael E. Goss и Kei Yuasa, правда они не подозревали что он так называется
|
Почитай, прежде чем спорить http://blog.gamedeff.com/?p=50
В IGI тем не 'мегатекстура', что там используется иной подход.
Не помню, потому как в первую df не играл. Зато во второй никаких воронок не было. Так что я думаю, Слава прав. Что до открытых пространств я не думаю, что это присуще именно вокселям. Здесь все упирается в вычислительные мощности и точности представления чисел, но никак не в саму технологию.
Единственная игра с изменяемой геометрией уровня и воксельным движком которую я помню это Российский ZAR от Maddox games.
----- Shine on you crazy diamond WBR jm ( aka x-ray aka ведьМЫШ ) http://vedmysh.livejournal.com |
|
Всего записей: 528 : Дата рег-ции: Март 2005 : Отправлено: 18 Марта, 2010 - 06:17:09 |
|
|
|
|
WWW : Профиль : |
|
Цитата:Здесь все упирается в вычислительные мощности и точности представления чисел, но никак не в саму технологию. |
Это от нас не зависит. Зато от нас зависит то, как мы напишем программы.
Мегатекстура, думаю, была создана благодаря распрастранению двухъядерников. Стало возможным подгружать с диска отдельным потоком. С некоторых пор все игры подгружают данные с диска, включая тот же UE3, и самое главное рекордсмен по размеру карт FUEL. В последнем мне почему-то картинка больше по нраву, чем в том же ETQW.
Кармак действительно ничего не изобретал в этом плане, он просто сделал очередной двиг в своем стиле, опираясь на уже имеющиеся алгоритмы. Также как стенсильные тени, и BSP (последний алгоритм появился вообще н-десятков лет назад). Его заслуга в том, что у него талант к оптимизациям и всяким мелким "изобретениям" типа Carmack's Reverce. И то, как он создал Catacomb3D на компах того времени (позже Doom, позже первую Кваку). Да тот же id tech 4 - чем не венец оптимизаций? Ближайший конкурент с тоеми же технологиями Jupiter EX (двига FEAR), созданный крупной, опытной и всеми нами любимой компанией Monolith гораздо медленнее работает, чем Doom3. На одной и той же версии шейдеров, НО! Сколько деталей и источников освещения в Doom3 и как мало их в FEAR - сплошные коробки, изредка освещенные крупные комнаты, и при том последний неслабо тормозил на тех же компах, на которых Doom3 летал. Вот за это я люблю Кармака и ставлю его в пример. А какая-то интрига с Мегатекстурой, которую раздули журналисты, а отнюдь не сам Кармак, моего мнения по поводу его личности не изменит.
Именно с Кармаком и связан главный миф, что OpenGL быстрее чем DirectX. А вообще то это не так, и дело тут в людях...
P.S.: Воронки в DF были, только видимо они были не очень заметные. Земля немного темнела под гранатами и там высота изменялась. Не помню правда, в первом или во втором это было, но я точно видел такую картину.
(Добавление) Цитата:Мега-пост 3rd October 2007, 11:44 am by CybeRUS
Приставка “Мега-” нынче очень популярна, особенно у нас на проекте. Это какая-то массовая истерия, мегадеревья, мегаАИ, мегаТрава, мегаРедактор, п**дец! А началось конечно с мегаТекстуры. |
Я выпал |
|
Всего записей: 1694 : Дата рег-ции: Июль 2004 : Отправлено: 18 Марта, 2010 - 16:47:26 |
|
|
|