graphics fixes

* zooming without real FBOs kinda works, but with lower quality
* hardware detection for glGenerateMipmaps
* possibility to disable bilinear filtering, mipmaps, framebuffers, and realtime mipmap generation in g_graphics
* otclient works well using 3D acceleration in VirtualBox again
* many fixes regarding FBOs fallback implementation
This commit is contained in:
Eduardo Bart
2012-03-21 09:41:43 -03:00
parent 01d5fad315
commit c7469e4454
11 changed files with 98 additions and 42 deletions

View File

@@ -32,7 +32,11 @@ public:
void init();
void terminate();
bool hasFBO();
bool canUseFBO() { return m_useFBO; }
bool canUseBilinearFiltering() { return m_useBilinearFiltering; }
bool canGenerateMipmaps() { return m_generateMipmaps; }
bool canGenerateHardwareMipmaps() { return m_generateHardwareMipmaps; }
bool canGenerateRealtimeMipmaps() { return m_generateRealtimeMipmaps; }
void resize(const Size& size);
void beginRender();
@@ -47,6 +51,12 @@ public:
private:
Size m_viewportSize;
TexturePtr m_emptyTexture;
Boolean<false> m_useFBO;
Boolean<false> m_useBilinearFiltering;
Boolean<false> m_generateMipmaps;
Boolean<false> m_generateHardwareMipmaps;
Boolean<false> m_generateRealtimeMipmaps;
};
extern Graphics g_graphics;