Показать сообщение отдельно
Старый 12.11.2013, 09:07   #7
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: Clear Engine (Понятный движок)

Пример синтаксиса:
Точка вкода в приложение не main, а main_ce(), т.к. в разных системах в разных местах точка входа, например в андроид там нужно входит уже после инициализации приложения. Далее:
// подсовываем драйвер рендера и размер окна (размер окна игнорится на мобилках)
auto core Ce::createCore(Ce::createDriver(), glm::vec2(800480));
// создаем сценку
auto scene core->createScene();
// настраиваем параметры
scene->setPerspective(45core->windowSize().core->windowSize().y1.0100.0);
// точка обзора (может быть INode, тогда этот view matrix игнорится и берется из INode, это как бы дефолтный обзор)
scene->setViewMatrix(glm::lookAt(glm::vec3(00, -5), glm::vec3(000), glm::vec3(010)));
// загружаем аним модельку
std::shared_ptr<Ce::INodenode2 core->loadNode("dwarf.xml");
node2->setParent(scene->rootNode()); // можно scene->rootNode()->addNode(node2);
node2->setPosition(glm::vec3(0, -0.50));
node2->setScale(glm::vec3(0.030.030.03));
node2->setAnimation(0300true10);
// свет, светом может быть любая нода, что самое крутое можно модельку заставить быть источником света
auto light core->createPreparedNode(Ce::E_PN_CUBE);
Ce::SLightInfo lightInfo;
lightInfo.ambient glm::vec4(0.00.00.01.0);
lightInfo.diffuse glm::vec4(1.0);
light->enableLighting(lightInfo);
light->setParent(scene->rootNode());
light->setPosition(glm::vec3(00, -2));
light->setScale(glm::vec3(0.10.10.1));
core->start(); 
Код на pastebin

запилил нормал мапы из коробки, достаточно просто назначить текстуру нормалей на объект

Это конечно самый простой пример. Более сложный во вложении.
Подумал, надо в вершину запихать тангенсы и бинормали, чтобы нормал мапы быстрее считать, не нравится мне их производительность на мобилках.
https://bitbucket.org/pozitiffcat/clear_engine

оффтоп: блин когда запилят подсветку синтаксиса для c++
Вложения
Тип файла: zip main.cpp.zip (1.6 Кб, 769 просмотров)

Последний раз редактировалось pozitiffcat, 12.11.2013 в 10:59.
(Offline)
 
Ответить с цитированием