#16414 - DiscoStew - Sun Feb 15, 2004 8:10 pm
I didn't realize what I put for the subject until I typed it up. Obviously everyone should realize what I mean by a sprite though.
My program currently allow a bunch of sprites to be shown on-screen, even all those that are rotating through my sprite handling technique. To point out, there are less than 128 sprites, and of those sprites, less than 32 rotating sprites using unique matrices. When I push a button, it adds another set of sprites to be displayed. Now onto the problem...
With an emulator, everything is displayed correctly, even the rotating sprites. However, on hardware, when a certain number of sprites are already on screen, and I add another set, those newly-added sprites have an odd cutting away on them, showing only part of them. One odd thing about this is that sometimes the next sprite groups I add may be stripped, or not. You may be thinking that it has something to do with my loading the sprite images to VRAM, but I can tell you, it isn't that, because the rotating sprites don't show that. The rotating sprites have that stripping too, but it doesn't go along with the rotating. It is as if parts of the background (in this case there is no background, just the back plane) are showing as strips on top of my sprite. An observation I made is that it is cutting away by rows, whether the left side of the sprite is showing, or the right side, or complete rows of the sprite are missing, usually blocks of rows. All in all, each sprite affected has its own unique defect stripping, but the stripping for each sprite stays constant and doesn't change. Could it be something with the scanlines? FYI, I am not using a single interrupt with my program, so the H_Blank could not be the problem. I know of the fact that only a certain number (I don't know how many) of sprites can be shown per scanline, but wouldn't affect all sprites on that scanline? Besides, when another sprite group is added on the same scanline as a bunch of others, for some reason it may or may not have the defect. This is one odd bug indeed.
I'd show you a actual picture so you could understand it visually, but not only do I not have a place on the internet to store the picture, but I don't even have a digital camera to take the picture with (since it is a problem with hardware). However, I'll try it with ASCII characters of what it would look like (not to scale)...
For those of you who understand the problem, I am asking for your help. I'd apreciate it a lot. thx
_________________
DS - It's all about DiscoStew
My program currently allow a bunch of sprites to be shown on-screen, even all those that are rotating through my sprite handling technique. To point out, there are less than 128 sprites, and of those sprites, less than 32 rotating sprites using unique matrices. When I push a button, it adds another set of sprites to be displayed. Now onto the problem...
With an emulator, everything is displayed correctly, even the rotating sprites. However, on hardware, when a certain number of sprites are already on screen, and I add another set, those newly-added sprites have an odd cutting away on them, showing only part of them. One odd thing about this is that sometimes the next sprite groups I add may be stripped, or not. You may be thinking that it has something to do with my loading the sprite images to VRAM, but I can tell you, it isn't that, because the rotating sprites don't show that. The rotating sprites have that stripping too, but it doesn't go along with the rotating. It is as if parts of the background (in this case there is no background, just the back plane) are showing as strips on top of my sprite. An observation I made is that it is cutting away by rows, whether the left side of the sprite is showing, or the right side, or complete rows of the sprite are missing, usually blocks of rows. All in all, each sprite affected has its own unique defect stripping, but the stripping for each sprite stays constant and doesn't change. Could it be something with the scanlines? FYI, I am not using a single interrupt with my program, so the H_Blank could not be the problem. I know of the fact that only a certain number (I don't know how many) of sprites can be shown per scanline, but wouldn't affect all sprites on that scanline? Besides, when another sprite group is added on the same scanline as a bunch of others, for some reason it may or may not have the defect. This is one odd bug indeed.
I'd show you a actual picture so you could understand it visually, but not only do I not have a place on the internet to store the picture, but I don't even have a digital camera to take the picture with (since it is a problem with hardware). However, I'll try it with ASCII characters of what it would look like (not to scale)...
Code: |
Note: "*" = the background Image with face, and image rotated 90 degrees *********** *********** ***_____*** ***_____*** **__O_O__** **_O_____** *___O_O___* *_O___OO__* *_________* *_O_______* *__O___O__* *_O___OO__* **__OOO__** **_O_____** ***_____*** ***_____*** *********** *********** Same image, also rotated, but with the stripping *********** *********** ***_____*** ***_____*** ******O__** ******___** *___O_O___* *_O___OO__* *_____***** *_O___***** ******_O__* ******OO__* *****OO__** *****__**** ***_____*** ***_____*** *********** *********** |
For those of you who understand the problem, I am asking for your help. I'd apreciate it a lot. thx
_________________
DS - It's all about DiscoStew