| Index: ddraw/glDirectDrawSurface.cpp |
| — | — | @@ -932,6 +932,7 @@ |
| 933 | 933 | renderer->DownloadTexture(buffer,bigbuffer,texture,ddsd.dwWidth,ddsd.dwHeight,fakex,fakey,ddsd.lPitch,
|
| 934 | 934 | (ddInterface->GetBPPMultipleOf8()/8)*fakex,ddsd.ddpfPixelFormat.dwRGBBitCount,texformat,texformat2);
|
| 935 | 935 | ddsd.lpSurface = buffer;
|
| | 936 | + dirty &= ~2;
|
| 936 | 937 | break;
|
| 937 | 938 | case 1:
|
| 938 | 939 | FIXME("glDirectDrawSurface7::Lock: surface type 1 not supported yet");
|
| Index: dxgltest/Tests3D.cpp |
| — | — | @@ -44,7 +44,7 @@ |
| 45 | 45 | static HWND hWnd;
|
| 46 | 46 | static int testnum;
|
| 47 | 47 | static unsigned int randnum;
|
| 48 | | -static int testtypes[] = {0,0};
|
| | 48 | +static int testtypes[] = {0,0,0};
|
| 49 | 49 |
|
| 50 | 50 | static D3DVECTOR points[256];
|
| 51 | 51 | static D3DVECTOR normals[256];
|
| — | — | @@ -192,9 +192,16 @@ |
| 193 | 193 | return D3DENUMRET_OK;
|
| 194 | 194 | }
|
| 195 | 195 |
|
| | 196 | +INT_PTR CALLBACK TexShader7Proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
|
| | 197 | +
|
| 196 | 198 | void RunTest3D(int testnum, int width, int height, int bpp, int refresh, int backbuffers, int apiver,
|
| 197 | 199 | int filter, int msaa, double fps, bool fullscreen, bool resizable)
|
| 198 | 200 | {
|
| | 201 | + if(testnum == 2)
|
| | 202 | + {
|
| | 203 | + DialogBox(GetModuleHandle(NULL),MAKEINTRESOURCE(IDD_TEXSHADER),NULL,TexShader7Proc);
|
| | 204 | + return;
|
| | 205 | + }
|
| 199 | 206 | DDSCAPS2 caps;
|
| 200 | 207 | DDSURFACEDESC2 ddsd;
|
| 201 | 208 | DDPIXELFORMAT ddpfz;
|
| — | — | @@ -623,3 +630,22 @@ |
| 624 | 631 | void RunTestLooped3D(int test)
|
| 625 | 632 | {
|
| 626 | 633 | }
|
| | 634 | +
|
| | 635 | +
|
| | 636 | +INT_PTR CALLBACK TexShader7Proc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
|
| | 637 | +{
|
| | 638 | + switch(Msg)
|
| | 639 | + {
|
| | 640 | + case WM_INITDIALOG:
|
| | 641 | +
|
| | 642 | + break;
|
| | 643 | + case WM_CLOSE:
|
| | 644 | + EndDialog(hWnd,IDCANCEL);
|
| | 645 | + break;
|
| | 646 | + default:
|
| | 647 | + return FALSE;
|
| | 648 | + }
|
| | 649 | + return TRUE;
|
| | 650 | +
|
| | 651 | +
|
| | 652 | +}
|
| Index: dxgltest/dxgltest.cpp |
| — | — | @@ -252,7 +252,8 @@ |
| 253 | 253 | const TEST_ITEM Tests3D[] =
|
| 254 | 254 | { // minver maxver buffermin max usesfps defaultfps usestexture usesfsaa name
|
| 255 | 255 | {7, 7, 0, 2, true, 60.0, false, true, _T("DrawIndexedPrimitive cube with directional light (DX7)")},
|
| 256 | | - {7, 7, 0, 2, true, 60.0, true, true, _T("DrawPrimitive textured cube (DX7)")}
|
| | 256 | + {7, 7, 0, 2, true, 60.0, true, true, _T("DrawPrimitive textured cube (DX7)")},
|
| | 257 | + {7, 7, 0, 0, true, 60.0, true, true, _T("Texture Stage shaders (Interactive, DX7)")}
|
| 257 | 258 | };
|
| 258 | 259 | const int END_3D = __LINE__ - 4;
|
| 259 | 260 | const int numtests3d = END_3D - START_3D;
|