From ec4955630e9eebc2ac6706786d949f2f60279266 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20D=C3=B6singer?= Date: Mon, 25 Aug 2008 09:25:24 -0500 Subject: [PATCH] wined3d: Silence some format spam. --- dlls/ddraw/ddraw.c | 3 ++- dlls/wined3d/directx.c | 14 ++++++++++++++ dlls/wined3d/utils.c | 7 ++++++- include/wine/wined3d_types.h | 2 ++ 4 files changed, 24 insertions(+), 2 deletions(-) diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c index 73982edc777..436846cb4df 100644 --- a/dlls/ddraw/ddraw.c +++ b/dlls/ddraw/ddraw.c @@ -880,8 +880,9 @@ IDirectDrawImpl_GetFourCCCodes(IDirectDraw7 *iface, { ICOM_THIS_FROM(IDirectDrawImpl, IDirectDraw7, iface); WINED3DFORMAT formats[] = { - WINED3DFMT_YUY2, WINED3DFMT_UYVY, + WINED3DFMT_YUY2, WINED3DFMT_UYVY, WINED3DFMT_YV12, WINED3DFMT_DXT1, WINED3DFMT_DXT2, WINED3DFMT_DXT3, WINED3DFMT_DXT4, WINED3DFMT_DXT5, + WINED3DFMT_ATI2N, WINED3DFMT_NVHU, WINED3DFMT_NVHS }; DWORD count = 0, i, outsize; HRESULT hr; diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 53ea543168b..d26940600f0 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2323,6 +2323,9 @@ static BOOL CheckTextureCapability(UINT Adapter, WINED3DDEVTYPE DeviceType, WINE } TRACE_(d3d_caps)("[FAILED]\n"); return FALSE; + case WINED3DFMT_YV12: + TRACE_(d3d_caps)("[FAILED]\n"); + return FALSE; /* Not supported */ case WINED3DFMT_A16B16G16R16: @@ -2397,6 +2400,17 @@ static BOOL CheckTextureCapability(UINT Adapter, WINED3DDEVTYPE DeviceType, WINE TRACE_(d3d_caps)("[FAILED]\n"); return FALSE; + case WINED3DFMT_NVHU: + case WINED3DFMT_NVHS: + /* These formats seem to be similar to the HILO formats in GL_NV_texture_shader. NVHU + * is said to be GL_UNSIGNED_HILO16, NVHS GL_SIGNED_HILO16. Rumours say that d3d computes + * a 3rd channel similarly to D3DFMT_CxV8U8(So NVHS could be called D3DFMT_CxV16U16). + * ATI refused to support formats which can easilly be emulated with pixel shaders, so + * Applications have to deal with not having NVHS and NVHU. + */ + TRACE_(d3d_caps)("[FAILED]\n"); + return FALSE; + case WINED3DFMT_UNKNOWN: return FALSE; diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c index 119f5260fe3..c0e1ccfeac0 100644 --- a/dlls/wined3d/utils.c +++ b/dlls/wined3d/utils.c @@ -44,7 +44,7 @@ static const StaticPixelFormatDesc formats[] = { /* FourCC formats, kept here to have WINED3DFMT_R8G8B8(=20) at position 20 */ {WINED3DFMT_UYVY ,0x0 ,0x0 ,0x0 ,0x0 ,2 ,0 ,0 ,TRUE }, {WINED3DFMT_YUY2 ,0x0 ,0x0 ,0x0 ,0x0 ,2 ,0 ,0 ,TRUE }, - {WINED3DFMT_YV12 ,0x0 ,0x0 ,0x0 ,0x0 ,1/*?*/ ,0 ,0 ,TRUE }, + {WINED3DFMT_YV12 ,0x0 ,0x0 ,0x0 ,0x0 ,2 ,0 ,0 ,TRUE }, {WINED3DFMT_DXT1 ,0x0 ,0x0 ,0x0 ,0x0 ,1 ,0 ,0 ,TRUE }, {WINED3DFMT_DXT2 ,0x0 ,0x0 ,0x0 ,0x0 ,1 ,0 ,0 ,TRUE }, {WINED3DFMT_DXT3 ,0x0 ,0x0 ,0x0 ,0x0 ,1 ,0 ,0 ,TRUE }, @@ -114,6 +114,8 @@ static const StaticPixelFormatDesc formats[] = { {WINED3DFMT_Q16W16V16U16,0x0 ,0x0 ,0x0 ,0x0 ,8 ,0 ,0 ,FALSE }, /* Vendor-specific formats */ {WINED3DFMT_ATI2N ,0x0 ,0x0 ,0x0 ,0x0 ,1 ,0 ,0 ,TRUE }, + {WINED3DFMT_NVHU ,0x0 ,0x0 ,0x0 ,0x0 ,2 ,0 ,0 ,TRUE }, + {WINED3DFMT_NVHS ,0x0 ,0x0 ,0x0 ,0x0 ,2 ,0 ,0 ,TRUE }, }; typedef struct { @@ -528,6 +530,7 @@ const char* debug_d3dformat(WINED3DFORMAT fmt) { FMT_TO_STR(WINED3DFMT_A2W10V10U10); FMT_TO_STR(WINED3DFMT_UYVY); FMT_TO_STR(WINED3DFMT_YUY2); + FMT_TO_STR(WINED3DFMT_YV12); FMT_TO_STR(WINED3DFMT_DXT1); FMT_TO_STR(WINED3DFMT_DXT2); FMT_TO_STR(WINED3DFMT_DXT3); @@ -558,6 +561,8 @@ const char* debug_d3dformat(WINED3DFORMAT fmt) { FMT_TO_STR(WINED3DFMT_A32B32G32R32F); FMT_TO_STR(WINED3DFMT_CxV8U8); FMT_TO_STR(WINED3DFMT_ATI2N); + FMT_TO_STR(WINED3DFMT_NVHU); + FMT_TO_STR(WINED3DFMT_NVHS); #undef FMT_TO_STR default: { diff --git a/include/wine/wined3d_types.h b/include/wine/wined3d_types.h index bf35b9fc8dc..5b722e775c0 100644 --- a/include/wine/wined3d_types.h +++ b/include/wine/wined3d_types.h @@ -305,6 +305,8 @@ typedef enum _WINED3DFORMAT { /* Vendor specific formats */ WINED3DFMT_ATI2N = WINEMAKEFOURCC('A', 'T', 'I', '2'), + WINED3DFMT_NVHU = WINEMAKEFOURCC('N', 'V', 'H', 'U'), + WINED3DFMT_NVHS = WINEMAKEFOURCC('N', 'V', 'H', 'S'), WINED3DFMT_FORCE_DWORD = 0xFFFFFFFF } WINED3DFORMAT;