12-01-2010, 08:13 AM
What I saw when debugging was that my client did indeed receive a draw command -- an AlphaBlit with an alpha of 0, which caused nothing to appear on the screen. When the button was pressed a second time, the command came through as a DrawBitmap. But then, when the user switches to another button, again the first draw command is a transparent AlphaBlit, and second and succeeding commands are DrawBitmaps.
So it wouldn't be a positioning error or anything like that. And it's not a caching or buffering thing; I'm getting a command, it's just not one that looks sensible. It's something about the draw command itself.
I think we would want to have the Android client likewise print out some debugging information to see what command is being received when the button is pressed. I look at everything I could think of to see if I was maybe missing some magic bit in the AlphaBlit that would tell me it was really a non-transparent draw, but I couldn't find anything.
And is there a way to have the server log what messages (or at least the opcodes and serial numbers) that it thinks it's sending (obviously only in a special RIVA debug mode)? We could then correlate that with what the client sees without forcing Dean to waste his time helping us debug specific cases.
So it wouldn't be a positioning error or anything like that. And it's not a caching or buffering thing; I'm getting a command, it's just not one that looks sensible. It's something about the draw command itself.
I think we would want to have the Android client likewise print out some debugging information to see what command is being received when the button is pressed. I look at everything I could think of to see if I was maybe missing some magic bit in the AlphaBlit that would tell me it was really a non-transparent draw, but I couldn't find anything.
And is there a way to have the server log what messages (or at least the opcodes and serial numbers) that it thinks it's sending (obviously only in a special RIVA debug mode)? We could then correlate that with what the client sees without forcing Dean to waste his time helping us debug specific cases.