Author Topic: ZeEngine3D highpolygon count test.  (Read 8396 times)

0 Members and 1 Guest are viewing this topic.

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2456
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
ZeEngine3D highpolygon count test.
« on: June 15, 2006 »

Hi!

This is my 3d software engine I am currently developing in C (I am thinking to port it in Freebasic too oneday). It derives from the GP32 3d engine I was developing since a long time which used a lot of fixed point and precalcs for divisions, though this one is the PC oriented where I replaced most of the integer things with floating point values and real divisions again (except from the triangle rasterizer). That's because the fixed point version would overflow and bug with bigger worlds and objects and I also wanted to have a modern fpu one for experimenting on PC which is more than enough for fast floating point math.

With this one I decided to render some really detailed meshes which I downloaded from Stanford university. The least detailed of them is the Stanford bunny (65000 polygons) and the next one I tried is Armadillo (365000 polys!  >:D). In the website there are free objects to download that have even some million polygons (especially Lucy with 38 million polygons!!!!!!!  O0). I won't try to render the last ones yet (the Armadillo in some conversion of data I have to rewrite, took 1 and a half hour to generate my 3do format (the original objects were ply and I read the ASCII versions of them))

The file is 6MB and is located at freewebs. Go in my website and download because external hotlinking is not allowed. Here:
http://www.freewebs.com/optimus6128/ZeEngine3D.htm

p.s. I couldn't believe my software engine could rendered 65000 polygons with gouraud shading or env-mapping in around 15-20fps in my PC. Wow! The armadillo with all full runs at 5fps!
p.p.s. Please notice there are keys to render dots, wireframe, flat, gouraud and z-buffer(1-5), Space to change object, s to change gouraud colors
p.p.p.s. At the beginning you may have to wait some pregeneration of normals. With the armadillo object it makes 3-5 seconds in my computer before the start.
Challenge Trophies Won:

Offline zparticle

  • Atari ST
  • ***
  • Posts: 168
  • Karma: 11
    • View Profile
    • ScottShaver2000
Re: ZeEngine3D highpolygon count test.
« Reply #1 on: June 15, 2006 »
That's very cool. The wrapping from side to side is a bit strange, needs some clipping code added. :)

Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17422
  • Karma: 499
  • evil/good
    • View Profile
    • My Homepage
Re: ZeEngine3D highpolygon count test.
« Reply #2 on: June 15, 2006 »
Man that's some sweet stuff.
The armadillo in mode 5 renders in 9 fps here and looks absolutely excellent!
I was surprised at some of the other objects, especially the Statue :)

All modes work fine here, some objects gave tremendously high fps, such as the teapot which ran at about 400fps and the cube ran at over 750 fps!!!

It's looking good so far Optimus.
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Stonemonkey

  • Pentium
  • *****
  • Posts: 1315
  • Karma: 96
    • View Profile
Re: ZeEngine3D highpolygon count test.
« Reply #3 on: June 15, 2006 »
Cool stuff Optimus, I have some missing triangles with modes 3 and 5 though, particularly with the F1 car.

Offline Tetra

  • DBF Aficionado
  • ******
  • Posts: 2532
  • Karma: 83
  • Pirate Monkey!
    • View Profile
Re: ZeEngine3D highpolygon count test.
« Reply #4 on: June 15, 2006 »
Looks like its coming along nicely ;D
great stuff, keep it coiming
Challenge Trophies Won:

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2456
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
Re: ZeEngine3D highpolygon count test.
« Reply #5 on: June 15, 2006 »
>The wrapping from side to side is a bit strange, needs some clipping code added

Yep, it's one thing in my todo list :)
Also, if the object move more out of the screen, crashes or extreme slow downs may appear. It's one of the things I haven't fixed. I wanted to add an option to rotate and zoom an object with the mouse, but this would easilly lead to such cases and crash the system. That's why I have each object carefully placed and rotated at a specified area by myself so that the very bad errors doesn't occure in this preview ;)

>Cool stuff Optimus, I have some missing triangles with modes 3 and 5 though, particularly with the F1 car.

Yes, I compiled this fast for the preview without changing the specific object to another one. At first I thought wtf? Later, I tried some proffesional mesh viewers/converters to see the object but the bugs were similar. And so I think that the object data is wrong already in the file, wrong triangle orientation produces wrong normal generation.

>The armadillo in mode 5 renders in 9 fps here and looks absolutely excellent!
>All modes work fine here, some objects gave tremendously high fps, such as the teapot which ran at about 400fps and the cube ran at >over 750 fps!!!

You Must Have a Monster PC!!! ok,. the armadillo with mode 5, 6fps here. But the rest? You must also have a preety slick videocard (at least if the 400/750 values were reported while the rendering window was 100% in front of you). To explain my point, I made an experiment in the past. It seems that SDL speed is cleverly not affected by the rendering when you move the window or part of it outside the screen or if another window is in front of it or hides part of it. And it seems that a lot of time is eaten just for rendering the window with SDL. When I want to see pure calculating speed, I move the main window down so that it's out of the screen, you see then the frame rate going high. But with all the framebuffer hidden I can't even get more than 400-600 at the cube with dots rendered. If you got such big number while the rendering screen was in front of you (and not hidden by any other window) then it's extreme. Both your gfx card is preety good at rendering/gfx output AND your CPU is preety slick enough. Btw, how was the frame rate in the bunny?  :||

Lol  O0

Challenge Trophies Won:

Offline Rbz

  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 2757
  • Karma: 493
    • View Profile
    • https://www.rbraz.com/
Re: ZeEngine3D highpolygon count test.
« Reply #6 on: June 16, 2006 »
Pretty cool dude :)

For the bunny, I got:
mode 1 = 130 fps
mode 2 = 50 fps
mode 3 = 33 fps
mode 4 = 19 fps
mode 5 = 21 fps

P4 2.8Ghz 512MB
Geforce 6600gt 128MB
Challenge Trophies Won:

Offline relsoft

  • DBF Aficionado
  • ******
  • Posts: 3303
  • Karma: 47
    • View Profile
Re: ZeEngine3D highpolygon count test.
« Reply #7 on: June 16, 2006 »
whooaaa!!!!
Challenge Trophies Won:

Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17422
  • Karma: 499
  • evil/good
    • View Profile
    • My Homepage
Re: ZeEngine3D highpolygon count test.
« Reply #8 on: June 16, 2006 »
Ok, Yes I must have had part of the view window obscured so here are some more fps readings..

Cube..
Mode 1: 678 FPS
Mode 2: 702 FPS
Mode 3: 403 FPS
Mode 4: 354 FPS
Mode 5: 361 FPS

Bunny:
Mode 1: 257 FPS
Mode 2: 72 FPS
Mode 3: 43 - 50 FPS
Mode 4: 19 - 25 FPS
Mode 5: 23 - 30 FPS

Armadillo:
Mode 1: 73 FPS
Mode 2: 13 FPS
Mode 3: 10 FPS
Mode 4: 7 - 8 FPS
Mode 5: 9 FPS

Teapot:
Mode 1: 677 FPS
Mode 2: 665 - 692 FPS
Mode 3: 377 - 398 FPS
Mode 4: 316 - 340 FPS
Mode 5: 334 - 339 FPS

My Computer isn't a great spec but it's ok.
P4 3.0 GHZ, Radeon X300 SE 128MB, 512MB Ram
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17422
  • Karma: 499
  • evil/good
    • View Profile
    • My Homepage
Re: ZeEngine3D highpolygon count test.
« Reply #9 on: June 16, 2006 »
Nb. I Tried hiding all the display window behind the dos window and ran the cube in dot mode and got some crazy fps of over 2,500!
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Clyde

  • A Little Fuzzy Wuzzy
  • DBF Aficionado
  • ******
  • Posts: 7271
  • Karma: 71
    • View Profile
Re: ZeEngine3D highpolygon count test.
« Reply #10 on: June 16, 2006 »
Bunny
1- 184
2- 45
3- 34
4- 16
5- 22

Car1
1- 364
2- 187
3- 127
4- 85
5- 94

Car2
1- 320
2- 162
3- 115
4- 80
5- 84

Armadillo
1- 58
2- 9
3- 8
4- 5
5- 6

Cube
1- 435
2- 425
3- 260
4- 230
5- 241

Face
1- 424
2- 364
3- 202
4- 175
5- 150

Teapot
1- 433
2- 405
3- 265
4- 225
5- 228

Collesium
1- 418
2- 285
3- 130
4-  80
5-  81

Statue
1- 400
2- 260
3- 135
4-  93
5- 110

The fps are taken from a machine with:
2.66ghz Pentium 4
Geforce 5500 w/ 128 Mb
512 Mb
XP SP2

Sweet engine Optimus dude.

Cheers and all the best,
Clyde.
Still Putting The IT Into Gravy
If Only I Knew Then What I Know Now.

Challenge Trophies Won:

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2456
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
Re: ZeEngine3D highpolygon count test.
« Reply #11 on: June 17, 2006 »
Thanks! The data are interesting.
Challenge Trophies Won:

Offline relsoft

  • DBF Aficionado
  • ******
  • Posts: 3303
  • Karma: 47
    • View Profile
Re: ZeEngine3D highpolygon count test.
« Reply #12 on: June 20, 2006 »
that's all gouraud?  No texture mapping? WOW!
Challenge Trophies Won:

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2456
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
Re: ZeEngine3D highpolygon count test.
« Reply #13 on: June 20, 2006 »
The bunny in the screenshot is enviroment mapped and uses a non perspective texture mapping routine that looks like an ass on a cube ;)
Yep, the two objects are sooo well detailed that they look like bump mapped with only pure gouraud enabled!
Challenge Trophies Won:

Offline Blitz Amateur

  • Atari ST
  • ***
  • Posts: 243
  • Karma: 13
    • View Profile
Re: ZeEngine3D highpolygon count test.
« Reply #14 on: June 22, 2006 »
That's excellent!


(These FPS are averaged[Meaning I took the high and low and made a guess at an average] )
Bunny
Mode 1 - 233 FPS
Mode 2 - 73 FPS
Mode 3 - 40 FPS
Mode 4 - 26 FPS
Mode 5 - 32 FPS

Car
Mode 1 - 503 FPS
Mode 2 - 285 FPS
Mode 3 - 157 FPS
Mode 4 - 107 FPS
Mode 5 - 115 FPS

RaceCar
Mode 1 - 428 FPS
Mode 2 - 242 FPS
Mode 3 - 133 FPS
Mode 4 - 91 FPS
Mode 5 - 97 FPS

Amradillo
Mode 1 - 64 FPS
Mode 2 - 14 FPS
Mode 3 - 9/10 FPS
Mode 4 - 6 FPS
Mode 5 - 8 FPS

Cube
Mode 1 - 610 FPS ( With the screen hidden, over 1300 FPS )
Mode 2 - 585 FPS
Mode 3 - 347 FPS
Mode 4 - 315 FPS
Mode 5 - 283 FPS

Face
Mode 1 - 599 FPS
Mode 2 - 523 FPS
Mode 3 - 257 FPS
Mode 4 - 217 FPS
Mode 5 - 182 FPS

Teapot
Mode 1 - 601 FPS
Mode 2 - 560 FPS
Mode 3 - 351 FPS
Mode 4 - 285 FPS
Mode 5 - 294 FPS

Building
Mode 1 - 575 FPS
Mode 2 - 400 FPS
Mode 3 - 165 FPS
Mode 4 - 118 FPS
Mode 5 - 96 FPS

Statue
Mode 1 - 571 FPS
Mode 2 - 391 FPS
Mode 3 - 286 FPS
Mode 4 - 125 FPS
Mode 5 - 135 FPS


Specs:

AMD Athlon64 2.2 GHz 512K Cache, 1 gig dual channel DDR, PCI-Express ATI RADEON X800 Pro 256Mb GDDR3  O0

Offline Optimus

  • DBF Aficionado
  • ******
  • Posts: 2456
  • Karma: 128
    • View Profile
    • Optimouse Demo Site
Re: ZeEngine3D highpolygon count test.
« Reply #15 on: June 23, 2006 »
Thanks, other interesting data. Now I am thinking it, one major reason for the speed diferrence would be the faster memories (My own computer has some old DDRs at "I don't remember" mhz)
Challenge Trophies Won: