Aside from flashy graphics, there tend not to be very many "catchy takeaways" in the world of computer science that interest outsiders. Learning to program 3D graphics can sometimes be a complete mind binder for aspiring programmers while they learn to master not only their chosen language but the mathematics behind the 3D principles. While many tools and libraries today have begun to hide that complexity, a project by Peter Rakos featured in Gamasutra demonstrates a 3D graphics engine using Microsoft Excel. What is especially intriguing about his approach is that using Excel’s spreadsheet layout allows a programmer to watch the variables change in real-time.
Similarly tagged OmniNerd content:
- Undocumented API Reverse Engineering Accelerates Firefox 3, by VnutZ almost 2 years ago
- Google Contributes to WINE, by VnutZ almost 2 years ago
- How to Create a REST API in Rails 2.0, by dhinchcliffe about 2 years ago
- A Cloudy Future for Ruby on Rails, by VnutZ about 2 years ago



a current event
article
by
Print Friendly
Write an Article
Suhweeet..... by milhous :: NR5 :: Show
This is truly an Omninerd masterpiece in my opinion….
I really enjoyed reading the blogger comments at the Gamasutra link, such as:
>Brian Embleton 6 Mar 2008 at 2:10 pm PST
>Wow. This is what happens when VBA programmers have free time? Great. I hate to break it to you, but Excel performs every calculation in sequence. I don’t suppose you realize that modern graphics cards perform matrix operations in basically a single cycle whereas Excel probably uses something along the lines of a few thousand in your worksheet cycle? Yeah, when you get Excel to perform a few billion pixel renders per second or start supporting Shaders 2.0, you let us know, m’kay?
Or the YouTube video from 2004.
Excellent and Clever Teaching Tool by gnifyus :: NR7 :: Show
This is by far the nerdiest thing I’ve ever seen done with a spreadsheet because it uses the capabilities of the software in a way probably not envisioned in its creation. However, it’s definitely only something that is meant to be an exercise and demonstration in how basic 3D rotation ‘works’ in graphics software and games by showing the math involved in each rotation axis. In the OGAL_demo.xls if you ‘step through’ the VB macro, you can watch the triangles; 2 per side; as all 3D flat surfaces have, position themselves (almost painfully) at each iteration of the program loop.
Now imagine a curved surface made up of several hundred triangles where not only the position of each triangle point needs to be calculated, but also each normal vector for each and every triangle for use in rendering the graduated shading effects we’ve come to know and love in modern 3D graphics. Several hundred triangles on a curved surface is fairly low resolution these days, by the way. Then there’s texturing.
Despite these limits, this is a great teaching tool showing the basics of 3D graphics rotation, and gives an appreciation for the math and calculating power needed in today’s graphic software and video cards.