Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

FPSC Classic Product Chat / Optimising Games

Author
Message
TGPEG
17
Years of Service
User Offline
Joined: 28th Dec 2006
Location: Bristol, United Kingdom
Posted: 3rd Jan 2008 19:50 Edited at: 5th Jan 2008 13:20
I had just built this level, but the framerate was a bit poor, so I went around dividing the texture sizes of less important parts of the scene.

But this made some bits looks grainy and out of focus.

So...
If I put in some pretty mood lighting, it disguses the fact that some of the textures (ie. in the dark bits) are of a lower quality. Then with some fake doors, and the removal of some unneeded walls, the framerate jumped from 20-22fps to 28-30fps throughout the whole level, and it doesn't look too bad either.

That's a good tip for anyone who wants to higher the framerate: If you can't see the texture, divide the size.

[center]

Attachments

Login to view attachments
xplosys
18
Years of Service
User Offline
Joined: 5th Jan 2006
Playing: FPSC Multiplayer Games
Posted: 3rd Jan 2008 19:54
I'll have to go through my entire level as well. I've got to about one quarter of the grid used with about 4 floors and it seems I've gone beyond FPSC's limits. Nothing more can be added without straining the FPS. (and that's without characters)

Thanks for the tips. I'll be sure to post back if I realize any more.

Best.

uman
Retired Moderator
19
Years of Service
User Offline
Joined: 22nd Oct 2004
Location: UK
Posted: 4th Jan 2008 04:03 Edited at: 4th Jan 2008 06:08
I have a level which encompass every tile of the FPSC world and certainly more than 4 tile floors in height in parts. The levels have large textures throughout. I load and unload many entities perhaps hundreds throught the levels on the fly. I replace lifts which are a no no in extremely complex levels with other options. The level fps is good throughout.

Characters they are another matter and in the recent FPSC versions in particular. They kill the fps dead. Not a lot you can do about it. Its simple, small, low quality levels with a few more characters or large higher quality levels with no Characters, or perhaps something in between if your game calls for it. Characters are not well placed to work well in anything other than limited circumstances if you want to load and unload them on the fly. They are the restricting factor to smooth gameplay and fps which kinda defeats the object of an fps game. Even a very small world size like FPSC could ideally need to accommodate quite a large number of characters/enemies of varied types to provide good gameplay That is not unreasonable to expect from a modern game. Other problems or issues affecting fps have a lesser role to play - they can be at least partially bwe well overcome using techniques we all know about despite it meaning perhaps a great deal of effort and work for the developer. Characters and their AI issues on the other hand can not at least not without resort to the source as far as I am aware and I am not sure what kind of success that would return. No major improvement I suspect. Users are stuck with the main reason for an fps game namely shooting enemies and reasonable numbers of them being the thing they cant have in their game being unsolvable currently. I guess a good fps game level even the size of the FPSC world overall could need in some types of game a much larger number of enemies than FPSC will currently allow and more in view at any one time than is currently possible to make it worthwhile. 1 Character here or there displaced throughout a level whether enemy or simply bystanders in the game is not generally speaking condusive of good fps gameplay. FPS games are in the true sense of the word about shooting enemies, by and large lots of them, the more the merrier. Not always true of course in all games which may have many other interesting interactive features to occupy a player.

Hopefully everyone will see some improvement in the situation when TGC update next. There are very talented people here at these forums we have all seen that. It is unfortunate that currently FPSC issues hold their game making endeavours back. It would be good to see the FPSC community have the FPSC tool updated to give them the freedom to really output what we all know they are capable of as developers given the chance and the tools they need.

Given that I would look forward very much to 2008 and seeing the improvements in games made by the FPSC community here.

I hope you all have a good years game making everyone.



TGPEG,

Nice screen shot by the way.

Update :

I just picked up FPSC and ran some tests on the latest release 1.07 as I have not used FPSC for some time and most of my understanding goes back to when I was running V1.04RC2 which was as far as I am aware the last fastest version of FPSC.

Useing 1.07 on the same levels without change I am getting a similar kind of seriously low frame rates that have cropped up in various versions some of which were when I was testing for gameplay speeds with and passing the info to Lee. There have been many fluctuations in versions throughout FPSC development history both in released and unreleased versions. 1.07 is showing similar characteristics as some of the worst ever versions for my levels at least which are highly complex. Scenes of around 108,000 polys to view and 6 characters active in area. Some versions have been able to handle that well. 1.07 does not for me at least running at an average of 10 - 15 fps so I put it back on the shelf. Not sure why this is the case exactly, it seems the engine code efficiency itself is not responding well to the strain of the scene management. The number of polys, characters and other content being exactly the same and the scene being consistently the same throughtout all version tests. My levels have not changed for well over a year and a half. Same content, various versions, various results. For sure I cant work with the current version as there would be no way I could increase the fps by about 3 times the current I am getting which is what is needed no matter how much effort I made or optimising I did.



"There are those who said this day would never come - What have they to say now?"
TGPEG
17
Years of Service
User Offline
Joined: 28th Dec 2006
Location: Bristol, United Kingdom
Posted: 4th Jan 2008 10:51
@uman: Thanks

I'll try running the level on 1.04 then.

[center]
Defy
FPSC BOTB Developer
VBOTB Developer '09
17
Years of Service
User Offline
Joined: 20th Aug 2007
Location:
Posted: 5th Jan 2008 01:59 Edited at: 5th Jan 2008 02:11
@TGPEG - nice research. Oh, yeah that screen rules.

@uman - 1.04 you say..hmm interesting. Thanks for running the tests.
I didnt know that you havn't used fpsc for some time, and I guess alot has changed now up to 1.07.
However I wonder why this wasnt noted earlier by someone after v1.04 was updated. I would think someone would have noticed that the updates were becoming slower with detailed maps. Maybe additional updates has added to recent updates having undesired effects.
Depending on if there will be a 1.08 update, I wonder if adjusting or adding to the code might make it even slower.

When I first started using the fpsc engine, i was suss on a 3d engine being edited by a gui editor in the way it preforms tasks. I even looked into the case and can not find remove, edit or delete on the back cover. Leading me to now call it the Placer.
Even though I plan to use Lemur, I will also look into the 1.04 version, and see what happens. I've seen 1.06 also noted as being good. Thanks for your research.


Update: @uman - any chance to check out one of your screens of this world/map using the grid? Also in another topic i fired you a Q, however you may have missed it, and it didnt really matter anyway. Either way, what are your pc specs if you dont mind me asking?


"in videogames you try to get the best graphics with the least amount of processing." -Ingolme
uman
Retired Moderator
19
Years of Service
User Offline
Joined: 22nd Oct 2004
Location: UK
Posted: 5th Jan 2008 03:47
Screen Shots posted a long time ago during early development using eraly versions of FPSC as far back as V1 are still buried here deep in the forum threads of the past. There are 5 pages of posts and Screen Shots scattered through them. They all show fps at about 32fps. V1.07 gives me about half that fps at best. The levels have not changed since the earlier versions of FPSC or at least V1.04RC2 anyways except to their dertriment by having to split some of the levels up in order to try and maitain fps. They are still very complex overall.

Using earlier versions of FPSC is no option as they all too had various issues and less features than the current version which at least has some new features which are necessary to users wishing to make games. The ability to Save for instance. I would not suggest anyone users older versions for various reasons they each have some reason to restrict your game making capability. There has been no single version I personally know of that has not had one major issue or another. e.g. High Polycounts, Serious Lagg, Clipping and AI issues have always been there but the engines (or source) efficiency in handling them has varied dramatically.

Reasons FPSC is as is now are complicated and varied. TGC have many considerations. No comment other than that.

Back on topic heres the location of Screen Shots of the previous development on hold this long time. I may pick it up again with X10 but await to see if that proves to be any better for the FPSC game making community with regard to the same issues as FPSC Classic first.

Previous Screen Shots are here :
http://forum.thegamecreators.com/?m=forum_view&t=66481&b=25

Have fun

"There are those who said this day would never come - What have they to say now?"
Defy
FPSC BOTB Developer
VBOTB Developer '09
17
Years of Service
User Offline
Joined: 20th Aug 2007
Location:
Posted: 5th Jan 2008 04:16
@uman, Thanks for your reply and knowledge on this topic.
Quote: "The ability to Save for instance."
- too right.
Also, even though I should have looked first, thanks for posting the link.


"in videogames you try to get the best graphics with the least amount of processing." -Ingolme
uman
Retired Moderator
19
Years of Service
User Offline
Joined: 22nd Oct 2004
Location: UK
Posted: 5th Jan 2008 04:31
Not sure that I have much knowledge I just repeat what I have found. Its well known though that FPSC can even behave widely differently on different users systems so its difficult to access whats always best - unless you actually try something you wont know for sure if it will work or not. Instability in this way is in itself an issue, apparently?

Back on topic again : to answer the Question Optimising Games - How do you do it? Well currently if you can accept that you may have to use a portion of the FPSC world size and keep the level simple and half empty you got a chance. If you want to use all the level map area and make a detailed game with levels of content and gameplay anything like the end user of your game will or may expect you may be in for a hiding from FPSC.



"There are those who said this day would never come - What have they to say now?"
FredP
Retired Moderator
18
Years of Service
User Offline
Joined: 27th Feb 2006
Location: Indiana
Posted: 5th Jan 2008 05:07
Quote: "It would be good to see the FPSC community have the FPSC tool updated to give them the freedom to really output what we all know they are capable of as developers given the chance and the tools they need. "

I couldn't have said it better.

Please have mercy and use the search function.
Defy
FPSC BOTB Developer
VBOTB Developer '09
17
Years of Service
User Offline
Joined: 20th Aug 2007
Location:
Posted: 5th Jan 2008 05:57 Edited at: 5th Jan 2008 06:29
Quote: "Not sure that I have much knowledge I just repeat what I have found."

Yeah, I was referring to the v1.04update. And that you have used V1 etc.
Quote: "Its well known though that FPSC can even behave widely differently on different users systems so its difficult to access whats always best - unless you actually try something you wont know for sure if it will work or not."

Yeah, I agree with this. Ive seen some strange posts with good specs. And trying something is the best way, myself did this for the last 4 months and Im glad I did.
Updated: Also I checked out your thread. And yeah I had a look at the City Heights1 shot, Nice screens by the way.


@FredP - yeah it was a good quote hey.


"in videogames you try to get the best graphics with the least amount of processing." -Ingolme
TGPEG
17
Years of Service
User Offline
Joined: 28th Dec 2006
Location: Bristol, United Kingdom
Posted: 5th Jan 2008 11:25
i was thinking about beyond life. that was done on v1 and the framerate was better than anything on v1.07

[center]
Plystire
21
Years of Service
User Offline
Joined: 18th Feb 2003
Location: Staring into the digital ether
Posted: 5th Jan 2008 12:11 Edited at: 5th Jan 2008 12:12
Well, I've taken a look at how the FPSC engine processes the AI scripts, and I've considered a few ways to increase it's performance, however, I neither have the time nor the patience to implement it.

In a nutshell the engine looks like this:

-Parse first line until finding either semicolon or colon
-if semicolon was found, move onto next line
-Label A
-if colon was found, parse next "condition"
-parse until finding either "=" or "," or ":"
-"=" found
----parse numbers or ranges
-"," found
----continue parsing conditions as per the above method
-":" found
----move into "action" parsing, Label B
-Goto Label A
-Label B
-parse actions as we have parsed conditions, until end of line is found

Now... mind you, this is done REAL TIME. From I've uncovered (And this may or may not have been changed) the engine parses AI every loop. It does not store the actions and conditions into an entity array for later recalling. Now, for it to parse the AI like this ALL THE TIME and still get 30+ FPS at all is amazing, by my own standards, lol.

I've considered the fact that the AI scripts could be treated the same as images are in FPSC. Try to find the "faster loading" file type of the script (.dds for the images) and if it cannot find one, then create one. For scripts it would try to find a binary/decimal version of the script file to read and parse or it will parse it RIGHT NOW and create one on the fly for later use. This would:
A) Decrease loading time later on down the road
B) Allow the engine to parse the scripts FASTER, while still doing it on the fly.

Another method I've thought of would be to parse ALL scripts used inside a level, and store them within an array assigned to each entity. I ditched that idea because scripts can become extremely large and FPSC is already memory intensive as it is, WITHOUT having umpteen thousand arrays of measureless capacity. However, if this idea were put to use in a memory safe manner, then it would allow the engine NOT to have to parse scripts on the fly and simply recall them from memory! That could potentially increase framerate with characters on screen practically ten-fold!!!


But, i still think TGC is doing a fine job of getting more and more characters on screen at the same time.

I hope they do more in the future to help out the AI and framerate issues, but one can only hope at this point.


The one and only,
~PlystirE~

Urlforce:
Dude, I'd rather be declared a dbpro noob than an fpsc legend any day!
CoffeeGrunt
17
Years of Service
User Offline
Joined: 5th Oct 2007
Location: England
Posted: 5th Jan 2008 12:58
Quote: "i was thinking about beyond life. that was done on v1 and the framerate was better than anything on v1.07
"


Yeh.....

Beyond Life was excellently put together, loads of custom content, good cinematics,......

But have you ever seen the 1st game built in FPSC? It was a full-stock WWII with near no cinematics and that was still great?

Both made in V1.0 and the only problem with each is that it took 1/2 hour to load.

TGPEG
17
Years of Service
User Offline
Joined: 28th Dec 2006
Location: Bristol, United Kingdom
Posted: 5th Jan 2008 13:28 Edited at: 5th Jan 2008 13:47
Quote: "-Parse first line until finding either semicolon or colon
-if semicolon was found, move onto next line
-Label A
-if colon was found, parse next "condition"
-parse until finding either "=" or "," or ":"
-"=" found
----parse numbers or ranges
-"," found
----continue parsing conditions as per the above method
-":" found
----move into "action" parsing, Label B
-Goto Label A
-Label B
-parse actions as we have parsed conditions, until end of line is found
"

Yeah, I know exatly what that means. And I completely agree with whatever it says... or doesn't say...or...

Quote: "Both made in V1.0 and the only problem with each is that it took 1/2 hour to load."

Well it depends which you would rather have... short loading time with laggy framerate or long loading time with high framerate?

BTW I did a test on the level on 1.04 and the framerate was on the whole higher than v1.07, but in some places that in 1.07 lagged a bit (25fps maybe) in 1.04, they went down to 14fps! see attatched.

[center]

Attachments

Login to view attachments
Defy
FPSC BOTB Developer
VBOTB Developer '09
17
Years of Service
User Offline
Joined: 20th Aug 2007
Location:
Posted: 5th Jan 2008 13:46
@Plystire - great post and very interesting. Thanks for posting how FPSC engine processes AI scripts, It explains alot.

@coffee grunt -
Quote: "the only problem with each is that it took 1/2 hour to load."
yeah thats true.
Looks like there may be pro and cons to each update if they are in use.


"in videogames you try to get the best graphics with the least amount of processing." -Ingolme
xplosys
18
Years of Service
User Offline
Joined: 5th Jan 2006
Playing: FPSC Multiplayer Games
Posted: 5th Jan 2008 15:05 Edited at: 5th Jan 2008 15:10
Quote: "then it would allow the engine NOT to have to parse scripts on the fly and simply recall them from memory!"


I'm having trouble wrapping my head around this, as is sometimes the case when I can't actual see something. If the script were to be "recalled" from memory, would it be recalling the "execution" of the script, or the "script" itself. It seems that if the script were stored in memory as a "script", it would still need to be parsed real time, unless the script had no branches/decisions.

If you are just refering to access time from memory as opposed to hard drive, then no need to explain. It's just the parse reference that has me wondering.

Help my head here. It is an interesting concept indeed.

best.

TGPEG
17
Years of Service
User Offline
Joined: 28th Dec 2006
Location: Bristol, United Kingdom
Posted: 5th Jan 2008 20:04
@xplosys: I"m with you on that one. How can a script react to a condition that may or may not have happened yet?

[center]

Login to post a reply

Server time is: 2024-10-10 11:23:54
Your offset time is: 2024-10-10 11:23:54