|
17.07.2012, 20:14
|
#166
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Что такое подмапленые может я так и делаю...
|
(Offline)
|
|
17.07.2012, 20:22
|
#167
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: C3D Engine
|
(Offline)
|
|
24.07.2012, 15:48
|
#168
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Сделал визард для эклипса (как отдельное приложение, проще поддерживать). Генерирует готовый проект, который рисует пустую сцену. Программисту остается лишь добавлять код. Сразу либы кладет куда надо и т.д. со стандартным функционалом визардов эклипса особо не развернешься без костылей
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо pozitiffcat за это полезное сообщение:
|
|
24.07.2012, 17:01
|
#169
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Добавил некоторые вещи в TODO, думаю выложу бету, когда закончу с документированием. Сейчас занимаюсь документированием. Выложу бинарники библиотек к студии и мастер к эклипсу. Бинарники для андроида будут идти с мастером. Эклипс должен быть настроен на андроид сдк, и установлен ADT плагин
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
26.07.2012, 20:39
|
#170
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Запилил динамические тени от одного источника освещения
|
(Offline)
|
|
Эти 4 пользователя(ей) сказали Спасибо pozitiffcat за это полезное сообщение:
|
|
27.07.2012, 11:44
|
#171
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Добавил callback класс для работы с шейдерами и entity - можно творить что угодно
выглядит это следующим образом:
class SHCallback : public ocge::IShaderCallback
{
ocge::Oint mycolor;
public:
void onCreate(ocge::IShader* shader)
{
mycolor = shader->getUniformHandle("mycolor");
}
void onEntityRender(ocge::IShader* shader, ocge::IEntity* entity)
{
if(entity->getName() == "cube")
shader->setUniform4f(mycolor,0,1,0,1);
else
shader->setUniform4f(mycolor,1,0,0,1);
}
};
ocge::IShader* cbshader = engine->createShader(sh_vert, sh_frag);
cbshader->setCallback(new SHCallback());
cube->setShader(cbshader);
Чорт. Никак не зарелизю бэтку... стока в голову лезет идей, которыми я хочу поделиться.
еще я сделал автоматическую генерацию шадоу мапы, если включена функция в источнике освещения, и можно получить доступ к ней из шейдера (шадоу мапа берется из первого источника освещения, но есть возможность вытащить из любого) пока что только directional. Если есть желание у программиста, то естественно, он вообще все сам может написать (работу с освещением имеется ввиду)
|
(Offline)
|
|
27.07.2012, 12:04
|
#172
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: C3D Engine
if(entity->getName() == "cube")
shader->setUniform4f(mycolor,0,1,0,1);
else
shader->setUniform4f(mycolor,1,0,0,1);
|
чото ты все намешал.
коллбэк вешаем или на шейдер или на ентити. а у тебя как то на все вместе.
|
(Offline)
|
|
27.07.2012, 12:13
|
#173
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
так надо чтобы onCreate вызывался один раз когда устанавливаем в шейдер колбэк. Представь скока раз вызовется onCreate при установке колбыка на каждый entity. У меня onCreate вызывается только при setCallBack, т.к. установки хэндлов юниформов касаются только шейдера а не entity.
обработка ентити в колбэке нужна например для генерации матрицы какой то особенной и т.п. еще будет метод onSceneRender
onSceneRender выполняется 1 раз на сцену, а onEntityRender для каждого ентити
Короче может я плохо объяснил, но вобщем так надо, это моя реализация, и она ничем не мешает разработке. ))
|
(Offline)
|
|
27.07.2012, 12:19
|
#174
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Например так:
class SHCallback : public ocge::IShaderCallback
{
ocge::Oint mycolor;
ocge::Oint MVP;
glm::mat4 VP;
public:
void onCreate(ocge::IShader* shader)
{
mycolor = shader->getUniformHandle("mycolor");
MVP = shader->getUniformHandle("MVP");
}
void onEntityRender(ocge::IShader* shader, ocge::IEntity* entity)
{
glm::mat4 mvp = VP * entity->getModelMatrix(true);
shader->setUniformMat4fv(MVP, 1, glm::value_ptr(mvp));
if(entity->getName() == "cube")
shader->setUniform4f(mycolor,0,1,0,1);
else
shader->setUniform4f(mycolor,1,0,0,1);
}
void onSceneRender(ocge::IShader* shader, ocge::ISceneManager* smgr)
{
VP = engine->getProjectionMatrix() * smgr->getCamera()->getViewMatrix();
}
};
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
27.07.2012, 12:43
|
#175
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: C3D Engine
по крайней мере идея стала понятна.
одна камера в сцене?
|
(Offline)
|
|
27.07.2012, 13:31
|
#176
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
нет камер скока угодно, тока одна камера активна. На вьюпорты не делятся, ибо у меня не такой универсальный движок. Можно заюзать 2D спрайт с текстурой срендереной с какойнибудь камеры (это если например захочется сделать зеркало заднего вида)
|
(Offline)
|
|
27.07.2012, 17:43
|
#177
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Загладил стандартные тени.
Добавил установку атрибутов cast shadows и receive shadows, их можно использовать в своих шейдерах
Включаются тени 1 строкой кода
light->setCastShadow(true);
PS. страшный FPS из-за intel 4500, у меня даже без теней такой fps на встроеном видео
UPD, будет мощная система колбэков. Я продумал тут кое чего.. это очень удобный механизм для разработки и управлением всем. Можно очень гибко использовать объекты, вплоть до создания своих типов
Последний раз редактировалось pozitiffcat, 28.07.2012 в 02:32.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо pozitiffcat за это полезное сообщение:
|
|
01.08.2012, 17:11
|
#178
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
Ну вот я и закончил со спецэффектами, да и впринципе список ToDo почти подошел к концу, теперь наконец допишу доку и выложу скоро бету (примерно неделя)
фото отчет: запилил постэффекты
4х проходный блум (фозможно будет изкаробки, отдельная функция уже есть)
|
(Offline)
|
|
01.08.2012, 19:24
|
#179
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: C3D Engine
что на скрине? какой это блум? это же блур.
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо HolyDel за это полезное сообщение:
|
|
01.08.2012, 21:08
|
#180
|
Мастер
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений (для 533 пользователей)
|
Ответ: C3D Engine
блум предусматривающий сглаживание картинки.. подпилить просто надо, особо не разбирался
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 11:23.
|