I like this idea, I use AMF a lot, and converting a MD2 to a AMF file to import sounds really nice.
Phil On Wed, Apr 28, 2010 at 11:27 AM, katopz <[email protected]> wrote: > fyi in case someone miss my blog ;) > > > http://sleepydesign.blogspot.com/2010/03/away3dlite-md2-and-mdz-builder-from-dae.html > > and it's just beginning, you can expect a lot more to come eg. > > 1. MDJ = MD2 + textures in JSON format , nothing to be excite it's just > store mesh and texture path > 2. MDJBulder = build MDJ just like MDZ but as JSON > 3. MDF = MD2 that build as AMF format, expect 0 parse time compressed > binary format > 4. MDFBuilder come along obviously! > > 1, 2 is already in svn (lite builder) and use in real project for custom > character and save it back > some clean up need there > > 3, 4 is in my head anyone want to help me on MDF things feel free to be my > guest ;) > trust me it's fun! ;D > > cheers! > > > On 29 April 2010 01:07, Ken Railey <[email protected]> wrote: > >> I am not sure I fully understand what you are proposing. Collada is >> pretty explicitly XML, and it is the step of recursively walking the XML and >> building all of the associated away3d structures that takes the most time. >> >> If you are suggesting loading and storing that XML in an initial byte >> array, that won't significantly alter anything since it still has to become >> XML at some point. >> >> If you are suggesting converting the Collada to some intermediate binary >> format, then parsing *that* at runtime, that could potentially be fast. In >> this case we are no longer loading a Collada at all, but some specific >> one-off format though. >> >> I thought I saw some discussion on this list about an away3d specific >> model format, but I haven't had a chance to check it out. One potential >> approach could be to make that format parse really quickly, and just convert >> Collada (or other) meshes to that for deployment I suppose. >> >> -Ken >> >> >> On Wed, Apr 28, 2010 at 12:24 PM, Michael Iv <[email protected]>wrote: >> >>> That is a very useful info you fetched here . So let me ask you >>> something: if the parser is going to read from bytearray , do you think the >>> parse time would get shorter? Or it can't read from bytearray at all and in >>> this case we have to deserialize the data as DAE and then parse , and then >>> nothing changes? >>> >>> >>> On Wed, Apr 28, 2010 at 8:18 PM, Ken Railey <[email protected]>wrote: >>> >>>> Well I can only speak for my own projects, but in my case with a large >>>> animated Collada file the loading is measured in ms, while the parsing is >>>> measured in seconds (sometimes approaching 10, depending on the mesh >>>> complexity). >>>> >>>> I am also interested in any techniques anyone has found to speed up the >>>> parsing step, particularly in the animated Collada case. It seems like >>>> exporting the model directly to as3 using something like Prefab would be a >>>> significant win, but I don't believe that animations are supported >>>> currently. At least, they weren't the last time I attempted to test it. >>>> >>>> -Ken >>>> >>>> >>>> On Wed, Apr 28, 2010 at 7:50 AM, Michael Iv <[email protected]>wrote: >>>> >>>>> Thinking of what you have just said my question is how much of those 3 >>>>> seconds is loading time vs actual parsing(supposing that you load your >>>>> models) ? Because if i bring in serialized model file with bytearray , it >>>>> still needs to get parsed , but if the loading part is swift we can spare >>>>> more time on the whole routine . >>>>> >>>>> >>>>> On Wed, Apr 28, 2010 at 3:29 PM, tarwin <[email protected]> wrote: >>>>> >>>>>> If you've got animation in there you're up against a whole other >>>>>> problem. One thing I've been looking (actively working on) at is >>>>>> loading one Collada animation and substituting Vertex data (just a >>>>>> quick replace in the XML) for the model I want, then using a hack of >>>>>> Katopz' MD2Buidler creating AnimatedMeshs out of it. The two slowest >>>>>> parts here are the parsing of the Collada and then the creation of the >>>>>> AnimatedMesh, but I think (and this is where I'm still unsure) >>>>>> creating some kind of pre-parsed Collada format might help a lot here. >>>>>> >>>>>> The idea is to build a serialized version of the Collada object >>>>>> (Away3D object) that I can build into a Collada super quick, rather >>>>>> than building it directly from the XML which is super slow (mostly >>>>>> because XML reading is slow). If you have the serialized Collada >>>>>> object in memory already hopefully you could just replace parts of it >>>>>> (vertex data) and have it done super quick. >>>>>> >>>>>> It currently takes over 3 seconds to process a Collada and then create >>>>>> an AnimatedMesh (1500 verts, lots of bones and 5 seconds of animation) >>>>>> but I'm guessing this could be cut down quite considerably if you have >>>>>> the cached Collada (maybe 1 second which could then be hidden with >>>>>> some kind of transition). >>>>>> >>>>>> Thoughts anyone? How would YOU hold Collada info to create one >>>>>> quickly, but also minimize file size? How about just creating a Class >>>>>> wihich has a bunch of lines like: >>>>>> >>>>>> // not working code, just a quick idea !! >>>>>> c = new Collada(); >>>>>> m = collada.addMesh(Vector(123,43,.34,-34,34,-343)); >>>>>> m.addBones(Vector(123,43,.34,-34,34,-343)); >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Michael Ivanov ,Programmer >>>>> Neurotech Solutions Ltd. >>>>> Flex|Air |3D|Unity| >>>>> www.neurotechresearch.com >>>>> Tel:054-4962254 >>>>> [email protected] >>>>> [email protected] >>>>> >>>>> >>>> >>> >>> >>> -- >>> Michael Ivanov ,Programmer >>> Neurotech Solutions Ltd. >>> Flex|Air |3D|Unity| >>> www.neurotechresearch.com >>> Tel:054-4962254 >>> [email protected] >>> [email protected] >>> >>> >> > > > -- > Regards > ----------------------------------------------------------- > katopz, http://sleepydesign.com > Away3D and JigLibFlash Developer Team > -- Phil Harvey [email protected] AIM: filrv ICQ: 354535 GTalk: [email protected]
