polygon demo

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
polygon demo
by on (#128675)
This demo shows a rotating triangle. This is entirely done with the CPU. No cheating involved.
Re: polygon demo
by on (#128676)
Good job so far. Now try adding a couple more triangles, having them spin around a few times, and then drawing them together in the first iteration of the Sierpinski triangle:
  ▲
▲ ▲
(Bet you noobs can't do that.)

Then all you need to do is draw some elfin-looking pretty boy and make a bunch of dungeons for him to run around and murder* in.


* I was disappointed that after having stealthed through the upper levels of the first castle in ALTTP, I had to kill someone in the basement to proceed.
Re: polygon demo
by on (#128692)
Mmh, no offense, but that's nothing special or ground breaking. A lot of SNES games (such as Tales of Phantasia) does effects like that during gameplay.
Re: polygon demo
by on (#128699)
I forgot about window effects, but my polygon engine can eventually be able to do 3d.
Re: polygon demo
by on (#128700)
Really nice! It could be a good start to calculate how many flat polygons can draw the SNES per second!
Re: polygon demo
by on (#128701)
Bregalad wrote:
Mmh, no offense, but that's nothing special or ground breaking.

IMO what makes this not so interesting is that there's a much more impressive demo running on a less capable console!
Re: polygon demo
by on (#128707)
How does he even transfer the image at 30 or 60 fps full screen?
Re: polygon demo
by on (#128710)
Quote:
I forgot about window effects, but my polygon engine can eventually be able to do 3d.

Yeah that's pretty much what I was expecting to see when I downloaded it, so sorry if I was a bit disappointed by seeing only a simple triangle, that's just that my expectations were too high from the start, e.g. "polygon" usually means 3d while "triangle" or whathever usually means 2d, even if technically (in math terms) it's wrong and both refer to either a 2D shape or a 2D shape in a 3D space.

Well long story short, the only additional difficulty if you're not using window clipping is that you have to somehow cheat the tilemap/tiles screen in order to show this, which I think is the point of your demo, so yeah nice work.

I can't say for this particular demo (I mean the NES one tokumaru talked about), but for me the key point in simulating bitmaps on NES is to cheat and don't use the tilemap as a bitmap (this is impossible, since the NES doesn't have enough tiles, not even talking about the extremely low transfer bandwith....). Instead you keep solid tiles for solid colored areas, and makes only border tiles using actually pseudo-bitmapped tiles. This not only reduces the VRAM usage, but also the bandwith for typical cases (but don't work in an arbirtary case where you fill the screen with details, of course, when it runs out of drawable tiles it simply can't show anything more).
Re: polygon demo
by on (#128717)
Hey this demo as well as the other NES are quite nice.

I'm curious, have you tried to run this on real hardware, or at least BSNES?

Also what is your end goal with these, are you trying to do some pure 3D stuff ala Star Fox, a 2D game with something triforce like as tepples mentioned, just demos, some kind of 3D "engine" for other folks to use?
Re: polygon demo
by on (#128718)
Possibly an engine somebody else will use, since I have am busy with other projects.

It appears that using his "XOR-filling" method is faster at rendering several polys than mine is at rendering one, but it has the limitation that polys can't overlap. Maybe if I use a second buffer, one for edges, another for the actual screen, I would be able to do the "XOR-filling" method but be able to do overlapping.
Re: polygon demo
by on (#128740)
"No cheating" is not really a good trait when dealing with quirky slow machines like these... :twisted:
Re: polygon demo
by on (#128741)
I think it's a good job.

After a game, make 3D CPU is slow, it's already slow to 3D software(cpu) is a recent engine is not very fast.
Re: polygon demo
by on (#128746)
Ian Bell's tank demo for NES dynamically allocates tiles to non-solid areas.
Re: polygon demo
by on (#128755)
Added Z-axis, and optimized the code a bit.
Re: polygon demo
by on (#128756)
Well it's an improvement, but still doesn't loook very 3D, you could easily do something like that in Mode-7 or using window clipping, so it's not too impressive.
Will you end up displaying Star-Fox like graphics ? (without the FX chip, that is) ? That'd be very cool.
Re: polygon demo
by on (#128765)
Bregalad wrote:
Will you end up displaying Star-Fox like graphics ? (without the FX chip, that is) ? That'd be very cool.

It's been done on the Genesis. Wolfenstein 3D too, but that doesn't matter much because it's not actual 3D and the SNES version didn't use enhancement chips.
Re: polygon demo
by on (#128786)
tokumaru wrote:
Bregalad wrote:
Will you end up displaying Star-Fox like graphics ?...

It's been done on the Genesis.

where can i download the sega rom file?
Re: polygon demo
by on (#128830)
I think the polygon demo v2 is improved as well.

Interested to see where it goes.
Re: polygon demo
by on (#128941)
This one is actually starting to look like a 3D object, but it has no z buffering/culling so sometimes the polygons are drawn in the wrong order.
Re: polygon demo
by on (#128942)
tight!
Re: polygon demo
by on (#128958)
Very cool ! Finally it starts looking StarFox-like ! Keep this great work up !