Fix EFB Scaled Copy in OpenGL plugin.

It no longer uses the TEXTURE_RECTANGLE extension for GameCube textures. Since GameCube always uses normalized texture coordinates, it's an unnecessary burden.

Please test hi-res textures.

Wow, it's been a while.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6144 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Nolan Check
2010-08-29 04:56:53 +00:00
parent 4e81cb4012
commit e1d1a1eba0
3 changed files with 44 additions and 92 deletions

View File

@ -29,10 +29,10 @@ class TextureMngr
public:
struct TCacheEntry
{
TCacheEntry() : texture(0), addr(0), size_in_bytes(0), hash(0),
w(0), h(0), MipLevels(0),Scaledw(0), Scaledh(0), scaleX(1.0f), scaleY(1.0f),
isRenderTarget(false), isDynamic(false), isRectangle(true),
bHaveMipMaps(false) { mode.hex = 0xFCFCFCFC; }
TCacheEntry() : texture(0), addr(0), size_in_bytes(0), hash(0),
w(0), h(0), MipLevels(0),Scaledw(0), Scaledh(0),
isRenderTarget(false), isDynamic(false), bHaveMipMaps(false)
{ mode.hex = 0xFCFCFCFC; }
GLuint texture;
u32 addr;
@ -46,12 +46,10 @@ public:
int frameCount;
int w, h, fmt,MipLevels;
int Scaledw, Scaledh;
float scaleX, scaleY; // Hires texutres need this
bool isRenderTarget; // if render texture, then rendertex is filled with the direct copy of the render target
// later conversions would have to convert properly from rendertexfmt to texfmt
bool isDynamic; // modified from cpu
bool isRectangle; // if nonpow2, use GL_TEXTURE_2D, else GL_TEXTURE_RECTANGLE_NV
bool bHaveMipMaps;
void SetTextureParameters(TexMode0& newmode,TexMode1 &newmode1);