Old Cube Mapping Bug
Archives Forums/Blitz3D Bug Reports/Old Cube Mapping Bug
| ||
Kinda hoped this had been fixed, but apparently not judging from a couple of emails I've received. Cube maps on any layer but layer zero seem to do odd things ( like making the object utterly invisible ) on a few videocards. I can't test this personally, so if anyone who ever had problems with invisible balls in either Kick Shot Pool or Anime Bowling Babes could test this that'd be great. In keeping with the more focussed bug forum these days, please don't let's have a list of 100 "works fine here"'s. I know it works fine for a lot of people, it works fine for me too. It seems to have problems on some Intel's and some ATI radeons and mobility's. You'll need a texture map and a cube map. Use your own or use mine : ![]() ![]() Press 1 and 2 to move the cubemap between layers. In theory, it should look exactly the same regardless of which key you press. That's how it is for me. Anyone who gets weird behaviour, particularly the ball disappearing when you press 2, please indicate. ; CUBE MAP TEST 1 - SHOULD WORK ON ANY CARD WHICH SUPPORTS CUBE MAPS Graphics3D 640,480,0 SetBuffer BackBuffer() If GfxDriverCaps3D()<110 EndGraphics RuntimeError "YOUR CARD IS REPORTING IT CANNOT DO CUBEMAPS. THIS IS NOT A BUG, IT IS DESIRED BEHAVIOUR" Else Camera=CreateCamera() PositionEntity Camera,0,2,0 Light=CreateLight() Ball=CreateSphere(16) PositionEntity Ball,0,0,4 CubeTex=LoadTexture("cube.png",1+8+64) Tex=LoadTexture("ball.png",1+8+16+32) SetCubeMode CubeTex,1 TextureBlend CubeTex,3 TextureBlend Tex,1 EntityTexture Ball,Tex,0,0 EntityTexture Ball,CubeTex,0,1 Pivot=CreatePivot() PositionEntity Pivot,0,0,4 EntityParent Camera,Pivot message$="STARTED" Color 255,255,255 While KeyHit(1)=0 If KeyHit(2) EntityTexture Ball,Tex,0,1 EntityTexture Ball,CubeTex,0,0 TextureBlend CubeTex,1 TextureBlend Tex,3 Message$="CUBE MAP ON LAYER 0" End If If KeyHit(3) EntityTexture Ball,Tex,0,0 EntityTexture Ball,CubeTex,0,1 TextureBlend CubeTex,3 TextureBlend Tex,1 Message$="CUBE MAP ON LAYER 1" End If TurnEntity Pivot,0,-1,0 PointEntity Camera,Pivot UpdateWorld RenderWorld Text 0,0,Message$ Flip Wend End If |
| ||
works fine here... :) No, really, I posted although you said not to becase I tried this on my laptop that has integrated graphics (Intel Extreme Graphics 2 for Mobile, 82852/82855 GM/GME Graphics Controller) and mobile Intel CPU. I was so sure that this code would bomb - but no, works fine here. |
| ||
it's a bit late to reply to this post, but i tested your code and YES there is a problem on my ATI Radeon VE. when i run the code first the cubemap texture is rotating with the ball, like a normal texture, which is wrong. then i press "1" and it works, the cubemap texture stays put and looks like a reflection. now when i press "2" i expect it to go back to the way it was at the start but it doesn't, it stays the same. i have done some cubemap tests too on this card and both cubemaps and dot3 maps have had to be "underneath" to work, i assumed this is the proper way to do it, i didn't know it was to do with my video card. i have no idea how cubemaps could make objects, or textures, invisible on some cards though. |
| ||
Checks out OK on my Radeon 9600. I'm quite sure that cube maps used to cause the 'disappearing' problem in 16-bit graphics modes on some GeForce MX cards, too. |