66 Comments
- CTho, on 10/12/2007, -3/+42Well, I didn't write it for practical reasons - I was stuck in a computer lab doing some semester-long projects last year and wondered if it'd be possible. The other good result was the robots game: http://ctho.ath.cx/games/robots/ - I have more JS toys and games, but most of them aren't as cool (or addictive).
- steven401, on 10/12/2007, -1/+36Filled Polygons = Lag
- theratster, on 10/12/2007, -3/+20That's comparing apples to oranges. You can't compare the graphics processing ability of a hardware device (X-box) with a programming language.
- MrSarcasm, on 10/12/2007, -2/+17Really cool. Not really useful.
- InMSWeAntitrust, on 10/12/2007, -3/+14Hello home-based server.
Welcome to the Front P-404 Error.
:/ - onionizer, on 10/12/2007, -1/+11cool programming exercise. that's it.
by the way, filled polygons makes my computer really sad. - inactive, on 10/12/2007, -2/+10also, a much better javascript 3d demo
http://www.abrahamjoffe.com.au/ben/canvascape/ - abid786, on 10/12/2007, -2/+10lol @ internet explorer: "Internet explorer is missing some features, so they are emulated, and as a result the simulation is slower"
- antdude, on 10/12/2007, -1/+7Or http://duggmirror.com/programming/3d_graphics_in_JavaScript/ for those who block referrers.
- inactive, on 10/12/2007, -0/+5http://fooplot.com/ has a 3-d plotter written in javascript
- sprash, on 10/12/2007, -0/+4Also very nice (but slow) Javascript 3D Demo:
http://www.p01.org/releases/Demoscene/files/neja/neja.htm - CTho, on 10/12/2007, -1/+5@superpotential,
canvasscape is certainly cool, but it's a more limited engine. It's a raycaster like Wolfenstein 3d, so it's limited to at best faking height, and the non-textured version appears to work polygon-by-polygon rather than column-by-column, so it would only be able to handle strictly z-sortable scenes (so it wouldn't be able to do the mutually overlapping triangles).
The textured version of canvasscape appears to be a column-by-column raycaster, so it can handle fancier scenes, but it is still limited to levels that can be described fully as a 2-dimensional matrix when viewed from above.
What I implemented is a real z-buffer, so it can handle the mutually overlapping triangles, scenes with objects above other objects, etc.
Regarding server issues, I had apache limited to 25 threads... after I bumped it up to a few hundred it started working better. Some fellow Mozilla people volunteered to host my JS file, so that should improve responsiveness further. - thoand, on 10/12/2007, -1/+4here is some 3d for ya:
http://www.paperworld3d.com/demos/obstaclecourse/ObstacleCourse.html (Flash 9) - MrSunshine, on 10/12/2007, -0/+3Next up: oldschool cracktros with starfields and scrolling text. And then Glenz vectors.
- str3ama, on 10/12/2007, -4/+7awesome, just awesome
- ishmal, on 10/12/2007, -1/+4For 3d in Javascript, I think that this is a much more impressive demo. It maps 3d onto 2d and then renders the 2d with SVG (your browser needs to support this):
http://treebuilder.de/default.asp?file=206524.xml - FunkyWitDaSysTm, on 10/12/2007, -0/+33d in javascript isn't going to fly for widespread use. too proc inntensive. if they could shunt it directly to the gpu, then it could become more than a novelty.
cool idea, though. perhpas further dev will head in that direction. lord knows 3d on the web could be a very powerful tool. - ThirdPrize, on 10/12/2007, -2/+5So we won't be seeing Gears of War rewritten in JavaScript any time soon.
- mastag, on 10/12/2007, -0/+3It's really nice, but sooooooooooooo sloooooooooooooow...
- wstrucke, on 10/12/2007, -5/+7http://www.duggmirror.com
- hankyone, on 10/12/2007, -0/+2plus the mega cpu usage
- zephc, on 10/12/2007, -1/+3All I'm getting right now is a simulation of a polar bear in a snow storm.
But I'm guessing this uses the canvas tag
Here's a slick little example: http://www.abrahamjoffe.com.au/ben/canvascape/ (mirror http://www.abrahamjoffe.com.au.nyud.net:8080/ben/canvascape/ ) - GMorgan, on 10/12/2007, -1/+3More like never*. JavaScript sucks at what it is good at forget 3D. Just an interesting piece of coding more than anything.
*Web apps in general are doomed by the speed of light latency limit. The entire Web 2.0 movement is going to run into the 0-latency fallacy at some point. Unless of course you have so much bandwidth that you download and run the entire application locally beforehand but then what is the benefit over local apps. - iamp01, on 10/12/2007, -0/+2Thanks. No surprise that Neja feels a bit slow, it is in a completely different level than rendering some wireframe 3D objects or doing good old 2D raycasting. The 3D objects are actually raytraced in real time and feature *perspective correct texture mapping* and *gouraud shading*. Once you realize what you actually have before your eyes, it doesn't feel that slow.
- MudMan69, on 10/12/2007, -0/+2This is great! Now I've got something to make a several hundred dollar CPU/GPU investment look like crap!
- jrsims, on 10/12/2007, -0/+2It's a great accomplishment! Good work!
But for serious development, you're still better off with Flash or a Java applet. - Datrio, on 10/12/2007, -0/+2http://ajax3d.sourceforge.net/
This is one of the fastest implementations of 3D in JavaScript, along with Canvascape. - sharkbaitbobby, on 10/12/2007, -1/+3This is why I love being a geek. If I were to show this to any of my friends, they would just think "Oh wow. Lines." They just don't understand the whole idea of how hard it can be to make Flash-like things in Javascript. :/
- z00k, on 10/12/2007, -1/+2Kind of reminds me of Canvex and Canvascape...
http://canvex.lazyilluminati.com/
http://www.abrahamjoffe.com.au/ben/canvascape/ - aburad, on 10/12/2007, -1/+2An attempt at paint chat... also using "canvas" html element
http://www.cse.iitb.ac.in/~ajitb/canvas/paint_chat.php (use shared screen) - ROYALWITHCHEESE, on 10/12/2007, -1/+2lol. this cubes need more cpu than call of duty 2 :D
- DanAtkinson, on 10/12/2007, -0/+1thirdprize: Not really. Concept work in web development is seldom done in a standards lax browser such as IE. It's more often done in Opera, Firefox and Safari.
Nice try, but I'm afraid you'll be taking home the bronze. - chriswm, on 10/12/2007, -1/+2This is pretty cool. It's always fun to see people do things with web languages that you wouldn't normally expect.
- DMDBeezies, on 10/12/2007, -0/+1Cool gestalt shift: Rotate the TIE fighter on the X-axis. It's meant to flip backward, but you can see it rotate the other way as well. It helps to focus on a different part of the screen for a sec. Works similarly on the Y-axis.
- DanAtkinson, on 10/12/2007, -0/+1Hmm... Yes. I see where you're coming from.
No. Wait, I just realised something... You're an idiot, and I can't be seen to agree with idiots. I hate offending people, but you just can't make generalised and sweeping statements like that and not expect retribution for your almost-certain trolling.
How can you compare a games console to a programming language? The analogy 'apples and oranges' doesn't quite give your post enough justice. - ammyjonnes, on 10/12/2007, -0/+0I agree with your views . But what about having a qualitaive web site to attract net bees and generating revenues side by side.See I raise up this issue because yesterday I got a mail at my gmail Id from http://www.webdesigningcopmpany.net telling me about their company’s designing packages ,As I designed my basic web site from them earlier. Well they are offering discounts on mouthwatering optimized graphics solutions on flash designing packages.Is there any catch ? Is it just a marketing strategy or What you experts have opinions on it.?
- minibombmaker, on 10/12/2007, -1/+1my computer isnt loading the file or video
- CTho, on 10/12/2007, -2/+2Thanks :-)
- CTho, on 10/12/2007, -0/+0I have a raytracer too: http://ctho.ath.cx/toys/JSraytracer/raytrace.html
Yours is much more complete :-). One thing I would suggest, though, is using setInterval or setTimeout to only compute a few rays at a time so you don't hang the browser during render. - zephc, on 10/12/2007, -1/+1IE doesn't support the canvas tag directly, but http://excanvas.sourceforge.net/ adds support thru some runtime conversion to MS's own VML.
- r©ain, on 10/12/2007, -1/+1Javascript is crap for drawing and he'd have much greater success in Flash.
For feks sake, it can't even draw a fillled cube without killing the frame rates.
What good is 3D if you can only render outlines?
Nice that he spent the time to make something that was a challenge.
Not nice that it's utterly worthless in practical application.
If he'd done it in Flash, he might actually have something of use. - Snorglorf, on 10/12/2007, -0/+0www.runescape.com
- avatraxiom, on 10/12/2007, -2/+2Okay, we've split up the hosting for the page now, so it should actually be accessible. :-) (I'm hosting the JS on my 10Mbps uplink now, and just the HTML is being served from CTho's server.)
- archangelnz, on 10/12/2007, -1/+1How about a ray-tracer programmed in JavaScript?
http://labs.flog.co.nz/raytracer/
Probably the most useless thing ever made. But cool (at least I think so).
<self-promotion /> - bhavya01, on 10/12/2007, -1/+1Too Good...................Well Done.
I am freelancer & a web developer by profession.
mostly into Web Technology.
I have done this in applet but Java Script ...............never thought over.
Amazing - bronkobilly, on 10/12/2007, -4/+3Very cool
- oduska, on 10/12/2007, -1/+0I love his comment in his HTML source:
"Thanks to mkanat for hosting the JS while I'm being DoS'd by Digg" - jruderman, on 10/12/2007, -2/+1It works in Firefox, Safari, and Opera! Not all at the same speed, though.
- Halodude1489, on 10/12/2007, -3/+1I was expecting JOGL(java opengl) or LWGL rendering w/ javascript
- verifex, on 10/12/2007, -3/+1I'm so amazed, wow! OMG, wait did I actually submit this same damn web page 2 or 3 months ago? Why yes I did. And only 7 people dugg it. Stupid digg conspiracy!
-
Show 51 - 58 of 58 discussions



What is Digg?
The Digg Toolbar for Firefox lets you Digg, submit content, and keep track of Digg even when you're not on the Digg site. Download the official