EgtGraphics 1.6j1 :
- aggiunto TextureMgr per gestire le textures caricate - fatte modifiche per visualizzare gli oggetti con le textures (solo opachi).
This commit is contained in:
@@ -52,12 +52,15 @@ Scene::Scene( void)
|
||||
m_hRC = nullptr ;
|
||||
memset( &m_wglewc, 0, sizeof( WGLEWContext)) ;
|
||||
memset( &m_glewc, 0, sizeof( GLEWContext)) ;
|
||||
m_nOglVer = 0 ;
|
||||
m_bNewWay = false ;
|
||||
// Camera e viewport
|
||||
m_ptCenter = ORIG ;
|
||||
SetCamera( 0, 0, 0) ;
|
||||
m_nViewportW = 0 ;
|
||||
m_nViewportH = 0 ;
|
||||
// Textures
|
||||
m_TextMgr.SetScene( this) ;
|
||||
// Sfondo
|
||||
m_colBackTop.Set( 176, 176, 176) ;
|
||||
m_colBackBottom.Set( 176, 176, 176) ;
|
||||
@@ -214,6 +217,20 @@ Scene::CreateContext( HDC hDC, int nDriver, bool b2Buff, int nColorBits, int nDe
|
||||
if ( ! m_bNewWay)
|
||||
LOG_INFO( GetEGrLogger(), "OpenGL old way rendering !")
|
||||
|
||||
// determino la versione di OpenGL
|
||||
m_nOglVer = 0 ;
|
||||
const char* p ;
|
||||
if ( ( p = reinterpret_cast<const char*> ( glGetString( GL_VERSION))) != nullptr) {
|
||||
string sOglVer = p ;
|
||||
STRVECTOR vsTok ;
|
||||
Tokenize( sOglVer, ".", vsTok) ;
|
||||
if ( vsTok.size() >= 2) {
|
||||
int nMaj, nMin ;
|
||||
if ( FromString( vsTok[0], nMaj) && FromString( vsTok[1], nMin))
|
||||
m_nOglVer = 10 * nMaj + nMin ;
|
||||
}
|
||||
}
|
||||
|
||||
// reset stato di errore di OpenGL
|
||||
glGetError() ;
|
||||
|
||||
@@ -857,6 +874,10 @@ Scene::Destroy( void)
|
||||
// cancellazione eventuali ObjEgrGraphics attaccati a oggetti geometrici
|
||||
DeleteObjGraphicsGroup( GDB_ID_ROOT) ;
|
||||
|
||||
// cancellazione textures
|
||||
if ( ! m_TextMgr.Clear())
|
||||
LOG_ERROR( GetEGrLogger(), "Error uloading textures from OpenGl") ;
|
||||
|
||||
// cancellazione rendering context
|
||||
wglMakeCurrent( nullptr, nullptr) ;
|
||||
if ( m_hRC != nullptr) {
|
||||
|
||||
Reference in New Issue
Block a user