stillportal.blogg.se

Spongebob employee of the month game part 1
Spongebob employee of the month game part 1










spongebob employee of the month game part 1

GetSurfaceDesc ( 4 ) : lpdds = 0x9a54ac0 SurfaceDesc : GetSurfaceDesc Flags = 0x1100f ( DDSD_CAPS + HEIGHT + WIDTH + PITCH + PIXELFORMAT + CKSRCBLT ) Width = 64 Height = 64 Pitch = 128 Caps = 0x10005000 ( DDSCAPS_TEXTURE + VIDEOMEMORY + LOCALVIDMEM ) Caps2 = 0 () Caps3 = 0 () Caps4 = 0 () CKSrcBlt = ( 0xffff, 0xffff ) PixelFormat flags = 0x40 ( DDPF_RGB ) BPP = 16 RGB = ( 0xf800, 0x7e0, 0x1f ) Blt ( 4 ) : dest = 0x9a54ac0 src = 0xadf9678 dwFlags = 0x1000000 ( DDBLT_WAIT ) destrect = ( NULL ) srcrect = ( NULL ) src = ( NULL ) dest = ( NULL ) at 210 TextureDump ( 4 ) : lpdds = 0x9a54ac0 TextureDump ( 4 ) : lpdds = 0x9a54ac0 hash = 6 D68C097 size = ( 64 圆4 ) bits = 16 mask ( ARGB ) = 0.0 xf800. The net texture, as well as some others (see attaches at the bottom) is filled with 0xf81d pixels, so these should be transparent.īut there is another situation, that is this one: Here SetColorKey sets a DDCKEY_SRCBLT color value of 0xf81d, that is binary 1111100000011101, so pretty close to a saturated magenta color encoded in a 16 bit space. 0 x1f GetColorKey ( 4 ) : lpdds = 0xadf9298 flags = 0x2 ( DDCKEY_DESTBLT ) GetColorKey : ERROR lpdds = 0xadf9298 flags = 0x2 res = 0x887600d7 ( DDERR_NOCOLORKEY ) GetColorKey ( 4 ) : lpdds = 0xadf9298 flags = 0x8 ( DDCKEY_SRCBLT ) SetColorKey : lpdds = 0x9a53260 flags = 0x8 ( DDCKEY_SRCBLT ) colors = ( L : 0xf81d, H : 0xf81d ) GetSurfaceDesc ( 4 ) : lpdds = 0x9a53260 SurfaceDesc : GetSurfaceDesc Flags = 0x1100f ( DDSD_CAPS + HEIGHT + WIDTH + PITCH + PIXELFORMAT + CKSRCBLT ) Width = 256 Height = 256 Pitch = 512 Caps = 0x10005000 ( DDSCAPS_TEXTURE + VIDEOMEMORY + LOCALVIDMEM ) Caps2 = 0 () Caps3 = 0 () Caps4 = 0 () CKSrcBlt = ( 0xf81d, 0xf81d ) PixelFormat flags = 0x40 ( DDPF_RGB ) BPP = 16 RGB = ( 0xf800, 0x7e0, 0x1f ) Blt ( 4 ) : dest = 0x9a53260 src = 0xadf9298 dwFlags = 0x1000000 ( DDBLT_WAIT ) destrect = ( NULL ) srcrect = ( NULL ) src = ( NULL ) dest = ( NULL ) at 210 TextureDump ( 4 ) : lpdds = 0x9a53260 TextureDump ( 4 ) : lpdds = 0x9a53260 hash = 2 C5D2B6D size = ( 256 x256 ) bits = 16 mask ( ARGB ) = 0.0 xf800. It seems that every white texture becomes transparent.

spongebob employee of the month game part 1

In the picture you can also notice how not only the eyes became transparent, but also the white SpongeBob hat. Probably there's something else to be done that happens only when you exit that game menu, I'll have to find what. My trick seems to work only after you enter the video options menu and make some change (I used to turn the shadows on and off). Probably DxWnd should implement some sort of "Initialize alphablending" flag to be set to either "default", "on" or "off". In conclusion, it seems that the problem depends on a missing initialization of the ALPHABLEND mode at the beginning of the session, where only the eyes are processed, while the rest of the textures are processed ok with no blending. Ah! I found a way to replicate the problem adding to the DxWnd initialization of D3D session the following statement: SetRenderState(d3ddev, D3DRENDERSTATE_ALPHABLENDENABLE, TRUE) Ĭuriously, it seems that the effect of the ALPHABLEND setting survives the termination of the D3D session and the program: I had the game working perfectly in native mode, then I got the attached screenshot with the patch, then running again the game in native mode the problem was still there!












Spongebob employee of the month game part 1