Вторник, 19 Ноября 2024, 08:40

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
(3D) Существуют ли векторные текстуры?
romgermanДата: Пятница, 08 Июня 2012, 21:31 | Сообщение # 1
старожил
Сейчас нет на сайте
Хз, была такая тема или нет.Хочу спросить, поговорить, поспорить smile
Существуют ли векторные текстуры? Если нет, то возможно ли вообще такое использовать в игровых движка?
Это же будет очень удобно! Текстура будет сохранять качество, даже если очень сильно увеличишь объект. Возрастёт популярность векторной графики smile
noTformaTДата: Пятница, 08 Июня 2012, 21:46 | Сообщение # 2
Ukrainian independent game developer
Сейчас нет на сайте
ммм, например в альтернативе или папервижине в качестве текстуры можно повешать векторное изображение... но текстура это все равно набор точек...
Да и векторные изображения не могут тягаться с растровыми.. как по скорости работы, там и по качеству...


@noTformaT
romgermanДата: Пятница, 08 Июня 2012, 21:56 | Сообщение # 3
старожил
Сейчас нет на сайте
noTformaT, но всё-таки) А вообще можно сделать движок с векторными текстурами? (только не надо говорить про флеш)
ShadowZiДата: Пятница, 08 Июня 2012, 22:14 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
Можно, но проще работать с растром. На лабах мы пробовали рисовать кривыми безье 3д фигуры с наложением текстуры тоже из кривых безье(тупо линии).

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

Добавлено (08.06.2012, 22:14)
---------------------------------------------
http://rghost.ru/38559184 однополостной гиперболоид если чё) белая - обычная полигональная сетка а цветная безье. Чистый софтвар без опенгл или дикса

romgermanДата: Пятница, 08 Июня 2012, 22:56 | Сообщение # 5
старожил
Сейчас нет на сайте
ShadowZi, что это такое? Что ты хочешь показать? Я просто в этом не очень понимаю smile
TimKruzДата: Пятница, 08 Июня 2012, 23:48 | Сообщение # 6
старожил
Сейчас нет на сайте
Quote (romgerman)
Текстура будет сохранять качество, даже если очень сильно увеличишь объект.

Сглаживание, по-моему, позволяет сохранять достаточное качество. И потом, нужно заранее подготавливать такую текстуру, которая не будет терять качество в тех масштабах, которые используются в программе. Или тебе нужно динамически растягивать сантиметры в километры и обратно? wacko
Quote (romgerman)
Возрастёт популярность векторной графики

Можно подумать, популярность какой-либо отдельной технологии кого-то так сильно волнует... wacko
Quote (romgerman)
возможно ли вообще такое использовать в игровых движка?

В принципе, можно считывать векторное изображение из файла, растягивать его до необходимых размеров, делать из него растр и натягивать на объект как обычную текстуру. Если таким образом затекстурировать несколько статичных объектов разных размеров - потери качества не будет. Зато будет занимать много памяти. Но это в случае использования обычных способов отображения 3D-графики.
Можно вообще написать свой графический движок, который будет текстурировать сразу векторными текстурами.
Quote (romgerman)
что это такое? Что ты хочешь показать? Я просто в этом не очень понимаю

Почитай про кривую Безье.


AGENTX001Дата: Суббота, 09 Июня 2012, 00:36 | Сообщение # 7
почётный гцупер
Сейчас нет на сайте

romgerman, это будет жутко напряжно в плане быстродействия..)
romgermanДата: Суббота, 09 Июня 2012, 11:56 | Сообщение # 8
старожил
Сейчас нет на сайте
Quote (TimKruz)
Можно вообще написать свой графический движок, который будет текстурировать сразу векторными текстурами.

Вот про это я и говорю. Про кривые почитаю)

Добавлено (09.06.2012, 11:56)
---------------------------------------------
Нда, это для меня сейчас сложновато понять)

noTformaTДата: Суббота, 09 Июня 2012, 11:58 | Сообщение # 9
Ukrainian independent game developer
Сейчас нет на сайте
Quote (romgerman)
Можно вообще написать свой графический движок, который будет текстурировать сразу векторными текстурами.

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

Кстати, в 99% игр, текстуры статические... тоесть само изображение никогда не меняется... да и есть еще цел-шейдинг... и его брат - туун шейдинг..



@noTformaT
andarkyДата: Суббота, 09 Июня 2012, 12:33 | Сообщение # 10
старожил
Сейчас нет на сайте
меня давно волнует эта тема, т.к. сам во флеше работаю.
Конечно в флеш-движках все можно, но все-равно в 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Дата: Суббота, 09 Июня 2012, 13:35 | Сообщение # 11
старожил
Сейчас нет на сайте
andarky, да, но я имел ввиду не флеш.
ShadowZiДата: Суббота, 09 Июня 2012, 13:39 | Сообщение # 12
постоянный участник
Сейчас нет на сайте
romgerman, В той проге фактически розочка - векторная тексутра накладываемая на каркас. Если нажать пробел то вместо розочки наложится там какая-то хрень (формулы для розочки похерил и её получил)).
romgermanДата: Суббота, 09 Июня 2012, 13:42 | Сообщение # 13
старожил
Сейчас нет на сайте
ShadowZi, ща попробую нажать. Чё ж ты раньше не сказал?)

Добавлено (09.06.2012, 13:42)
---------------------------------------------
Там наложились дуги... эти, как их... кривые.

ShadowZiДата: Суббота, 09 Июня 2012, 13:45 | Сообщение # 14
постоянный участник
Сейчас нет на сайте
всего то поменял в формуле пару коэффициентов. Прикольнее что кроме опорных точек и линий неплохо было бы как заполнять пространство между кривыми и можно было получить. В принципе это возможно но лень разбираться, тк практической ценности не составляет ну и с опорными точками для них разбираться - ад (в основе кривых всех - безье)
romgermanДата: Суббота, 09 Июня 2012, 13:49 | Сообщение # 15
старожил
Сейчас нет на сайте
Quote (ShadowZi)
линий неплохо было бы как заполнять пространство

Вот вот.
Cre-gameДата: Суббота, 09 Июня 2012, 16:18 | Сообщение # 16
старожил
Сейчас нет на сайте
romgerman, Создавай темы в соответствующих разделах!

Всем добра
TimKruzДата: Суббота, 09 Июня 2012, 17:16 | Сообщение # 17
старожил
Сейчас нет на сайте
Quote (andarky)
SVG>>[bitmap]

Если знаешь, как устроен файл SVG, можно написать конвертер: он будет считывать SVG и рисовать его с помощью стандартных функций (например, WinAPI GDI) на невидимом буфере (двумерный массив или специальный класс), а далее использовать его как простой bitmap в текстуре или сохранить в нужном формате. Ну это так, самый общий алгоритм. Если используешь какой-то движок со стандартными функциями загрузки картинок - придётся порыться в нём и воткнуть свою функцию. В принципе, задача не сложная, но нужно знать устройство SVG, уметь рисовать в буфере (в разных языках по-разному, например, в Delphi это можно было бы сделать с помощью класса TBitmap/TCanvas) и правильно встроить функцию в движок.
Quote (AGENTX001)
Мдя, вспомния тот тупой треш о забугорном двиге, который при рендринге использовал облако точек. Может кто ещё помнит?

Ну так-то изображение по-любому прорисовывается по точкам. А что за двиг?


romgermanДата: Суббота, 09 Июня 2012, 17:32 | Сообщение # 18
старожил
Сейчас нет на сайте
Cre-game, а разве я создал тему не в том разделе?
mobipakДата: Воскресенье, 10 Июня 2012, 17:38 | Сообщение # 19
Подрывник
Сейчас нет на сайте
Quote (TimKruz)
А что за двиг?

http://habrahabr.ru/post/87208/

Воксельные движки
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг