Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Проекты > Проекты C++

Ответ
 
Опции темы
Старый 04.03.2009, 07:45   #31
FDsagizi
Бывалый
 
Аватар для FDsagizi
 
Регистрация: 04.01.2008
Адрес: Казахстан \ Талдыкорган
Сообщений: 659
Написано 170 полезных сообщений
(для 509 пользователей)
Ответ: Atlantis Engine

NitE Быть не идеотом - этого мало!
__________________
Жизнь как говориться игра- делать игры моя профессия(с)

Программирование, это религия! Её нужно исповедовать.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 01:27   #32
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Скромное обновление:
* Создание текстур
* Рендеринг в текстуру (будет доделано завтра)
* Добавлен класс для рендеринга aRenderTexture (тонюсенькая обвертка сюрфейса в дх, тем не менее создает впечатление целостности сего процесса )

З.Ы. Пофиксены мелкие баги и ошибки.

-Алеллуйа-
А теперь настало время для 2х мини демок

1. Стресс тест
Нету множества оптимизаций но тем не менее очень интересно сколько выжмет фпс и запуститься ли вообще . В сцене 4096 кубов + текстура 515х512х24 с сжатием ДХТ1.

http://lostgamestudio.ucoz.ru/load/0-0-0-9-20

1. Небольшой тест гуя и физикса
Сцена - статический физ обьект, лампочки - джоинты, кубики - боксы, меню - панельки и кнопочки. Аналогично первому ждем замечаний окромя камеры с ней много проблем...ее вращает по ролл оси постоянно, пока не могу починить никак...уж извините.

http://lostgamestudio.ucoz.ru/load/0-0-0-10-20

Управление:
Mouse Right + move mouse - вращать камеру (она будет так некрасиво кренится =()
W S - двигать перса - инвалида
Mouse Left - пуляет ящичек
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 01:48   #33
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Atlantis Engine

1. стресс-тест
когда пусто - 320-327 фпс
когда примерно половина - 80 фпс
когда все - 27-28 фпс
когда выходишь - выдает ошибку
вот логи:
'Atlantis Engine' build 1154, Mar 5 2009

* Инициализация...

[ INFO 00:46:44 ]: * Инициализация рендера
[ INFO 00:46:44 ]: Инициализация Direct3D
[ INFO 00:46:44 ]: Создание окна
[ INFO 00:46:44 ]: NVIDIA GeForce 9600M GS nvd3dum.dll 7. 15. 11. 7948
[ INFO 00:46:45 ]: Direct3D успешно инициализирован
[ INFO 00:46:46 ]: * Инициализация менеджера физики
[ INFO 00:46:46 ]: * Инициализация менеджера файлов
[ INFO 00:46:46 ]: * Инициализация менеджера ресурсов
[ INFO 00:46:46 ]: * Инициализация менеджера интерфейса
[ INFO 00:46:46 ]: * Инициализация менеджера сцены
[ INFO 00:46:46 ]: * Инициализация менеджера рендеринга
[ INFO 00:46:46 ]: * Инициализация таймера
[ INFO 00:47:28 ]: * Деинициализация менеджера рендеринга
2. Небольшой тест гуя и физикса
1. Впринципе не особо заметно, но на курсоре чучуть кривовато натянута текстура (сверху показана часть низа). юзай ClampToEdge в настройках фильтра.
2. кнопки работают отлично!
3. фпс окола 1200, но картинка кажется почему то дерганой (физика обновляется не каждый кадр?)
4. такая-же ошибка при выходе.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 11:38   #34
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Большое спасибо за тест! С обновлением физики нужно немного поиграться, очень странно откуда взялась ошибка, у меня все ровно, приду домой - буду искать причину.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 12:39   #35
FDsagizi
Бывалый
 
Аватар для FDsagizi
 
Регистрация: 04.01.2008
Адрес: Казахстан \ Талдыкорган
Сообщений: 659
Написано 170 полезных сообщений
(для 509 пользователей)
Ответ: Atlantis Engine

Смотрел второй тест

вобщем.

Вруструм режит кубики жестко, бывает что видно как они исчезают.
Лампы есть, но должны ли они испускать свет- хм, не испускают =)
так же падает при выходе. Интересно, по чему не юзать (exit(1) ? )
__________________
Жизнь как говориться игра- делать игры моя профессия(с)

Программирование, это религия! Её нужно исповедовать.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 12:54   #36
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Фрустум самый нбычный, лампочка светит только 1 и то плохо видно из-за высокого амбиента, с вылетом разберусь дома, у меня всегда норм работало, вчера поздно было, торопился, может чего забыл.
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 17:23   #37
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Atlantis Engine

НИОДНА из дэмок не запускается. Не первая не эти 2.
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 18:36   #38
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Сообщение от -=Jack=- Посмотреть сообщение
НИОДНА из дэмок не запускается. Не первая не эти 2.
А лог нельзя? Предполагаю,что проблема в том, что вы не установили драйвера на физикс (не ниже версии 2.8.1.).
(Offline)
 
Ответить с цитированием
Старый 05.03.2009, 19:02   #39
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Патчик для второй демки (где лампочки)
По идее должны быть исправлены баги с дерганьем физики (но возможны и другие баги), а вот вылет уже попробуйте..должно все работать....у меня и без патча не вылетало а коректно завершалась программа

http://slil.ru/27025249
(Offline)
 
Ответить с цитированием
Старый 06.03.2009, 14:07   #40
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Atlantis Engine

Сообщение от Lost Посмотреть сообщение
А лог нельзя? Предполагаю,что проблема в том, что вы не установили драйвера на физикс (не ниже версии 2.8.1.).
'Atlantis Engine' build 2215, Jan 28 2009

* Initializing Engine...

[ INFO 12:06:23 ]: * Timer is successfull initialized
[ INFO 12:06:23 ]: Сreate window...OK
[ INFO 12:06:23 ]: Initialize Direct3D...OK
[ INFO 12:06:23 ]: * Render Manager is successfull initialized
[ INFO 12:06:23 ]: * File Manager is successfull initialized
[ INFO 12:06:23 ]: * Resource Manager is successfull initialized
[ INFO 12:06:24 ]: * Physics is successfull initialized
[ INFO 12:06:24 ]: * Scene Manager is successfull initialized
[ INFO 12:06:24 ]: Create font "Arial" "arial"
[ INFO 12:06:24 ]: Create camera "default"
[ INFO 12:06:24 ]: Load texture "media/tiles_bump.jpg" "tiles_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/act_lenin_bump.jpg" "act_lenin_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/crete_beton_3_bump.jpg" "crete_beton_3_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/grnd_shlak_02_bump.jpg" "grnd_shlak_02_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/mtl_colored_alum_bump.jpg" "mtl_colored_alum_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/priboi_crap_greydust_bump.jpg" "priboi_crap_greydust_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/ston_beton_ch_09_bump.jpg" "ston_beton_ch_09_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/ston_bordur_bump.jpg" "ston_bordur_bump"
[ INFO 12:06:24 ]: Load texture "media/lenin/ston_oblicovka_gr05_bump.jpg" "ston_oblicovka_gr05_bump"
[ INFO 12:06:24 ]: Load texture "media/ae_256x256.jpg" "ae_256x256"
[ INFO 12:06:24 ]: Load effect "media/shadowmapping.fx" "shadowmapping"
[ INFO 12:06:24 ]: Create texture "shadow_tex"
[ INFO 12:06:24 ]: Create render texture "shadow_rt"
[ INFO 12:06:24 ]: Create depth stencil texture "shadow_rt"
[ INFO 12:06:25 ]: Load mesh "media/lenin/lenin.x"
[ INFO 12:06:25 ]: Create material "grnd_shlak_02"
[ INFO 12:06:26 ]: Load texture "media\lenin\grnd_shlak_02.jpg" "grnd_shlak_02"
[ INFO 12:06:26 ]: Create material "crete_beton_3"
[ INFO 12:06:26 ]: Load texture "media\lenin\crete_beton_3.jpg" "crete_beton_3"
[ INFO 12:06:26 ]: Create material "ston_beton_ch_09"
[ INFO 12:06:26 ]: Load texture "media\lenin\ston_beton_ch_09.jpg" "ston_beton_ch_09"
[ INFO 12:06:26 ]: Create material "ston_oblicovka_gr05"
[ INFO 12:06:26 ]: Load texture "media\lenin\ston_oblicovka_gr05.jpg" "ston_oblicovka_gr05"
[ INFO 12:06:26 ]: Create material "mtl_colored_alum"
[ INFO 12:06:26 ]: Load texture "media\lenin\mtl_colored_alum.jpg" "mtl_colored_alum"
[ INFO 12:06:26 ]: Create material "act_lenin"
[ INFO 12:06:26 ]: Load texture "media\lenin\act_lenin.jpg" "act_lenin"
[ INFO 12:06:26 ]: Create material "priboi_crap_greydust"
[ INFO 12:06:26 ]: Load texture "media\lenin\priboi_crap_greydust.jpg" "priboi_crap_greydust"
[ INFO 12:06:26 ]: Create material "priboi_crap_greydust"
[ INFO 12:06:26 ]: Create material "ston_bordur"
[ INFO 12:06:26 ]: Load texture "media\lenin\ston_bordur.jpg" "ston_bordur"
[ INFO 12:06:26 ]: Create entity "media/lenin/lenin.x" "lenin"
[ INFO 12:06:27 ]: Create light "light1"
[ INFO 12:06:27 ]: Load mesh "media/sphere.x"
[ INFO 12:06:27 ]: Create material "ae_256x256"
[ INFO 12:06:27 ]: Load texture "media\ae_256x256.jpg" "ae_256x256"
[ INFO 12:06:27 ]: Create entity "media/sphere.x" "sphere"



Физикс стоит. Кстать, последние 2 демки заработали
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 06.03.2009, 15:05   #41
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

-=Jack=-
Поставь патч должно помочь, ссылка на второй странице
(Offline)
 
Ответить с цитированием
Старый 06.03.2009, 16:34   #42
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Atlantis Engine

Да всё норм
Выглядит отлично = )
Но нашел пару глюков:
1. Глюки с феструмом (когда объект не виден пропалают тени, а иногда даже объект пропадает, когда он виден о_О)
2. http://i007.radikal.ru/0903/39/8c87f9f71ae1.jpg

Кстать, не мог бы показать исходник(самого примера)? Хотелось бы увидеть код и оценить его удобство понятность
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 06.03.2009, 17:04   #43
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Сейчас движок переработал с нуля, но вот сорец с второй демки (с лампочками)

//=========================================================================
// Atlantis Engine
// All Rights Reserved 2008
//
//
// Email: [email protected]
// ICQ: 284-298-113
//=========================================================================
#include<windowsx.h>
#include"resource.h"
#include"Atlantis.h"
 
// Обьекты
aFont* fontTahoma;
aFont* fontFPS;
// Уровень 1
aEntity* entLevel01;
aTexture2D* texLevel01_lm;
NxActor* actLevel01;
aEntity* entLight;
aLight* light;
aEntity* entLamp1;
aEntity* entLamp2;
// Игрок
aCamera* camPlayer;
aEntity* entPlayer;
NxActor* actPlayer;
float fPlayerMoveSpeed = 4.0f;// 1 - default
bool isMouseRight = false;
aEntity* entWeapon_vintorez;
// Интерфейс
aPanel* panCursor;
aPanel* panBackground;
aButton* butStart;
aButton* butExit;
 
 
// Устанавливает параметры джоинта
void setJointParameters(NxJointDesc &desc, NxActor* _pActor1, NxActor* _pActor2, aVector3 _vecPos)
{
desc.setToDefault();
desc.actor[0] = _pActor1;
desc.actor[1] = _pActor2;
desc.setGlobalAnchor(Vec3ToNxVec3(_vecPos));
}
// Создает подвесную лампочку и возвращает указатель на енити лампы
aEntity* createJointLamp(aString _strModel, aVector3 _vecPosJoint, aVector3 _vecPosActor)
{
aEntity* entity = SceneManager.createEntity(_strModel);
NxActor* actor = PhysicManager.createActor(PHYSIC_CONVEX, entity);
actor->wakeUp(true);
actor->setGlobalPosition(Vec3ToNxVec3(_vecPosActor));
actor->setLinearDamping(0.3f);
actor->setAngularDamping(0.3f);
 
NxSphericalJointDesc desc;
desc.setToDefault();
desc.actor[0] = actor;
desc.actor[1] = NULL;
NxJoint* joint = PhysicManager.createJoint(desc);
joint->setGlobalAnchor(Vec3ToNxVec3(_vecPosJoint));
return entity;
}
// Рендерит линии джоинтов
void renderJointLines()
{
Render.renderLine(aVector3(-4.5f, 3.1f, 0), entLamp1->getPos(), aColor(0, 0, 255));
Render.renderLine(aVector3(-3.5f, 3.1f, 0), entLamp2->getPos(), aColor(0, 0, 255));
Render.renderLine(aVector3(-2.5f, 3.1f, 0), entLight->getPos(), aColor(0, 0, 255));
}
// Создает сцену
void createScene()
{
// заргужаем 1й уровень
entLevel01 = SceneManager.createEntity("media/meshes/l01_test.x");
entLevel01->setScale(aVector3(0.05f, 0.05f, 0.05f));
actLevel01 = PhysicManager.createActor(PHYSIC_STATIC, entLevel01);
// заргужаем и назначаем ему лайтмапу
texLevel01_lm = ResourceManager.loadTexture("media/textures/l01_test_lm.tga");
entLevel01->setTexture(TEXTURE_LIGHTMAP, 0, texLevel01_lm);
 
// подвесим пару лампочек на джоинтах
entLamp1 = createJointLamp("media/meshes/lamp.x", aVector3(-4.5f, 3.1f, 0), aVector3(-4.5f, 2.3f, 0));
entLamp2 = createJointLamp("media/meshes/lamp.x", aVector3(-3.5f, 3.1f, 0), aVector3(-3.5f, 2.3f, 0));
// реальный источник освещения :)
entLight = createJointLamp("media/meshes/lamp.x", aVector3(-2.5f, 3.1f, 0), aVector3(-2.5f, 2.3f, 0));
light = SceneManager.createLight(LIGHT_POINT);
light->setColor(aColor(255, 255, 255));
light->setRange(15.0f);
// создаем камеру
camPlayer = SceneManager.createCamera();
camPlayer->setFOV(0.80f);
camPlayer->setNearPlane(0.1f);
SceneManager.setCamera(camPlayer);
// создаем игрока
entPlayer = SceneManager.createEntity("media/meshes/box.x");
entPlayer->setScale(aVector3(0.1f, 0.1f, 0.1f));
entPlayer->resetFlag(ENTITY_VISIBLE);
actPlayer = PhysicManager.createActor(PHYSIC_BOX, entPlayer);
actPlayer->setGlobalPosition(NxVec3(10, 1, 0));
// разрешаем поворачивать меш только по оси X и Y
// чтобы не переворачивался
actPlayer->raiseBodyFlag(NX_BF_FROZEN_ROT_X);
actPlayer->raiseBodyFlag(NX_BF_FROZEN_ROT_Y);
actPlayer->raiseBodyFlag(NX_BF_FROZEN_ROT_Z);
// прикрепляем оружие к игроку
//entWeapon_vintorez = SceneManager.createEntity("media/meshes/wpn_vss.x");
//entWeapon_vintorez->setScale(aVector3(0.1f, 0.1f, 0.1f));
//entWeapon_vintorez->setPos(aVector3(10, 1, 0));
/*
aEntity* boxes[1024];
int j = 0;
for (int i = 0; i < 32; i++)
{
for (j = 0; j < 32; j++)
{
boxes[i] = SceneManager.createEntity("media/meshes/box.x");
boxes[i]->setScale(aVector3(0.3f, 0.3f, 0.3f));
boxes[i]->setPos(aVector3(2.0f * i, 0.0f, 2.0f * j));
}
}
*/
}
// Обновляет игрока
void updatePlayer()
{
aVector2 force = DX9Render.getMouseForce();
if (DX9Render.mouseLeft())
{
camPlayer->rotateYaw(force.x / 5);
camPlayer->rotatePitch(force.y / 5);
}
// двигаем игрока за камерой
aVector3 vecCamPos = NxVec3ToVec3(actPlayer->getGlobalPosition());
vecCamPos.y += 0.5f;
camPlayer->setPos(vecCamPos);
// направление камеры
aVector3 vecMove = camPlayer->getDir();
// двигает игрока вперед
if (DX9Render.keyDown(KEY_W))
{
actPlayer->setLinearVelocity(NxVec3(vecMove.x * fPlayerMoveSpeed, vecMove.y, vecMove.z * fPlayerMoveSpeed));
}
// назад
if (DX9Render.keyDown(KEY_S))
{
actPlayer->setLinearVelocity(NxVec3(-vecMove.x * fPlayerMoveSpeed, vecMove.y, -vecMove.z * fPlayerMoveSpeed));
}
// на правую кнопку мыши бросаем кубик
if (DX9Render.mouseRight() == true && isMouseRight == false)
{
aEntity* ent = SceneManager.createEntity("media/meshes/box.x");
ent->setScale(aVector3(0.3f, 0.3f, 0.3f));
//ent->setFlag(ENTITY_TRANSLUCENT);// use alpha channel
aVector3 dir = camPlayer->getDir();
aVector3 force = dir * 1500;
NxActor* act = PhysicManager.createActor(PHYSIC_CONVEX, ent);
act->setGlobalPosition(Vec3ToNxVec3(camPlayer->getPos()));
act->addForce(Vec3ToNxVec3(force), NX_FORCE, false);
isMouseRight = true;
}
if (!DX9Render.mouseRight() && isMouseRight)
{
isMouseRight = false;
}
//entWeapon_vintorez->setPos(camPlayer->getPos());
//entWeapon_vintorez->setDir(camPlayer->getDir());
}
// Показывает меню
void showMenu()
{
panBackground->setFlag(GUI_VISIBLE);
butStart->setFlag(GUI_VISIBLE);
butExit->setFlag(GUI_VISIBLE);
}
// Прячет меню
void hideMenu()
{
panBackground->resetFlag(GUI_VISIBLE);
butStart->resetFlag(GUI_VISIBLE);
butExit->resetFlag(GUI_VISIBLE);
}
// Закрывает игру
void exitGame()
{
exit(0);
}
// Вызывается при наведении на кнопочку
void onTouch_start() {butStart->setFlag(GUI_COLORED);}
void onTouch_exit() {butExit->setFlag(GUI_COLORED);}
// Вызывается при снятии курсора с кнопки
void onLeave_start() {butStart->resetFlag(GUI_COLORED);}
void onLeave_exit() {butExit->resetFlag(GUI_COLORED);}
 
// Создает интерфейс
void createInterface()
{
// информация
fontTahoma = GUIManager.createFont("Tahoma", 14);
fontTahoma->setText("Everybody lies... (c) House MD");
// курсор
panCursor = GUIManager.createPanel("media/ui/cursor.dds");
panCursor->setFlag(GUI_TRANSLUCENT);
panCursor->setLayer(999);
// фон меню
panBackground = GUIManager.createPanel("media/ui/lost_bg.jpg");
panBackground->setLayer(1);
panBackground->setWidth(1024);
panBackground->setHeight(768);
// кнопка "Enter The Island"
butStart = GUIManager.createButton("media/ui/button_01.bmp");
butStart->setLayer(2);
butStart->setWidth(128);
butStart->setHeight(32);
butStart->setPos(aVector2((DX9Render.getWidth() - butStart->getWidth()) / 2, (DX9Render.getHeight() - butStart->getHeight()) / 2));
butStart->setOnEvent(GUI_EVENT_CLICK_LEFT, hideMenu);
butStart->setOnEvent(GUI_EVENT_TOUCH, onTouch_start);
butStart->setOnEvent(GUI_EVENT_LEAVE, onLeave_start);
butStart->addDigit(12, 8, fontTahoma, aColor(255, 255, 255), "Enter The Island");
butStart->setColor(aColor(255, 128, 128));
// кнопка "Exit"
butExit = GUIManager.createButton("media/ui/button_01.bmp");
butExit->setLayer(2);
butExit->setWidth(128);
butExit->setHeight(32);
butExit->setPos(aVector2(butStart->getPos().x, butStart->getPos().y + 64));
butExit->setOnEvent(GUI_EVENT_CLICK_LEFT, exitGame);
butExit->setOnEvent(GUI_EVENT_TOUCH, onTouch_exit);
butExit->setOnEvent(GUI_EVENT_LEAVE, onLeave_exit);
butExit->addDigit(52, 8, fontTahoma, aColor(255, 255, 255), "Exit");
butExit->setColor(aColor(128, 128, 255));
// TEST0: создание текстуры
//aTexture2D* texCreated = ResourceManager.createTexture(256, 256, D3DFMT_A8B8G8R8);
//butExit->setOnEventTexture(GUI_EVENT_LEAVE, texCreated);
}
// Обновляет интерфейс
void updateInterface()
{
panCursor->setPos(DX9Render.getMousePos());
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// инициализация
Render.init(1024, 768, 32, false, false);
DX9Render.setTitle("Everybody lies... (c) House MD");
ShowCursor(false);
// выключаем дебаг режим
Log.setEnableDebug(false);
// параметры рендера
Render.setTextureFiltering(TEXTURE_FILTERING_LINEAR);
Render.setLightingEnable(true);
Render.setAmbientLight(aColor(200, 190, 170));
Render.setClearColor(aColor(200, 190, 170));
 
// сцена
SceneManager.setDebugMode(false);
// шрифт выводящий значение FPS
fontFPS = GUIManager.createFont("Tahoma", 18);
fontFPS->setLayer(2);
fontFPS->setPos(aVector2(0.0f, 30.0f));
// создаем интерфейс
createInterface();
// создаем сцену
createScene();
// for 4096 boxes test
/*
camPlayer = SceneManager.createCamera();
camPlayer->setFOV(0.80f);
camPlayer->setNearPlane(0.1f);
SceneManager.setCamera(camPlayer);
 
aEntity* boxes[4096];
int j = 0;
for (int i = 0; i < 64; i++)
{
for (j = 0; j < 64; j++)
{
boxes[i] = SceneManager.createEntity("media/meshes/box.x");
boxes[i]->setScale(aVector3(0.3f, 0.3f, 0.3f));
boxes[i]->setPos(aVector3(2.0f * i, 0.0f, 2.0f * j));
}
}
*/
// главный цикл
while (DX9Render.getWindowActive())
{
/*
// если нажали кнопку выход
if (DX9Render.keyDown(KEY_ESCAPE)) {break;}
 
// управление камерой
if (DX9Render.keyDown(KEY_W)) {camPlayer->moveX( 0.12f);}
if (DX9Render.keyDown(KEY_S)) {camPlayer->moveX(-0.12f);}
if (DX9Render.keyDown(KEY_A)) {camPlayer->moveZ(-0.12f);}
if (DX9Render.keyDown(KEY_D)) {camPlayer->moveZ( 0.12f);}
if (DX9Render.keyDown(KEY_Z)) {camPlayer->moveY( 0.12f);}
if (DX9Render.keyDown(KEY_X)) {camPlayer->moveY(-0.12f);}
aVector2 force = DX9Render.getMouseForce();
if (DX9Render.mouseLeft())
{
camPlayer->rotateYaw(force.x / 5);
camPlayer->rotatePitch(force.y / 5);
}
*/
 
// UPDATE LIGHT ENTITY
light->setPos(entLight->getPos());
// выводим фпс
fontFPS->setText(aMakeString("FPS: %.f", Timer.getFPS()));
// обновляем интерфейс
updateInterface();
// обновляем игрока
updatePlayer();
// ! update scene !
PhysicManager.updateScene();
SceneManager.updateScene();
// ! rendering here !
Render.clearScreen();
Render.beginRender();
// ! rendering scene !
RenderManager.renderScene();
// ! user rendering !
renderJointLines();
// ! flip backbuffer !
Render.flip();
}
exit(0);
return0;
}

Последний раз редактировалось Lost, 06.03.2009 в 17:10.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Lost за это полезное сообщение:
-=Jack=- (06.03.2009), HolyDel (06.03.2009), impersonalis (06.03.2009)
Старый 06.03.2009, 17:39   #44
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: Atlantis Engine

Прикольно Вроде удобный синтаксис
А давно движок делаешь? сам? Какие возможности есть, кроме показанных в демках?
__________________
Я бы изменил мир, но Бог не даёт исходников...
(Offline)
 
Ответить с цитированием
Старый 06.03.2009, 17:54   #45
Lost
Оператор ЭВМ
 
Регистрация: 09.12.2007
Сообщений: 39
Написано 2 полезных сообщений
(для 4 пользователей)
Ответ: Atlantis Engine

Движок делаю с августа месяца, уже 3й раз переписываю, первый ну там все понятно, проба пера), второй раз - зашел в архитектурный тупик...опыта не особо много в проектировании...ну вот 3й раз стараюсь уже избегать подобных ошибок, пишу где-то месяц

Из возможностей - почитай на 2й странице, если есть еще вопросы - задавай, отвечу =)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ninfa3d Engine L.D.M.T. 3D-программирование 54 09.01.2010 06:41
Engine win32 3D-программирование 14 01.08.2009 17:52
Illusion engine 2/5 D Черный крыс Проекты на BlitzMax 4 24.07.2009 23:06
IRR Licht3D Engine Matrix C++ 3 31.01.2009 23:06


Часовой пояс GMT +4, время: 19:25.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com