Jeremy White
Jeremy White

Reputation: 2829

Transitioning Away from Flash

I create fullscreen interactive demos in Flash and have recently been looking to migrate to a new language. My Flash demos are basically software prototypes and operate in a projector EXE, outside of the browser. I want to leave Flash for a variety of reasons, including:

In finding a new platform, I need the ability to develop for the following requirements:

I would appreciate any recommendations you could make on languages, frameworks, books, websites, etc. I am more knowledgable in Java than in C/C++, so it would be nice to see more recommendations there.

Upvotes: 0

Views: 309

Answers (7)

Luke
Luke

Reputation: 21236

Maybe Zinc is a solution where you can still use/apply your Flash/Actionscript skills and create dedicated executables for Windows & OSX that do not have the same restrictions that normal Flash projectors have.

Upvotes: 0

Adam Harte
Adam Harte

Reputation: 10510

WPF sounds perfect for your needs.

I would definitely recommend using WPF. I am a big fan of Flash, but it does sounds like at the moment you are not using the right tool for the right job!

WPF is like Silverlight's (stronger, smarter, better-looking) big brother. If you want to create EXEs running on Windows, why not use a Microsoft platform to create it. Seems smart to me.

Where as Silverlight is targeting the web and confines you to a sandbox, WPF lets you free to do what you want. You can basically do anything inside .net, but Silverlight only uses a subset of the .net framework.

WPF is also fully hardware accelerated, and works well with large videos. Of course you must make sure your video are encoded properly, because there some videos that are far to big to play on most PCs out there.

Only problem is that it Windows only. But I am not sure if there is a way around this or not.

Upvotes: 0

Jonathan Branam
Jonathan Branam

Reputation: 744

Processing

I think your best answer is Processing given your familiarity with Java. Processing is used to create many demos and cutting edge graphics applications. Processing is built in Java but has a proprietary language that is very easy to use, and you can use straight Java as well. I don't know if it has a specific widget library, but certainly it is easy enough to build yourself. Check out some of the Processing exhibitions for a look at its power and flexibility.

The Simple Directmedia Layer

For true cross platform speed and hardware access you could look at something like the Simple DirectMedia Layer. The SDL is a cross platform library used for demos and games. It has 2d and 3d support as well as device access. It will run on Windows, Linux, Mac and countless other variations of hardware and software. It is written in C to make it easily cross platform, but you can code C++ or use the bindings for Python, Java, or Ruby if you are looking for something different. The SDL doesn't come with a built-in widget library, I don't believe, but there are many listed on their site under the SDL Interface category of libraries.

Qt

Another option is Qt which is a cross platform widget library recently purchased by Nokia. Nokia is an odd owner, but the library is licensed under LGPL and it offers everything you would need. I am not familiar with building graphically intense demos under Qt, but their documentation makes it sound feasible.

openFrameworks

openFrameworks is also used to for demos and cutting edge graphics and hardware applications. openFrameworks is written in C++ and is not so easy for less experienced developers. It does not have a specific widget library, and it is still in an alpha release state. I have not dug deeply into openFrameworks yet but it is much more advanced and tailored for advanced applications such as the ones tagged openFrameworks on Vimeo.

Upvotes: 4

basszero
basszero

Reputation: 30014

You could use plain Java with an OpenGL binding like JOGL/LWJGL but you're going to have trouble with media playback. I think JavaFX provides much of this media playback support as well as the OpenGL acceleration, all wrapped up in a nice Java framework. If you need cross platform support, you'll be in a world of hurt trying to get proper libraries for every platform flavor. If you just need windows, JavaFX may be very viable.

Upvotes: 1

Chris Johnston
Chris Johnston

Reputation: 1919

I would have to say you either need to look at Silverlight (and I have no idea if it will meet your needs as I don't think it can do 3D yet) or some form of OpenGL graphics engine.

Upvotes: 0

Blindy
Blindy

Reputation: 67380

The traditional competitor to Flash is Silverlight.

Upvotes: 2

cgp
cgp

Reputation: 41381

  • 100% graphics (32-bit transparent PNG) based UI - I'm not sure what you mean by PNG when you mix in the the UI? Do you mean they have to have PNG quality? PNG's an image format, not a rendering layer.
  • Fullscreen exclusive mode (if possible, ability to adjust user's screen resolution)

By these requirements, you're pretty much stuck with compiled executables of some language variety.

Upvotes: 1

Related Questions