Войти
Игровая индустрияФорумСобытия

Новый движок от id Software - id Tech 5 (комментарии) (3 стр)

Страницы: 1 2 3 4 Следующая »
#30
17:03, 21 июня 2007

Честно говоря в ролике я не увидел ничего такого, чтобы назвать это НОВОЙ технологии... просто чуть доработанная QuakeWars
ИМХО

#31
16:37, 22 июня 2007

Riddler
>Нет, там всё "вручную", артистами. Ничего они не генерят.

Что за бред. Это какой такой артист будет рисовать текстуру 32000 х 32000 - сколько на это нужно времени и соответсвенно денег? Всё равно в итоге всё перейдёт в обычный копи-паст или процедурную генерацию, если это однообразная текстура (земля, здания и т.п.). А если не однообразная, то всё это вообще теряет всякий смысл. САМОЕ ГЛАВНОЕ - сами подумайте, как можно сжать 20 реальных ГБ в несколько мб - это просто невозможно.

Товарисч Кармак, как известно, в последнее время уповал на процедурную генерацию. (Желание каждого программиста заключается в наибольшей автоматизации разработки).
Вообщем разговор идёт не о мега методе сжатия просто текстур, что = методе сжатия информации, ибо эта технология НАМНОГО больше пригодилась бы для мегасжатия всего чего угодно, только не текстур, (например музыки, видео, обычных архивов) а именно о "методе сжатия" (а точнее технологии движка) применимом только к процедурным текстурам.

Мне кажется самым разумным и примитивным (как и говорил Кармак) следующий вариант - грубо говоря, мы храним только "формулу" и разные коэффициенты для обычных кусков тексур 512х512 например, от куска к куску хранятся только различные коэффициенты, в итоге храним вообще мимниум информации. Для 32768х32768 тексуры, в итоге, при этом примере хранится формула и информация о 4096 наборах коэффициентов, что совсем немного. Когда определённый кусок попадает в "зону видимости", то обсчитываем его по общей формуле текстуры с уникальными коэффициентами и заносим в память. Используем пока (кусок видим)/(таймаут)/(до следующего кадра), а потом удаляем из памяти. В следующий раз опять обсчитываем кусок. Вот и всё. Тут есть некоторая аналогия с обсчитыванием и прорисовкой сцены каждый кадр.

Насчет железа - современных мощностей для этого вполне будет хватать. Да, в демках с процедурными текстурами всё обсчитывается достаточно долго, но важно сказать, что все текстуры уровня просчтываются сразу в больших количествах. В этом методе текстуры просчитываются при необходимости и в малых количествах.

#32
17:36, 22 июня 2007

Sagoth

> Что за бред.
> Мне кажется самым разумным и примитивным

Ну выйдет описание технологии, можем продолжить "дискуссию". :)

#33
17:54, 22 июня 2007

Sagoth
Нет, техника не про процедурные текстуры. Также по словам Кармака у них в редакторах можно использовать обычные методы (растайлить текстуры с маской). Идея в том, что у них теперь можно и старым методом, и новым - т.е. где-то что-то подправить руками.

#34
13:08, 23 июня 2007

Вроде столько писалось про эту мегатекстуру, но еще не все про нее все поняли.
В DooM3 и Quake4 действительно есть зачатки мегатекстуры, но только самые примитивные. Если добавить к движку нужный шейдер для мегатекстуры (есть такой мод, который видимо сделал человек, имеющий доступ к ET:QW) и сам файл мегатекстуры, то там происходит следующее: есть плоский ландшафт, на который можно натянуть текстуру любого размера - хотите 4096х4096, хотите 64536х64536. При этом движек создает, как сказал выше GLoom, что-то вроде атласа этой текстуры, т.е. нужные куски текстуры с различным разрешением. Т.е. около наблюдателя будет кусок 256х256 (к примеру) исходной текстуры, дальше кусок 256х256, но являющийся уменьшенной копией 512х512 куска исходной текстуры (т.е. более низкого разрешения), еще дальше 256х256 из куска 1024х1024. Таким образом мы получаем набор 256х256 текстур, который и весит те 8Мб о которых говорил Кармак (а не какое-то фантастическое сжатие). Далее пиксельный шейдер в зависимости от расстояния от пикселя до наблюдателя делает выборку из нужной текстуры.

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

Ну и наконец в idTech5 мегатекстура была доработана до такой стадии, что позволяет использовать себя на всех объектах сцены. Об этом и рассказывал Кармак. Он говорил, что художники могут менять абсолютно любую часть уровня. Н-р подкрасить вот эту вершину горы, или написать свой афтограф в этом вот месте скалы. При этом текстура для уровня, показанного на демонстрации, занимает более 20Гб (и не в какие Мб она не сжимается). Художники могут использовать любые инструменты рисования, которые им удобны, и над одной текстурой, с помощью специальных инструментариев, могут работать несколько художников одновременно. А при отрисовке в видеопамяти она занимает несколько 10ков мегабайт.

Вот кусок оригинальной речи:
"What we've got here, is an entire world, covered with big texture. This is 20 summary Gb of texture covering this track. And the artists have the ability to change anything they want."

#35
19:47, 23 июня 2007

Gzom
Нашел сайт этого мода мекатекстуры. Аффтар гаварит что сам шейдер сделал, методом проб и пыток.
Вот если интересно http://www.gamedev.no/index.jsp. Там собрано инфа которую удалось достать из движка дума

#36
0:47, 24 июня 2007

Хм, интересно, а рендер в эту мегатекстуру Кармак делал? :)
По идее, эта проблема тоже легко решается - нужно только много раз делать рендер ( по очередно в каждый слой ), причем на каждом шаге задавать матрицу для oblique perspective projection.

#37
1:07, 24 июня 2007

KennyAlive
Я изучал этот шейдер, в том, что все можно сделать подбором, я очень сомневаюсь. И если он имеет доступ к ET:QW, неужели будет говорить об этом? :) Хотя может он и действительно проделал титанический труд по подбору заголовка мегатекстуры и подбору какая текстура и какие параметры в каких слотах передаются в шейдер.

#38
3:47, 24 июня 2007

ALL
Серьезно, кто-нибудь такое делал? (пост №36)

#39
19:59, 24 июня 2007

former MessiaH
Делал что? Что за рендер в мегатекстуру? Какие слои?

#40
21:28, 25 июня 2007

А тем временем посмотреть вблизи на мегатекстуру можно в ET:QW.
Текстура для одного уровня весит 415 Мб.
Выглядит технология отлично.

#41
1:33, 30 июня 2007

Алгоритм ClipMaps подробно изложен в лекции:

Евгений Макаров, NVIDIA
Реализация технологического клипмапинга на DX10 для уникального текстурирования больших  ландшафтов

http://www.kriconf.ru/2007/index.php?type=info&doc=speech_records

Глобальная идея - для отрисовки экрана в разрешении 1024x768 в идеальном случае требуется ровно 1024x768 текселей :)

Clipmaps предполагает накладывание текстуры на плоский ландшафт проецированием сверху. Идея может быть расширена на текстуру, содержащую "раскладку" уровня. При автораскладывании нужно располагать кластеры так, чтобы тексели соседних конструкций уровня лежали рядом на текстуре. Другими словами, расстояние между текселями на текстуре должно быть как можно более пропорционально расстоянию между этими текселями в трехмерном пространстве, т.к. именно это свойство лежит в основе clipmaps.

Основными проблемами остаются стриминг (плохо работает переключение камер; при облете уровня придется простримить 300Мб с DVD?), набор инструментов для редактирования, discontinuities на границах кластеров + мипмапинг, и большой объем хранения (JPG по 300Мб на один уровень - не мало. Особенно для дополнительных multiplayer карт. A еще нужно normal map, detail texture type map, parallax map, specular map, кодирование типа поверхности для звуков и партиклов...).

Насчет использования "любого инструментария" для редактирования, скорее всего имеется в виду что-то наподобие projection mode в Deep Paint (рисование "здесь был Вася" по скриншоту в photoshop, а затем проецирование изменений на текстуру, т.к. текстура в данном случае является уже не плоской 2D картой, а непонятной раскладкой).

А вообще я думаю что "nobody still doesn't use it", потому что традиционные методы при наличии талантливых художников позволяют создавать уровни по красивости не хуже, при этом не вводя дополнительные минусы технологии.

#42
22:48, 1 июля 2007

Стриминг - сложно? Нет, это не сложно, раз в кадр грузить текстуру. Играли в NFS Carbon? Видали, как там дома последовательно появляются при перемещении к началу гонки? Жуть такая этот Карбон, что и говорить :)))) Однако, если грузить объекты на большом удалении, этого можно и не заметить.

А че, трудности с накладыванием текстуры? А вы не пробовали кубиком накладывать, только слегка сманным? Чтобы, если у нормали угол между одним планом плоскостью наложение и другойим положением к плоскости, делаем плавный переход по альфе - и все! И где тут революция 17-го года?

Короче, LOD со стримингом? И че такое? Разве что давно было пора добавить оптимизаций в Doom3 давно пора было, тормозит зверски, а Кармак видимо в Commander Keen заигрался :(

Вспоминается первый Delta Force. Во втором ДФ уже и трава легендарная была. Так я сразу и подумал, как только увидел репортаж о Мегатекстуре. Все это было уже очень давно, а нарисовать по <карте высот> пару <полигонов>, засаженных травой или покрытых камнями в зависимости от <цветового индекса> на отдельной текстуре... Простите, я это видал, и даже, извините, не во сне.

Говорите: мегатекстура раскладывается на мелкие текстуры? Т.е. фактически это тот же PAK-файл с кучей текстур? А потом они - старая песня - соединяются в один большой и красивый уровень... Все, Кармак офигел конкретно. Неудивительно, что он побоялся помидоров :) Можа, уже увидел один у кого-то в руках, вот и убежал :D При всем уважении, он точно зажрался, раз посмел назвать все это НОВОЙ ТЕХНОЛОГИЕЙ. Ребята, простите, но вы лохи :))) Вас Кармак всех облошил и непобрезговал :D Как и меня, впрочем ;)

Я увидел скриншоты и подумал: и ради этой отвратительной картинки покупать 10 DVD? Ради такого отвратительного каньона я даже 1 DVD не куплю. А представляете - для такой МАЛЕНЬКОЙ "комнатушки" в каньоне надо 20 гигов. Скока же нужно на нормальную игру? И кто из нас глупый, я или моя стенсильная тень?

И последняя. Я-то думал, тут действительно что-то революционное. Знаете, что я представлял? Ща уписаетесь. Короче, стоит чувак в комнате. Подходит к окну, на окне сидит муха. Вся такая деталлизированная, отбрасывает стенсильную тень. Но дело не в этом. Потому что за окном целый город, аж линия горизонта кривая, как в жизни, и все такое разное и фотореалистичное... А посмотрел на подоконник - а там трещины на краске. И каждая - индивидуальная. Достаешь снайперку, zoom... И видишь молекулы! Мельчайшие щепочки! А подходишь к пианине - а на ней дисплейсмент. Из этого дисплейсмента сделаны целые узоры. Приближаешь прицелом - и видишь, что дисплейсмент становится таким деталлизированным, что даже пылинки из честных полигонов. Вот такая у меня картинка возникла, как только прочитал слова: индивидуальная текстура на каждой поверхности, да еще и тотальная мегатекстура. Я-то подумал, что эта мегатекстура наложется даже на сковородку и сделает ее реально противной и красивой одновременно! Я думал, что это позволит обойти bump и прийти к полностью честным неровностям, да так, что если уж подойдешь лбом к стене, то сразу поймешь, что НИКОГДА не увидешь сглаженную пикселизацию! А самое обидное, что это действительно возможно. А Кармаку просто понравилось зарабатывать деньги.

На деле же id5 - Doom3 пятилетней давности, но с LOD рельефа на почве. Банально и несмешно. Это все, что я хотел сказать. Прямо-таки выплакался в жилетку.

#43
23:00, 1 июля 2007

LifeKILLED

[storm of applause]

#44
0:38, 2 июля 2007

Hax
>Алгоритм ClipMaps подробно изложен в лекции:
Где связь между clipmaps и megatextures?

LifeKILLED
>Стриминг - сложно? Нет, это не сложно, раз в кадр грузить текстуру.
Грузить не сложно, если знать какую, верно?

>А че, трудности с накладыванием текстуры? А вы не пробовали кубиком
>накладывать, только слегка сманным? Чтобы, если у нормали угол между одним
>планом плоскостью наложение и другойим положением к плоскости, делаем плавный
>переход по альфе - и все! И где тут революция 17-го года?
А что технология только для ландшафта?

>Вспоминается первый Delta Force. Во втором ДФ уже и трава легендарная была. Так
>я сразу и подумал, как только увидел репортаж о Мегатекстуре. Все это было уже
>очень давно, а нарисовать по <карте высот> пару <полигонов>, засаженных травой
>или покрытых камнями в зависимости от <цветового индекса> на отдельной
>текстуре... Простите, я это видал, и даже, извините, не во сне.
В воксельном мире да, такое можно. Кармак и вёл речь о том, чтобы сделать вокселим ближе к народу. Цветовая карта для крупного уровня в игре Outcast занимала примерно 10Мб. Теперь представть, какой детализации можно достич при 20Гб карте.

>Говорите: мегатекстура раскладывается на мелкие текстуры? Т.е. фактически это
>тот же PAK-файл с кучей текстур? А потом они - старая песня - соединяются в
>один большой и красивый уровень...
Тут немного о другом. Для карточки всё равно одну текстуру не сделаешь, т.к. есть ограничения. Вопрос как это хранить дело десятое.

>НОВОЙ ТЕХНОЛОГИЕЙ. Ребята, простите, но вы лохи :))) Вас Кармак всех облошил и
>непобрезговал :D Как и меня, впрочем ;)
Он и говорил, что идея стара как мир. Странно, что раньше так не делали.

Страницы: 1 2 3 4 Следующая »
Игровая индустрияФорумСобытия

Тема в архиве.