Vertices and frame rate?

Post topics regarding Level Building/Design and Entity Usage with Reality Factory
User avatar
GMer
Posts: 329
Joined: Thu Oct 25, 2007 4:49 pm
Location: On the rock in the 3rd solar orbit.

Vertices and frame rate?

Post by GMer » Sat Oct 31, 2009 10:59 pm

This question may sound rather n00bish, but I tried searching but to no avail.
If I have a model- say 10,000 vertices- and I use lithunwrap and it condenses it down to 3,000 vertices, would I get an improvement in frame rate?
Sorry if this has been answered.
Over 3 years (has it been that long?) and just now I noticed the day and month of my birthday were switched. Whoops!

Some 2d games I made, haven't made anything in a year though O.o
http://www.yoyogames.com/users/GMer56

User avatar
Juutis
Posts: 1511
Joined: Thu Jan 12, 2006 12:46 pm
Location: Finland

Re: Vertices and frame rate?

Post by Juutis » Sat Oct 31, 2009 11:24 pm

Yes, absolutely. The less polygons the engine needs to draw the better the framerate will be.

***EDIT***
You're talking about vertices. You mean polygons?
Pain is only psychological.

User avatar
GMer
Posts: 329
Joined: Thu Oct 25, 2007 4:49 pm
Location: On the rock in the 3rd solar orbit.

Re: Vertices and frame rate?

Post by GMer » Sun Nov 01, 2009 12:16 am

Actually, I am talking about vertices. When you select the "optimize" selection from the lithunwrap menu, it removes degenerate vertices, but the amount of polygons are unchanged.
From my experience, I think it would be good for speedier lighting, if reality factory does use the vertices for its lighting algorithm.
What say you?
Over 3 years (has it been that long?) and just now I noticed the day and month of my birthday were switched. Whoops!

Some 2d games I made, haven't made anything in a year though O.o
http://www.yoyogames.com/users/GMer56

User avatar
paradoxnj
RF2 Dev Team
Posts: 1328
Joined: Wed Mar 01, 2006 7:37 pm
Location: Brick, NJ
Contact:

Re: Vertices and frame rate?

Post by paradoxnj » Sun Nov 01, 2009 1:18 am

What you actually should do is take the 10,000 poly model and generate a normal map from it. Then reduce the poly count to below 2000 and use normal mapping to add the detail. It will render like it has 10,000 polys.
Many Bothans died to bring you this signature....

User avatar
zany_001
Posts: 1047
Joined: Fri Mar 02, 2007 8:36 am
Location: Aotearoa

Re: Vertices and frame rate?

Post by zany_001 » Sun Nov 01, 2009 2:25 am

I'm guessing that lithunwrap is removing double-vertices, eg you have to vertices occupying the same space. It merges them.

What 3d program are you using?
Once I was sad, and I stopped being sad and was awesome instead.
True story.

Veleran
Posts: 891
Joined: Mon Aug 22, 2005 10:22 am
Location: Greece

Re: Vertices and frame rate?

Post by Veleran » Sun Nov 01, 2009 3:53 pm

Actors between 2000 to 3000 faces are good.The vertices count is usually less than half of the face count,not counting the things i mention below.

Most probably in RF too,the model vertices are duplicated at each different 1.smoothing group and at the 2.UVW seams,and the 3.For each Material id-the RF dev team can tell you for sure.

What i know is that you see the whole model move,but the cpu has broken it in smaller pieces at the areas i said.

Thats why when you model some higher poly model, where ever there are more vertices you choose to stitch together various pieces in the uvw unwrap (if it can be practically done of course).

If you post a link for the texture you use for the vehicle i will see how many UVW seams it has.

Since RF does not use vertex weights,but it is one bone only per vertex,i think it can handle higher poly transforming actors,
as far as you optimize the uvw and smoothing groups and Material numbers.
if you stitch too many vertices together,then you might need a 3d paind program to make the textures and see the result on the model.

Otherwise,i optimise the vehicle polycount and smoothing groups,and keep the uvw pieces/seams at a normal count.

From the tests i have done so far,i know that you can have higher poly actors but they should be displayed few at a time and then they should also be clipped by the far clip plane after a rather short to medium distance.

User avatar
GMer
Posts: 329
Joined: Thu Oct 25, 2007 4:49 pm
Location: On the rock in the 3rd solar orbit.

Re: Vertices and frame rate?

Post by GMer » Sun Nov 01, 2009 4:16 pm

I use gmax
I've never actually figured out how to do normal mapping. I tried what the manual says, and it just won't work for some reason. I tried making a bump map on a cube... this is my D3DDrv.log

Code: Select all

=================================================================
 D3DDrv v100.3
 Build Date: May 24 2008, Time: 13:15:45
=================================================================

Current Time: 12:10:18
Current Date: 10-27-2009

 ** D3D Driver Initializing **

--- D3DMain_CreateDDFromName ---
  Name: Primary Display Driver
   DDCAPS2_CANRENDERWINDOWED    : YES
   DDCAPS2_NO2DDURING3DSCENE    : NO
   DDCAPS2_FLIPNOVSYNC          : YES
--- D3DMain_GetTextureMemory ---
  Ram free: 123662336
--- D3DMain_RememberOldMode ---
--- D3DMain_EnumDisplayModes ---
--- D3DMain_CreateD3D ---
--- D3DMain_EnumDevices ---
--- D3DMain_SetDisplayMode ---
  W: 800, H: 600, Bpp: 32, FullScreen: YES
--- D3DMain_PickDevice ---
    D3DTEXOPCAPS_BUMPENVMAP      : YES
 D3DTEXOPCAPS_BUMPENVMAPLUMINANCE: YES
   D3DTEXOPCAPS_DOTPRODUCT3     : YES
--- D3DMain_CreateBuffers ---
    Back Buffer Count = 1 
--- D3DMain_CreateZBuffer ---
EnumZBufferFormats:  StencilBitDepth>=8... can do 8bit stencil buffer
   ZBuffer Depth Available: 16-bit (YES), 24-bit (YES), 32-bit (NO),
   ZBuffer Depth: 16, ZBuffer in Video: YES
--- D3DMain_CreateDevice ---
   Vender ID =  32902
   Device ID =  10146
--- D3DMain_CreateViewPort ---
--- D3DMain_GetSurfaceFormats ---
EnumTextureFormatsCallback: 16, A:0, R:f800, G:7e0, B:1f / 16, U:f800, V:7e0, L:1f / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 16, A:8000, R:7c00, G:3e0, B:1f / 16, U:7c00, V:3e0, L:1f / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 16, A:f000, R:f00, G:f0, B:f / 16, U:f00, V:f0, L:f / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 32, A:0, R:ff0000, G:ff00, B:ff / 32, U:ff0000, V:ff00, L:ff / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 32, A:ff000000, R:ff0000, G:ff00, B:ff / 32, U:ff0000, V:ff00, L:ff / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 16, A:ff00, R:ff, G:0, B:0 / 16, U:ff, V:0, L:0 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 8, A:0, R:ff, G:0, B:0 / 8, U:ff, V:0, L:0 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 8, A:ff, R:0, G:0, B:0 / 8, U:0, V:0, L:0 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 8, A:f0, R:f, G:0, B:0 / 8, U:f, V:0, L:0 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 16, A:0, R:ff, G:ff00, B:0 / 16, U:ff, V:ff00, L:0 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 16, A:0, R:1f, G:3e0, B:fc00 / 16, U:1f, V:3e0, L:fc00 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 32, A:0, R:ff, G:ff00, B:ff0000 / 32, U:ff, V:ff00, L:ff0000 / 4CC:0 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:32595559 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:59565955 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:31545844 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:32545844 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:33545844 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:34545844 Texture Support Found
EnumTextureFormatsCallback: 0, A:0, R:0, G:0, B:0 / 0, U:0, V:0, L:0 / 4CC:35545844 Texture Support Found
EnumSurfaceFormatsCallback: 32, A:0, R:8, G:ffffff, B:ff000000 Texture Support Found
EnumSurfaceFormatsCallback: 32, A:0, R:8, G:ffffff, B:ff000000 Texture Support Found
EnumSurfaceFormatsCallback: 32, A:ff000000, R:ff0000, G:ff00, B:ff Texture Support Found
EnumSurfaceFormatsCallback: 32, A:ff000000, R:ff0000, G:ff00, B:ff Texture Support Found
D3DMain_GetSurfaceFormats:  Unable to find a 888 (24-bit) texture support.
D3DMain_GetSurfaceFormats:  Unable to find 888 (24-bit) bump map support.
--- D3DMain_SetRenderState --- 
--- D3DMain_GetTextureMemory ---
  Ram free: 100560896

 ** Initialization was successful **

THandle_CheckCache:  Resetting texture cache...
   NO 3dfx card detected, using larger number of handles...

--- D3DMain_ShutdownD3D ---
  Shutdown was successful...

The cube doesn't looks just like the normal texture.
So with a lack of 24-bit bitmap texture support, does that mean I should only use 16-bit bitmaps for my normal maps? (I've tried "BM0_xxx" and "BN0_xxx", but it was for naught)
I could also use an LOD, couldn't I? The model in question is a statue, and will probably be the only thing in the game besides the level geometry (and the player, of course).
Over 3 years (has it been that long?) and just now I noticed the day and month of my birthday were switched. Whoops!

Some 2d games I made, haven't made anything in a year though O.o
http://www.yoyogames.com/users/GMer56

User avatar
paradoxnj
RF2 Dev Team
Posts: 1328
Joined: Wed Mar 01, 2006 7:37 pm
Location: Brick, NJ
Contact:

Re: Vertices and frame rate?

Post by paradoxnj » Mon Nov 02, 2009 4:09 pm

Genesis will convert your bitmaps to the formats it supports. You don't need to change anything.
Many Bothans died to bring you this signature....

User avatar
GMer
Posts: 329
Joined: Thu Oct 25, 2007 4:49 pm
Location: On the rock in the 3rd solar orbit.

Re: Vertices and frame rate?

Post by GMer » Mon Nov 02, 2009 4:59 pm

Hmmm... must be my graphics card...
So vertices have absolutely no effect on framerate?
Over 3 years (has it been that long?) and just now I noticed the day and month of my birthday were switched. Whoops!

Some 2d games I made, haven't made anything in a year though O.o
http://www.yoyogames.com/users/GMer56

User avatar
paradoxnj
RF2 Dev Team
Posts: 1328
Joined: Wed Mar 01, 2006 7:37 pm
Location: Brick, NJ
Contact:

Re: Vertices and frame rate?

Post by paradoxnj » Mon Nov 02, 2009 7:14 pm

I never said that. Vertices do have effect on framerate. The more vertices you have, the more polys you have. I said to generate a normal map from the 10,000 poly model and bring it down to 1500 to 2000 polys. Normal mapping uses per pixel lighting to simulate the bumps of the higher poly model.

Read this. Here's the excerpt from what I am talking about:
An even cooler use for a normal map is to make a low res model look almost exactly like a high res model. This type of normal map is generated by the computer instead of painted like a bump map. Here’s how it works: First you create two versions of the model – a high polygon version (which can contain as much detail as you want) and a low polygon version that will actually get used in the game. Then you align the two models so that they occupy the same space and overlap each other.



Next you run a special program for generating the normal map. The program puts an empty texture map on the surface of the low res model. For each pixel of this empty texture map, the program casts a ray (draws a line) along surface normal of the low res model toward the high res model. At the point where that ray intersects with the surface of the high res model, the program finds the high res model’s normal. The idea is to figure out which direction the high res model surface is facing at that point and put that direction information (normal) in the texture map.



Once the program finds the normal from the high res model for the point, it encodes that normal into an RGB color and puts that color into the current pixel in the afore mentioned texture map. It repeats this process for all of the pixels in the texture map. When it’s done, you end up with a texture map that contains all of the normals calculated from the high res model. It’s ready to be applied to the low res model as a normal map. I’ll show you how to create this type of normal map in the second half of the tutorial.
Many Bothans died to bring you this signature....

User avatar
darksmaster923
Posts: 1857
Joined: Wed Jan 03, 2007 10:32 pm
Location: Huntington Beach, California, USA
Contact:

Re: Vertices and frame rate?

Post by darksmaster923 » Tue Nov 03, 2009 2:21 am

Pretty sure hes talking about vertices that aren't attached to any polygons, just vertices that are floating around
Herp derp.

Jay
RF Dev Team
Posts: 1232
Joined: Fri Jul 08, 2005 1:56 pm
Location: Germany

Re: Vertices and frame rate?

Post by Jay » Tue Nov 03, 2009 10:58 am

Then, what is the point in alone vertices floating around? They wouldn't even be rendered if they don't belong to a triangle...
Everyone can see the difficult, but only the wise can see the simple.
-----

User avatar
paradoxnj
RF2 Dev Team
Posts: 1328
Joined: Wed Mar 01, 2006 7:37 pm
Location: Brick, NJ
Contact:

Re: Vertices and frame rate?

Post by paradoxnj » Wed Nov 04, 2009 9:29 pm

Modelling application don't allow "floating" vertices. They all must be attached to polys. He is asking if it is better to use a model with less vertices/polys instead of a high detail model.
Many Bothans died to bring you this signature....

User avatar
zany_001
Posts: 1047
Joined: Fri Mar 02, 2007 8:36 am
Location: Aotearoa

Re: Vertices and frame rate?

Post by zany_001 » Thu Nov 05, 2009 12:28 am

paradoxnj wrote:Modelling application don't allow "floating" vertices. They all must be attached to polys. He is asking if it is better to use a model with less vertices/polys instead of a high detail model.
Yes they do. Blender does, anyway.
Once I was sad, and I stopped being sad and was awesome instead.
True story.

Jay
RF Dev Team
Posts: 1232
Joined: Fri Jul 08, 2005 1:56 pm
Location: Germany

Re: Vertices and frame rate?

Post by Jay » Thu Nov 05, 2009 1:29 am

There still is no point in leaving them floating around (They are useless since they don't belong to a triangle) I think that when you export, those vertices are just cut away.
Everyone can see the difficult, but only the wise can see the simple.
-----

Post Reply