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

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

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

Ответ
 
Опции темы
Старый 20.08.2012, 11:21   #226
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

Долго не садился за комп, круто что сам разобрался. Фпс не выводится, потому что встроеной функции нет. Создаешь шрифт, и считаешь фпс по дельта таймингу.
Вот функция которой пользуюсь я
void drawfps()
{
	static ocge::IFont* font = 0;
	if(!font)
	{
		font = engine->createFont();
		font->loadTexture("bigfont.oi", 384);
	}
	static int FPS = 0;
	static int calcedFPS = 0;
	static float time = 0;
	static int dips = 0;
	static int tris = 0;
	time += engine->getDeltaTime();
	calcedFPS++;
	if(time >= 1)
	{
		time = 0;
		FPS = calcedFPS/1.0;
		calcedFPS = 0;
		dips = engine->getDips();
		tris = engine->getTrisRendered();
	}
	font->drawText("FPS = " + ocge::String::fromInt(FPS) + "\nDips: " + ocge::String::fromInt(dips) + "\nTris: " + ocge::String::fromInt(tris), 300, 10, glm::vec3(1,1,0));
	
}
далее после рендера сцены ее вызываешь
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Жека (20.08.2012)
Старый 20.08.2012, 14:16   #227
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: C3D Engine

Ага, по фпс ясно.
У тебя можно грузить ttf шрифты? А то моноширинный некрасивый.
Ещё просьба заглянуть в раздел форума Android, я там проблему изложил, может ты знаешь ответ.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
pozitiffcat (20.08.2012)
Старый 23.08.2012, 17:12   #228
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

Чо та не нравится мой экспортер из макса, и бесит, что информации нет никакой причем нигде... сделаю-ка я по аналогии с конвертером текстур, будет конвертер из популярных форматов в формат движка, новый *.om (изображения *.oi) начну-ка я с fbx, был вроде уже опыт с ним.
(Offline)
 
Ответить с цитированием
Старый 23.08.2012, 17:36   #229
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: C3D Engine

Эм... а пользователям делать два действия? сначала в FBX, потом в твой формат?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 23.08.2012, 17:45   #230
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

пользоавтель независимо от версии макса да и вообще среды экспортит во что угодно (пока тока fbx) и получает на выходе готовый формат + SDK для написания своих загрузчиков прям в движок из вашего формата. (abstract class)
(Offline)
 
Ответить с цитированием
Старый 23.08.2012, 17:58   #231
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: C3D Engine

Мне показалось ты хотел файлы конвертить, а не тащить в движок много конвертеров...
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 23.08.2012, 18:01   #232
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: C3D Engine

Есть кстати вот такая либа: http://assimp.sourceforge.net/
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
pozitiffcat (23.08.2012)
Старый 23.08.2012, 22:00   #233
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

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

upd.
Исправил систему координат на правую, работает для перемещений и так далее, для геометрии тоже будет работать.
(Offline)
 
Ответить с цитированием
Старый 28.08.2012, 12:03   #234
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

Добавил таймеры и сделал конвертер статики из fbx в *.om
Пример работы таймеров
class Mytimer : public ocge::ITimerCallback
{
	ocge::INode* _node;
public:
	Mytimer(ocge::INode* node)
	{
		_node = node;
	}
	virtual void onTimer(ocge::ITimer* timer)
	{
		_node->rotate(glm::vec3(0,10,0));
	}
};

ocge::ITimer* timer = eng->createTimer(new Mytimer(om), 100);
timer->setEnabled(true);
(C) все права защищены =)
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pozitiffcat за это полезное сообщение:
HolyDel (28.08.2012), Mhyhr (28.08.2012)
Старый 28.08.2012, 13:23   #235
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

Решил собрать версию:
+ таймеры
/ улучшена скорость загрузки и быстродействие не андроиде на 30%
+ две версии библиотек, release и debug
/ String теперь динамический
/ мелкие фиксы
/ левая матрица по умолчанию
/ мастер к eclipse теперь требует net framework 2.0 а не 4.0

качать
(Offline)
 
Ответить с цитированием
Старый 28.08.2012, 16:46   #236
Mhyhr
Бывалый
 
Регистрация: 06.04.2009
Сообщений: 612
Написано 276 полезных сообщений
(для 858 пользователей)
Ответ: C3D Engine

1) А таймер тикает в отдельном потоке или по какому-нибудь Engine::Update() ?
2) Не увидел как изменить период для уже созданного таймера.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
pozitiffcat (28.08.2012)
Старый 28.08.2012, 16:51   #237
pozitiffcat
Мастер
 
Аватар для pozitiffcat
 
Регистрация: 09.05.2010
Адрес: Самара
Сообщений: 1,083
Написано 254 полезных сообщений
(для 533 пользователей)
Ответ: C3D Engine

период я не сделал менять.. (спасибо за подсказку)
таймер в этом же потоке считается исходя из tick() операционной системы.
Считается, что таймер работает, ТОЛЬКО в основном цикле приложения. Например во время загрузок уровня его использовать нельзя. Движок однопоточный.
никакого engine update делать не надо все автоматом (обновляются и проверяются таймеры в порядке очереди создания, в самом начале логики цикла, а точнее после endDraw)
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mhyhr (28.08.2012)
Ответ


Опции темы

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

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


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


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