Войти
ПрограммированиеФорумГрафика

Не включается VSync в OpenGL

Страницы: 1 2 Следующая »
#0
14:33, 11 июля 2018

Видяха: https://www.techpowerup.com/gpudb/b2755/sapphire-tri-x-r9-290
Драйвер: 18.5.1
Radeon Software Edition: Adrenalin (хз важно ли)
Windows 7 64

Вызов wglSwapIntervalEXT(1) ничего не дает. Настройка "Wait for Vertical Refresh" в AMD Settings - "On, unless application specifies" / "Off, unless application specifies" / "Always on" / "Enhanced Sync" - ничего не дает. В приложении простая сцена всегда грузит ядро на 100% и выдает 3-4к FPS. Что я делаю не так?


#1
14:49, 11 июля 2018

DEN
> Вызов wglSwapIntervalEXT(1) ничего не дает.
У меня тоже такое было, переставил в другое место, заработало. Так и не понял, до / после каких функций не работает.

#2
15:19, 11 июля 2018

Daniil Petrov
А не помнишь, были ли какие-то ошибки (glGetError или что там еще), когда вызов был в "неправильном" месте?

#3
16:34, 11 июля 2018

DEN
Я почти никогда не проверяю на ошибки :) стараюсь допирать своим умом.

#4
18:26, 11 июля 2018

Ах да, забыл уточнить: windowed mode. Это нормально что в нашем 2к18 дела обстоят вот так: https://stackoverflow.com/questions/45676892/reliable-windowed-vs… gl-on-windows ?

#5
18:27, 11 июля 2018

DEN
> В приложении простая сцена всегда грузит ядро на 100% и выдает 3-4к FPS. Что я
> делаю не так?

Можно и самому вручную ограничить FPS.

#6
18:31, 11 июля 2018

gamedevfor
Можно, но вопрос не об этом.

#7
22:09, 11 июля 2018

> Вызов wglSwapIntervalEXT(1) ничего не дает.
А где вызываешь то?
Код в студию!

#8
22:44, 11 июля 2018

gkv311
> А где вызываешь то?
> Код в студию!
Вот с этого и надо было начинать :)

#9
13:35, 12 июля 2018

gkv311
Daniil Petrov
> А где вызываешь то?
Сразу же после инициализации  GLRC и установки его текущим:

rc = wglCreateContext(dc);
wglMakeCurrent(dc, rc);
glInitExtensions(); // Простыня из wglGetProcAddress
wglSwapIntervalEXT(1);

Но я уже куда только его не засовывал, результат не изменился.

#10
13:54, 12 июля 2018

Лол. Усе тут понятно. Естественно работать не будет

#11
(Правка: 14:01) 14:00, 12 июля 2018

barnes
> Лол. Усе тут понятно. Естественно работать не будет
Хех :) а почему? Мне даже любопытно стало )))
У меня собственно wglSwapIntervalEXT() также идёт сразу после glewInit().
И вызывается в любое нужное время для смены синхронизации.

#12
14:09, 12 июля 2018

barnes
> Лол. Усе тут понятно. Естественно работать не будет
Подробности будут?

#13
14:38, 12 июля 2018

Любопытны подробности от barnes. Пользуюсь методом из GLFW.

#14
16:31, 12 июля 2018

DEN

Но я уже куда только его не засовывал, результат не изменился.

Где код свопа кадра?
Страницы: 1 2 Следующая »
ПрограммированиеФорумГрафика