> > This list is from my personal experience and whatever i've read on the > internet about the various formats. That said: >
Thanks for sharing this with us. Justin, any chance of getting this info in the FAQ? It would certainly serve as a seed for more information on the topic... Simeon > IndexedQuad/Triangle/StripArray - > > A poor option to use, since java3d must unindexify the data each frame to > send it to the card. But dead simple to work with, and the nicest > format for > the data to be in from a beginners perspective. > Memory - D > Speed - D > Ease - A > > 1.3.1beta update: > The UseCoordIndexOnly flag is the saviour for this once-hurting geometry > type. This flag allows java3d to send the data in a continous > stream to the > card. > Memory - B > Speed - B(A+ in IndexedTriangleStrip/FanArray's case) > Ease - B (A little more complicated due to the packing required) > > QuadArray - > > Mostly used in particle systems due to the billboard nature of a single > quad, works nicely in OpenGL. DirectX has issues however, since it doesn't > natively support quads and java3d must support this with > DrawPrimitiveStrided. Tested and true, don't use this geometry type if you > are planning on letting users use the DirectX version of java3d. > *GL* > Memory - B > Speed - B+ > Ease - A > *DX* > Memory - B > Speed - D+ > Ease - A > > TriangleStrip/FanArray: > > Full speed ahead! Triangle strips are a widely supported feature of video > cards now and this format makes for the most triangle throughput. > Be careful > however to not overflow the DirectX vertex buffers with > 65535 verts. > Memory - A > Speed - A > Ease - B > > PointArray: > > Under the OpenGL implementation, there is an option for > antialiasing points. > Using this, you can get really simple, really fast single-colored > particles. > But that is about it. > Memory - A > Speed - A > Ease - A > > BYREF geometry notes: > > Using the BYREF flag indicates that the data used within the geometry is > accessed through user arrays. Really the only way to go for > volatile meshes, > particle systems, bones animation, and multi/sub material objects, add two > grades for memory, one grade for ease, but lower one grade from speed > because of the fact that java3d (without a command-line option) > cannot build > vertex lists out of this data. > > Conclusions: (1.3.1 info mixed in) > For particle systems, BYREF PointArray/QuadArray is a great start > if you're > using OpenGL, and TriangleFanArray is the best way for DirectX that I've > found so far if you are using 1.3.1beta (since the inclusion of > SetStripCounts is instrumental here), or else just use plain > TriangleArray, > and bear with it. > For bones animation and multi/sub material objects, BYREF > TriangleStripArray > is the way to go. > For regular static meshes, I'd go with non-BYREF > TriangleStripArrays for any > java3d under 1.3.1beta, and IndexedTriangleStripArrays with > UseCoordIndexOnly for the latest and greatest java3d. > > And as an afterthought - > Why is Sun's team even supporting DirectX at all? OpenGL has the better > feature set by far and doesn't get crippled with high vertex strip counts. > Plus, OpenGL is the only option under Solaris and probably the other > platforms when they are completed as well. DirectX adopts the latest and > greatest in hardware much more quickly, but since java3d will be playing > catch up anyhow, I'm sure that supporting only one graphics environment > would free up man hours to get us better features now, no? > > Of course, I could be not focusing enough on the point that the DirectX > runtime has always had better *general* performance on my system > (pIII600/Geforce2MX). > > > >From: Brad Christiansen <[EMAIL PROTECTED]> > >Reply-To: [EMAIL PROTECTED] > >To: [EMAIL PROTECTED] > >Subject: [JAVA3D] Geometry Types > >Date: Mon, 22 Apr 2002 10:02:07 +0800 > > > >Hi, > > > >I was wondering if anybody could point me at a good (detailed) > >discussion of the advantages and disadvantages of the various geometry > >array types. I would like info on things such as the relative > >performance and memory usage of indexed versus non index, triangle fan > >vs triangle strip etc. > > > >I have done some searching and looked in a few books but can't find a > >good summary of these issues. A good tutorial on creating geometry with > >all the various array types would be great too. All the tutes I have > >found have been focused on the complete novice and have only covered one > >simple type. > > > >Cheers, > > > >Brad > > > > > >----------------------------------------------------------------- > ----------- > >This Email may contain confidential and/or privileged information and is > >intended solely for the addressee(s) named. If you have received this > >information in error, or are advised that you have been posted this Email > >by > >accident, please notify the sender by return Email, do not > redistribute it, > >delete the Email and keep no copies. > >----------------------------------------------------------------- > ----------- > > > >================================================================= > ========== > >To unsubscribe, send email to [EMAIL PROTECTED] and include > in the body > >of the message "signoff JAVA3D-INTEREST". For general help, > send email to > >[EMAIL PROTECTED] and include in the body of the message "help". > > > > > ------------------------ > > Chris Forrester > > http://www.geocities.com/Psionic81 > > > _________________________________________________________________ > MSN Photos is the easiest way to share and print your photos: > http://photos.msn.com/support/worldwide.aspx > > ================================================================== > ========= > To unsubscribe, send email to [EMAIL PROTECTED] and include > in the body > of the message "signoff JAVA3D-INTEREST". For general help, send email to > [EMAIL PROTECTED] and include in the body of the message "help". > =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".