LINUX.ORG.RU
ФорумTalks

4D графический движек


0

2

Как-то читал инфу о представлении 4-х мерного пространства в нашем трехмерном, и в статье были картинки: проекция куба, треугольника и т.д. Чесно говоря нихрена не понял. Взять к примеру обычный 3D движек там картинка на мониторе формируется математическими расчетами в результате чего на плоском мониторе мы видим 3-х мерную картинку.

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

★★

Ответ на: комментарий от alpha

>В этом ролике на самом деле ничего не говорится о том «как должно выглядеть».
А я ничего такого и не утверждал.

это не четырехмерный куб, всего лишь проекция одномерных ребер четырехмерного куба. Это тень объекта, а не сам объект.

Ну и? Что сказать-то хотел.

Bad_ptr ★★★★★
()
Ответ на: комментарий от Quasar

Эйнштейн не изобретал четырехмерное пространство.

Задание положения точки как функции координат от времени существовало задолго до теории относительности. Заслуга Эйнштейна вообще не в этом.

Сама концепция многомерного пространства гораздо шире, полезнее и важнее чем эта самая относительность.

alpha ★★★★★
()
Ответ на: комментарий от alpha

>Измерения = количество независимых параметров для задания объекта.
Здесь имеются ввиду именно пространственные координаты.

Bad_ptr ★★★★★
()

на плоском мониторе мы видим 3-х мерную картинку.

Спорное утверждения. я уверен, что я вижу _двухмерную_ проекцию трехмерноей сцены на экран монитора.

Проблема с четвёртым измерением в том, что очень не просто спроектировать 4д в 2д что бы увидеть это на экране монитора в презентабельном виде. здесь хорошо расписано. С примерами кода и видео.

mi_estas
()
Ответ на: комментарий от Bad_ptr

> А я ничего такого и не утверждал.

Тогда ты странно отвечаешь на вопросы.

damnemall
()
Ответ на: комментарий от mityash

Развертка гиперкуба в виде набора кубов математически доставляет.

geekless ★★
()
Ответ на: комментарий от Quasar

>пространство-время

Ну а какое отношение это имеет к графическому движку и чем отличается от трёхмерного пространства для ТС?

djambeyshik ★★★★★
()
Ответ на: комментарий от Bad_ptr

> Что сказать-то хотел.

Что в работе с четырехмерным пространством нет магии, и нет вИдения или озарения. Только все та же до боли знакомая планиметрия за седьмой класс.

alpha ★★★★★
()
Ответ на: комментарий от different_thing

> После этого хочется оторвать свою жирную задницу от монитора и начать изучать...

Даже боюсь спрашивать, зачем вы приклеивали вашу жирную задницу к монитору...

geekless ★★
()
Ответ на: комментарий от AlexCones

Почти гексаэдр в почти гексаэдре, соответственные вершины соединены - никакого 4 измерения, это простая 3Д проекция

coldy ★★
()
Ответ на: комментарий от alpha

alpha> Чушь. Измерения = количество независимых параметров для задания объекта. Пространства любой размерности можно найти вокруг, достаточно оглядеться.

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

Quasar ★★★★★
()
Ответ на: комментарий от Quasar

>Хочешь сказать, что у Эйнштейна это не пространство-время было?

у Эйнштейна 4-х мерное пространство было не евклидовым. Собственно единственное отличие - это то, что длины векторов не sqrt(x^2+y^2+z^2+t^2) были, а c^2*t^2-(x^2+y^2+z^2). Короче, метрика другая.

обычное скалярное произведение <x,y> было бы:

x*A*y, где A:

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

А в эйеншейновском варианте:

вместо A[4,4]=1 есть A[4,4] = -1.

Вот и вся разница :)

И это все в общем-то не Эйнштейн придумал, а Лоренц. Но Лоренц это просто как чистую мат. выкладку придумал. Не применяя ни на какое пространство.

dikiy ★★☆☆☆
()
Ответ на: комментарий от alpha

Приглядись к своему комментарию и к моему. Я писал «по Эйнштейну» и не отрицал наличия _в математике_ дополнительных измерений, таких же как три измерения из пространства. Ты начал возражать.

Quasar ★★★★★
()
Ответ на: комментарий от djambeyshik

>>пространство-время

и чем отличается от трёхмерного пространства для ТС?

метрикой.

dikiy ★★☆☆☆
()
Ответ на: комментарий от djambeyshik

djambeyshik> Ну а какое отношение это имеет к графическому движку и чем отличается от трёхмерного пространства для ТС?

Отображением.

Quasar ★★★★★
()
Ответ на: комментарий от geekless

А вообще я жутко уставший, так что я вещи ещё похлеще приложить могу

different_thing
()
Ответ на: комментарий от alpha

>Что в работе с четырехмерным пространством нет магии
К.О.

Bad_ptr ★★★★★
()
Ответ на: комментарий от Quasar

> Вот только эти понятия не существуют в объективной реальности и введены для количественного описания тех или иных явлений.

Ну давайте обсудим, что именно существует в объективной реальности. Пример?

alpha ★★★★★
()
Ответ на: комментарий от different_thing

> Ну не видел ты пространства R^4, ну дальше что? Почему его нельзя представить?

Как ты его себе представляешь и как оно должно быть отображено на экране монитора?

damnemall
()
Ответ на: комментарий от different_thing

>Ты укурыш что ле? Ну не видел ты пространства R^4, ну дальше что? Почему его нельзя представить?

вот потому и нельзя. Я давно уже думаю о том, как бы научиться представлять 4D простарнство. Пока пришел к выводу, что это невозможно потому, что связи в мозну уже в детском возрасте формируются, а потом уже ничего сделать нельзя.

dikiy ★★☆☆☆
()
Ответ на: комментарий от alpha

alpha> Ну давайте обсудим, что именно существует в объективной реальности. Пример?

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

Quasar ★★★★★
()
Ответ на: комментарий от AlexCones

В том то и беда, что ваш 4-мерный куб легко визуализируется в 3-мерном пространстве. Попробуйте нарисовать куб в двухмерном и чтобы при этом он остался кубом.

coldy ★★
()
Ответ на: комментарий от different_thing

different_thing> Ты укурыш что ле? Ну не видел ты пространства R^4, ну дальше что? Почему его нельзя представить?

Сам ты укурыш. Моё утверждение - такое пространство можно только представить, но не увидеть в реальности, так как в реальности для описания положения объекта достаточно трёх абстрактных координатных осей.

Quasar ★★★★★
()
Ответ на: комментарий от Quasar

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

Quasar ★★★★★
()
Ответ на: комментарий от different_thing

>А не Минковский? Называется вроде пространство в его честь

Это уже потом ввели. вики говорит, что пространство Минковского - это именно 4D. А в базе лежат преобразования Лоренца, которые введены для n-мерных пространств с соотв. метрикой.

dikiy ★★☆☆☆
()
Ответ на: комментарий от damnemall

> > Ну не видел ты пространства R^4, ну дальше что? Почему его нельзя представить?

Как ты его себе представляешь и как оно должно быть отображено на экране монитора?

Берёшь трехмерный срез 4-мерного пространства. Строишь проекцию трехмерного среза на плоскость. Потом начинаешь в 4-мерном пространстве вращать объекты и повторяешь рнедеринг. Получаешь психоделические ролики. Что не ясного?

geekless ★★
()
Ответ на: комментарий от coldy

> В том то и беда, что ваш 4-мерный куб легко визуализируется в 3-мерном пространстве. Попробуйте нарисовать куб в двухмерном и чтобы при этом он остался кубом.

Это не куб, а его проекция. Тень, если угодно. 2D проекцию 3D-куба можно тоже построить элементарно. Ну и что?

geekless ★★
()
Ответ на: комментарий от dikiy

Что значит представить - отдельный вопрос. Лично я это слово употребляю тут в математическом контексте ;)
А в воображении без специальных тренировок очень трудно. Потому, что в реальности четвёртого измерения просто нет, по крайней мере в тех масштабах, в которых человек живёт. А в сознании отпечаталось перемещение по трёхмерному пространству.

Quasar ★★★★★
()
Ответ на: комментарий от geekless

О чём и речь в треде, что представить себе 4х-мерную модель как физический объект мы не в состоянии, только как математическую модель, или проекцию на 3х-мерное пространство

coldy ★★
()

Зачем тебе 4D, тебе Розенталь нужен.

Xellos ★★★★★
()
Ответ на: комментарий от damnemall

> Не ясно, зачем это таки может пригодиться настолько, чтобы писать движок.

От скуки какой только дурью люди не маются. Вон даже Gnome3 написали.

geekless ★★
()
Ответ на: комментарий от dikiy

Я имею в виду математически. А в посте ТС'а говорится о проекции его на двумерное, что можно изобразить. А товарищ Quasar заладил тут про своё время.

different_thing
()
Ответ на: комментарий от damnemall

На самом деле работа с четырехмерным пространством через его трехмерные проекции - типичный прием в математике.

И такой движок был бы неплох, если бы работал не только с симплексами, а с любыми поверхностями, хоть бы и неявно заданными. Чтобы можно было строить произвольные сечения и смотреть как они меняются при изменении параметров.

alpha ★★★★★
()
Ответ на: комментарий от Quasar

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

самое смешное то, что понимание «на пальцах» - это и есть самое трудное в этой штуке :)

dikiy ★★☆☆☆
()

Примеры 4D-рендера в студию, что ле...

Andru ★★★★
()
Ответ на: комментарий от different_thing

Мне нравится серия про цветок в пальцах.

Там на самом деле изображено решение классической топологической задачи: как развести руки, не расцепляя пальцы. Очень хорошо иллюстрирует понятие гомеоморфизма.

alpha ★★★★★
()

ничего сложного .. я планирую сделать такое, когда время будет :)

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

надо сделать такой графичческий движек, который бы позволил очень наглядно отображать этот куб на 2-мерном экране, причем так, чтобы была понятна внутренняя структура куба, то есть были бы видны различные области внутри него (области соответствуют проекциям «граней» 4-мерных фигур).

кое-какие идеи есть на этот счет ...

основная мысль - это всё должно постоянно вращаться, т.к. только так можно получить прдставление о взаимном расположении областей внутри куба, и всё должно быть прозрачным, возможно wireframe... в общем тут много всяких мыслей, но реализовать всё это сложнее чем придумать :)

еще надо придумать, зачем это надо, кроме just for fun :)

olegsov
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.