Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (757)
Games in Android Showcase (229)
games submitted by our members
Games in WIP (844)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Is VolatileImage ever going 2 support Transprency?  (Read 2046 times)
0 Members and 1 Guest are viewing this topic.
Offline Abuse

JGO Ninja

Medals: 64

falling into the abyss of reality

« Posted 2003-03-08 07:58:16 »

The reason I ask is this :-

The current rendering code for a VolatileImage is something like this... (taken from Suns example code)

do {
    int returnCode = vImg.validate(getGraphicsConfiguration());
    if (returnCode == VolatileImage.IMAGE_RESTORED) {
          // Contents need to be restored
        renderOffscreen();          // restore contents
    } else if (returnCode == VolatileImage.IMAGE_INCOMPATIBLE) {
          // old vImg doesn't work with new GraphicsConfig; re-create it
        vImg = createVolatileImage(w, h);
    gScreen.drawImage(vImg, 0, 0, this);
} while (vImg.contentsLost());

This code works fine, however it does not prevent a valid image from being drawn multiple times. The chain of events would look something like this...

1) validate image
2) draw image
3) *image then loses its contents*
4) image contents lost is checked (and returns true)
5) revalidate image
6) draw image
7) etc etc

assuming the loop doesn't go on forever.. (which I only assume isn't possible because its never happened Tongue)

it is not impossible that an image in a valid state may be drawn twice.

For images with OPAQUE or BITMASK transparency repeat drawing has no adverse effect, however for an image with an alpha channel (where both the src and dst contribute to the dst pixel) it is possible the resultant pixels will be in an invalid state.

ofcourse, this problem only effects VolatileImages if they ever support transparency... but if they never do support transparency, it begs the question...

Will we ever get accelerated images that we can monitor ourselfs that support transparency? (rather than the hidden acceleration that occurs with auto images)
Offline trembovetski

Senior Devvie

If only I knew what I'm talking about!

« Reply #1 - Posted 2003-03-10 03:56:56 »

Thanks for the interesting quiestion.

VolatileImage with translucency is planned for our next release. As for the question - I think it's a matter of enhancing that loop a bit to make sure you painted the image only once.

You'd have to solve the same problem even with non-accelerated images. An example of when it wasn't done would be one of the sdk demo applets - DitheredImage. Just set the operation to 'alpha', and then move a window over the appet's frame.

But I'll bring your question to team's attention anyways.

Pages: [1]
  ignore  |  Print  

EgonOlsen (45 views)
2018-06-10 19:43:48

EgonOlsen (25 views)
2018-06-10 19:43:44

EgonOlsen (47 views)
2018-06-10 19:43:20

DesertCoockie (202 views)
2018-05-13 18:23:11

nelsongames (127 views)
2018-04-24 18:15:36

nelsongames (126 views)
2018-04-24 18:14:32

ivj94 (867 views)
2018-03-24 14:47:39

ivj94 (128 views)
2018-03-24 14:46:31

ivj94 (771 views)
2018-03-24 14:43:53

Solater (143 views)
2018-03-17 05:04:08
Java Gaming Resources
by philfrei
2017-12-05 19:38:37

Java Gaming Resources
by philfrei
2017-12-05 19:37:39

Java Gaming Resources
by philfrei
2017-12-05 19:36:10

Java Gaming Resources
by philfrei
2017-12-05 19:33:10

List of Learning Resources
by elect
2017-03-13 14:05:44

List of Learning Resources
by elect
2017-03-13 14:04:45

SF/X Libraries
by philfrei
2017-03-02 08:45:19

SF/X Libraries
by philfrei
2017-03-02 08:44:05 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!