- fix mipmap texture creation
- some logging improvements
This commit is contained in:
parent
19ef31e802
commit
3542c9c4d5
|
@ -791,10 +791,11 @@ HRESULT d3dtexture_create(IDirect3DImpl *d3d, IDirectDrawSurfaceImpl *surf, BOOL
|
||||||
if (mipmap_level == 0) {
|
if (mipmap_level == 0) {
|
||||||
glGenTextures(1, &(private->tex_name));
|
glGenTextures(1, &(private->tex_name));
|
||||||
if (private->tex_name == 0) ERR("Error at creation of OpenGL texture ID !\n");
|
if (private->tex_name == 0) ERR("Error at creation of OpenGL texture ID !\n");
|
||||||
TRACE(" GL texture created (private data at %p and GL id %d).\n", private, private->tex_name);
|
TRACE(" GL texture created for surface %p (private data at %p and GL id %d).\n", surf, private, private->tex_name);
|
||||||
} else {
|
} else {
|
||||||
private->tex_name = ((IDirect3DTextureGLImpl *) main->tex_private)->tex_name;
|
private->tex_name = ((IDirect3DTextureGLImpl *) (main->tex_private))->tex_name;
|
||||||
TRACE(" GL texture created (private data at %p and GL id reusing id %d).\n", private, private->tex_name);
|
TRACE(" GL texture created for surface %p (private data at %p and GL id reusing id %d from surface %p (%p)).\n",
|
||||||
|
surf, private, private->tex_name, main, main->tex_private);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((at_creation == FALSE) &&
|
if ((at_creation == FALSE) &&
|
||||||
|
|
|
@ -397,7 +397,7 @@ create_texture(IDirectDrawImpl* This, const DDSURFACEDESC2 *pDDSD,
|
||||||
IDirectDrawSurface7_Release(*ppSurf);
|
IDirectDrawSurface7_Release(*ppSurf);
|
||||||
return hr;
|
return hr;
|
||||||
}
|
}
|
||||||
if (This->d3d) This->d3d->create_texture(This->d3d, ICOM_OBJECT(IDirectDrawSurfaceImpl, IDirectDrawSurface7, *ppSurf), TRUE,
|
if (This->d3d) This->d3d->create_texture(This->d3d, ICOM_OBJECT(IDirectDrawSurfaceImpl, IDirectDrawSurface7, mipmap), TRUE,
|
||||||
ICOM_OBJECT(IDirectDrawSurfaceImpl, IDirectDrawSurface7, *ppSurf), mipmap_level);
|
ICOM_OBJECT(IDirectDrawSurfaceImpl, IDirectDrawSurface7, *ppSurf), mipmap_level);
|
||||||
|
|
||||||
IDirectDrawSurface7_AddAttachedSurface(prev_mipmap, mipmap);
|
IDirectDrawSurface7_AddAttachedSurface(prev_mipmap, mipmap);
|
||||||
|
|
|
@ -354,14 +354,6 @@ DIB_DirectDrawSurface_Blt(LPDIRECTDRAWSURFACE7 iface, LPRECT rdst,
|
||||||
|
|
||||||
TRACE("(%p)->(%p,%p,%p,%08lx,%p)\n", This,rdst,src,rsrc,dwFlags,lpbltfx);
|
TRACE("(%p)->(%p,%p,%p,%08lx,%p)\n", This,rdst,src,rsrc,dwFlags,lpbltfx);
|
||||||
|
|
||||||
DD_STRUCT_INIT(&ddesc);
|
|
||||||
DD_STRUCT_INIT(&sdesc);
|
|
||||||
|
|
||||||
sdesc.dwSize = sizeof(sdesc);
|
|
||||||
if (src) IDirectDrawSurface7_Lock(src, NULL, &sdesc, DDLOCK_READONLY, 0);
|
|
||||||
ddesc.dwSize = sizeof(ddesc);
|
|
||||||
IDirectDrawSurface7_Lock(iface,NULL,&ddesc,DDLOCK_WRITEONLY,0);
|
|
||||||
|
|
||||||
if (TRACE_ON(ddraw)) {
|
if (TRACE_ON(ddraw)) {
|
||||||
if (rdst) TRACE("\tdestrect :%dx%d-%dx%d\n",rdst->left,rdst->top,rdst->right,rdst->bottom);
|
if (rdst) TRACE("\tdestrect :%dx%d-%dx%d\n",rdst->left,rdst->top,rdst->right,rdst->bottom);
|
||||||
if (rsrc) TRACE("\tsrcrect :%dx%d-%dx%d\n",rsrc->left,rsrc->top,rsrc->right,rsrc->bottom);
|
if (rsrc) TRACE("\tsrcrect :%dx%d-%dx%d\n",rsrc->left,rsrc->top,rsrc->right,rsrc->bottom);
|
||||||
|
@ -373,6 +365,14 @@ DIB_DirectDrawSurface_Blt(LPDIRECTDRAWSURFACE7 iface, LPRECT rdst,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DD_STRUCT_INIT(&ddesc);
|
||||||
|
DD_STRUCT_INIT(&sdesc);
|
||||||
|
|
||||||
|
sdesc.dwSize = sizeof(sdesc);
|
||||||
|
if (src) IDirectDrawSurface7_Lock(src, NULL, &sdesc, DDLOCK_READONLY, 0);
|
||||||
|
ddesc.dwSize = sizeof(ddesc);
|
||||||
|
IDirectDrawSurface7_Lock(iface,NULL,&ddesc,DDLOCK_WRITEONLY,0);
|
||||||
|
|
||||||
if (rdst) {
|
if (rdst) {
|
||||||
memcpy(&xdst,rdst,sizeof(xdst));
|
memcpy(&xdst,rdst,sizeof(xdst));
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue