[Papervision3D] Pv3D - Sandy - Away3D ???
tomsamson
blumenzuechter at gmx.de
Fri Nov 23 13:56:31 PST 2007
Nice and all regarding your blessing speech pro as3 but the general
situation is a bit more complicated than you make it up to be.
Its great to do something new that requires the performance in as3 if
there´s the time for it and its suited to be done with the restrictions
of the VM2, but people who have made tons of as1 and 2 things and need
to support them for some more time can´t just take the time to port all
that stuff to as3 (neither will clients always pay for that).
Next up the majority of flash users have always been people who either
have no formal programming language (for example designers) or people
who have some programming knowledge but maybe were scared off or annoyed
of coding with more strict languages as java (before as3) or C++.
They happily welcomed not having to think of garbage collection etc.
For them its not just difficult to switch over to AS3 but in some cases
just plain doesn´t make sense to them since they can get more reliable
results going with as1/2 quicker. Creating AS3 stuff to my experience
requires more planning work and overall has a way longer dev time
(unless one relies on components or frameworks where others already
invested that time or one just does quite simplicistic stuff anyway).
For spaghetti coders (as i just call em now in lack of a better term ;-)
), let´s say people with more visual creation manner rather than code
centric one it goes quicker to set something up with movieclips in
visual way, clamp code on or in display objects and don´t have to bother
with if the garbage collector picks something up when they remove a
display object or if they can access a child display object from outside
before the render event of the parent display object has fired.
AS3/VM2 isn´t just crippled down in easy to use functionality in such
areas but is downright buggy especially with movieclip handling.
Sure, as coders the common sense is hey, just don´t use Movieclips, they
are a waste of performance anyway.
But yeah, if that is the bottomline comment to all such problems (just
do all codebased, use as few display objects as possible, reuse objects,
make sure you remove all active strong references yourself,constantly
check ram usage in more complex apps etc etc) you will loose a big part
of your your visual creation oriented people.
(Yeah, not all of them are rushing out to create component based Rias).
The marketing department thought seems to be: here we have the
designers, there we have the coders. Those are totally seperate
entities,coders should code, designers should design (not touch code).
The reality in the flash word is different though, most people creating
flash stuff in the past were way more designers than coders, often doing
both. And yeah, flash is used for way more things than rias and
framework based stuff like a pv3d demo.
I coded several AS3 only projects which were started new from the ground
up in as3, was quite nice to work with after the initial language
(re)learning step.
Not long ago i then had to port an as1 game to as3 though and man, that
was the most painful thing i ever worked on.
I first ported it just to address all the syntax differences. Around
3000 compiler errors addressed later it then ran without spitting out
errors on as3 export.
But then you see how bad it runs in vm2 if something done in as1 manner
(lots of nested movieclips, using attach/remove for mcs instead of
reusing the same few created ones etc). Performance was worse than in
the as1 version and also it cluttered up ram since obviously things were
just removed and still existed in ram.
I then rewrote such things,too, so its all bitmapdata based and objects
are reused etc, but yeah, there i started to wonder if that game would
have actually been fast to do in as3 at all if i had done it in as3
right away. Because i HAD to do it that way to get it running in
acceptable performance and ram usage at all, you know, even if you can
code in both ways its nice to have the option to leave something in some
way if you feel like that. With as3/vm2 you can essentially only do
certain things in certain ways.
I´m not talking about the language or compiler, i´m talking about such
display side things or the way the garbage collector works for example.
That is for someone who is used to working with as1, 2, 3 and other
languages as java.
For people enjoying java they might wonder what the fuss is about the
way the garbage collector works, for many flashers it will cause lots of
anger (to put it mildly) why something that was so easy to use (or
ignore that it exists at all and does its job silently ;-) ) now causes
so much conceptual work and forcing them to do things in certain way to
even just get a stable thing going which doesn´t ramp up ram or cpu usage.
This won´t be joyful for people who hacked together their cobble code
and can´t do anything else than as1 manner coding.
I think the way the garbage collector acts will lead to way more flash
content ramping up ram usage and therefore forming a negative reputation
for flash in some circles over time.
As game developer doing stuff as ressource savey as possible is very
important to me and there i noticed quickly how quickly one can get into
using lots of ram with as3.
Also regarding games some things aren´t just as easily possible with as3
as even with as1 ;-)
Imagine you want to do something like wario ware, a container that loads
lots of minigames. You play one, it gets unloaded,the next one gets
loaded etc.
Pretty easily doable even with as1, with as3 and the way it handles
external movies and garbage collection things could get more problematic..
Doable, but way more dev time intensive and more error prone.
Same with loading in movies you haven´t authored yourself and therefore
have no clue how they act ressource usage/ram freeingwise.
I love AS3 and VM2 for some things where it makes sense to use it, sadly
a few issues make it not be the ideal solution for just about everything
and everyone yet, right now pretty much the opposite actually.
I totally think they have to fix how movieclips and external movies are
handled and also add a command which instantly deletes an object from ram.
Next up to me it has become more and more weird which steps are taken to
improve performance next.
We all know with what types of (display side) things flash has
performance issues. The cacheAsBitmap command introduced to address at
least a few is total nonsense to me (i elaborated on that one in another
mail before). Next up ok, we as developers accepted we shouldn´t use
Movieclips, don´t use vectors,alpha blended stuff, filters or blendmodes
(too much). So flash gives us all those toys, but beware,don´t use them
too much.
Now for performance raising many yelled for graphic card support.
Not asking for latest directX10 spec support, you know, just supporting
the minimum specs that even most office machines support since 10 years.
First that wasn´t added at all, now its added in small glimpses, for
example by hardware scaling in fs mode.
We accepted having all those toys we couldn´t play with as much as we
wanted, even forcing us to do stuff lower and lower level ways with
every flash version (while the rest of the programming language world is
going higher and higher level as they got how much that reduces dev
times and costs).
We accepted that because we knew why, right?
Its because if they added propper hardware support that would blow up
the player size and also raise hardware requirements for the player in
general, so less people, like only ones with newer hardware than 10 year
old machines could only enjoy our content.
Hm..
Now i wonder, next up multicore support is added.
Instead of propper graphic card support getting added ahead.
So hm, how new pcs do have multi cores?
Also the real cheap ones surely have quad cores by default, no?
So i can´t use 10 year old graphic card features and can´t use half the
graphic features of flash as much as i want but then force the user to
have a multi core super new machine and tons of ram to have better
performance?
I don´t get the thought here.
Maybe multi cores are the future (probably are) but the situation right
now still makes me wonder a lot.
I went over to flash cause it felt like it allowed to realize my
fantasies in most rapid and enjoyable way, i like as3 and vm2 on some
sides, but yeah, flash has lost a lot of its high level language
usability and accessibilility and fast creation time possibilities with
the latest version and i´m also not happy in which steps and ways
performance is gained on player side or developers are forced to do
stuff in certain ways to gain performance where the player should have it.
Just a few cents coming from someone who deals with the problems of the
more ground level creative community at the flash boards on daily base
next to creating games for years.
--
__________________________
Ugur Ister aka Tomsamson
Co-Founder, Lead, Stimunation
http://www.stimunationgames.com/
newest game: KICKFLIP play it here:
www.candystand.com/play.do?id=18111
Ryan Christensen wrote:
> Please let's kill off AS2 before the end of the year. It might even
> help for kit developers to halt development on AS2 versions and
> recommend going to AS3. Think of this this way, you will be
> maintaining AS2 apps and games the longer that you support it. This
> includes corporate, individual tests, killer flash apis and libraries,
> etc.
>
> Why should all these skills be used on tedious AS2 upkeep when a
> platform that performs 10 times the speed at a minimum is now at 94%
> of desktops?
>
> Thanks AS2 you got us to realize a new virtual machine was needed but
> it is AS3 from here on out! (anyone who doesn't agree is probably
> hiding a lack of skill).
>
> It is odd in previous flash versions developers and designers were all
> gung ho to use the latest, it seems with AS3 because it is a code jump
> people and companies are extremely scared. I guarantee 1-2 weeks
> working with it (get past all your unknowns) and you will never look back.
>
> I feel for the suckas maintaining AS2 apps through 2008 when everyone
> is smoking them with AS3 massive throw downs.
>
> Library developers, drop AS2 support soon!
>
> RYAN
> ----- Original Message -----
>
> *From:* John Grden <mailto:neoriley at gmail.com>
> *To:* papervision3d at osflash.org <mailto:papervision3d at osflash.org>
> *Sent:* Friday, November 23, 2007 7:11 AM
> *Subject:* Re: [Papervision3D] Pv3D - Sandy - Away3D ???
>
> agreed! no more as2 !
>
> On Nov 23, 2007 4:57 AM, fabrice Closier <f.closier at tfe.nl
> <mailto:f.closier at tfe.nl>> wrote:
>
> /
> //away is just an offshoot of Papervision and Sandy is just a
> different class structure
> /
> Many actual PV and 2.0 features are coming from Away. Away 1.9
> is out and Away 2.0 will include many new features that
> will improve your workflow.
> Sandy 3.0 is improved too and the compagnon doc is just fantastic.
>
> Copypasting... If you talk actionscript a bit, any examples
> made in PV, Away or Sandy can be usefull.
> Just visit the svn's and pick the API that fit best your
> requirements.
>
> And yes: no more AS2!
>
> Fabrice
>
>
> On Nov 23, 2007, at 9:02 AM, Justin Lawerance Mills wrote:
>
>> Enrique
>>
>> AS2 is not going to work with this project:
>>
>> I really think there is too much for papervision3D as2, there
>> is just two many faces needing to be moved, it would slow
>> down beyond usabliity and there are some bugs you would have
>> to fix such as depth sorting, you need AS3 and flash 9.
>> Sandy as2 might be slightly faster but it does not support
>> collada import, and at the base level it works the same way.
>> You could try http://five3d.mathieu-badimon.com/ it is a
>> vector engine but I suspect it will be even slower than
>> papervision for this task. AS3 is like 10x faster/better than
>> AS2 for papervision3D, just tell the client it is impossible
>> in flash8.
>>
>> For AS3 I think any of the engines you mentioned would work
>> they are all good solutions, but papervision3D has the
>> largest user base, so there are more examples and people to
>> offer ideas and assistance. Honestly I think Papervision3D
>> is a good choice spending time considering Away or Sandy will
>> not give you any huge benifits, as away is just an offshoot
>> of Papervision and Sandy is just a different class structure
>> for more or less the same thing, if your doing anything fancy
>> you may choose an engine for a particular aspect but for your
>> needs I think Papervision3D would be fine.
>>
>> Justin
>>
>>
>> On 23 Nov 2007, at 04:07, Enrique wrote:
>>
>>> Hello again !
>>> How I said before, I'm very new in 3d Flash, and searching
>>> in the web I found 3 options that looks great.
>>> PaperVision3D, Sandy and Away3D.
>>> But I can't understand the advantages or disadvantages of
>>> them front the others.
>>> Why you chose PaperVision and not Sandy or Away3D?
>>>
>>> bye !
>>> Enrique.
>>>
>>> _______________________________________________
>>> Papervision3D mailing list
>>> Papervision3D at osflash.org <mailto:Papervision3D at osflash.org>
>>> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>>
>> _______________________________________________
>> Papervision3D mailing list
>> Papervision3D at osflash.org <mailto:Papervision3D at osflash.org>
>> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>
>
> _______________________________________________
> Papervision3D mailing list
> Papervision3D at osflash.org <mailto:Papervision3D at osflash.org>
> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>
>
>
>
> --
> [ JPG ]
>
> ------------------------------------------------------------------------
> _______________________________________________
> Papervision3D mailing list
> Papervision3D at osflash.org
> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Papervision3D mailing list
> Papervision3D at osflash.org
> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>
More information about the Papervision3D
mailing list