Fixed: #1006 On Mac OS X, do glFinish() after vertex program upload to ensure program is ready to use.
This commit is contained in:
parent
1afcf06b68
commit
0149e9d89e
2 changed files with 8 additions and 4 deletions
|
@ -1440,6 +1440,14 @@ bool CDriverGL::setupARBVertexProgram (const CVPParser::TProgram &inParsedProgra
|
||||||
nlassert(0);
|
nlassert(0);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef NL_OS_MAC
|
||||||
|
// Wait for GPU to finish program upload, else draw comands might crash.
|
||||||
|
// Happened to CVegetableBlendLayerModel (glDrawElements()).
|
||||||
|
// For more information, see http://dev.ryzom.com/issues/1006
|
||||||
|
glFinish();
|
||||||
|
#endif
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -700,9 +700,6 @@ void updateFromClientCfg()
|
||||||
//---------------------------------------------------
|
//---------------------------------------------------
|
||||||
if (Landscape)
|
if (Landscape)
|
||||||
{
|
{
|
||||||
#ifdef NL_OS_MAC
|
|
||||||
Landscape->enableVegetable(false);
|
|
||||||
#else
|
|
||||||
if (ClientCfg.MicroVeget != LastClientCfg.MicroVeget)
|
if (ClientCfg.MicroVeget != LastClientCfg.MicroVeget)
|
||||||
{
|
{
|
||||||
if(ClientCfg.MicroVeget)
|
if(ClientCfg.MicroVeget)
|
||||||
|
@ -722,7 +719,6 @@ void updateFromClientCfg()
|
||||||
Landscape->enableVegetable(false);
|
Landscape->enableVegetable(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------
|
//---------------------------------------------------
|
||||||
|
|
Loading…
Reference in a new issue