Canvas 3d JS Library

WebGL made easy!
  • rss
  • What is C3DL?
  • Download
  • Tutorials
    • Tutorial #1: WebGL Browsers
    • Tutorial #2: A simple scene
    • Tutorial #3: Callback
    • Tutorial #4: Models
    • Tutorial #5: Light effects
    • Tutorial #6: Picking
  • Development News
  • Documentation
  • Community
  • Resources
  • Contact
  • About
I’ve updated the wiki to reflect the work I have committed. The Vector, Matrix, and Quaternion classes are done. I have still to test them within Canvas3D, but that wont happen until the Scene class is finished. Also, I just finished writing up the Free Camera Class. But, like the other classes, I cannot test it until the Scene class is finished and we actually get some rendering happening in Canvas3D. If you all get a chance, I’d like some feedback on the API so far. Wiki Link. It would be nice if our project had a logo. Something that would describe what Canvas3D is. I don’t really have any good ideas.. but if we do get an idea (say from someone reading this post, hint hint) we could probably ask the people from http://phug.ca/ to make it a reality. What exactly is Canvas3D? Hm.. I’m only implementing it.. hard concept to describe. Sort of like ‘what is Flash?’. It’s a tool for web developers to easily make stunning websites.. no, boring. It’s the next generation.. no, not again. It’s the web as webmasters want it and users fear.. no, that was APNG… I don’t know, someone’s got to have a good idea. I’ve tested the newly Modified extension on my desktop, and it works. The desktop is an older machine, running a Radeon 9800. Unfortunately, All my testing will have to be done on this machine because for some reason, the extension does not run on my laptop, which sports a ATI Mobility Radeon X1600. Regardless, the fix came at a good time, because I finished writing the Matrix and Vector classes, and are ready to test a camera class. Although, the only thing I can really test is the simple demos that Vlad has posted, the model viewer demo seems to not work and niether is the KMZ viewer. Bugs maybe? I have set up a wiki page detail the capabilities of the new “Canvas 3D API” (self dubbed, unofficial name). Here is the link: http://zenit.senecac.on.ca/wiki/index.php/Canvas3D_JS_Library See that square? It’s not white, is it? :) simple gl 1.1 working That means (however unlikely!) that I already fixed at least part of the Canvas3D not working on ATI cards problem. And the problem was in the wglChoosePixelFormatARB() call I posted yesterday :) That 4th parameter (0) is called nMaxFormats and described as ‘Specifies the maximum number of pixel formats to be returned’. I am surprised it worked on any system. The nVidia OpenGL drivers are probably more forgiving of mistakes like this. Bug 411475 filed and patch is in there if you want to take a look. I don’t know what the policies are for checking in stuff that doesn’t affect the Firefox distribution. We’ll see, maybe it will get checked in. Update: I’ve repackaged the extension and put it into subversion, but I figured maybe someone outside the project wants to give it a try – so here it is. Note that only the Windows version is updated in this one, the Mac and Linux versions are still the old ones. If you find that any of it doesn’t work, please report bugs somehow (send me mail, for example). And how both differ from Vista. The short answer is that the drivers for a Radeon 9250 on both XP and Slackware are equally good, and equally better than on Vista. Long answer: One of the first things I did for the Canvas3D project was to try it out on Slackware, which used to be my main Mozilla development environment. And it failed at this part: if (!wglChoosePixelFormatARB(mGlewDC, attribs, fattribs, 0, NULL, &numFormats) || numFormats == 0) Then I tried it in a mostly-working Windows Vista build environment, and it failed a few lines earlier: if (!WGLEW_ARB_pixel_format || !WGLEW_ARB_pbuffer) Seing how Linux support is much less important for the project at this point, I forgot about Linux and went on working with Vista. That’s when I figured out that ARB_pixel_format and ARB_pbuffer are not supported on that platform. I assumed it’s because my card is obsolete. Turns out it wasn’t my card’s fault, it was the fault of the Vista drivers for my card. Cause now that I got fed up with Vista bugs and set up a Mozilla built environment on XP, it turns out on XP I have the same problem I’ve seen on Linux weeks ago. Another interesting note is that on XP my Radeon 9250 supports all of OpenGL 1.0, 1.2, 1.3; and almost all of 1.4 and 1.5. On Vista it supports all of 1.0 and none of anything else. We’ll see if the situation changes when I get the new cards. Anyway, I’m back to where I started, but it’s not quite as bad as it sounds, since I gained quite bit of knowledge on the way.

Videos

Demos

  • Asteroids-3D
  • Particle Systems Demo
  • Cross-Browser Orbiter
  • Mocap Demo With Spheres
  • Google Maps-3D

C3DL Development News

C3DL 2.0-WebGL and beyond

It has been a long time coming but we have now updated all the core features of C3DL to use WebGL. You can dowload our 2.0 release here. We have also updated all our demos to use WebGL. Our tutorials have all been updated (tutorial 5 and 6 needs a better example [...]

Preliminary WebGL RTS Game

Cathy asked me to make a cool demo using our library. After thinking about, I started getting many ideas, but creating a preliminary real-time strategy game made the most sense. It not only demonstrates a lot of C3DL features such as model loading, transformations, lighting, shaders, picking, cameras, textures, etc, but since animation is kept [...]

Tutorials

  • Tutorial #1: WebGL Browsers
  • Tutorial #2: A simple scene
  • Tutorial #3: Callback
  • Tutorial #4: Models
  • Tutorial #5: Light effects
  • Tutorial #6: Picking

Documentation

Archives

Archives

C3DL Development News

Recent Comments

  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • July 2009
  • June 2009
  • May 2009
  • April 2009
  • March 2009
  • February 2009
  • January 2009
  • December 2008
  • November 2008
  • October 2008
  • September 2008
  • August 2008
  • July 2008
  • June 2008
  • May 2008
  • April 2008
  • March 2008
  • February 2008
  • January 2008
  • December 2007
  • C3DL 2.0-WebGL and beyond
  • Preliminary WebGL RTS Game
  • Asteroids in 3D… and a bit of 2D
  • Another demo updated
  • Simplifying the Interface
  • Updating Demos
  • Cross-browser progress update
  • let there be vars
  • Creating tester pages
  • Problems with porting
  • keep it coming ve... - gero3
  • congrats on a great... - Paul Brunt
  • c++ not c# actually... - Cathy Leung
  • It's unbelievable ho... - Paul
  • Wow, now that's a co... - Andor Salga
  • Hi, is the project... - Sascha Hendel
  • I agree with both co... - Cathy Leung
  • Your library is real... - Sascha Hendel
  • Hi, as a more gener... - Sascha Hendel
  • Thanks. I just pull... - peter



Canvas 3d JS Library

©2007- 2009 Canvas 3d JS Library

Disclaimer: This website is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 2.5 Canada License.
The Canvas 3d JS Library and Demos found on this website are licenced under the MIT License

Creative Commons License