Сделал небольшой пример работы с Assimp через C#. На входе программка получает имя COLLADA файла, затем конвертирует некоторые данные в XML. XML был взят лишь для пробы - заполнение такого файла достаточно быстро кодится.
воскресенье, 25 декабря 2011 г.
суббота, 24 декабря 2011 г.
Open Asset Import Library
Open Asset Import Library (Assimp) - open source библиотека для загрузки ряда популярных (и не очень) 3d моделей. Написана на c++ (кто бы мог подумать) и имеет привязки к Python, D, C#. Сайт : ЛИНК
среда, 30 ноября 2011 г.
COLLADA. С чего начинать.
COLLADA - формат для обмена данными между 3d-приложениями, основан на XML. Подробнее можно посмотреть, например здесь.
понедельник, 21 ноября 2011 г.
воскресенье, 16 октября 2011 г.
суббота, 8 октября 2011 г.
Повершинное освещение через шейдер.
В отличие от попиксельного освещения, где цвет рассчитывается для каждого видимого пикселя, в данном случае все рассчеты идут в вершинном шейдере. Выглядит это, безусловно, хуже, зато работает быстрее. При добавлении восьми источников света фпс упал с 200 до 160. Данный подход может быть использован при глобальном использовании шейдеров в программе в случае нахождения камеры на достаточно большом расстоянии от источников света, где "повершинность" освещения будет слабо заметна. Или, например, при текстурировании\освещении ландшафта на слабых конфигурациях, где попиксельное освещение с бампом может сильно осложнить жизнь.
Демка, cg_libs_2.0.0.12
Демка, cg_libs_2.0.0.12
вторник, 27 сентября 2011 г.
Простой визуальный эффект.
Эффект похож на эффект применяемый на зачарованных вещах в Morrowind. Как вторая текстура в шейдер направляется монохромная маска, сменяемая через малый промежуток времени (всего 30 картинок). В фрагментном шейдере пиксель (вес), взятый из этой маски, домножается на интересующий цвет. До безобразия просто, но мне всегда нравился этот эффект в Morrowind`е =)
Демка, cg_libs_2.0.0.12
Демка, cg_libs_2.0.0.12
вторник, 20 сентября 2011 г.
пятница, 16 сентября 2011 г.
Bumpmapping при множественных источниках света. GLScene + Cg.
Наконец разобрался немного с сабжем. За основу была взята демка с GLScene.ru, написанная с использованием GLSL для единичного источника света. Переработать под Cg и добавить поддержку четырех источников света оказалось совсем просто. Конечно в текущем виде шейдер не особо юзабелен, но допилить под конкретную задачу не должно составить труда.
Демка
Демка
четверг, 8 сентября 2011 г.
Простое попиксельное освещение. GLScene + Cg.
Решил-таки проработать несколько разновидностей шейдеров, которые наверняка пригодятся в будущем. Покопавшись в черновиках, обнаружил, что в свое время я кое-что сделал в этом направлении. Однако большая часть кода пока в непотребном состоянии. Но как бы то ни было, кое-что выложить можно: демка с попиксельным освещением от множественных источников света (GLScene + Cg). Следующим шагом надо добавить бамп и заставить все это работать с вменяемым FPS.
Демка, cg.dll нужной версии.
Демка, cg.dll нужной версии.
Подписаться на:
Сообщения (Atom)