Как выдавливать форму в объем - PullRequest
2 голосов
/ 25 ноября 2010

В настоящее время я пытаюсь показать серию изображений, которые немного отличаются друг от друга в 3D-виде и содержат много прозрачных областей (например, точки, которые перемещаются во времени внутри прямоугольника, и я бы предоставил 3Dпросмотр со всех своих позиций со временем).Сейчас я создаю изображение с нарисованными в нем точками, создаю одну рамку размером 40x40x1 на кадр (или прямоугольную форму размером 40x40), применяю изображение в качестве текстуры к ПЕРЕДНЕЙ стороне коробки и добавляю прямоугольники.к моим сценам в положениях (0, 0, z), где z - номер кадра.Это работает довольно хорошо, но, конечно, их разрывы (в 1 "метр") между изображениями.

Я хотел бы знать, является ли их способ создания "экструзионного" объекта на основе этого изображения, таккак заполнить пространство между плоскостями.Это было бы эквивалентно созданию одного блока 1x1x1 для каждой точки, помещая их в (x, y, z), где x / y - координата точки, а z - номер кадра.Реальная проблема заключается в том, что у меня много точек (несколько сотен, если не тысячи в некоторых случаях), и то, что было относительно легко обрабатывать и рендерить с изображением, я думаю, стало бы довольно тяжело рендерить, если бы мне пришлось создавать тысячиящики.

Заранее спасибо за помощь,

Фредерик.

1 Ответ

0 голосов
/ 26 февраля 2011

Вы можете использовать 3d текст с вашими данными (40 x 40 x N) пикселей, N = количество кадров.

Но вам все равно нужно что-то нарисовать с включенной текстурой.

Я бы сделал то, что вы делаете в настоящее время - рисуйте квады, но не только вдоль оси Z, но и вдоль X и Y.

Каждый из N четырехугольников вдоль оси Z будет иметь размер 40x40, каждый из 40 четырехугольников вдоль оси X будет иметь размер 40xN, а каждый из 40 четырехугольников вдоль оси Y будет иметь размер Nx40.

Таким образом, для текста 2x2x2 мы нарисуем 2 + 2 + 2 = 6 квадратов, и он будет выглядеть как обычный куб, для текстур 3x3x3 мы нарисуем 3 + 3 + 3 квада, и он будет выглядеть как сложенные 8 кубов в один большой куб (поэтому вместо 8 кубов по 6 квадратов мы просто рисуем 9 квадов, но эффект тот же).

Для 40x40x1000 было бы 1080 четырехугольников (разумно рисовать в режиме реального времени imho) вместо 40 * 40 *1000* 6 четырехугольных.

Я только не знаю, был бы графический эффект именно тем, чего вы хотели достичь.

...