The real slim shady

The below are a few examples from a project I've worked on for the past 1+ years - all written in javafx script (and all run at 60fps) with a modified compiler and from the ground up custom runtime written by me and a few others - one of them Ken Russell - who sadly just left Sun. We weren't able to obtain the support we needed for this project to continue, which took its toll. For those of you who may be disappointed about this - as I am - you can blame me. It was my job to be persuasive enough to gain sufficient support for our efforts, and in the end I wasn't able to do that.

Extruded text with 3d physics animation

Physics animation with hinge constraints

Vanilla 2d vector graphics

Interactive, animated 2d vector scene inside a 3d model. 60 sec screen capture. Note the screen capture does not reflect the smoothness of the actual animation.

Particles

XHTML rendered with fixed-function 3d graphics primitives (uses Flying Saucer for layout)

The interesting part in this context is that on layout the entire document is baked onto one set of vertex arrays. The minimal number of draw calls are then issued based on overdraw requirements and texture mapping, yielding high performance - in this case around 5x that of webkit

GPU rendered antialiased 2d vector graphics with perspective transform

3d blend shape animation

Normal maps imported from Maya

Comments:

Interesting stuff. Can you tell us more about the goal of the project and what will happen to the effort now?

Posted by Pär Dahlberg on July 08, 2009 at 04:34 PM PDT #

Interesting? This is awesome! Will we see any of this in JavaFX? Where did Ken Russell (who did an excellent job with JOGL) go?

Posted by pron on July 08, 2009 at 06:56 PM PDT #

Chris,
looks good. Where did Ken go?

Posted by Thom Theriault on July 08, 2009 at 08:37 PM PDT #

Google?

Posted by Robbin Banks on July 08, 2009 at 10:18 PM PDT #

Very impressive and unfortunate. Was that prism, chris ?

Posted by Rémy Rakic on July 08, 2009 at 10:46 PM PDT #

re: @myself, i guess it is prism, i didn't notice the name was in the first screenshot. That's very unfortunate, i was eagerly waiting for it. Is there anything the community can do to help ?

Posted by Rémy Rakic on July 08, 2009 at 10:52 PM PDT #

Hi,

Does this have something to do with scenegraph 3d?

I am eagerly waiting for scenegraph3d do you know something about it?

Posted by Pedro Duque Vieira on July 08, 2009 at 11:23 PM PDT #

@Rémy Rakic:
Take a look at this: http://kenai.com/projects/openjfx-compiler/sources/soma-master/revision/5192

Posted by pron on July 09, 2009 at 12:18 AM PDT #

It's really sad to hear that this project is being delayed (or discontinued?). Somebody has got to stand up to all this Chrome OS/HTML 5 insanity out there. JavaFX is our best shot, keep making it better. It would be a "day of infamy" in technology the day we are reduced to only using Google HTML5 to write UI apps.

Posted by Mike Azzi on July 09, 2009 at 12:47 AM PDT #

@Remy

No, this project was separate from "Prism".

Posted by Christopher Oliver on July 09, 2009 at 01:56 AM PDT #

Ok thanks chris, still, that's too bad. I'm sure the guys at JGO would love to have the kind of power those screenshots imply.

Posted by Rémy Rakic on July 09, 2009 at 02:26 AM PDT #

I would like that power also for doing 2D animations mixed with 3D animations. What else did it do?

Posted by Tim West on July 09, 2009 at 02:48 AM PDT #

@Per
Although I believe in it, I'm just personally too worn out to keep this project going

@Tim West
GPU accelerated 2D and 3D vector graphics (both fixed-function and programmable)

High quality cpu-generated text and antialiasing for 2D vector graphics with Saffron

GPU shader generated 2D antialiasing using the technique of Loop and Blinn (see GPU Gems 3).

Animation including key-framing, blend shapes, skinning, inverse kinematics, rigid-body
dynamics

Integrated 2D+3D lazily evaluated JavaFX script scene graph with transform hierarchy, bounding volume
hierarchy, collision detection and picking

Extreme Maya importing: including key frame animation, cameras, lights, geometry, shading
networks, light maps, constraints, 2 bone inverse kinematics, rigid-body dynamics, fields, motion paths, particles, and
utility nodes including math and logic

Posted by Christopher Oliver on July 09, 2009 at 03:19 AM PDT #

wow. the single most impressive thing I have seen JavaFX do and it is not continued/supported by Sun? I'm speechless.

Posted by Sakuraba on July 09, 2009 at 04:22 AM PDT #

Very impressive list, there isn't a whole lot of available engines with those features. So \*that\* was the slimshady project that was mentioned last year in the bug parade, now i understand the title of the blog post.

Posted by Rémy Rakic on July 09, 2009 at 05:01 AM PDT #

A very impressive list indeed. OK, so where does Prism fit in this picture then? Does it share/benefit from any of the great features that this project has. I'd hate to see all this great effort not leveraged in one way or another within JavaFX.

Posted by Mike Azzi on July 09, 2009 at 05:13 AM PDT #

@Mike Azzi

The system mentioned in this post, although a functional superset of Javafx 1.x is necessarily incompatible with javafx 1.x apis - in order to deliver the functionality and performance mentioned.

It's my understanding that Prism will remain compatible. How many of the above mentioned use cases can be carried out with that restriction remains to be seen.

Posted by Christopher Oliver on July 09, 2009 at 05:56 AM PDT #

Hi Chris, if there is a great time to break backward compatibility in JavaFX, now is that time while the install base is fairly minimal. So please don't hold back on that account. Also, if it's not politically possible within the 1.x release time frame, why not do it for the 2.x release. Just a thought.
Thanks.

Posted by Mike Azzi on July 09, 2009 at 06:10 AM PDT #

That's awesome stuff !!! It's seems to me that it's really unique in its kind ;) Sun should really should continue this, 3D begins to be the rage these days with GPUs on average PCs being the beasts they are now (who do not want to play 2D games nowadays ?). For example Silverlight does only fake 3D, and Flash has a bad performance for 3D IMHO (and I think also for 2D, but it's a personal opinion).

Posted by Hervé on July 09, 2009 at 09:50 AM PDT #

damn:
3D begins to be the rage these days on standard apps with GPUs on average PCs being the beasts they are now (who do not want to have a PC that can play 3D games nowadays ?)

Posted by Hervé on July 09, 2009 at 09:52 AM PDT #

@Christopher Oliver
I'm very sad to hear that :( Keep up the good work!

@Mike Azzi
I agree. There's probably still time to break backwards compatibility. There's a big install base thanks to the Java platform, but as of yet I haven't heard of anyone outside the Java community talking about JavaFX. Still only Flash and some minimal talks about Silverlight.

Would be cool to ramp up the power while we still can.

Posted by Pär Dahlberg on July 09, 2009 at 06:33 PM PDT #

Would Slim Shady work on all the target platforms?

Posted by Curious on July 09, 2009 at 07:31 PM PDT #

@Curious

This system requires GPU hardware, as the use cases it targets cannot be carried out with adequate performance without hardware acceleration. It's compatible with any Java platform that can support Java 1.5 and a JRE subset equivalent to CDC Foundation Profile. This excludes the CLDC VM, but includes both embedded Hotspot and CVM, as well as all desktop systems and browsers.

Posted by Christopher Oliver on July 10, 2009 at 04:00 AM PDT #

Very impressive stuff, I hope it's not wasted effort. As we discuss this, Microsoft just launched Silverlight 3 which exposes HLSL programming, I think only for pixel shading effects - and they will promote this level of gfx power as the most advanced thing evar. And JavaFX 1.2 has a very interesting, although still modest, Effects framework, but it is plagued by severe performance limitations as the current JavaFX rendering pipeline is clearly much behind slimshady in efficient GPU acceleration (check my latest blog). Please work with the powers that be, to deliver at least some part of this research in a future release of JavaFX or anything that we can actually use... or just open source it and let the Java graphics/gaming community pick it up.

Posted by Osvaldo Pinali Doederlein on July 10, 2009 at 05:31 AM PDT #

Does this mean there won't be any 3d on javafx?
Does this have something to do with scenegraph3d? or is it a separate project?

Posted by Pedro Duque Vieira on July 11, 2009 at 12:00 AM PDT #

Reading through the comments I realized that my previous question doesn't make much sense.

Posted by Pedro Duque Vieira on July 11, 2009 at 11:46 AM PDT #

Drat! That's exactly what I had hoped javafx would become. Thanks for your excellent work!

It would be a shame for all of this excellent work to get dumped into the garbage heap... is there any chance it could live on in some form?

Also... I'm curious to hear if you liked the Saffron type stuff.

Posted by Mark M on July 12, 2009 at 06:27 AM PDT #

@ Pedro "Does this mean there won't be any 3d on javafx?"

Have a look at 'JavaFX 3D powered by Java 3D' http://forums.sun.com/thread.jspa?threadID=5373702

Posted by August Lammersdorf, InteractiveMesh on July 12, 2009 at 06:34 PM PDT #

@ August
wtf is that! I have a feeling what Chris is posting here is way beyond the deader then dead world of Java'out-of-touch'3D, Who in the right mind would ever use that for anything these days? Get out more dude...

Posted by Jim Rice on July 12, 2009 at 07:21 PM PDT #

In my opinion, the same approach can be used for enterprise software tools integrated with Web Services as in Sun Java CAPS. Note that as above nobody is going to say "Hey, here you go, why don't you test your enterprise tools on my enterprise". Instead in each case we need to simulate the enterprise software problem that our tool is supposed to solve. http://www.aygulum.net
http://sohbetcide.com

Posted by Chat on June 17, 2010 at 08:59 AM PDT #

JOGL can be used with JavaFX, there is no need of Java3D

Posted by Julien Gouesse on September 25, 2010 at 12:07 AM PDT #

In my opinion, the same approach can be used for enterprise software tools integrated with Web Services as in Sun Java CAPS. Note that as above nobody is going to say

Posted by chat siteleri on November 01, 2010 at 05:28 PM PDT #

the same approach can be used for enterprise software tools integrated with Web Services as in Sun Java CAPS

Posted by konyachat on November 01, 2010 at 05:29 PM PDT #

n my opinion, the same approach can be used for enterprise software tools integrated with Web Services as in Sun Java CAPS. Note that as above nobody is going to say "Hey, here you go, why don't you test your enterprise tools on my enterprise". Instead in each case we need to simulate the enterprise software problem that our tool is supposed to solve. http://www.memleketchat.com

Posted by Chat on November 01, 2010 at 05:29 PM PDT #

[Trackback] Someone referenced this post to answer question "Java vector question?"...

Posted by Copious-Systems on December 01, 2010 at 03:15 AM PST #

THAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANKS

Posted by دردشة مصرية on December 04, 2010 at 07:36 PM PST #

THAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANKS

Posted by دردشة on December 04, 2010 at 07:37 PM PST #

tHAAAAAAAAAAAAAAAAAAAAAANKS

Posted by شات on December 04, 2010 at 07:48 PM PST #

THAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANKS

Posted by شات مصرى on December 04, 2010 at 07:48 PM PST #

good work bro. impressive and awasome.

Posted by Egitim on December 11, 2010 at 05:11 AM PST #

İnsan, sosyal bir varlıktır. Bunun gereği olarak da, diğer insanlarla beraber yaşar, onlarla iletişim kurar, işbirliğine girer ve onlarla sözleşme yapar. Yüce Allah insanlarla yapılan anlaşmaların yerine getirilmesini emreder ve insanların verdiği sözden dolayı sorguya çekileceğini hatırlatır.
Şunu asla unutmamak gerekir ki, sözünde durmak müminin; sözünden caymak ise münafığın alametlerindendir.
Allah Tealanın, kıyamet günü kendilerine yakınlık göstermeyeceği üç grup insandan biri, "Vallahi, billah" diyerek and içtikten sonra sözünden cayanlardır.
Gerçek mü'minin özellikleri inanç esaslarına iman ettikten sonra, yukarıdaki ayetlerde de ifade edildiği gibi, namazlarında saygılı olan, boş sözden yüz çeviren, zekatı veren

Posted by islami forum on December 12, 2010 at 09:14 AM PST #

good work bro. impressive and awasome.

Posted by شات on December 15, 2010 at 03:28 AM PST #

good work bro. impressive and awasome

Posted by منتديات on April 21, 2011 at 07:30 PM PDT #

good work bro. impressive and awasome

Posted by شات on April 21, 2011 at 07:31 PM PDT #

Okey Oyunu İndirme merkezine hoş geldiniz. Türkiye’deki okey severlerin ortak buluşma noktası olan bu site, okey oyunu hakkında merak ettiğiniz ve bilmek istediğiniz her şeye rahatlıkla erişebilmeniz için dizayn edilmiştir.
link: http://www.okeyoyunuindir.com

Posted by okey oyunu indir on April 25, 2011 at 07:19 AM PDT #

Thanks.

Posted by okey on April 27, 2011 at 08:54 PM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

user12610627

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
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
   
       
Today