1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

Игры с воксельной графикой

Тема в разделе "PC Игры", создана пользователем Дарк Шнайдер, 31 окт 2007.

  1. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    а если за Вашей спиной нависает огромный монстр? в поле зрения должна попасть тень от него :spiteful:

    Werecat13 меня опередил

    ---------- Сообщение добавлено в 19:33 ---------- Предыдущее сообщение размещено в 19:21 ----------

    и с наложением текстур - каша получится
    хм... а зачем нужны текстуры при таком количестве поликов? можно просто окрасить полигоны в нужный цвет :)

    современные видюхи могут и 1000 млн. полигонов выдать (это если без освещения, теней и прочего ...) (надо это уточнить, правда)
     
    Grue13 нравится это.
  2. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    Werecat13
    Так, ведь, они не от балды стали популярными) Дело в том, что они очень просты, их очень легко считать и добавлять к ним многие новые возможности)

    И, как ты представляешь себе воксельную, скелетную анимацию? Ее, конечно можно хоть как-нибудь представить, только не автоматизированные способы заставят повеситься аниматоров(не знаю, как называют skinner-ов)+тонны геммороя и столько-же ошибок. А, автоматизированные. Ну, например, можно сделать так, чтобы кости управляли полигональной моделью на основе которых, бы просчитывались воксельные "картинки". Мне одному кажется, что подобный метод малость... громоздкий и ненадежный? А, другие методы я, даже, представить себе боюсь))))

    Я, как-раз говорил только об "обычной анимации".
    Как-раз, прикол вокселей в том, что ОНИ НЕ ДВИГАЮТСЯ. В смысле, внутри их "контейнера" движения не происходит! Зачем, вообще, использовать контейнеры? Воксели это трехмерные спрайты. А теперь, представь, если в 2д играх, каждый пиксель будет в виде отдельного обьекта, а теперь, переверни это в 3д.
    А про просчет физики, я скажу коротко п*****) По-другому, это не охарактеризовать))) Тамошняя физика, конечно будет по-проще, чем в MaYa Fluids, но думаю, и так ясно, что она будет жрать кучу ресурсов))) Да и там, будет куча ограничений(вроде, тех же контейнеров(аналог разрешения спрайтовых картинок) ).

    Об этом я и говорю) Иногда, полигоны кажутся медленными, но их сила в том, что они до идиотизма просты))) Да и с увеличением мощностей и инструментов их моделирования, эта "древнейшая технология" стала наиболее привлекательной) Конечно, есть SDS поверхности, но пока они слишком наворочены для наших дней)) Да, и все эти NURBS-ы и SDS-ы все-равно рендерятся в виде полигонов)))

    ---------- Сообщение добавлено в 21:05 ---------- Предыдущее сообщение размещено в 20:56 ----------

    daemolisher
    Так, это тоже называется "в поле зрения"))

    А красить ты их чем будешь, кисточкой?
    Так RenderMan-рендеры рендерят))) Но текстуры все-равно нужны)))

    А вот это уже под вопросом) Ибо это еще и то количества "обрабатываемых" вертексов в секунду зависит)))
     
  3. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    а можно сделать массивы вокселей для руки, ноги и т.д., а потом прицепить это дело к скелетону.
    да нормальной будет физика
    особенно разрушения
    можно будет "бластером" пробить целую гору насквозь и через полученную дыру пролезть
    смысл в том, что у вокселей легко меняется их состояние
    при соприкосновении с горячими объектами они смогут "сгорать", или их можно полить "кислотой" и "прожечь" дыру в полу и таким способом перейти на новый уровень в игре
    в общем некоторые особенности заманчивы
     
  4. Werecat13 Gone fishing

    Werecat13

    Регистрация:
    8 янв 2007
    Сообщения:
    5.506
    Примерно также, как создаётся скелетная анимация для сложных моделей. С "зонами влияния" костей на определённые точки. Само собой, задающимися в меру простыми манипуляциами с пятнами, а не "в индивидуальном порядке".

    Но это уже почти физика. И это, как уже было сказано, буква Пэ с набором звёздочек. ) Но именно это - идеал. Пока недостижимый. И пока он недостижим, полигоны остаются привлекательными.
     
  5. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    полигоны могут быть цветными
    а цвета кстати можно брать из текстуры :crazy:

    ---------- Сообщение добавлено в 20:35 ---------- Предыдущее сообщение размещено в 20:14 ----------

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

    А ведь это очень даже интересная вещь получается:
    -производители ЦП недавно анонсировали, процессор интегрированный с GPU, то есть даже не просто интегрированный, а ядра у него универсальны - хочешь графику считай, хочешь просто вычисления.
    И главное не надо ни всяких так вычислительных шейдеров, да и передавать по шине данные в видюху не надо.

    Это что же? Скоро вернёмся в те времена, когда видюха была всего лишь одной из плат расширения (таких как сетевая и т.д.)?
     
  6. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    daemolisher
    Да? А с деформации как ты имитировать будешь? Уже есть такая штука для полигонов... она уже давно морально устарела и подходит только для всякой "твердой" техники))))

    да, она будет очень крутой. Только, вот можно будет после каждых 10-и кадров идти обедать. :D
    Либо, покупать пару жестких дисков для кэширования(если, в данном случае, это возможно). Не забывай, что эти состояния еще нужно просчитать)))) Конечно, простые дыры, не такая большая проблема, только воксели, необтянутые полигональной сеткой, будут смотреться отвратно+только тут нет и речи о физике)

    Это уже обычный подход)))

    Werecat13
    Простой, полигональный Soft skinning тут не пойдет - если полигональные вертексы связанны друг с другом, то воксельные - нет. Поэтому, модель просто развалится при малейшем движении))) + Придется хранить гораздо больше информации, чем с полигональными обьектами)))

    Это не физика, но все-равно слишком интенсивные вычисления. Да и не думаю, что полигоны когда-нибудь устареют - с увеличением мощностей, количество доступных полигонов тоже увеличивается) Да и, есть еще куча дополнительных возможностей у полигонов, тот-же шейдинг, дисплейсмент и. т. д.) + в том же Кризисе, пальмы ломаются именно там, где в них стреляли. Ничего не напоминает? ;)
    Воксели гораздо удобнее использовать для имитации всяких жидкостей, облаков, густой пыли и. т. д., только до просчета в реальном времени, пока оооочень далеко)

    ---------- Сообщение добавлено в 21:53 ---------- Предыдущее сообщение размещено в 21:48 ----------

    daemolisher > Просто, видео-карты, сейчас, куда активнее процессоров развиваются))) Кстати, nVidia выпустили не риалтаймовый рендер, делающий вычислиния с помощью видео-карт) Правда, только под nVidia Quadro))
     
  7. Werecat13 Gone fishing

    Werecat13

    Регистрация:
    8 янв 2007
    Сообщения:
    5.506
    Ты как-то постоянно делаешь вид, что я предлагаю для вокселей абсолютно те же решения, что и для моделей, вплоть до названий. ) Что является нонсенсом само по себе.
     
  8. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    эээ ... на компе за 200 тыс. руб. можно и полигонов столько отрендерить, что ...
    просто не знаю с чем и сравнить
    речь как бы идёт об оптимизации - воксели должны быстрей считаться даже на слабых машинах
    да, вот так вот
    а как такое сделать - это уже морока программистов - пусть оптимизируют

    тем более если взглянуть на первый пост в теме - системные требования у таких игр по сегодняшним временам совсем не кажутся высокими

    ---------- Сообщение добавлено в 21:16 ---------- Предыдущее сообщение размещено в 21:12 ----------

    в GTA III если не ошибаюсь был такой способ (с полигонами, конечно).

    Можно совместить "твердую" технику с "гибкой" (к скелетону крепить анимированные воксели - при сгибании руки массивы вокселей будут не только сдвигаться, но и анимироваться (складки на одежде)).
     
  9. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    Werecat13
    Ты не уточняешь методы, что и означает то-же, или похожее решение. ;)
    Да и я говорю о том, что воксельные решения, будут гораздо сложнее и тяжелее тех же полигональных)
    Да, я не все варианты продумал, но большинство, очень сильно отстает от полигональных)

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

    ---------- Сообщение добавлено в 22:34 ---------- Предыдущее сообщение размещено в 22:26 ----------

    daemolisher
    Да, только когда вышел GTA III?

    А, это мысль) Правда, опять же не 100% решение) Уж слишком муторно и тяжело)
    Но, интересно)
     
  10. Werecat13 Gone fishing

    Werecat13

    Регистрация:
    8 янв 2007
    Сообщения:
    5.506
    Это означает, что я не изобретатель.

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

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

    Можно подумать, мы спорили. )

    На определённом уровне разные принципы описания твёрдых предметов и так давно комбинируются, тут уже приводили примеры. Только всё пока очень просто и слияние не настолько плотное.

    Современные системы частиц, подчиняющиеся законам физики (просчёт клиппинга и инерция как минимум) - это ещё один пример зачаточного уровня того, о чём я говорил.

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

    Всё это - теория и пустопорожняя болтовня. Странно, что кто-то ожидал от меня точного и продуманного описания анимации такого плана. )
     
  11. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    главное отличать визуализацию вокселей, от хранения моделей в воксельном формате

    визуализация конечно хромает без аппаратной поддержки.
    а вот к примеру физика на вокселях пожалуй сможет конкурировать.
    многие физические движки до сих пор работают на ЦП (есть конечно и PhysX и ещё много всего, да только это тоже трудно внедрять в игру и главное - не у всех поддерживается)

    Вот возьмём полигон:
    у него есть три вершины
    по сути три точки в 3d пространстве (собственно меньшим числом плоскость не задать)
    и каждая из них задана координатами x,y,z
    по сути это числа, и чаще всего НЕцелочисленные
    сколько места он займёт в памяти?

    Возьмём воксель:
    хранить координаты нет смысла
    есть только состояние вокселя
    можно отвести один бит (есть воксель или нет)
    можно один байт (нет вокселя, воксель из металла, воксель из стекла, из дерева и т.д.)
    массив вокселей должен занять много места
    но ведь это будет не каша из случайных значений
    а некая "толща" из однотипных значений
    их легко сжать - так же как сжимаются растровые изображения
    примером может служить формат PNG - очень хорошее сжатие (лучше jpeg) проявляется именно на изображениях содержащих цветовые пятна и градиенты.

    Возможно на воксельной физике может получиться игра на подобие Worms3D
    В принципе и шутер наверно можно сделать - ну и пусть стены разрушаются не произвольно, а "кирпичиками". Главное как это повлияет на гемплэй.
     
  12. Teron Lifeslayer Malkavian

    Teron Lifeslayer

    Регистрация:
    14 ноя 2004
    Сообщения:
    7.603
    INHELLER

    Опять же, сомнительное решение при наличие менее ресурсоемких партиклей.
     
  13. Low_Pressure Titanium Helmet of Musicianship owner

    Low_Pressure

    Legacy

    Регистрация:
    1 окт 2005
    Сообщения:
    8.667
    Как ты себе на практике это представляешь? В полигонах все эти функции на шейдерах висят, а здесь, я полагаю, коняжка не валялась. Скорее уж воксели приспособят на подмогу полигонам, как раз для замены шейдеров, внедрения продвинутой физики и т.д.

    Модели с нуля делать воксельными, как мне кажется морока дичайшая. Скорее должна создаваться высокополигональная модель, на нее накладываться текстуры, создаваться карты нормалей и лишь потом экспорт в воксели, с сохранением низкополигонального каркаса и скелета (для анимационных целей).
     
  14. Лорд Лотар Мессир ёж

    Лорд Лотар

    Регистрация:
    12 май 2008
    Сообщения:
    5.924
    Поразительно!
    Поднял тему спросив можно ли считать D.O.G Fight for you live игрой на воксельном движке. Олдгеймеры, не обратив ни малейшего внимания на мой вопрос начали оживленнейший спор между собой.
    Итак, окажут ли мне тут честь и ответят на мой вопрос?
     
  15. Werecat13 Gone fishing

    Werecat13

    Регистрация:
    8 янв 2007
    Сообщения:
    5.506
    А что, вполне реальная схема.

    Выдумывая сложную систему, всегда приходится выдумывать способы эффективного её использования. Удобные методы моделирования объектов и так далее. Потом идут соответствующие утилиты, которые со временем совершенствуются и становятся удобнее.

    Мысль о том, что когда-нибудь придётся проходить через тяготы создания высокополигональной модели, обтягивания её низкополигональной и генерирования карты нормалей, чтобы потом ещё рисовать многослойный скин с учётом разных свойств материалов, наверняка показалась бы очень грустной во времена первого Квейка. Когда сначала рисовали на скине человечка, а потом пытались облепить им угловатый каркас, получая кучу жутких искажений. И этим ограничивались.
     
  16. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    хм... воксели должны служить идее повышения скорости загрузки в видеопамять высокополигональных моделей
    то есть так же как и карты нормалей
    низкополигональная модель с картой нормалей будет меньше весить, чем тоже самое их "чистых" полигонов

    вообще основная проблема игр - это то, что повышение детализации (кол-ва полигонов) ведёт к появлению "узких мест"
    новые игры грузятся всё дольше, а число полигонов на экране растёт медленно и дело не в том что GPU не может их обсчитать, а в том, что не хватает кеша, а если и хватает, то он быстро опустошается и уже не хватает скорости видеопамяти восполнить его.
    Обсчёт вокселей должен быть быстрей, особенно потому, что это задача легче распараллеливается на шейдерных процессорах (наверное - сам не проверял ;) )
     
  17. redwings

    redwings

    Регистрация:
    12 янв 2008
    Сообщения:
    483
    Лорд Лотар, всего скорей - спрайты, отснятые с 3д-моделей.
     
  18. daemolisher

    daemolisher

    Регистрация:
    2 дек 2009
    Сообщения:
    1.704
    Лорд Лотар, специально скачал игру (rip)
    игра понравилась
    деревья и машинки - скорее набор спрайтов
    а вот ландшафт - трудно сказать что такое. От попадания ракеты вмятина. Там где вражеская машина взорвётся - тоже. Может и тераморфинг, а может и воксели (выгядит уж больно "квадратичками" - только по этой причине).
     
  19. INHELLER

    INHELLER

    Регистрация:
    19 май 2009
    Сообщения:
    7.228
    Werecat13
    Начну, пожалуй с главного:
    ВОКСЕЛЫ ЭТО НЕ ЧАСТИЦЫ, а трех-мерные картинки. И никакого движения там не происходит, а меняются значения отдельных "вокселей" внутри контейнера. Поэтому говорить о них, как о частицах, очень ошибочно.

    Вот это "не разваливалась" и есть основная проблема. Блин, да и только дошло, что о каком-нибудь скиннинге, речи и быть не может) Ибо, речь идет о трех-мерных картинках) Идея, меняется, но становится немного сложнее))))

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

    Вот, возьмем полигон:
    У него есть три вершины.
    У каждого вертекса хранится информация об обьектном положении. Благодаря, формулам, его положение переносится в мировое пространство.
    Дальше, там хранится информация, о гранях(с какими другими вертексами он связан)
    Слишком много данных? не-а)))
    А, теперь, о дополнительных, служебных "слотах"(особенно в играх):
    В каждом вертексе, хранится информация о каждом "нормале" прилагающегося фейса, на основе, чего просчитывается "Normal Map". Так, же на него можно спокойно натягивать различные данные с помощью текстур(сила бликов, тот-же Normal Map и. т. д.).
    В них хранится информация об освещении в "брашах" + с их помощью просчитывается информация об освещении полигона и. т. д.)))
    Все это просто thrash horror? Не-а, самое оптимальное решение)

    Теперь, посмотрим, почему воксели хуже полигонов))))
    Давай, возьмем вариант с "3д картинками"(о втором типе, поговорю чуть позже) ))
    Модель хранится, как bitmap, разве, что трехмерный. Короче, для определения точки в обьектном пространстве требуется 3 целых числа. И, внимание! Компу придется просчитывать их положение в мировом пространстве. Ну, ладно "мир" можно разбить на целочисленную сетку, и так считать их положения. То-есть остаются только целочисленные значения) Они полегче, чем цыфры с плавающей запятой, только вот и самих вокселей гораздо больше, чем вертексов) Ладно, это можно им простить...
    Только вот дальше, начинаются сплошные затраты:
    Этим точкам нужен цвет!!! Кто сказал "натянуть текстуру"? Вон из класса. Компьютер не имеет ни малейшего представления о том, что он имеет дело с поверхностью((( Поэтому, придется назначать каждому вокселю свой цвет!!! А, это получается, вторая, настолько-же тяжелая "3д картинка". Да, еще и довольно проблематично индивидуально настраивать эти два параметра(разрешение модели/разрешение текстуры).
    Да будет свет! Блин, а как его считать(((( Комп-то не имеет ни малейшего представления о том, какой воксель перекрывается другими, да и как понять насколько сильно он должен быть освещен) Придется добавить нормали... а это еще одна такая-же "3д картинка".
    Не достаточно? Ну, поехали дальше:
    С бликами нам помогут, нормали... а, если хотим получить неравномерные блики? Правильно, еще одна 3д картинка)))
    Normal Map. Ну, типа, представим, что как-нибудь ее можно получить) ЕЩЕ ОДНА 3Д КАРТИНКА ЗВЕРСКОГО РАЗРЕШЕНИЯ!!!
    Итого: 4 Воксельных контейнера для одного!!! Обьекта)
    А, в качестве бонуса: придется использовать воксельные контейнеры очень высокого разрешения, иначе, при более, или менее крупных планах, обьекты просто будут превращаться в набор кубиков) Не, конечно, можно придумать какое-нибудь сглаживание, только, боюсь, от этого у компа будет инсульт)

    П. С. Я не программист, и возможно, я пропустил пару пунктов для полигонов, но думаю, это не так критично) Да и, вообще, 3D графика требует зверского количества вычеслений))) А, в каждом вертексе хранится куча информации))) По-вашему, зачем нужны такие мощные компы?

    Ах да, есть еще и "нецелочисленные" воксели(то-есть в них хранится информация о плотности каждого, вокселя(на самом деле, не только о плотности, но это, сейчас, не так важно) , но чтобы их отрендерить, их нужно "обернуть" полигональной сеткой, так, что это уже немного другая история)

    Ты, просто не так близко знаком С ЭТИМ. Воксельные спец-эффекты выглядят просто ШИКАРНО(правда, там используется второй вариант вокселей - с плотностью). Только, вот требуют они зверского количества ресурсов))))
    Если интересно, погугли MaYa Fluids)))

    Low_Pressure
    Сомневаюсь, что реально делать детализованные модели с помощью вокслей - то самое разрешение....
     
  20. Low_Pressure Titanium Helmet of Musicianship owner

    Low_Pressure

    Legacy

    Регистрация:
    1 окт 2005
    Сообщения:
    8.667
    Какое еще разрешение?
     
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление