News: OGL on Win in 1.5.0b2

Snipping from the public Java2D list. Message from Chis Campbell:

"Hi Mik,

We were thinking about sending out this piece of news on April 1 [April Fool’s Day in the US], but we figured no one would believe us. Anyway, yes, the OGL-based pipeline will be available on Windows in 1.5-beta2.
Keep in mind that it should be considered a “technology preview” for developers interested in trying their applications on the new pipeline. There are still quite a few driver issues out there (and a few issues that need to be fixed in our code) before it can be considered stable enough as a deployment option for developers. The release notes will have more information."

Also take a look here:

OGL: add OpenGL-based pipeline for Windows
http://developer.java.sun.com/developer/bugParade/bugs/5008045.html

Have fun,

Mik of ClassX

yay!!!
good news…

Yay! Now maybe this java2d/javascript gamedevelopement environment I’ve been working on won’t have been a complete waste of time!

As Jar Jar might say… yahoooooooooooooo! :-*

Excellent news!

When is b2 likely to be available? (or is it already?)

Kev

I also asked Chris to anticipate something about the following topics:

  • hw accelerated transforms (bitmap, vectors, with translucence support)
  • hw accelerated transforms (bitmap, vectors, with translucence support) with bilinear, bicubic filtering.
  • hw accelerated stroke/fill/paint
  • hw accelerated clipping
  • hw accelerated shapes, glyphs, text
  • hw accelerated antialiased shapes, glyphs, text

I also asked how current applications can take advantage from the new pipeline and if we should take a particular coding approach for pushing apps performace to the top.

Maybe some officials here can give us a clearer vision.

I’m just waiting with excitement for the relase of 1.5.0b2…

Mik of ClassX

I think Beta 2 has been Real Soon Now for a couple weeks so presumably it will appear Real Soon Now.

Sweet baby jebus.

:o

Now that’s a surprise :slight_smile:

@karatemarc

I disagree. “karatemarc” is a pretty nice nickname. It’s really recognizeable and kinda funny (and I like it more then your other nick… “kel” it was, right?). Just imagine you would be one of those faceless "Neo"s :wink:

Now that’s a surprise :slight_smile:

@karatemarc

I disagree. “karatemarc” is a pretty nice nickname. It’s really recognizeable and kinda funny (and I like it more then your other nick… “kel” it was, right?). Just imagine you would be one of those faceless "Neo"s :wink:
[/quote]
No I’m gona stick to my guns here, it is a stupid name, but I’m not gona change it ;D

kel was my highscore table name when I was a nipper, strictly for the Lleague :wink:

Some futher details:

[i]
(The following notes are pretty general and apply to the OGL pipeline on all platforms. Some drivers may be less optimized than others, so your mileage may vary.)

  • hw accelerated transforms (bitmap, vectors, with translucence support)

images: yes
shapes: yes/no (some simple primitives can be accelerated)
translucency: yes

  • hw accelerated transforms (bitmap, vectors, with translucence support)
    with bilinear, bicubic filtering.

bilinear: yes
bicubic: no

  • hw accelerated stroke/fill/paint

strokes: not yet (more work will be done in this area)
solid fills: yes
texture/gradient paints: yes

  • hw accelerated clipping

rectangular clips: yes
shape clips: yes

  • hw accelerated shapes, glyphs, text

shapes: yes
text: yes

  • hw accelerated antialiased shapes, glyphs, text

aa shapes: sort of (at least they’re faster than the existing pipelines)
aa text: yes

The question is how current applications can take advantage from the new
pipeline ? Should we take a particular coding approach for pushing apps
performace to the top ?

You shouldn’t have to change your app to benefit from the OGL pipeline. There are some things (not OGL-specific) that you can do to help speed up your app that are documented in our “2D Performance White Paper”:
http://java.sun.com/products/java-media/2D/perf_graphics.html

If there are any tweaks that would help your code perform better on the OGL pipeline, we’ll include them in an updated version of that white paper.

Chris
[/i]

Looks like most Java2D stuff is hw accelerated. I can only imagine how all this new stuff can impact the future development of java gaming and desktop apps.

Enjoy,

Mik of ClassX

great, another thing to anticipate from 1.5…hurry up!

An update from Chris Campbell

[I]
Q: Is there any “suggested” board or config in order to use OGL acceleration ?

A: So far, we’ve only found that the latest Nvidia and ATI drivers meet the minimum requirements (OpenGL 1.2, ARB_pbuffer, ARB_render_texture) for running the OpenGL-based pipeline on Windows. Of those two, the
Nvidia drivers seem a bit more robust at this point, but as I’ve mentioned, we’re submitting driver issues to these companies when we run across them. So hopefully by the time Tiger ships, many of those driver issues will be resolved.

Q: Which OpenGL version is required ?

A: As stated above.

Q: Can you tell me which Java2D features are not accelerated, apart from bicubic interpolation ?

A: Just to keep things simple, I’ll say that if it wasn’t on my earlier list, then it’s safe to say that the operation is going through software loops. So it shouldn’t be any slower than the existing pipelines, but it probably won’t be any faster with OGL pipeline either.

We’re continuing to look at more ways to take advantage of hardware acceleration. For example, we can use pixel shaders to implement things like ConvolveOp and RescaleOp at hardware speeds. (And on a side note, we’re always increasing the performance of our software
loops, by advanced tuning, using MMX/SSE, etc…)

Q: Ah, yes, the last “very original” question: when ?

A: In 1.5-beta2, which will be out Real Soon Now.

[/I]

Some interesting improvement in the software loops also. Not bad isn’t it ?

Have fun!

Mik of ClassX

A note to clear up some confusion: the software loops improvements (like using SSE/MMX) Chris mentioned are currently targeted for the next release, actually.

That’s not exactly what I wanted to hear, but having a new Java2D OpenGL pipeline is definitely a good way to start with 1.5.

Do you know if OGL acceleration will be on by default in the final 1.5 release ?

Looking forward to putting my hands on the b2 ASAP.

Cheers,

Mik of ClassX

[quote]A note to clear up some confusion: the software loops improvements (like using SSE/MMX) Chris mentioned are currently targeted for the next release, actually.
[/quote]
Yay!

By next release you mean beta 3, right? not 1.5.1?

Um… No, the next release, not 1.5. Again - this is regarding the (even more) optimized through SSE/MMX software loops, not WGL pipeline

Repetita Juvant

Do you know if OGL/WGL acceleration will be on by default in the final 1.5 release ?

[quote]Repetita Juvant

Do you know if OGL/WGL acceleration will be on by default in the final 1.5 release ?
[/quote]
No, it will not be enabled by default in 1.5.

Chris

…but if you’re using Webstart to deploy it’s trivial to set these flags anyway. So no problems there.

Cas :slight_smile: