Здравствуйте, andy_k, Вы писали:
_>а что за видюха ?
_>ты точно дисплейный лист только один раз строишь при загрузке файла ?
_>и зачем wglMakeCurrent каждый раз вызывать ? у тебя несколько тредов чтоли ?
Видяха
NVIADIA GeForse 3 Ti 500
точно один раз.
wglMakeCurrent — вызываю тока один раз:
void __fastcall TMyPanel::Paint(void)
{
//TCustomPanel::Paint();
if (FOnPaint)
{
HPALETTE OldPalette=NULL;
if (Palette)
{
OldPalette=SelectPalette(DisplayDeviceContext,Palette,FALSE);
if (RealizePalette(DisplayDeviceContext)==GDI_ERROR)
{
ShowMessage("RealizePalette:"+IntToStr(GetLastError()));
return;
}
}
if (wglMakeCurrent(DisplayDeviceContext,GLRenderingContext)==false)
{
ShowMessage("wglMakeCurrent:" + IntToStr(GetLastError()));
return;
}
FOnPaint(this);
if ((FSwapBuffers==Auto) && (DoubleBuffer))
::SwapBuffers(DisplayDeviceContext);
if (OldPalette)
wglMakeCurrent(NULL, NULL) ;
}
return;