.::Russian Blood Community Forum::. »Life Is Real » Флейм » 3D двига будующего
Страниц (2): [1] 2 »
1. LifeKILLED - 15 Марта, 2010 - 16:18:41
Создавая эту тему, обращаюсь прежде всего, к тебе, 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 в день Улыбка

Какие игры можно будет сделать на таком пакете? Правдоподобные! ОЧЕНЬ правдоподобные Улыбка Это может быть апокалиптический экшн с атомными взрывами и разрушением целых кварталов домов. Может быть стелс-экшн. Может быть умопомрачительная он-лайн стрелялка с возможностью снимать друг друга через окна... И так далее Улыбка

Вот я и перечислил основные принципы разрабатываемого мной движка. Просто надоело носить в себе, хочется поделиться наболевшим Улыбка Можете кидать тухлыми помидорами, я стерплю Улыбка

2. jm - 16 Марта, 2010 - 05:34:39
Доработка не имеет конца Улыбка

От меня толку мало. Я давно "вне игры" Улыбка

Если серьезно, я не уверен, что создание подобной темы здесь хорошая идея. Ее следовало создавать на форумах того же www.gamedev.ru
Впрочем, какая там сейчас атмосфера я не знаю.

Не вижу связи "секторной схемы" с bsp. Например в том же build'е bsp не используется. Об этом говорил в интервью сам Кен.

С тотальным разрушением всего и все ты по моему тоже погорячился Улыбка
Кстати о тотальном разрушении и уже упомянутом Кене:
http://advsys.net/ken/voxlap.htm
Рекомендуется к ознакомлению хотя бы потому, что в топике темы ты что-то упомянул про будущее Улыбка Кармак не то в idtech5 не то в idtech6 планирует использовать воксели.
Вопрос, конечно, как это будет реализовано. У Кена вот это программная реализация на CPU.

Создание уникальных комнат не проблема. Проблема в том, чтобы сохранить весь этот мир и при необходимости подгружать нужные части. Какие это будут объемы ? Если использовать некие шаблоны не будет ли все выглядеть однообразно ?

Главный вопрос - что именно ты собираешься создавать на таком "моторе" ?

Все "претензии" озвучивать не буду Улыбка Дерзай. Сам все увидишь Улыбка

(Отредактировано автором: 16 Марта, 2010 - 06:04:40)

3. LifeKILLED - 16 Марта, 2010 - 18:18:21
>> bsp

Ну да, я не так выразился. Скорее не бинарное, а просто портальная система, но тоже фактически дерево. Его вообще не надо оптимизировать - гораздо легче вычислить видимость в реальном времени. Т.е. есть узлы - комнаты, и если комната видна, рисовать все объекты внутри нее.

Не исключаю, что далекие порталы буду заменять картинками )))

>> разнообразие

Если подумать, в помещениях не так много разнообразия в любой игре. Максимум - трещины и дыры в потолке. Я сделаю инструмент по созданию трещин. Сами по себе комнаты могут быть любой формы, ничто не мешает дизайнеру сделать каждый этаж отдельно и обставить несколько комнат, важных в сюжете. Я имею в виду многоэтажные дома, которые не реализованы на данный момент ни в одной игре.

Да и не в красоте тут скорее дело, а в возможностях Улыбка Скажем, для сетевого боевичка вполне пойдет Улыбка

>> Ее следовало создавать на форумах того же www.gamedev.ru

Да ну, украдут еще идею Голливудская улыбка))))) Шутка. Это просто флейм пока еще без всяких оснований, не хочу поднимать шум Улыбка))))

>> С тотальным разрушением всего и все ты по моему тоже погорячился

Думаю, нисколько. Дыра в стене - тупо сделать дверь в ближайшую комнату, а внутрь посадить модель каких нибудь корявых кусков. Я не считаю, что физически правильный подход обязателен Улыбка Что касается обрушения домов - та же фигня. Ведь никто не мешает только "обрезать" фрагмент упавшего дома, создав несколько порталов в располовиненные комнаты. Во время падения синусами-косинусами или каким-нибудь шумом искажаем стены и опускаем упавший участок вниз. Я же не собираюсь делать 1000000 досок, арматур и всякую физически правильную пыль в глаза.

>> воксели

Я кстати играл в демку Улыбка Двухэтажный дом с садом вокруг. Можно прошибать любые дыры. Я бы сравнил этот принцип с игрушкой Worms (двухмерной, где разрушением убирались пиксели на рисунке карты), только в 3d. Графика желала лучшего - кубы да и только, традиционный плоскостной рендеринг выглядит конечно покрасивше.

Нет, мой движок будет не настолько продвинутым )))) Тоже будущее, но не такое далекое Улыбка)

Я читал. Кармак совместно с еще одним чуваком (не помню имени, но точно не с Кеном) делает воксельный двиг, это id tech 6. Я видел в интернете видеоролик, где была модель монстра. Да, согласен, выглядит офигенно, но какие вычислительные мощности нужны, чтобы отрисовать не только этого монстра, но и весь окружающий мир! Сам Кармак сказал, что на имеющейся процессорной архитектуре рассчитывать долго. Аппаратура, способная на быстрое отображение вокселей, недорога в изготовлении уже сейчас, но кто за это возьмется?

Добавлю от себя за Кармака - ускорение 3d графики фактически было реализовано именно под Кармака, как я слышал, под GLQuake ))))) Возможно такое, что под воксельные двиги тоже будет создано железо - сначала дорогое и штучное, а потом................ А возможно, такая поддержка сразу войдет в обычные видео карты, типа как всякие там CUDA и подобные инструменты...

4. jm - 17 Марта, 2010 - 04:29:53
Уже много раз тебе говорил - надо выражаться "так" Улыбка

Когда то и плоскостной рендеринг выглядел так же. Важно то, что Кен развивает что-то более или менее уникальное.

Про тотальное разрушение спорить не буду. Тебе виднее Улыбка
С далеко идущими планами в России никогда проблем не было. Не повтори судьбу GSC с их Сталкером Улыбка

Ну ты задвинул. Ускорение графики было реализовано и до Кармака Улыбка Просто работало оно на специализированных рабочих станциях. А далее ежели переходить на простых смертных то уместнее было бы вспомнить почившую ныне 3dfx. Кармак ну совершенно не причем. У 3dfx был и свой апи - glide.
Просто Кармак пожалуй единственный, кто активно продвигает твой любимый OpenGL на PC Улыбка

Да и вообще, не нужно демонизировать Кармака Улыбка Он не придумал ничего нового. Он просто удачно реализовал то, что уже было документировано до него. Даже недавно 'звеневшая' 'мегатекстура' (кстати название имхо не совсем удачное) это далеко не его 'придумка' Улыбка

Если уж и искать гениев среди сотрудников (уже бывших) id то на мой взгляд это скорее будет Майк Абраш.

5. LifeKILLED - 17 Марта, 2010 - 15:01:59
От кена новостей за все 10 лет не густо. Да и придумщик он такой же, как Кармак - Build ведь по сути сделан по принципам движка Doom, хоть и с большим числом фишек. А воксели разве изобретение Кена? Насколько я знаю, все принципы и алгоритмы 3D изобретают задолго до того, как они попадают в игрушки......

ИМХО, но GSC реабилитировалась после Зова Припяти. Пусть они и превратили ТЧ в коридорный шутер (кстати, однозначно ради бабла, потому что подстраивались под железо большинства и из-за этого загубили идею). Уже в ЧН наблюдается некая свобода (а также целый адд-он глюков и сервис пак тормозов). А уж в ЗП, хорошенько его отладив, с 3-й попытки они добрались-таки до "нормальных" размеров локаций и сделали наконец "каанкретную" Припять (точнее 1/2 Припяти... но хоть так) Улыбка)) Может это они и имели в виду, когда пиарили Обливион Лост, а позже Сталкер, просто говорили "не так"? : Правда графа в ЧН красивее, ИМХО, в ЗП она какая то унылая Недовольство, огорчение

6. jm - 17 Марта, 2010 - 17:13:14
Build это sector based engine опять таки по заявлениям самого Кена. Doom использует BSP. Так что по сути это разные движки Улыбка

Я не о коридорности. Я о том, какой был размах изначально и о том, как стухли под конец Улыбка

7. LifeKILLED - 17 Марта, 2010 - 21:52:02
Просто задачу поставили невыполнимую. Иногда так и нужно делать, чтобы совершенствоваться, но зачем трендеть всем и каждому о своих задумках...

(окружающие изумленно посмотрели на автора этих строк и подумали: превед Медвед, а ты как будто не это щас делаешь) гы-гы!

За мегатекстуру Кармака не надо ругать. Это всего лишь его попытка выбраться из коридорности так, как он считает лучшим. Весь пиар мегатекстуры - дело прессы: вот, сам Кармак придумал новую афигенную технологию... А каждый журналюга хочет написать про новую технологию Кармака, вот и раздули. При этом сам же Кармак сказал, что его методика не такая уж и гениальная, как все считают, просто никто еще не пробовал пользоваться таким подходом. Вспоминается IGI Project, чем тебе не мегатекстура... И вообще что это за "мегатекстура", когда там куча файлов. Тогда уж "мега-куча-текстур" )))))))

По поводу вокселей и тотального разрушения. Помнишь, какие воронки от взрывов оставались в первом Delta Force? Я, кстати, тоже планирую воронки, но буду корректировать карту высот и текстурой земли закрашивать.

8. Slava - 17 Марта, 2010 - 22:02:17
Цитата:
Помнишь, какие воронки от взрывов оставались в первом Delta Force?

Чего-чего??? Может я невнимательно играл, но такого не припомню. Благодаря вокселям там было реализовано огромное открытое пространство, но не более.

9. jm - 18 Марта, 2010 - 06:17:09
То есть они задачу поставили не выполнимую, в отличие от тебя ? Улыбка

Не понимаю причем тут попытки выбраться из 'коридорности'. 'Коридорность' это имхо болезнь исключительно:
- первоначальной разработки движка
- дизайнеров
Если ты изначально 'учел', что тебе придется рендерить открытые пространства никаких проблем не должно возникнуть. Только если все не испортят дизайнеры. Я хочу сказать, что вот например Doom3 такой коридорный не потому, что до этого 'не было' 'мегатекстуры', которую 'придумал' Кармак, а потому, что Кармак поленился/не пытался реализовать аутдор в Doom3.

И до появления 'мегатекстуры' очень легко было этой самой коридорности избегать. Примеры приводить не буду. Ты уже вспомнил одну игру. Еще раз - не Кармак придумал эту технологию, афаик это не его 'методика':

Цитата:

Алгоритм мегатекстуры был известен еще в 98-ом году, его представили на SIGRAPH’е Michael E. Goss и Kei Yuasa, правда они не подозревали что он так называется Улыбка


Почитай, прежде чем спорить Улыбка
http://blog.gamedeff.com/?p=50

В IGI тем не 'мегатекстура', что там используется иной подход.

Не помню, потому как в первую df не играл. Зато во второй никаких воронок не было. Так что я думаю, Слава прав.
Что до открытых пространств я не думаю, что это присуще именно вокселям. Здесь все упирается в вычислительные мощности и точности представления чисел, но никак не в саму технологию.

Единственная игра с изменяемой геометрией уровня и воксельным движком которую я помню это Российский ZAR от Maddox games.

10. LifeKILLED - 18 Марта, 2010 - 16:47:26
Цитата:
Здесь все упирается в вычислительные мощности и точности представления чисел, но никак не в саму технологию.


Это от нас не зависит. Зато от нас зависит то, как мы напишем программы.

Мегатекстура, думаю, была создана благодаря распрастранению двухъядерников. Стало возможным подгружать с диска отдельным потоком. С некоторых пор все игры подгружают данные с диска, включая тот же 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

Приставка “Мега-” нынче очень популярна, особенно у нас на проекте. Это какая-то массовая истерия, мегадеревья, мегаАИ, мегаТрава, мегаРедактор, п**дец! А началось конечно с мегаТекстуры.


Я выпал Помираю со смеху!

11. jm - 18 Марта, 2010 - 17:22:53
Еще раз, это зависит от вычислительных мощностей Улыбка
Я исхожу из того, что люди умеют писать программы. Как бы ты хорошо не писал программы, в далеком 96 году создать играбельный Doom3 ты не мог бы.

Какая связь мегатекстуры и двуядерников ??? Замешательство
Не сочиняй. Причем тут подгрузка отдельным потоком ? А раньше по твоему не подгружали ? Ты видимо до конца не понял чем так хороша мегатекстура.
Да и на одном ядре используя многопоточность можно добиться прироста.

Я думаю, рекордсменом может быть и Just Cause 2 и учитывая тот факт, что там можно еще и летать, а не только гонять на машинах, то он им и будет. Я только не очень понимаю к чему эти разговоры о рекордсменах ?

Кто там и где что раздул меня мало волнует Улыбка Меня больше беспокоит то, что раздуваешь тут ты Улыбка

То изобретал, то не изобретал. Вы уж определитесь юноша. А то виляете как маркитанская лодка Улыбка

Про первую кваку заливать не надо. В те времена с ним работал Абраш. Есть большое подозрение, что его вклад в рендер ку гораздо больше.
И про idtech4 тоже брехня Улыбка Ближайший конкурент это скорее Хроники Риддика (которые даже вышли если я не ошибаюсь раньше, впрочем не уверен) и работают они отменно. А возможно даже и лучше, чем Doom3 при всем моем к нему уважении Улыбка Во всяком случае на первый взгляд система материалов по-продвинутей будет.

Лично мое видение - его заслуга только в том, что он трудоголик. А тем, кто по настоящему вкалывает всегда воздастся.

(Отредактировано автором: 18 Марта, 2010 - 17:24:28)


Powered by ExBB 1.9.1
Original Style v1.5a2 created by Daemon.XP