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

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

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 11.10.2007, 18:52   #16
jimon
 
Сообщений: n/a
Re: Проблема с PhysX

согласен с tormozом, етот таймер далеко не идеален
 
Ответить с цитированием
Старый 11.10.2007, 19:07   #17
Trilliput
Знающий
 
Регистрация: 27.07.2006
Сообщений: 250
Написано 6 полезных сообщений
(для 7 пользователей)
Есть предложения идеального таймера?

И что такое "вынести в отдельный поток"? может я так и делалраньше но не знаючто это так называется.
(Offline)
 
Ответить с цитированием
Старый 11.10.2007, 20:22   #18
jimon
 
Сообщений: n/a
Re: Проблема с PhysX

Trilliput
идеального таймера нету
вот tormoz перепробывал все и остановился на банальном блицевском таймере

в ОС программа обычно работает потоками
есть либа BlitzThreads или как то так
но я говорил про реализацию на C++
в справке было что-то расписано про синхронизацию в два потока
в одном банально идет рендер всего дела,
в другом просчитывается симуляция
даж пример валялся в SDK

хотя если чесно я хз почему не работает время симуляции
как я помню оно у мну стояло свободным (5 * DeltaTime)
и все прекрасно работало

Render
мож ты что-то напутал ?

NxReal CPhysX::UpdateTime()
{
	NxReal deltaTime;
#ifdef USE_OLD_TIMER
	static __int64 gTime,gLastTime;
	__int64 freq;
	QueryPerformanceCounter((LARGE_INTEGER *)&gTime);
	QueryPerformanceFrequency((LARGE_INTEGER *)&freq);
	deltaTime = NxReal((double)(gTime - gLastTime)/(double)freq);
	gLastTime = gTime;
#endif
#ifdef USE_NEW_TIMER
	deltaTime = (NxReal)(dev->getTimer()->getTime() - LastAnimationTime);
	LastAnimationTime = dev->getTimer()->getTime();
#endif
	return deltaTime;
	
}

void CPhysX::StartPhysics(float time,bool use)
{
	if (!CharController_pause)
		gCM->updateControllers();

	NxReal deltaTime = UpdateTime();

	if (use == 0)
	{
		gScene->simulate(deltaTime * time);
	}
	else
	{
		gScene->simulate(time);
	}

	gScene->flushStream();
}

void CPhysX::GetPhysicsResults()
{
	while (!gScene->fetchResults(NX_RIGID_BODY_FINISHED, false));
}
 
Ответить с цитированием
Старый 12.10.2007, 19:31   #19
Trilliput
Знающий
 
Регистрация: 27.07.2006
Сообщений: 250
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Проблема с PhysX

с дельтой все работет в плане физики, но вот модельки которые должны быть на своих местах - исчезают.
(Offline)
 
Ответить с цитированием
Старый 14.10.2007, 20:39   #20
Trilliput
Знающий
 
Регистрация: 27.07.2006
Сообщений: 250
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Проблема с PhysX

Проверьте ктонибудь код из 6-го поста. У меня он жутко тормозит даже в голом виде. Например при использовании только камеры и модели кубика заметны жуууткие тормоза, сама программа завершается при этом 10-20сек.
(Offline)
 
Ответить с цитированием
Старый 14.10.2007, 23:00   #21
Render
Знающий
 
Регистрация: 12.07.2006
Сообщений: 283
Написано 16 полезных сообщений
(для 32 пользователей)
Re: Проблема с PhysX

Ты где применяеш РендерФизик? и какие параметры передаёш?
Код из исчезновением тел в студию.
То что прога останавливается это признак демо версии.
(Offline)
 
Ответить с цитированием
Старый 15.10.2007, 22:44   #22
Trilliput
Знающий
 
Регистрация: 27.07.2006
Сообщений: 250
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Проблема с PhysX

код с исчезновением в первом посте.
(Offline)
 
Ответить с цитированием
Старый 16.10.2007, 13:04   #23
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Проблема с PhysX

Если тормозит код с 6 поста, то значит ты что-то делаешь неправильно. У меня он работет идеально, никаких рывков. Тэстировал и на мощных и на Очень слабых машинах (древние 700 дюроны, с 128 озу, и 32 видео), и никаких рывков и тормозов. Хз что у тебя, ты скорее всего что-то лишнее обовляешь.
(Offline)
 
Ответить с цитированием
Старый 17.10.2007, 15:19   #24
Trilliput
Знающий
 
Регистрация: 27.07.2006
Сообщений: 250
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Проблема с PhysX

В том то и дело что к коду из 6-го поста добавил только графику (Grapics3d и тд). Те код вообще ничего лишнего.
(Offline)
 
Ответить с цитированием
Старый 17.10.2007, 15:29   #25
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Re: Проблема с PhysX

выложи сюда свой весь код, исправим!
(Offline)
 
Ответить с цитированием
Старый 17.10.2007, 23:29   #26
Trilliput
Знающий
 
Регистрация: 27.07.2006
Сообщений: 250
Написано 6 полезных сообщений
(для 7 пользователей)
Re: Проблема с PhysX

Вобщем то вот:
Graphics3D 800,600,32,2
SetBuffer BackBuffer()
ConstFPS=60
period=1000/FPS 
time=MilliSecs()-period
Repeat
Repeat
elapsed=MilliSecs()-time
Untilelapsed
ticks=elapsed/period
tween#=Float(elapsedModperiod)/Float(period)
Fork=1Toticks
time=time+period
; Тут логика
IfKeyHit(1) End
UpdateWorld
Next
; Тут рендеры, кубемапы, тени и т.п.
RenderWorld
; Тут 2Д
Flip0
Forever 
Блин мистика, сейчас запускаю и все ок. Проц разгружен, памяти не жрет, завершается быстро. Даже не представляю что мог недокопипастить. В прошлый раз при добовлении новых элементов становилось только хуже, простой код с упраляемой камерой и кубиком жрал ресурсов как дум3.
Извеняюсь за бред...
(Offline)
 
Ответить с цитированием
Старый 18.10.2007, 02:16   #27
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Проблема с PhysX

Trilliput, наверное не углядел в панеле, 3д макс, автокад, винамп, висул С++, фотошоп, фильмец-другой...
Работает говорю же Отлично!
(Offline)
 
Ответить с цитированием
Старый 18.10.2007, 09:49   #28
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Проблема с PhysX

Ну вообще кагда мне МоКа дал этот код, у меня тоже рывки были, ну я его забросил, но нашел прототип в андреевском примере(бамп вроде) тот идельно просто работает, и даже при 10фпс играбельность остоётся.
Щяс чуть попозже выдерну из своего проекта, и закину сюды!=)
(Offline)
 
Ответить с цитированием
Старый 18.10.2007, 11:22   #29
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Re: Проблема с PhysX

Я же ещё раз повторяют, Там нужно убрать tween за RenderWorld'ом.
(Offline)
 
Ответить с цитированием
Старый 18.10.2007, 19:53   #30
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Проблема с PhysX

в том то и дело, что твеен нужен, и уберать его не обязательно, но в этом случае да.
Блин обесчал и забыл, лана только завтра
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PhysX SAF Библиотеки 18 15.09.2010 22:36
Проблема: PhysX и капсула для ГлавГероя. cahekp Blitz3D 20 20.12.2009 11:32
physx car+TCP 3dr1aN Blitz3D 4 29.08.2009 16:04
PhysX .NET -=Jack=- C++ 6 03.02.2009 18:21
Xors3D + PhysX Проблема Townboy Xors3D 26 11.01.2009 17:44


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


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