Хз, была такая тема или нет.Хочу спросить, поговорить, поспорить Существуют ли векторные текстуры? Если нет, то возможно ли вообще такое использовать в игровых движка? Это же будет очень удобно! Текстура будет сохранять качество, даже если очень сильно увеличишь объект. Возрастёт популярность векторной графики
ммм, например в альтернативе или папервижине в качестве текстуры можно повешать векторное изображение... но текстура это все равно набор точек... Да и векторные изображения не могут тягаться с растровыми.. как по скорости работы, там и по качеству... @noTformaT
Можно, но проще работать с растром. На лабах мы пробовали рисовать кривыми безье 3д фигуры с наложением текстуры тоже из кривых безье(тупо линии).
Но даже с учётом что сама модель описывалась математической формулой, как и текстура. Получилось не сладко). Для сравнения в том же проекте рисовали полигональную сетку поверх обычной, кусок кода отвечающий за неё был не в пример проще и понятнее)
Добавлено (08.06.2012, 22:14) --------------------------------------------- http://rghost.ru/38559184 однополостной гиперболоид если чё) белая - обычная полигональная сетка а цветная безье. Чистый софтвар без опенгл или дикса
Текстура будет сохранять качество, даже если очень сильно увеличишь объект.
Сглаживание, по-моему, позволяет сохранять достаточное качество. И потом, нужно заранее подготавливать такую текстуру, которая не будет терять качество в тех масштабах, которые используются в программе. Или тебе нужно динамически растягивать сантиметры в километры и обратно?
Quote (romgerman)
Возрастёт популярность векторной графики
Можно подумать, популярность какой-либо отдельной технологии кого-то так сильно волнует...
Quote (romgerman)
возможно ли вообще такое использовать в игровых движка?
В принципе, можно считывать векторное изображение из файла, растягивать его до необходимых размеров, делать из него растр и натягивать на объект как обычную текстуру. Если таким образом затекстурировать несколько статичных объектов разных размеров - потери качества не будет. Зато будет занимать много памяти. Но это в случае использования обычных способов отображения 3D-графики. Можно вообще написать свой графический движок, который будет текстурировать сразу векторными текстурами.
Quote (romgerman)
что это такое? Что ты хочешь показать? Я просто в этом не очень понимаю
Можно вообще написать свой графический движок, который будет текстурировать сразу векторными текстурами.
ммм, а смысл? Есть же библиотеки для работы с векторной графикой, ты этой библиотеке даешь векторный рисунок, а она тебе растровую текстуру... недавно, на сайте двига пайгейм, я видел игру в векторном стиле, в ресурсах которой куча свг файлов... в исходном коде этой игры все просто, она сначала подгружает свг файл, преобразует его в растровый формат и отображает текстуру в игре...
Кстати, в 99% игр, текстуры статические... тоесть само изображение никогда не меняется... да и есть еще цел-шейдинг... и его брат - туун шейдинг..
меня давно волнует эта тема, т.к. сам во флеше работаю. Конечно в флеш-движках все можно, но все-равно в Bitmap перегонять.
Раньше я с Blitzd3D работал и долго и упорно искал библиотеку чтоб конвертировать SVG>>[bitmap] SWF>>[bitmap] но ничего вообще не нашел к сожалению... а идея была такая: сделать SWF-последовательность кадров, каждый кадр - векторная текстура можно было бы так в какие-то 500Кб запихать около сотни текстур (у меня все было нарисовано и градиентами раскрашено) ну при старте игры какое-то время бы пришлось подождать, пока идет закадровый процесс рендера SWF>>[bitmap] в память или \\TEMP\ зато моя игра бы весила мегабайт 5-7 или меньше... (Blitz3D проект пустой - 350Кб примероно + LowPoly модели и и музыка MOD в ZIP, )
Quote (TimKruz)
В принципе, можно считывать векторное изображение из файла, растягивать его до необходимых размеров, делать из него растр и натягивать на объект как обычную текстуру. Если таким образом затекстурировать несколько статичных объектов разных размеров - потери качества не будет.
да я так и хотел... для Unity есть какой-то конвертор SVG я скачал, но не пробовал. Это уже хорошо, но хотелось бы SWF... он весит в 10 раз легче...
Поддержка SWF-компиляции в Unity меня мало чем порадовала... я как-раз таки надеялся что если оно сможет компилить SWF - то сможет и кушать SWF, Круто было бы!! ScaleForm бы сдох тогда... Но ничего этого УВЫ нет... Моя страничка по дизайну GameDev//Design//3D Ютубчик
romgerman, В той проге фактически розочка - векторная тексутра накладываемая на каркас. Если нажать пробел то вместо розочки наложится там какая-то хрень (формулы для розочки похерил и её получил)).
всего то поменял в формуле пару коэффициентов. Прикольнее что кроме опорных точек и линий неплохо было бы как заполнять пространство между кривыми и можно было получить. В принципе это возможно но лень разбираться, тк практической ценности не составляет ну и с опорными точками для них разбираться - ад (в основе кривых всех - безье)
Если знаешь, как устроен файл SVG, можно написать конвертер: он будет считывать SVG и рисовать его с помощью стандартных функций (например, WinAPI GDI) на невидимом буфере (двумерный массив или специальный класс), а далее использовать его как простой bitmap в текстуре или сохранить в нужном формате. Ну это так, самый общий алгоритм. Если используешь какой-то движок со стандартными функциями загрузки картинок - придётся порыться в нём и воткнуть свою функцию. В принципе, задача не сложная, но нужно знать устройство SVG, уметь рисовать в буфере (в разных языках по-разному, например, в Delphi это можно было бы сделать с помощью класса TBitmap/TCanvas) и правильно встроить функцию в движок.
Quote (AGENTX001)
Мдя, вспомния тот тупой треш о забугорном двиге, который при рендринге использовал облако точек. Может кто ещё помнит?
Ну так-то изображение по-любому прорисовывается по точкам. А что за двиг?