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

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

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

Ответ
 
Опции темы
Старый 30.07.2009, 15:03   #1
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Синхронизация PhysX

Пора бы наверное уже разрешить эту проблему.
Я думаю КАЖДЫЙ встречался с тем, что физика медленее когда фпс меньше или наоборот реактивная когда их больше оптимального значения.
Что делать? Многократный рендер физики в зависимости от дельтатайма ещё сильнее фпс убъёт. С михиной потоковой либой у меня вылетало - проверю ещё в с++ с потоками. Увеличивать силы и гравитацию в зависимости от дельта тайма - не натурально. pxSetTiming может только замедлить а не ускорить физику.
Предлагайте свои варианты)
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 30.07.2009, 15:07   #2
jimon
 
Сообщений: n/a
Ответ: Синхронизация PhysX

по-идее pxSetTiming может принимать тогда дробные значения, попробуй 0.1
 
Ответить с цитированием
Старый 30.07.2009, 15:13   #3
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Синхронизация PhysX

Если точно ускорить нельзя физику, то настраиваем физику например на 10 фпс ..тогда при большем фпс можно замедлять физику
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (30.07.2009)
Старый 30.07.2009, 19:40   #4
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Синхронизация PhysX

то настраиваем физику например на 10 фпс
а так нельзя кстати))
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 30.07.2009, 20:01   #5
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Синхронизация PhysX

это почему низзя?
__________________
(Offline)
 
Ответить с цитированием
Старый 30.07.2009, 20:41   #6
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Синхронизация PhysX

На таких настройках она аццки глючит
есть узкие рамки в которых работает любая физика. По массам, скоростям, скорости обновления.
__________________
(Offline)
 
Ответить с цитированием
Старый 30.07.2009, 22:20   #7
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Синхронизация PhysX

Так, получилось пустить рендер физики отдельным потоком под с++. ОДНАКА, слишком быстро. Sleep(1) в потоке - наоборот слишком жирный. Нужно что-то вроде Sleep(0.1), но слип принимает только интегеры. Гугл не хочет раскрывать мне нычки хитрых кодеров, так что спрашиваю здесь - никто не знает как ждать флоатинговое время в с++?

Если удастся - выложу здесь готовый синхронизатор).
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 30.07.2009, 22:25   #8
jimon
 
Сообщений: n/a
Ответ: Синхронизация PhysX

Mr_F_
Sleep вообще время системе отдаёт, Sleep(1) действительности может занимать хоть 10 мс
попробуй цикл крутить какой-то

я не понимаю в чём трабла то
мучай входящий параметр gScene->simulate так чтобы он зависил времени между вызовами этой функции, тогда будет работать при широком диапазоне фпс, попробуй домножать время на некий коеф., к примеру 5
 
Ответить с цитированием
Старый 30.07.2009, 22:29   #9
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Синхронизация PhysX

gScene->simulate
в общем та юзаю Рендеровский физыкс.
мучай входящий параметр
параметр то параметром, но всё же зачем делать рендер так часто когда можно с перерывами?

http://forum.boolean.name/showthread...ght=jMillisecs

вот это кажется что надо, спасибо, Джимон)


http://jimon.org/downloads/jMillisecs_v1501_src.rar (13 кб, msvc2005 исходник)
OOPS не работает ссылка!
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 30.07.2009, 23:31   #10
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 679
Написано 264 полезных сообщений
(для 450 пользователей)
Ответ: Синхронизация PhysX

Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 5 сообщение(ий)):
У вас нет прав, чтобы видеть скрытый текст, содержащийся здесь.
?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (31.07.2009)
Старый 30.07.2009, 23:34   #11
jimon
 
Сообщений: n/a
Ответ: Синхронизация PhysX

Mr_F_
ага, подправил ссылки
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (31.07.2009)
Старый 31.07.2009, 17:37   #12
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Синхронизация PhysX

Потестите кто может:
http://tempfile.ru/file/1014784

Стрелки влево-вправо на клаве - уменьшать-увеличивать фпс.
пишите сюда свой средний Cube time.


--
хмм похоже у всех разный куб тайм... что логично ведь рендерфизики на каждой системе занимает разное время. надо ща переделать чтоб слип зависел от времени затраченного на рендер ато чето я ступил
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер

Последний раз редактировалось Mr_F_, 31.07.2009 в 18:00.
(Offline)
 
Ответить с цитированием
Старый 31.07.2009, 18:58   #13
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Синхронизация PhysX

Так, кое-что пофиксил, тестите теперь с этим ехе. длл с прошлого архива.
Предпологаемый cube time - в районе 280. кричите и материтесь если это не так.
Аттач переименуйте в rar если так не откроется.
ща попробую в длл запихнуть всё это.
Вложения
Тип файла: zip testThreadPhysics2.zip (1.86 Мб, 622 просмотров)
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 31.07.2009, 20:34   #14
NitE
злобный флудер
 
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений
(для 1,476 пользователей)
Ответ: Синхронизация PhysX

ХРЕНЬ ПОЛНАЯ !!! ЧЕМ БОЛШЕ ФПС ТЕМ БОЛЬШЕ КУБЕ ТАЙМ НА !!!! ну и наоборот соответственно
(Offline)
 
Ответить с цитированием
Старый 31.07.2009, 21:11   #15
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Синхронизация PhysX

хм странно. у других 5 поциентов такого не наблюдается и куб тайм всегда одинаковый. да и вообще если синхронизатор не работает, чем больше фпс тем МЕНЬШЕ куб тайм должен быть. странно-странно.

вот в общем собрал либу:
http://webfile.ru/3810550

внутри длл, деклс и пример под блиц. развлекайтесть и ПОСТЬТЕ пожалуйста, надо понять что общего у тех людей у которых он пашет некорректно)


----
чето как-то лажово вышло.
когда много сил применяешь всё виснет.
приходится пока ставить на паузу поток перед такими делами.
апдейт:
http://webfile.ru/3810609

добавлено:
- параметр time в pxStartThead (time это первый параметр pxRenderPhysic)
pxPauseThread()
pxResumeThread()
pxSetDelayTime(t#) - установить максимальную задержку для цикла в котором рендер физики. по умолчанию = 5.0

---
билять, чето на практике какими-то рывками идёт((
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер

Последний раз редактировалось Mr_F_, 31.07.2009 в 22:16.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
синхронизация физики и анимации (newton) drwoland Полезные функции 1 21.01.2010 00:08
Синхронизация в Blitz3D ELIAS Blitz3D 4 29.12.2008 21:50
Сетевая синхронизация движущихся объектов stone_evil Blitz3D 9 11.01.2008 12:19
Синхронизация HolyDel Blitz3D 31 19.08.2007 16:21
Синхронизация юнитов в стратегии stone_evil 3D-программирование 8 25.01.2007 13:58


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


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