Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SwapBuffers медленно работает. 
:(
    Опции темы
@!!ex
Дата 1.2.2005, 04:18 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Я в своей программе использую двойную буфферизацию.
Програма в принципе не дает больше 60 кадров в секунду.
Проверил. Оказалось, что 16мс занимает смена буферов.
Как добиться большей скорости?
Убрал двойную буфферизацию, скорость отрисовки подскочила до 100 кадро в секунду, но появилось мерцание экрана. Использование glFlush и glFinish не помогает.
Что делать? Ограничение в 60 меня ну ни как не устраивает.
  Вверх
DENNN
Дата 1.2.2005, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 2
Всего: 43



Видеокарта? VideoRAM? размер AGP в БИОС? Разрешение экрана?
Как создается OpenGL контекст в окне?
Вы тоже телепат или на костяшках предпочитаете?
PM ICQ   Вверх
@!!ex
Дата 2.2.2005, 04:39 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(DENNN @ 1.2.2005, 11:22)
Видеокарта? VideoRAM? размер AGP в БИОС? Разрешение экрана?
Как создается OpenGL контекст в окне?
Вы тоже телепат или на костяшках предпочитаете?

GeForce FX 5700
256mb
8x
1024x768
>
SetDCPixelFormat(DC);
hrc = wglCreateContext(DC);
wglMakeCurrent(DC, hrc);
>
Тебе это что-то дало? сомневаюсь.
  Вверх
DENNN
Дата 2.2.2005, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 2
Всего: 43



Цитата
Тебе это что-то дало? сомневаюсь.

Мне это ничего дало. И как ты догадался? smile
Только вот ты полностью не ответил. Какой размер апертуры AGP в БИОС выставлен?
Цитата
SetDCPixelFormat(DC);

Потрясающе. Мой MSDN про эту команду первый раз слышит smile
Может все же
Код

BOOL SetPixelFormat(
 HDC  hdc,  // device context whose pixel format the function
            // attempts to set
 int  iPixelFormat,
            // pixel format index (one-based)
 CONST PIXELFORMATDESCRIPTOR *  ppfd
            // pointer to logical pixel format specification
);

?

И не потрудится ли уважаемый сэр все же показать как у него OpenGL окно инициализируется (подсказываю: PIXELFORMATDESCRIPTOR )? smile

PM ICQ   Вверх
@!!ex
Дата 3.2.2005, 21:40 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(DENNN @ 2.2.2005, 11:29)
Цитата
Тебе это что-то дало? сомневаюсь.

Мне это ничего дало. И как ты догадался? smile
Только вот ты полностью не ответил. Какой размер апертуры AGP в БИОС выставлен?
Цитата
SetDCPixelFormat(DC);

Потрясающе. Мой MSDN про эту команду первый раз слышит smile
Может все же
Код

BOOL SetPixelFormat(
 HDC  hdc,  // device context whose pixel format the function
            // attempts to set
 int  iPixelFormat,
            // pixel format index (one-based)
 CONST PIXELFORMATDESCRIPTOR *  ppfd
            // pointer to logical pixel format specification
);

?

И не потрудится ли уважаемый сэр все же показать как у него OpenGL окно инициализируется (подсказываю: PIXELFORMATDESCRIPTOR )? smile

void SetDCPixelFormat(HDC hdc)
{

PIXELFORMATDESCRIPTOR pfd;
int nPixelFormat;
pfd.dwFlags = PFD_SUPPORT_OPENGL | PFD_DRAW_TO_WINDOW | PFD_GENERIC_ACCELERATED or PFD_DOUBLEBUFFER;
nPixelFormat = ChoosePixelFormat (hdc, &pfd);
SetPixelFormat (hdc, nPixelFormat, &pfd);
}

  Вверх
@!!ex
Дата 3.2.2005, 21:47 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(DENNN @ 2.2.2005, 11:29)
Цитата
Тебе это что-то дало? сомневаюсь.

Мне это ничего дало. И как ты догадался? smile
Только вот ты полностью не ответил. Какой размер апертуры AGP в БИОС выставлен?
Цитата
SetDCPixelFormat(DC);

Потрясающе. Мой MSDN про эту команду первый раз слышит smile
Может все же
Код

BOOL SetPixelFormat(
 HDC  hdc,  // device context whose pixel format the function
            // attempts to set
 int  iPixelFormat,
            // pixel format index (one-based)
 CONST PIXELFORMATDESCRIPTOR *  ppfd
            // pointer to logical pixel format specification
);

?

И не потрудится ли уважаемый сэр все же показать как у него OpenGL окно инициализируется (подсказываю: PIXELFORMATDESCRIPTOR )? smile

void SetDCPixelFormat(HDC hdc)
{

PIXELFORMATDESCRIPTOR pfd;
int nPixelFormat;
pfd.dwFlags = PFD_SUPPORT_OPENGL | PFD_DRAW_TO_WINDOW | PFD_GENERIC_ACCELERATED or PFD_DOUBLEBUFFER;
nPixelFormat = ChoosePixelFormat (hdc, &pfd);
SetPixelFormat (hdc, nPixelFormat, &pfd);
}

  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0724 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.