Visits since April, 1998 as counted by Web-Counter

General Info

What is the Game Creation System?

What Windows Editor Upgrade?

Game Engine Comparison

Save up to $22 when you purchase the GCS!
More Info!

GCS Help GCS Banner Exchange

GCS Marketing

The Perfect Game

GCS Review

Scam Reports by Publisher

Secrets of the Sages

GCS Files

GCS Enemy Files

GCS Games for DOS

GCS Games for Win95

GCS Backdrops

GCS MD2 Objects

GCS MD2 Skins

GCS Miscellaneous Files

GCS Music & Sounds

GCS News Archives

GCS Tools

GCS Tutorials

GCS Weapon Files

RGB Color Chart

GCS Users Forum

GCStalk- Mail List

GCSunion- Mail List

GCS Advertisements

DOS GCS - Half Page

DOS GCS - Full Page A

DOS GCS - Full Page B

Win95 GCS - Full Page

GCS Product Reviews

DOS GCS - PC Gamer

More To Come?

Links

GCS Users Sites

Vote for me in Top GCS Sites

General Gaming Links

E-Mail Me!


[an error occurred while processing this directive]

GCS Secrets of the Sages
By Sami Alayoubi

    Frame Rate : The better way to make things faster
All of you, and dont deny it, complain "Why doesn't the GCS run as fast as Quake does?"

The truth : BSP

Binary Space Partitioning is what it stands for. It is the core of Quake games or Unreal Games that make them so fast. So, what does the GCS have (or GWEDIT now)?

Oh, there are many. Sooo many in fact, if used right you could exceed frame rates of 60 or even 80 on a standard 300 MHZ system. Really?! You ask. Yes, really.

Most of you are in a rush to finish a game or level. Mistake #1. Dont do this. Never do this. It will kill your reputation among you. Level Design is an art. I repeat an art. I remember Ken Simkins creator of House of the Cathalon wrote a big documentation on Level Design that I kept, and read, and re-read, and re-read, but not only read it, learned from it.

The following things will make your game smooth :

FTC
Sectoring
Dont Draw BackSides Scaling
MD2 Clip Dist.
Cull Floor Ceilings

Now I will break them apart :

 

    FTC
Floor to Ceiling, this attribute if set to a wall tells it to not draw anything behind it. This is really one of the main things that will totally help you in your quest for speed. The following picture is a demonstration of it :

The areas with the red circle indicate where FTC is implemented. As you can see, when the player is facing the wall, anything behind that wall by default will be drawn. This wastes alot of CPU cycles and totally slows down the game. It makes it choppy, but thats what FTC is for. IT makes it so any objects behind the wall its set to will not be drawn from the players point of view. Dont apply FTC on an object which is small and has other objects behind it which can be seen. It will make them disiappear from view. Also, dont apply it to windows since they draw everything behind it and it will totally lose the whole point of it.

To apply FTC using the DOS editor : Select the walls which you wish to apply and go to "edit" and then "edit attributes". A box comes up and has those four "Dangerous red boxes" Ignore the red boxes and look above that. There will be a list of properties you can apply it to. Select " Set FTC on walls" and voila!

To apply FTC using GWEDIT LITE or GWEDIT : Select the walls which you wish to modify. Right click and go to properties. If it isn't up, the properties box will appear asking for what you want. In the list of checkboxes, select "FTC" and it is done.

 

    SECTORING
This attribute sets it so that anything within the sector you are currently in and sector 0 are drawn. Anything out of the sector isn't. Here is a picture with diffirent colors to represent sectors :

By default, all the floors in your game are set to sector 0. This makes it a "neutral" sector and will always be drawn. Always. However, you can select certain floors and tell the engine to make it a diffirent sector. Anything in another sector will not be drawn except sector 0. Thus, the floor either in EFE or GWEDIT will be drawn a diffirent color. BTW : sector 0 is always drawn gray.

Now as you can see in the picture, the "windy hallway" is drawn gray, thus it is sector 0. The blue sector is sector 1. And the Green Sector is sector 2.

If the player were to stand in the green sectorm nothing in the blue sector will be drawn because it is in another sector. The only sector that will be drawn is the green sector and the gray sector (sector 0) See what I mean? If the player were to be in the blue sector, then only objects in the blue sector and gray sector will be drawn, anything in the blue sector wont be drawn, thus the engine is now free of calculating objects in the green sector and can process objects in the blue sector alot faster, creating alot more frames.

Why is sector 0 always drawn? This is necessary in order to "connect" rooms together. Lets give another example :

Youre in the green sector and your looking left. You can see the hallway. The hallway is gray, sector 0. It is always drawn for a purpose, to make the player see the hallway. If it werent to be drawn, then the player wont see it and it will result in a disiaster. but the other sectors arent drawn at all.

Always place Sector 0 in rooms or hallways to connect larger rooms. Place sectoring in places that the player cant view when in sector 1, but can see past sector 0, but around the corner is sector 2. This may seem a bit confusing, but re-read it and youll understand it.

To apply SECTORING using the DOS editor : Start up EFE and open the "Floor/Ceiling" mode. In the Lower right hand corner there is a box labeled "Show Sector" Enable it and all the floors should be gray if Sectoring hasn't been previousely implemented. Now, select the Floors you want to sector and it should have an "X" In the sector box, it should say by default "0" unless it is already part of another sector other than 0. Now, put in any sector number 1-8 you want it to be and it should change colors indicating it is another sector.

To apply SECTORING using GWEDIT LITE or GWEDIT : Go to "view","Floor/Ceiling mode" and select it. Now there should be a box with preperties for floors. In the Lower right hand corner there is a box labeled "Show Sector" Enable it and all the floors should be gray if Sectoring hasn't been previousely implemented. Now, select the Floors you want to sector and it should have an "X" In the sector box, it should say by default "0" unless it is already part of another sector other than 0. Now, put in any sector number 1-8 you want it to be and it should change colors indicating it is another sector.

 

    OBJECT CLIP DIST.
This is rarely used. Not known. Hidden. The most powerful thing you can use surpirisingly. This feature tells the engine to not draw objects at a certain distance. This feature should only be used in indoor scenarios. Outdoor will produce bizarre effects unless that is what your acheiving.

To find out what your Clip Distance should be in an indoor level : Find the longest distance that will be able to view, from one point to another. Measure it and add 600 cm to it and then use that as your distance :

This picture shows the GameWide options :

To apply Object Clip Dist. using the DOS editor : Start up the EFE editor and go to "Options","Gamewide options" and there should be a new window. Go to the bottom right of the windpw and there should be a box labelled "Object Clip Dist." There input the number you want.

To apply Object Clip Dist. using GWEDIT LITE or GWEDIT : Go to "Options","GameWide Options" and a window should appear as shown above. In the bottom right hand corner there is a box labelled "Object Clip Dist." There is where you input the desired number.

MD2 CLIP DIST.

MD2's are always drawn. Always, this really bogs down the system a whole bunch. Now, this is the same thing as Object Clip Dist. but it applies to MD2's. Refer to the directions above. The picture above shows where it is located. Keep this low so that the MD2's arent always drawn.

 

    CULL FLOOR/CEILING BACKSIDES
The ceilings and floors of the game world is always drawn both sides. This isn't useful for indoor type games. In order to have the engine not draw the backsides of the floor or ceiling, follow the isntructions for Object Clip Dist. and within the gamewide options over the Object Clip Dist. there is a checkbox labelled "Cull Floor/Ceiling Backsides" Just check this box and it willl be applied. This speeds up the level about 5 frames per second but take everthing you can get.

 

    ADDITIONAL
To tell the truth, even the players speed affects the gameplay. Think about it, the faster the player walks (or runs) the quicker the engine will have to generate the world. IF you slow the player down a bit, then the engine will produce a smoother gameplay.. Give it a try and youll see what I mean.

With all this, you should be able to produce a smooth game.

 

    DONT DRAW BACKSIDES

The engine will always draw the both sides of a wall. Always. Well, unless the user instructs it not to. What this does is make the back of a wall not be drawn, therefore speeding up framerate considerably. Apporixiametely you will gain 1 frame rate for every 2 you do. May seem small but they add up. Here is a picture to see what is

It may be a bit hard to see, but the gray line that extends behind the yellow line reperestents the back of the wall. When you place down a wall, you should really pay attention to its angle you put it in. You can save alot of Frame Rates by putting the backs of the wall torward the world which may not be seen by the player at all.

To apply "Dont Draw Backsides" in the DOS Editor : Select the walls which you wish to apply and go to "edit" and then "edit attributes". A box comes up and has those four "Dangerous red boxes" Ignore the red boxes and look above that. There will be a list of properties you can apply it to. Select "Dont Draw Backsides" and voila!

To apply "Dont Draw Backsideds" in GWEDIT LITE or GWEDIT : Select the walls which you wish to apply this feature to and right click, then go to "properties" The property box should come up if it isn't already and there should be alot of checkboxes to choose from. Select "Dont Draw Backsides" and it is implemented.
[Main Page] [News Archive] [Contact Me]

1998-2001 GCSgames.com, and all of it's HTML, is copyright Dan Olsson, Stephen M. Fury