tags:

views:

625

answers:

13

I have 3D CAD model that I want to show on a web page. I'd like to show it in a form like a <img> tag (e.g. inline with everything else rather than as a separate page) and I want the visitor to be able to rotate the model to view it from different perspectives.

What options do I have?

Things I'm thinking of/looking at

  • VRML
  • 3DXML
  • flash
  • PDF has something that works but it doesn't embed like I want
  • 3DMLW (Seems very slow)
  • Universal 3D (supported by Adobe Reader)


Edit: The model is not very complex so perf is not a major concern.

+2  A: 

I am not sure how good flash is at 3d support for things like CAD app file formats. IIRC, flash cannot do hardware accelerated 3D graphics. On the other hand, a Java applet can (with the right library).

tkotitan
I'd rather stick with javascript of flash (no rational reason, just my opinion)
BCS
+1  A: 

You could also look at the <canvas> tag, which is being implemented by more browsers. There is probably already a JavaScript library for model viewing.

greyfade
+1  A: 

Consider QuickTime VR. It allows for much of what you ask and since you have the original, you can create a fairly accurate model.

Paulo
+4  A: 

Papervison3D is a 3D flash library which might be worth a look. I haven't had the opportunity to play with it myself, but some of the demos look good.

Pete Kirkham
+1  A: 

VRML might be a good choice. There's a good client available from Parallel Graphics that I've used for quite a while now. I've got some VRML models on my website (though the content is quite trivial!). The models will load quite quickly, especially if they're not that large. There are several navigation modes available and you can lock it to "examine" which lets the user rotate the model (though in fact it's the camera that's moving around the object).

You will need to find a program that can write VRML files, though any decent modeller will have that option.

ChrisF
A: 

Shockwave with some scripting code for the user being able to rotate the model.

Jim Buck
+2  A: 

Unity: http://unity3d.com

NeARAZ
Seems to be targeted at games (so it would be a bit heavier) and needs a uncommon plug-in.
BCS
+1  A: 

Have a look at http://labs.autodesk.com/technologies/freewheel/

Project FreeWheel can show 2D and 3D models made in Autocad, Invertor or Revit. I think it uses DWF or something.

At this point it's not possible to host FreeWheel on your own server, but you can upload a DWF to Autodesk and show your model in an IFrame.

Sorskoot
Aside from the no host bit (And in reading I think that has or will change) this is spot on. Vote++ If I can find how to host it you'll get the checkmark
BCS
I think you have to place the DWF on your own server and pass it to http://freewheel.autodesk.com/dwf.aspx?path=??? thru an IFrame. Check http://freewheel.autodesk.com/developers.aspx. There's an explanation here about how to configure.
Sorskoot
+3  A: 

Chrome Experiments has released several 3D Javascript applications. Here's an example: Colors Cube

Jacob
OMG that is just sweet!!
BCS
+2  A: 

Papervision and Unity3D are the best choices for the pipeline in and quick loading. Flash is installed on most machined but you need to export as COLLADA format and there is a limit of 2000 polys before it bogs down.

Unity 3D has a great pipeline and is free for the indie now. It supports very high poly counts and the plugin installs without a browser restart and is around 4MB (Flash and Sliverlight are both over 4MB now).

Another option might be Torque 3D but that is also very game based. I think your best option is Unity 3D. You can export as FBX and have it on the web in about 5 minutes.

In the future you could use O3D from Google or WebGL but it is not ready for primetime. The only capable simple pipeline to get 3d on the web currently with decent poly counts is Unity3D. It works on PC and Mac just like Flash and Silverlight.

Ryan Christensen
+1  A: 

Seems like canvas tag based javascript drawing apis are picking up. See this recently released canvas 3d js library, even though it works only in FF 3.5: http://www.c3dl.org/

Joy Dutta
A: 

Check 3DPaintBrush - an end user product.

Zoso
A: 

Here's one javascript 3D rendering engine pre3d

If you haven't checked it out MrDoob has a library for 3D graphics and modeling

homepage: mrdoob.com & the git repo for three.js

Mark Essel