Charmed Quark Systems, Ltd. - Support Forums and Community
Official RIVA thread - Printable Version

+- Charmed Quark Systems, Ltd. - Support Forums and Community (https://www.charmedquark.com/vb_forums)
+-- Forum: Third Party Development (https://www.charmedquark.com/vb_forums/forumdisplay.php?fid=8)
+--- Forum: Third Party Development (General) (https://www.charmedquark.com/vb_forums/forumdisplay.php?fid=22)
+--- Thread: Official RIVA thread (/showthread.php?tid=5632)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39


Official RIVA thread - brianmount - 06-13-2010

Dean,

When using this test template, what specific message do you see the client receiving when the button is first pressed? When it is released? When it is pressed a second time?


Official RIVA thread - Dean Roddey - 06-13-2010

brianmount Wrote:Dean,

When using this test template, what specific message do you see the client receiving when the button is first pressed? When it is released? When it is pressed a second time?

Basically, because of the support of, and pretty ubiquitous use of, transparency, any redrawing effectively just does a recursive redraw of anything that intersects the affected area. So, in the simplest of scenarios, with a button on a single colored background, you'd get something like a push of the graphics state, a fill of the area with the current color, if it's an alpha based image then an alpha blit of the image, then a pop of the graphics state. If it also has text, then there'd be pushes and pops of the font and text color and the text drawing of course, after the draw of the image.

The release would be the same thing basically, since they really are the same operations.

I may be missing some small housekeeping calls wrt to push/pop of state, but basically that would be it.


Official RIVA thread - brianmount - 06-13-2010

That makes sense, but my question here is a more empirical one: What actual image draw message do you see coming out of the CQC server when you press the button on this specific template, when you release it, and so on? I turned on the debug flags in my code and saw the AlphaBlit with alpha of 0, as described earlier.


Official RIVA thread - SamVimes2 - 06-24-2010

Hey Dean,

Do you see the same thing as Brian when you debug this template? How is the client supposed to react?

Thanks!


Official RIVA thread - Dean Roddey - 06-24-2010

SamVimes2 Wrote:Hey Dean,

Do you see the same thing as Brian when you debug this template? How is the client supposed to react?

Thanks!

Oops, actually I got distracted and never even tried it. Of course now I fixed the draw bitmap mode thing for non-alpha based bitmaps, which might be the problem, but I'll give it a try and see what it does.


Official RIVA thread - Dean Roddey - 06-24-2010

OK, so running it in the IV and my RIVA client, I see a screen with 1 and 2 buttons that have no background (no unpressed image. When I press them they light up with a blue background. Is that what I'm supposed to be seeing? If I move the mouse in and out of the buttons they unhilight and highlight again as they should.

The Unpressed image is enabled, but no image is set. That means that you are probably goig to get a draw command for a 1 pixel transparent image when the button isn't pressed, since that's what'll be there until an image is set. There's no way for CQC to know that there's no image. If you enable the image, it's legal to have a basically 1 pixel transparent image. It's sometimes done for specific purposes. So, if the image is enabled, it will be drawn, though in this case, the drawing will have no real effect. The drawn code doesn't try to figure out if an image would actually have any visual effect.


Official RIVA thread - brianmount - 06-25-2010

Can you tell what messages you are getting from the server? For some reason I seemed to be receiving an AlphaBlit the first time the button was pressed, and a DrawBitmap on the second and subsequent presses.


Official RIVA thread - Dean Roddey - 06-25-2010

Here is the updated technical document. The V2 stuff is at the end. I'm just doing a separate section for each version, to keep them strictly separated. I'll update first post of this thread with the header changes.

RIVA V2 Doc


Official RIVA thread - SamVimes2 - 06-28-2010

Hi Dean,

First, will web image widgets "just work" in the newest beta? I don't see anything about supporting them in the client in the V2 docs.

Also, is it correct that Brian sees an AlphaBlit message the first time a button is pressed, and then DrawBitmap messages on the second and subsequent presses? That inconsistency seems to be the cause of the "blue button" problem.

Thanks!


Official RIVA thread - Dean Roddey - 06-28-2010

SamVimes2 Wrote:Hi Dean,

First, will web image widgets "just work" in the newest beta? I don't see anything about supporting them in the client in the V2 docs.

Oh, sorry. I forgot to update that. Yeh, they should just work. All that really changed is that there is now a new type of image path. I should update the document though to reflect that. You'll just pass the path back in as you always would in order to get the image for display.

You may want to cache them separately from repository images, I dunno. I do, but it may not be necessary. Given that they'll be used in some cases as media cover art, probably it's best to, so that they don't push the important stuff out of the image cache. So I should have discussed that as well. I'll update the document.

Quote:Also, is it correct that Brian sees an AlphaBlit message the first time a button is pressed, and then DrawBitmap messages on the second and subsequent presses? That inconsistency seems to be the cause of the "blue button" problem.

Thanks!

Sorry, I keep getting distracted from this by other things. I'm knee deep in Silverlight and Expression Blend. I'll take a look at this after supper.