I just thought I'd chime in here, too ...
Depending upon what you are doing, you CAN handle many, many triangles in
Away3D, however you can't process them all at once. I know that probably seems
like a poor excuse, and basically is the same thing as what was spoken earlier,
but if you know you want to develop for Flash, but need more triangles than it
ordinarily supports, you design your application or game in a way which
prevents it from rendering every object in the scene on each frame.
One way I got around this in an application I built was to keep the dragging
object in its own render layer, separate from every object which had been
dropped. As a result, the drag-and-drop performance is always fast, as good as
handling one object, since that is all that is being redrawn. Once I drop the
object, I render all of the objects ... once ... then otherwise leave it in
place. I also shuffle between the fast renderer and the higher quality
renderer, applying the fast renderer when panning the camera (and rendering the
full scene each frame), then switching to the higher quality renderer once the
pan is completed. Combining this with some optimization of my models (like
deleting unneeded faces on the inside of my models, and making textures
single-sided), it often isn't apparent during a camera movement that the
rendering isn't always perfect.
So if you decided to do a MMORPG in Flash, as it is now, you would need to be
smart about it. Render the terrain, then leave it in memory and don't redraw
it. Convert your characters and buildings into bitmaps if you have to, and
employ 2D game techniques to control characters and terrain as sprites, rather
than keeping them in 3D. This can either be at design time, or you can handle
it at run-time, loading a model, setting the camera, drawing to bitmap, so on,
until you've created your library of sprites you need for displaying it
properly.
People have made games for consoles which had far less muscle than Flash has
today, they just had to be smart about it. Of course, it IS nice to have full
GPU support, no doubt about it, but Flash shouldn't be written off for games,
completely.
Plus, Flash is close to having pretty significant penetration in the mobile web
market:
- webOS
- BlackBerry
- Windows Mobile
- Android
- Symbian OS
Then you'll also be able to use Flash content as a native iPhone application,
and possibly even webOS as well.
So depending on priorities, penetration on cell phones may be an important
consideration. Flash 10.1 for mobile platforms does include 3D acceleration,
for video and for some of the geometry, I think, so the performance of Flash on
some of these phones may be theoretically close to the desktop in certain ways.
I believe that Adobe's plan is to add more GPU support to the desktop once the
mobile plugin launches. Using the GPU for rendering on a phone seems like a
necessity in terms of performance, and also seems easier since the supporting
hardware would come from a small set of vendors and models rather than the
enormous variety which is present on the desktop.
On Sat, 13 Mar 2010 07:48:44 -0800, Michael Iv <[email protected]> wrote:
Not just that . I am being a biggest fan of Away3D can say that
unfortunately it's capabilities as well as those of other flash based
engines are hundreds years backwards in comparison
to Unity . And it is just because it is still flash player that runs all the
show and no matter how those awesome Away3D guys upgrade this engine the
Flash Technology barrier still limits them. Unity is completely different
3D game development technology with full GPU support as well as with Shader
languages ,PhysX physical engine and more and more . But going Unity way
for Web Apps you should take into consideration still very low player
penetration . And from the other side going with flash you will never be
able to create the stuff that even closely resembles what Unity is able to
produce . At the company I work for we are developing Unity stuff and flash
3D (mostly Away3D ) as parallel projects .So far Flash still rules the Web
in this field .
On Sat, Mar 13, 2010 at 5:32 PM, Jensa <[email protected]> wrote:
Hi Nicolo,
Away3D and Unity3D serves two different needs. While it is possible to
make a good MMO using Away3D, you'd hit performance problems very
soon.
- Unity3D is built for games from ground up.
- Away3D is a general purpose 3D engine that can also do games
- Unity3D offers hardware acceleration, so the more powerful graphics
card/CPU the more triangles your models can contain (7000 for iPhone,
50000 for PSP, much more for PCs)
http://forum.unity3d.com/viewtopic.php?t=15531
- Away3D is based on Flash and can only use the CPU for rendering
graphics, so 4000-10000 triangles is a theoretic upper limit for well
optimized content. In reality, it may well be lower.
- Unity3D only has a decent distribution among gamers, but only like
14.000.000 installs (http://forum.unity3d.com/viewtopic.php?p=165117)
- Away3D uses the Flash Player that has 98% distribution (http://
www.adobe.com/products/player_census/flashplayer/version_penetration.html)
In other words - if you want high fidelity and don't care about
reaching "everyone", use Unity3D. If you can live with lower fidelity
and want to reach everyone, use Away3D. Adobe is working on hardware
acceleration for 3D in Flash, but no date is set for this. It may well
take many years for that to arrive, so don't bet on it.
J
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/