[PATCH] Add GL_RG16F / GL_RG32F support using ARB_texture_rg.
Roderick Colenbrander
thunderbird2k at gmx.net
Thu Dec 18 16:00:02 CST 2008
---
dlls/wined3d/directx.c | 4 ++++
dlls/wined3d/utils.c | 4 ++--
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 149c330..d5fd0a5 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -2361,6 +2361,10 @@ static BOOL CheckTextureCapability(UINT Adapter, WINED3DDEVTYPE DeviceType, WINE
case WINED3DFMT_G16R16F:
case WINED3DFMT_G32R32F:
+ if(GL_SUPPORT(ARB_TEXTURE_RG)) {
+ TRACE_(d3d_caps)("[OK]\n");
+ return TRUE;
+ }
TRACE_(d3d_caps)("[FAILED]\n");
return FALSE;
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index ada273f..b9c4bf2 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -167,7 +167,7 @@ static const GlPixelFormatDescTemplate gl_formats_template[] = {
/* IEEE formats */
{WINED3DFMT_R32F ,GL_RGB32F_ARB ,GL_RGB32F_ARB , 0, GL_RED ,GL_FLOAT
,WINED3DFMT_FLAG_RENDERTARGET },
- {WINED3DFMT_G32R32F ,0 ,0 , 0, 0 ,0
+ {WINED3DFMT_G32R32F ,GL_RG32F ,GL_RG32F , 0, GL_RG ,GL_FLOAT
,WINED3DFMT_FLAG_RENDERTARGET },
{WINED3DFMT_A32B32G32R32F ,GL_RGBA32F_ARB ,GL_RGBA32F_ARB , 0, GL_RGBA ,GL_FLOAT
,WINED3DFMT_FLAG_RENDERTARGET },
@@ -177,7 +177,7 @@ static const GlPixelFormatDescTemplate gl_formats_template[] = {
/* Float */
{WINED3DFMT_R16F ,GL_RGB16F_ARB ,GL_RGB16F_ARB , 0, GL_RED ,GL_HALF_FLOAT_ARB
,WINED3DFMT_FLAG_FILTERING | WINED3DFMT_FLAG_RENDERTARGET },
- {WINED3DFMT_G16R16F ,0 ,0 , 0, 0 ,0
+ {WINED3DFMT_G16R16F ,GL_RG16F ,GL_RG16F , 0, GL_RG ,GL_HALF_FLOAT_ARB
,WINED3DFMT_FLAG_FILTERING | WINED3DFMT_FLAG_RENDERTARGET },
{WINED3DFMT_A16B16G16R16F ,GL_RGBA16F_ARB ,GL_RGBA16F_ARB , 0, GL_RGBA ,GL_HALF_FLOAT_ARB
,WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING | WINED3DFMT_FLAG_FILTERING | WINED3DFMT_FLAG_RENDERTARGET },
--
1.5.3.4
--========GMX181741229637817406832--
More information about the wine-patches
mailing list