×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Using Excel As a 3D Graphics Engine

kdawson posted more than 6 years ago | from the right-tool-for-the-job dept.

Games 292

simoniker writes "Obviously whimsical but slightly mind-blowing — an Eastern European coder has published video and the Excel tables to get full 3D wireframe running in Microsoft Excel. He even has solid polygonal graphics running. This isn't an Easter Egg by the Excel creators. Rather, he's using formulas to output the graphics, using two different methods, and showing all the variables on-screen in real time as the 3D is created."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

292 comments

One can only ask... (2, Funny)

e4g4 (533831) | more than 6 years ago | (#22665194)

...why?

Re:One can only ask... (3, Funny)

Anonymous Coward | more than 6 years ago | (#22665210)

Somebody has to.

-RetroMud Grandpa

Re:One can only ask... (5, Funny)

49152 (690909) | more than 6 years ago | (#22665224)

You sir are not a true geek ;-)

He did it because he could, all other reasons would be redundant.

A true geek... (2)

Anonymous Coward | more than 6 years ago | (#22665588)

...would have found a way to offload the excel calculations onto a GPU.

Re:A true geek... (3, Interesting)

Anonymous Coward | more than 6 years ago | (#22665710)

Relatively easy. Just create a vba and load some com components...

Its kinda fun to create a button in word which executes a vba app that creates an excel chart based on data in an access database and embeds it in a cad drawing then prints that to pdf and sends an email through outlook. Makes peoples heads explode even though it is very basic programming.

Re:One can only ask... (5, Insightful)

mattgoldey (753976) | more than 6 years ago | (#22665248)

You people that ask why on posts like this need to turn in your geek card. Geeks do this kind of stuff because we can. We like a challenge. We like to explore technology to its fullest to find out just how much it can do -- despite the fact that there aren't any practical applications for whatever we come up with. It's all about exploration and learning (and a little bit about showing off what we can do).

Re:One can only ask... (4, Funny)

garett_spencley (193892) | more than 6 years ago | (#22665432)

pfft... speak for yourself. I do it to get laid.

Re:One can only ask... (5, Funny)

longacre (1090157) | more than 6 years ago | (#22665496)

What's the Excel formula for getting laid?

Re:One can only ask... (5, Funny)

MobileTatsu-NJG (946591) | more than 6 years ago | (#22665938)

"What's the Excel formula for getting laid?"

I can give you the CSV version:

Income, Car, Looks, Star Wars Fan, Flosses, Dress Quality, Glasses, Muscles, Fat
$250k, Porsche, Good, 0, 1, >0.8, 0, 1, 0

Re:One can only ask... (1)

kailoran (887304) | more than 6 years ago | (#22665958)

What's the Excel formula for getting laid?
Most likely GetYearlyIncome or something like that.

Re:One can only ask... (1)

sm62704 (957197) | more than 6 years ago | (#22666052)

What's the Excel formula for getting laid?

=6X7. At least that's the computation Deep Thought came up with.

Re:One can only ask... (-1, Flamebait)

gstoddart (321705) | more than 6 years ago | (#22665522)

You people that ask why on posts like this need to turn in your geek card.

I think the geek to non-geek ratio has been falling over the last bunch of years.

Lots of people seem to be constantly asking why someone would bother to do such a thing. Nowadays, we get lots of fanboi's, creationists, and republicans.

More and more, I see interesting posts from doctors and sociologists (!), with an ever increasing troll/knee-jerk-moron contingent who shout down dissenting opinions.

Cheers

Re:One can only ask... (5, Funny)

alta (1263) | more than 6 years ago | (#22665694)

Hey, I'm a republican and a creationist. No one is going to convience me that this story was not worth of being posted or that I should turn in my card. Heck with an ID as low as mine, I doubt too many people would ask me to :)

Re:One can only ask... (1)

Ucklak (755284) | more than 6 years ago | (#22665972)

I thought geeks bit the heads off live chickens and nerds pushed technology to to the limit.

Re:One can only ask... (4, Funny)

sm62704 (957197) | more than 6 years ago | (#22665996)

You people that ask why on posts like this need to turn in your geek card. Geeks do this kind of stuff because we can.

No, more like "because we HAVE TO. We can't help ourselves.

circa 1990 MS Works was a Turing Machine (5, Funny)

davidwr (791652) | more than 6 years ago | (#22665308)

I've long forgotten how I did it, but I used the database application in MS-Works for Windows 3.0 as Turing Machine.

Why? If you have to ask, get off Slashdot.

Re:One can only ask... (0)

Anonymous Coward | more than 6 years ago | (#22665350)

...does it run on Linux?

Re:One can only ask... (1)

alta (1263) | more than 6 years ago | (#22665428)

No, the correct questions is...

Where's the download link?

Re:One can only ask... (1)

keithius (804090) | more than 6 years ago | (#22665992)

No, no, the correct responses are:

Yeah, but can it run Linux?
Imagine a Beowulf cluster of those!
I, for one, welcome our Excel-based 3D Graphics overlords... etc... etc... etc...

Re:One can only ask... (5, Interesting)

Anonymous Coward | more than 6 years ago | (#22665982)

The central thesis appears towards the end of the article. The idea is that something like Excel represents a different coding paradigm that hasn't been seriously considered, where you basically lay out what your stuff is supposed to do, i.e. declare it instead of coding it sequentially. By doing this, you increase comprehension of what's going on, b/c it's easier to visualize the algorithm (at least for 3d manipulations) by viewing the tables, instead of trying to decipher a sequential piece of code. It's basically advocating using a declarative programming paradigm (like Prolog) for games, except using a comical venue to show it.

Tim Sweeney's POPL talk had some similar ideas too.

frickin' slashdot (1)

Libertarian001 (453712) | more than 6 years ago | (#22665208)

The one time I want to read the article and the site is already woozy. I expect it to be down for the count in 3 - 2 - ...

Re:frickin' slashdot (1)

TheRedSeven (1234758) | more than 6 years ago | (#22665280)

I expect it to be down for the count in 3 - 2 - ...
As I read this, I got the timeout error on their server. You need to go into fortunetelling.

/obvious

WAY TOO MUCH FREE TIME (0, Flamebait)

mlwmohawk (801821) | more than 6 years ago | (#22665228)

I can't help but think that anyone smart enough to do something like that shouldn't.

The source of progress (4, Insightful)

dazedNconfuzed (154242) | more than 6 years ago | (#22665518)

Strange how much human accomplishment and progress comes from contemplation of the irrelevant. - Scott Kim.

Re:WAY TOO MUCH FREE TIME (1)

Locutus (9039) | more than 6 years ago | (#22665524)

I can't help but think that anyone smart enough to do something like that shouldn't.
exactly my thought. Does this guy not know another tool besides a spreadsheet? Maybe he should try learning Python or another scripting language before he wastes any more time on something like....making MS Word do realtime ascii art.

LoB

Re:WAY TOO MUCH FREE TIME (2, Insightful)

sm62704 (957197) | more than 6 years ago | (#22665688)

There's no such thing as "too much free time". My seventy six year old retired dad says he doesn't know how he ever found the time to work!

I hope you are not serious (4, Insightful)

Fanro (130986) | more than 6 years ago | (#22665706)

I might be missing the joke and taking this way to seriously, but I really cannot stand that attitude. I guess it's easy to push my buttons.

In wich deranged moral system is there some sort of duty that forces smart guys to spend all their available time on things useful for society?

(And who decides what is beneficial for society anyway?)

If his hoby was playing chess or collecting stamps or climbing mountains, would you say that he should spend his time on more useful things? If he could afford to spend a lot of time on those hobbies, why shouldn't he?

So why is it that every time someone does something cool and strange and for all purposes harmless, someone else always has to say "THIS GUY HAS WAY TOO MUCH FREE TIME"? Someone who, I might add, spends his time on slashdot?

Envy?
(I know I am envious, I wish I had the time and the determination to do a lot of these things. Considering that I am wasting time on slasdot, determination is what I am lacking more of)

Re:I hope you are not serious (0, Troll)

mlwmohawk (801821) | more than 6 years ago | (#22665940)

I might be missing the joke and taking this way to seriously

Yes, you are.

On a serious note, let me ask, to what end is this pursuit? Of what practical use is it? Oh, sure, you can do what ever you want in life, but the whole excel thing sounds like something to do when you are bored.

I'm in my 40s now, and time is so precious and I just see something like this as a sad waste. Here's a guy who is obviously intelligent but he devoted an amount of his finite time on planet earth doing something basically useless to himself and others. Were his energies properly "self-directed" think what he could have done for himself!! Think about the lost potential in the form of dedication, intelligence, and time!!!

Wow (0)

Anonymous Coward | more than 6 years ago | (#22665232)

What a complete waste of time. Like, someone reading this comment.

this goes back a long time (1)

OrochimaruVoldemort (1248060) | more than 6 years ago | (#22665236)

not that it isn't interesting, but that has been done since the first insomniac games (among others). for developers, though, it will be useful in constructing programs.

This explains it (5, Funny)

Anonymous Coward | more than 6 years ago | (#22665240)

The DNF team has been waiting for the excel rounding errors to be fixed before release.

So let me get this straight... (1)

downix (84795) | more than 6 years ago | (#22665270)

I can't even get it to add up two cells into a third right half of the time, and this guy is doing stuff right out of Tron...

Re:So let me get this straight... (1)

snowraver1 (1052510) | more than 6 years ago | (#22665582)

You sir, should take another Excel cource. I have taken no less than 4, and I suspect many here have more then that. I think it would almost be harder to AVOID an excel course.

Re:So let me get this straight... (-1, Troll)

Anonymous Coward | more than 6 years ago | (#22665842)

Try taking English. Wow.

Hope he had fun at least (1, Insightful)

pembo13 (770295) | more than 6 years ago | (#22665278)

Because there was surely no productive results out of this. If he had used some open source (sorry) spreadsheet program at least he may have found and filed some bugs.

Re:Hope he had fun at least (1)

howdoesth (1132949) | more than 6 years ago | (#22666016)

Because there was surely no productive results out of this. If he had used some open source (sorry) spreadsheet program at least he may have found and filed some bugs.
If you can find bugs in open source spreadsheets with simple arithmetic and conditional formatting, it's no wonder Microsoft has the market tied up.

Obligatory Joke.. (5, Funny)

Matt Amato (2494) | more than 6 years ago | (#22665286)

Apparently he's using Excel as his web server too...

Re:Obligatory Joke.. (5, Funny)

Nom du Keyboard (633989) | more than 6 years ago | (#22665420)

When your only tool is a hammer, you must make the whole rest of the world look like a nail.

Re:Obligatory Joke.. (1, Funny)

lpangelrob (714473) | more than 6 years ago | (#22665714)

When it comes to Excel, I think the appropriate tool analogy is a Swiss army knife. Only instead of twenty different knives, Excel provides twenty different hammers.

Explains the flight simulator in Excel 97? (5, Interesting)

TheCycoONE (913189) | more than 6 years ago | (#22665288)

So that's it, Excel is actually a 3d programming environment. The Excel 97 flight simulator then was a demo. http://www.eeggs.com/items/718.html [eeggs.com]

Re:Explains the flight simulator in Excel 97? (1)

mu51c10rd (187182) | more than 6 years ago | (#22665328)

That was my first thought as well..."hasn't this been done already?" I recall wasting quite a bit of time playing the flight sim in Excel 97.

Re:Explains the flight simulator in Excel 97? (1)

insertwackynamehere (891357) | more than 6 years ago | (#22665352)

Now there's a throwback. I actually thought of that when I read the headline. Eegs.com was (is) such a cool site.

Re:Explains the flight simulator in Excel 97? (1)

TheRealMindChild (743925) | more than 6 years ago | (#22665856)

Actually, it is Visual Basic doing the legwork. It got a bad name, but it can call DLL functions just like the rest of em. This solution is unique in that it is actually using Excel function evaluation (Which is VB powered too) to do the calculations.

A cool trick, straight from the textbook (5, Insightful)

jandrese (485) | more than 6 years ago | (#22665290)

Back when I took graphics in college, it was made abundantly clear that all modern graphics are just large math problems solved in realtime. We did all sorts of work messing with transformation matrices and doing the math (sadly, since this was done by the CS department we did a lot less of the useful stuff and a lot more of the theoretical underpinnings that you don't technically need to know when actually programming something).

Anyway, the point is that Excel is reasonably well set up for doing the kind of math you need to do when making computer graphics and has vector output capabilities. It's a neat trick and something that would likely be useful in teaching the underpinnings (watching what happens as you tweak variables in a transformation matrix in realtime would have been very nice when I was taking my class).

Re:A cool trick, straight from the textbook (1)

Otter (3800) | more than 6 years ago | (#22665410)

Anyway, the point is that Excel is reasonably well set up for doing the kind of math you need to do when making computer graphics and has vector output capabilities.

The novelty here isn't the computation, it's the use of the spreadsheet grid as a display.

(At least, if I'm understanding correctly despite giving up after three molasses-slow pages. Since when does Gamasutra get Slashdotted?)

Re:A cool trick, straight from the textbook (0)

Anonymous Coward | more than 6 years ago | (#22665556)

it's the use of the spreadsheet grid as a display.

Most likely, they have some 3D polygons, transform it to shapes in a 2D plane, then graph the resulting lines using Excel's graphing.

Re:A cool trick, straight from the textbook (1)

SuiteSisterMary (123932) | more than 6 years ago | (#22665888)

One of the examples uses colored grid elements; the other uses an actual rasterization-type rendering system built into office.

If you wanted to get really fancy, you could probably have excel load DirectX objects one way or the other as well.

Re:A cool trick, straight from the textbook (2, Insightful)

Anonymous Coward | more than 6 years ago | (#22665836)

sadly, since this was done by the CS department we did a lot less of the useful stuff and a lot more of the theoretical underpinnings that you don't technically need to know when actually programming something

That would be because it's the computer science department, not the computer programming department.

Besides, the point isn't to teach you to write a graphics program -- you should be capable of learning that on your own. The point is to teach how to think about the problems, and especially to teach the background. If you're practiced in thinking about the problems in the right way, you'll be able to learn the implementation details on your own. If all you know is the implementation, you'll never produce anything except the cookbook recipes.

Of course, there are those who will figure out the theory on their own anyway, but they're likely to produce spectacular results regardless of the details of the course content.

I wish that when articles such as this get out of (1, Interesting)

davidsyes (765062) | more than 6 years ago | (#22665296)

the firehose that knowledgeable people offer up whether Star Office or OpenOffice.org can do similar feats. I realize that eventually SOMEone will figure out how to do it, but since this is not a time-critical article (no expiration date) it would be nice if Slash's submission engine had a "references/external interesting and relevant" sites/alternative products" field/array to encourage submitters to balance things out -- if references and alternatives are indeed available. Otherwise, we might not as quickly inform others that OO.o and SO can or cannot do these things. Just my opinion.

Programming Languages for 3d simulation and games - Martin Baker
http://www.euclideanspace.com/software/language/ [euclideanspace.com]

xkcd View topic - Dinosaur PC fun
http://forums.xkcd.com/viewtopic.php?f=36&t=11550&start=40 [xkcd.com]

I mean, REALLY, (to be honest about my position) why bolster Excel any more than necessary when Open Source and Linux/FreeBSD/*nix platforms are slowed mainly *because* ms office is so dominant? Any and every chance to level the playing field should be seized, exploited, and disseminated.

Re:I wish that when articles such as this get out (1)

$random_var (919061) | more than 6 years ago | (#22665492)

Wow, sensitive much? (I speak as an avid OpenOffice user who refers new people to it on a regular basis.) The fact is, this project was done in Excel and will run in Excel. Do you think that the post about this project should be "Using [A Spreadsheet Program] As A 3D Graphics Engine"? The links you post do not refer to similar projects created in OpenOffice or StarOffice, as far as I can see. Your point about the dominance of MS Office is aging - with OOo able to open just about every Office file type (with the exception of 2007, which most people have been trained not to use) the cost of switching is much lower than it once was. Microsoft has recognized that its grip on the lucrative office software market has become more slippery lately, which is why Office 2007 is the first genuinely innovative release they've had in years (once again, with the exception of the idiotic file format). I am not interested in leveling the playing field, I am interested in having quality software available to us at a reasonable price, or in other words I am interested in having a competitive market. As long as Microsoft, OOo, Google, et. al. are all fighting for their chunk of the market by producing new innovations, I'm happy.

Re:I wish that when articles such as this get out (0)

Anonymous Coward | more than 6 years ago | (#22665508)

As someone who uses spreadsheets to crunch numbers, personally I would trade not begin able to do this for fewer macro virii, but that is just me.

Re:I wish that when articles such as this get out (1)

hal2814 (725639) | more than 6 years ago | (#22665532)

Do you really think that mentioning whether or not you can use other spreadsheet apps to render 3D graphics is going to "level the playing field?" I somehow doubt that businesses around the world are going to make the switch from MS Office to OpenOffice because they now know that OpenOffice can render 3D graphics just as well as Excel can. OSS advocacy has its place but this is not it. This is just someone using an Office product to make something unorthodox and fun happen.

Re:I wish that when articles such as this get out (1)

Smauler (915644) | more than 6 years ago | (#22665796)

This is something that spreadsheets are _absolutely_ not designed for. This story is just an interesting thing that can be achieved if the software is used weirdly. If anything, it could be an example of bloat. Anyone who decides to go out and buy a spreadsheet solution with full 3D wireframe integration needs to be shot. Seriously, quit the defensiveness.

ps. All my points are void if they can get elite running on excel.

Not to worry ... (5, Funny)

gstoddart (321705) | more than 6 years ago | (#22665334)

I'm sure someone has either already done this in emacs, or soon will.

Those guys have a mode for everything. :-P

Cheers

Re:Not to worry ... (5, Funny)

kalirion (728907) | more than 6 years ago | (#22665634)

Oh yeah! Good ol' C-x M-c M-vectorengine...

Of course I still prefer butterflies.

Quick Summary of Article - Breathless Hype (1)

sco08y (615665) | more than 6 years ago | (#22665348)

1. You have to do math to do 3D graphics

2. You can do math in Excel

3. Excel makes it possible to see your math as it happens

4. Excel can help prototype some ideas for 3D graphics engines

Re:Quick Summary of Article - Breathless Hype (1)

sm62704 (957197) | more than 6 years ago | (#22665902)

1. You have to do math to do 3D graphics

No you don't. You can do 3D graphics with a pencil and a ream of paper, which is how it was done before computers.

You have to do math to do ANYTHING on a computer. That's how computers work and why they're called computers - they compute. All they CAN do is compute.

Hehehe, I did this too back in 1997 (0)

Anonymous Coward | more than 6 years ago | (#22665358)

Without shading though. I was working on some render pipeline math for curved projection surfaces and the render pipeline wasn't available (someone else had the hardware temporarily) to see what my transforms would look like.

I knocked up a quick and dirty render pipline simulation across a few worksheets, first sheet containing the model vertices in local coordinates and the final worksheet with screen coordinates - all perspective transformed and corrected for viewer position and screen curvature. When you graphed it, you saw something close to what you'd see on screen.

Of course, this ran on an ancient mac machine so it used to take a while to generate the image. Certainly not fast enough to be useful to anyone other than me. It impressed my college tutor though. For nostalgia's sake, I wish we hadn't slashdotted this so easy.

Not impressed (5, Funny)

Rufus211 (221883) | more than 6 years ago | (#22665384)

I won't be impressed until Excel can pull of something as simple as a flight simulator.

Maybe instead... (1)

damn_registrars (1103043) | more than 6 years ago | (#22665394)

He should have worked on using excel as a high-performance web server. Then gamasutra.com might not be smoldering rubble right now...

Haven't looked at it, but one possible use... (0, Offtopic)

vigmeister (1112659) | more than 6 years ago | (#22665436)

might be to show the suit in charge of your budget a 3D representation of what you are planning. If you teach them how to use it, they will learn how to deal with 3D objects and maybe even make 3D models to explain what they're saying instead of using wors like squiggly for tilde and 4-sided solid artifact (for a cube - I misinterpreted this as a tetrahedron).

Non technical people tend to implicitly trust Excel almost as much as they trust Buffet's stock tips and maybe this will allow us to leverage that in our quest for dominance...

Cheers!
--
Vig

US Income tax (0)

Anonymous Coward | more than 6 years ago | (#22665502)

That's nothing- in trying to do my income taxes with a spreadsheet the results often look like a 3D Lissajous pattern.

I'm not blown away (1)

vsage3 (718267) | more than 6 years ago | (#22665520)

While the platform is somewhat unorthodox, I've seen 3d graphics engines use similar techniques for awhile. A decade ago I saw a demo for an ASCII FPS in QBASIC that completely relied on characters to interpret depth and perspective for the viewer, which is essentially what this does but to a simplified degree. I'm sure there was a lot of creativity involved in creating the "screen" though, so in that respect I am amused but not impressed.

Quick - someone do this in Oo.org! (1)

gosand (234100) | more than 6 years ago | (#22665592)

Would someone please quickly do this in Calc, so we can compare performance!

big whoop (5, Funny)

FranTaylor (164577) | more than 6 years ago | (#22665678)

This was possible on a 7 MHz 68000 back in the day of the original mac. At 3 GHz he should be able to raytrace in Excel.

Re:big whoop (4, Funny)

jschen (1249578) | more than 6 years ago | (#22665968)

I've heard of overclocking. But why would you want to underclock your 8 MHz Mac? I guess in this discussion, the correct answer would be "because you can".

Finally... (2, Funny)

wllf (627835) | more than 6 years ago | (#22665696)

This is the breakthrough we were waiting for. Duke Nukem Forever is right around the corner now!
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...