Текущий архив: 2004.12.05;
Скачать: CL | DM;
ВнизDDraw VSync Найти похожие ветки
← →
Красный молоток (2004-08-02 20:00) [0]Начал разбираться с DDraw по модулям JEDI. Использую DDUtil.pas. Проблема такая - в полноэкранном режиме всега <=80 FPS. Мне кажется что это из-за вертикальной синхронизации, так вот - как ее отключить?
← →
cyborg © (2004-08-02 21:26) [1]В функции флипинга добавь флаг DDFLIP_NOVSYNC, но не нужно это отключать,полосы пойдут при сильном изменении экрана.
← →
NikeOLD (2004-08-02 22:37) [2]Я здесь недавно уже высказывался, что для DirectDraw необходимо и достаточно 30 FPS. В книге Ламота даже рекомендуется делать искуственную паузу, чтобы всегда было 30 FPS
← →
cyborg © (2004-08-03 09:20) [3]
> [2] NikeOLD (02.08.04 22:37)
Я однако придерживаюсь 33 ;)
← →
Красный молоток (2004-08-03 11:08) [4]>Я здесь недавно уже высказывался, что для DirectDraw необходимо и достаточно 30 FPS.
Почему?
← →
Evgeniy_K (2004-08-03 11:16) [5]Да, действительно почему?
← →
cyborg © (2004-08-03 11:31) [6]Потому, что больше не требуется.
← →
parovoZZ © (2004-08-03 12:16) [7]А зачем машину мучать бесполезным занятием?
← →
Micah'GF © (2004-08-03 15:20) [8]а объясните мне почему у квакеров чел с fps 60-100 имеет значительное преимущество перед теми у кого 30-50 ?!
← →
NikeOLD (2004-08-03 15:27) [9]Для 3D необходимый минимум в 60 FPS.
Когда FPS ниже происходит следующее: кадр не успевает подготовиться и отрендериться, когда в догонку летит еще один. Из-за этого происходит замирание изображения. После короткой паузы (во время которой происходит работа по рендерингу нескольких следующих кадров) происходит рендеринг не n+1, а n+m кадров. Получается эффект, как будто вы закрыли глаза повернули голову и снова открыли. То, что вы могли бы видеть с открытыми глазами, выпало из поля зрения. Игрок просто не успевает среагировать.
Большинство "тормозов" в играх обусловлено низким FPS, когда кадры не успевают менятся с положенной частотой.
У того же Ламота есть хороший пример на эту тему.
← →
NikeOLD (2004-08-03 15:31) [10]
> Красный молоток (03.08.04 11:08) [4]
> Evgeniy_K (03.08.04 11:16) [5]
В холостую работать будете, незачем. Остальное выше :)
← →
Evgeniy_K (2004-08-03 19:11) [11]Можно пример Ламонта?
Почему в холостую? Ведь монитор-то обновляется на все 60 FPS.
← →
Evgeniy_K (2004-08-03 19:23) [12]Еще извините за глупый вопрос, но можно ли сделать VSync в оконном приложении?
← →
NikeOLD (2004-08-03 20:08) [13][12] Нельзя, равно как и нельзя изменить формат пиксела поверхности.
[11] Пример-то можно, но он, во-первых, на С++; во-вторых, там несколько громоздких дополнительных библиотек, звуки и BMP без которых не скомпилируется, а выдергивать это все и перекомпилировать у меня времени нету (уж извиняйте); в-третьих, если очень надо, могу скинуть экзешник и основной файл (пиши на мыло); в-четвертых, возможно имеет смысл приобрести Ламота, много полезного.
Основной упор сделан на то, чтобы показать как синхронизировать игру по реальному времени и по FPS. Где-то здесь я видел в ветке по таймеру, кажется.
← →
Evgeniy_K (2004-08-03 20:41) [14]Нет можно, по крайней мере у меня получалось.
Да, действительно стоит приобрести, я уже подумывал об этом, но сначала не было книги, а потом денег. Щаас стоит еще попытаться.
Если не сложно стукни в 146735863, я дам мыло и скинешь мне пример, только код. Си не проблема, он мне даже больше делфи нравится да и в делфи я стараюсь свои программы к стилю си приближать :)
Страницы: 1 вся ветка
Текущий архив: 2004.12.05;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.035 c