nulldesign // lars gerckens » ND3D AS3 3D Engine

ND3D AS3 3D Engine

ND3D is a simple to use AS3 3D Engine. Aimed for speed and simplicity. Target use are small 3D effects and rapid 3D testing / prototyping. The compiled size of the engine is about 10k.

Download: ND3D V 0.1 | Project at GoogleCode | API Documentation (Beta): Launch

Features:

  • Interactive/clickable meshes
  • Wireframe rendering
  • Bitmap textures
  • Basic dynamic lighting
  • Additive blending for materials
  • Distance blur for meshes
  • 3D sprites
  • 3DS, ASE and MD2 mesh loader
  • Animated MD2 Meshes
  • Pixel & Linerenderer
  • Custom renderer
  • Apply flashfilters to meshes
  • Built in primitives (plane, cube, sphere, box, line3d, sprite3d)
  • Vertexcleaner, Normalsflipper

Teaser

Materials (Bitmap & Additive)

Additive Rendering (Meshes & 3D Sprites)

Blur & CustomRenderer

Dynamic Meshes & MeshExtrudeTest

ASE mesh loading and simple camera follower

46 Comments

  • 1. nulldesign - personal por&hellip  |  07. August 2008 at 12:30

    [...] I call it ND3D from now on ;). I will post additional infos, more examples and future developments here in my blog and on the project page. So [...]

  • 2. jexchen » Blog Arch&hellip  |  07. August 2008 at 17:11

    [...] http://www.nulldesign.de/nd3d-as3-3d-engine/ [...]

  • 3. FlashBookmarks  |  08. August 2008 at 17:08

    Very nice, looking forward to test it.

    Good luck…

  • 4. gordee  |  09. August 2008 at 15:46

    Wow!

    Some really nice stuff here!

    I love the additive bitmap & rendering!

    very pretty

  • 5. Rafael lima  |  11. August 2008 at 09:06

    OMG!
    Great job.

  • 6. Rafael-Lima.blog » &hellip  |  11. August 2008 at 09:23

    [...] http://www.nulldesign.de/nd3d-as3-3d-engine/ [...]

  • 7. nulldesign - personal por&hellip  |  12. August 2008 at 19:32

    [...] to play around with it or just take a look how I set up this and that, feel free to download the sources (yes, the 3D ribbon example is included). And I’m always interested in what you think about [...]

  • 8. Hebi Flash Blog » R&hellip  |  21. August 2008 at 22:46

    [...] – Une nouvelle librairie 3D : Nd3D De très bons exemples à voir et à tester par ici [...]

  • 9. ZeroSeven Labs » Bl&hellip  |  02. September 2008 at 10:27

    [...] nulldesign3d http://www.nulldesign.de http://www.nulldesign.de/nd3d-as3-3d-engine/ code.google.com/p/nd3d/downloads/list [...]

  • 10. ND3D is Heart Healthy | P&hellip  |  21. October 2008 at 00:13

    [...] my usual weapon of choice, Papervision3D, might not be the best choice. That’s why I chose ND3D, that lightweight 3D engine from nulldesign.  ND3D provides a great base for 3D projects. Since [...]

  • 11. batchass  |  24. October 2008 at 06:50

    Good stuff!
    Is it possible to map a jpg asset around a cylinder?
    Thanks Lars

  • 12. Evan  |  24. October 2008 at 19:25

    Excellent work Lars. A very attractive engine for its efficiency and light weight. Recently I hoped to work with the 3DS format and SleepyDesign encouraged me to mod a 3DS parser to get it to go with ND3D. So I got it to go and you can read about it here:

    http://www.magicpictures.ca/blog/35-flash.html

    p.s. I really love your ribbon example

  • 13. batchass  |  28. October 2008 at 12:00

    I have used your library on my webSite : ribbon audio visuals in my song player for a start (I am new to 3d!)

  • 14. littleman8080  |  03. November 2008 at 18:38

    Is it possible to select 3D items, in order to interact with them?…

    I.e. to create a cube, and by rolling over, rolling out and clicking on it, by checking a depth-matrix, to get the ROLL_OVER, ROLL_OUT, MOUSE_OVER, MOUSE_OUT, and CLICK events.

    Also can you place 2D objects-MovieClips in different depths? (I.e. a 3D image (vector or bitmap or textfield) in frond of every 3D object, or in certain depth in the space, without loosing quality).

    If you can do that (or anyone do it first!) then probably you will be the reason for moving the current web-design to 3D web.. :D

  • 15. Babatunde Adeyemi  |  05. November 2008 at 12:47

    Very beautiful looking examples. Will definitely give the engine a test. Thanks

  • 16. lars  |  10. November 2008 at 16:08

    I will add interactive features (over, out, click, etc.) for meshed pretty soon, please be patient ;)

  • 17. Philippe  |  21. December 2008 at 15:37

    Nice tiny engine – I love that!

    I added (efficient) alpha transparency to bitmap textures, are you interested in contributions?

  • 18. Hidden Place Blog »&hellip  |  26. December 2008 at 20:21

    [...] http://www.nulldesign.de/projects/nd3d-as3-3d-engine/ [...]

  • 19. Juga Paazmaya  |  09. February 2009 at 11:01

    Nice library.
    I would like to contribute an Flash player 10 version, as it seems most of the Arrays could be converted to Vectors.
    How is to do?

  • 20. CP+B Emerging Technology &hellip  |  10. March 2009 at 17:08

    [...] http://www.nulldesign.de/projects/nd3d-as3-3d-engine/ [...]

  • 21. 4peaks  |  25. March 2009 at 11:57

    Great engine! Is there a forum or a google group related to nd3D? When i try the code below to align planes to a sphere, the planes are facing to the outside, while nearly the same code in PV3D is working out fine (center is an Object3D).
    for (var i = 1; i < sphere.vertexList.length; i++)
    {
    plane = new Plane(10,10,1,1,_cmat);
    plane.xPos = sphere.vertexList[i].x;
    plane.yPos = sphere.vertexList[i].y;
    plane.zPos = sphere.vertexList[i].z;
    var pVec:Vertex = new Vertex(plane.xPos,plane.yPos,plane.zPos);
    pVec.normalize();
    center.xPos = pVec.x;
    center.yPos = pVec.y;
    center.zPos = pVec.z;
    plane.lookAtTarget(center);
    renderList.push(plane);
    }

  • 22. Vibo  |  09. April 2009 at 05:08

    beautiful!!!

  • 23. lars  |  09. April 2009 at 09:03

    Just rotate your planes for now: plane.rotateVerticesY(Object3D.deg2rad(90)); The lookAt function needs a bit of polishing ;)

  • 24. aitom  |  23. April 2009 at 08:28

    goooooooooooooooooooooooooooood work!

  • 25. zszen  |  22. May 2009 at 07:51

    very interesting

  • 26. antonio brandao  |  14. July 2009 at 20:07

    kick ass

  • 27. dieBuster » Blog Ar&hellip  |  23. July 2009 at 05:50

    [...] http://www.nulldesign.de/projects/nd3d-as3-3d-engine/ [...]

  • 28. craigk  |  17. August 2009 at 09:19

    Hi,

    excellent work, is there a way to add a textfield to the Dynamic Meshes & MeshExtrudeTest above to get a kind of ticker tape news feed?

    Thanks mate

  • 29. Georg Graf  |  18. September 2009 at 12:39

    Hi there,
    i think your Mouse3DEvent is working the wrong way. It gets always the element, thats behing the to seen element. (Did this as an example with many planes that are ordered like an cover flow).

    If fixed this in the Renderer.as the following way:
    I duplicated the for-loop, and reversed it and put there the checkMouse detection.
    This means, i have this two for-loops:

    for(faceIndex = 0;faceIndex = 0; faceIndex–)
    which includes only the detection.

    then it works.
    Maybe you can fix this in your next relase.
    Greets.

  • 30. Georg Graf  |  18. September 2009 at 12:40

    Oups, sorry: ment this two loops:
    for(faceIndex = 0;faceIndex = 0; faceIndex–)

  • 31. Georg Graf  |  18. September 2009 at 12:40

    Okay, seems that this blog kills my two posted for loops ..

  • 32. Georg Graf  |  18. September 2009 at 12:48

    Sorry, for all this spam:
    theres an easier way to fix this:
    Just insert this lines:

    curFace = faceList[faceList.length - 1 - faceIndex];
    curMaterial = curFace.material;

    before the detection:

    // check for mouse interaction
    if(!currentHighlightedFace && (curMaterial.isInteractive || curFace.meshRef.isInteractive)){

    at line 377 in Renderer.as

    Greets

  • 33. AS3 Quick Guides – &hellip  |  11. October 2009 at 21:09

    [...] – http://www.nulldesign.de/projects/nd3d-as3-3d-engine/ With a compiled size of around 10k, this engine is aimed at speed and simplicity in a similar way [...]

  • 34. zszen  |  26. October 2009 at 13:01

    I found that, the nd3d engine can only create single layer. I can’t find out any container of 3d object.

  • 35. Michax  |  28. October 2009 at 13:13

    What kind of license is over this candy ? I just love performance and some neat features. Keep going. I hope you will made from this some good incomes :) Sincerly, good luck!

    If i can suggest something. It will be greate if you could add some simple pivot setup function. For everybody who have problem with for example rotating around one of edge, you could use now translateVertices function, to move center of object to any place you want.

    Anyhow, good work !

  • 36. HBrO  |  05. November 2009 at 15:22

    What an excellent 3d engine.
    But could you supply the newest version for us?I downloaded your engine in google code.I cannot find some classes such as BitmapMaterial,SWFMaterial,and so on.
    Thanks a lot!

  • 37. HBrO  |  05. November 2009 at 16:11

    I found the code in the google code.
    Thanks for your attention again.
    Your 3d engine gets the best balance of effects and capability in all of the 3d engines I found.Give you a praise once more.

  • 38. jarret gabel  |  12. January 2010 at 15:29

    awesome work. i needed something lightweight for a banner and this was frackin awesome. thanks again!

  • 39. Open Source 3D Engines | &hellip  |  19. January 2010 at 13:43

    [...] – http://www.nulldesign.de/projects/nd3d-as3-3d-engine/ El engine más rápido y simple de todos similar a los 2 anteriores. Dispone de una librería que [...]

  • 40. DrPunchman  |  04. March 2010 at 01:35

    Firstly, I am really digging ND3D,
    Looking for a way to bring in an array of mesh data to build custom primitives: [ [ax,ay,az],[bx,by,bz],[cx,cy,cz],[dx,dy,dz]… I’m finding it a bit tougher than planned.

  • 41. DrPunchman  |  04. March 2010 at 06:31

    Awesome, here is how to make your own primitives in ND3D.

    http://yo.drpunchman.com/2010/03/03/nd3d-make-your-own-primitives/

  • 42. [Flash 3] - AS3 in 3D - F&hellip  |  19. April 2010 at 21:12

    [...] Papervision3D ist zwar interessant, aber so richtig aus kenne ich mich nicht xD Ich habe hier was nettes entdeckt, aber diese Vorlagen (zum ausprobieren) werden nicht von meinem Programm [...]

  • 43. Deril  |  25. April 2010 at 22:09

    Is this project dead?

    Google code is not updated since.. 2009 august… :(

  • 44. lars  |  01. May 2010 at 20:40

    I wouldn’t call it dead, it has just all the features it needs and works ;). Are you missing something?

  • 45. 3D Ninja Test 2 – F&hellip  |  08. June 2010 at 16:52

    [...] what could be improved. Here is the result – I dropped Away3D and decided to run a test with ND3D instead. It’s a much more light-weight 3D library, and doesn’t include features like [...]

  • 46. Actionscript Animation Fr&hellip  |  05. July 2010 at 19:43

    [...] Cast3D: http://www.cast3d.org/ Five3D: http://five3d.mathieu-badimon.com/ nd3D: http://www.nulldesign.de/projects/nd3d-as3-3d-engine/ Papervision3D: http://blog.papervision3d.org/ [...]

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

Trackback this post  |  Subscribe to the comments via RSS Feed

About

  • nulldesign is the company and showcase site of freelance developer Lars Gerckens who is based in Hamburg, Germany. I'm available for freelance work with focus on Flex, Flash and AIR development. I like to create dynamic user interfaces, cutting edge web experiences and innovative ways to visualize data.

    This site showcases some of my personal work and projects as well as an selection of commercial projects.

    If you are interested in my work or you have any questions, don't hesitate to drop me a line:

  • Profiles: Xing | Linkedin
  • Mail: lars [at] nulldesign [dot] de

Categories

Search