What is OmniNerd?

Welcome! OmniNerd's content is generated by you, the reader. Through voting and moderation we strive to highlight the nerdiest of what's around and provide content that's a little more thought provoking than other sites.

Submit New Content

Voting Booth

Ever lie?

16 votes, 1 comment
7
Nerd-Its
+ -

3D Graphics Engine Demonstrated in Excel

Newspaper current event by VnutZ on 11 March 2008, tagged as programming and computing

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.

Star This to Save in Your Profile Favorite
Thread parent sort order:
Highest Voted : Lowest Voted : Oldest : Newest
Thread verbosity:
Expand All : Minimize Replies to Comments
1 Nerd-It - +
Suhweeet..... by milhous :: NR5

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.

3 Nerd-Its - +
Excellent and Clever Teaching Tool by gnifyus :: NR7

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.