бесконечность можно достигнуть функцией. две точки и линия между ними это линейная функция, т.е. бесконечное колличество точек. триангл тоже самое, бесконечное колличество точек на плоскости. отсюда, если мы смотрим на треугольник который двигается по экрану с скоростью близкой к 0 мы в каждом пикселе видим бесконечный ряд точек. п.с. все это с поправкой на ограничение аппаратуры.
да че вы маразматите? "бесконечная детализация" это просто лозунг, для бесконечной детализации нужная бесконечная память,
и ессно что там должна быть какая-то интерполяция, кубики, шарики
>> да че вы маразматите? "бесконечная детализация" это просто лозунг, для бесконечной детализации нужная бесконечная память, и ессно что там должна быть какая-то интерполяция, кубики, шарики
Функции y(x) = sin(x), или z(x, y) = sin(x - y*0.5) + cos(x*2+7) .....
и подобные, генерируют бесконечные линии или поверхности с бесконечной детализацией, и при этом не требуют бесконечной памяти!
Вы господа видимо уже очень давно закончили университеты, и тем более давным давно, закончили, и тем более благополучно забыли мат-анализ, и мыслите исключительно алгоритмически.
progmachine
с каких это пор сплайны это бесконечно детализированные объекты?
y(x) = sin(x), в нашем случае будет задан либо точками либо параметрами - они задают детализцию, а всё, что потом ты из них при подставновке в функцию получишь - это апроксимация
ты вот попробуй как-ньть надусогу одной такой своей волшебной функцией описать косомодром байконур с точностью до атома хотя бы.
если у тя получится - я съем своё лицо.
>> А мне кажется или сцены в ролике зафракталены на 110%? Может поэтому у них бесконечная детализация?
>> с каких это пор сплайны это бесконечно детализированные объекты?
Речь вообще-то о разных вещах, и не надо путать хрен с пальцем. Ты утверждаешь о невозможности бесконечной детализации - вот те факт, функция бесконечна как в ширь, так и в детализацию(в сторону рассмотрения меньших расстояний, диапозонов) - бесконечная детализация возможна. И уже совсем другой разговор о применимости данного подхода к разным ситуациям и какие требования у ситуаций.
Даже тот-же шатл, Байконур и прочие вещи, у инжинеров их создававших, хранятся в системах САПР, или чертежах на бумаге, в виде систем функций, сплайнов, от окружностей, то сложных кривых поверхностей, формулы которых расчитаны из десятиэтажных уравнений и т.д. и тп. И при должном подходе, если понадобится, то это ВОЗМОЖНО. И до атомов возможно, только формулы ни кто кроме бога не знает. Совсем другой вопрос - нужно-ли, нужно-ли до атомов расчитывать. Нужно-ли проектировать и расчитывать формула до гармоник меньших дальних порядков, которые несущественны?
И главный вопрос, на который нужно ответить, чтобы выйти из замешательства - А что такое собственно детализация?
Это возможность получения значений координат, цвета, нормали, коэффициентов отражения света, в любой точке поверхности, или-же это буквально количество частей объекта, которым автор объекта уделил внимание?
Если ответить первым вариантом, то бесконечная детализация - фракталы, сплайны..., возможна. Если ответить вторым вариантом, то бесконечная детализация невозможна ввиду конечности времени внимания человека.
Barbar1an
> это просто лозунг, для бесконечной детализации нужная бесконечная память,
Множество Мандельборта.
@!!ex
я не считаю 100%-но предсказываемые явления детализацией. фрактал абсолютно предсказуем как и синус
фракталы, сплайны , интерполяторы можно использовать,
но только там где они нужны - а нужны они там где нужно видить нечто, но где лень его задавать вручную зато можно матемитически приблизительно предсказать, т.е. мелкие детали которые не имеют особого значения но должны быть определены хоть как-то
напремер ребро гайки не нужно задавать бесконечным числом точек -можно задать 2-мя точками и функцией, оно при этом не будет реальным!!! потому что если рассмотерть настоящее ребро под микроскопом то оно горбатое как гималаи, но это обычно никого не интересует на практике, поэтому хватит 2-х точек и функции.
Замешай в функцию генератор случайных чисел, раздели функцию условиями на диапазоны,... которые тоже случайны, число которых тоже случайно.... простор для творчества безграничен. :)
Однако всёже неможет быть применимо ко всем ситуациям. Но для генерации ландшафтов очень даже подходит.
progmachine
ну ты можешь, но попробуй таким же образом уровень к думу сгенерировать.
как бе это задачи совершенно разные-то
Я к тому про фракталы завел, что меня смутили "слоники" стоящие четкой фрактальной пирамидой, и части у этих слоников напоминают фрактальный папаротник. Да и папоротники там тоже присутствуют. Другого решения просто быть не может.
Процедурная генерация + псевдо рандом = неповторяющаяся геометрия.
Barbar1an
Дум требует более детального подхода, а например карту подземки из 100500 станций легко. И в памяти будут лежать только пресеты для узлов + инфа о мобах.
Да и думовское БСП дерево отлично дружит с процедурностью, почему нет то?
>> я не считаю 100%-но предсказываемые явления детализацией. фрактал абсолютно предсказуем как и синус
>> как бе это задачи совершенно разные-то
Так и надо было разговор начинать с прояснения терминов. Всегда на границе ясности и замешательства, лежит слово непонятое, либо понятое неверно.
Уровень для дума генерировать функциями, возможно если двиг позворяет генерацию, а не загрузку уровня с диска. Однако вся работа из 3d-редактора перетечёт в работу над функцией, сложность которой будет ещё больше. Естественно проще просто самому руками его нарисовать.
Суть - применимость и целесообразность к конкретной задаче.
Ты для себя, на вопрос о том что-же такое детализация, ответил вторым вариантом. Однако Авторы сущности, о который мы здесь беседуем, думается мне, имели в виду первый вариант ответа.
а создатели UD жуют попкорн наблюдая за дебатами =)
Barbar1an
> ну ты можешь, но попробуй таким же образом уровень к думу сгенерироват
Здесь уже приводилась ссылка на демку с ландшафтом в 4k.
Там чисто генерация, и при этом весьма не плохой ландшафт.
Фишка в том, что на уровне "объект типа солдат" нам функции врядли помогут. А вот на уровне "кожа солдата" - вполне.
То есть то, что должно быть уникальным - делаем уникальным стандартными техниками, то, что является не уникальным - бесконечно генерируем с помощью конечного числа функций.
Таки я не поленился, скачал одну из демок:
На скринах видно, что поинты в ранних реализациях алгоритма все-таки круглые и если рассматривать их при максимальном приближении никакой интрополяции между ними нет, по крайней мере в той реализации, которую я скачал.
И еще, имхо они немного преувеличивают, что можно в софтваре все отрисовывать. Демка безбожно висла на ноуте выдавая 1-5 кадров в секунду на T4300 и требуя
Ext 0 (GL_ARB_multitexture) : 1
Ext 1 (GL_ARB_vertex_program) : 1
Ext 2 (GL_ARB_fragment_program) : 1
Ext 3 (GL_EXT_texture_lod_bias) : 1
Ext 4 (GL_SGIS_generate_mipmap) : 1
Ext 5 (GL_EXT_texture3D) : 1
Ext 6 (GL_ARB_vertex_buffer_object) : 1
Ext 7 (GL_ATI_vertex_array_object) : 0
Ext 8 (GL_ATI_element_array) : 0
Ext 9 (GL_ARB_shader_objects) : 1
Ext 10 (GL_ARB_vertex_shader) : 1
Ext 11 (GL_ARB_fragment_shader) : 1
Ext 12 (GL_ARB_point_parameters) : 1
много расширений, которые хотя и есть у меня сейчас на Mobile Intel 4 Express, но это сейчас, а ведь на многих ноутах нет и этого...
А вот на большой машине с Geforce 9600, демка уперлась в vsync...
Тема в архиве.