Jump to content
TheoLogic

Performance boost and multithreading

Recommended Posts

On lower specs I want my game to look like source (old version, be4 L4D) mods, with same framerates. How higher the specs, how better I want the game to look without loosing some framerate.

That's easy. Render straight to the back buffer with no lighting. It will look terrible, but it will be fast.

 

I'd be interested in hearing some definite framerates on your machine for the editor with one of the included scenes opened, at the default window size.

Share this post


Link to post

Source has/had lightning backed :(

 

Some stats:

-Desert highway: 1 min to load

01.jpg

 

-Terrain arctic: 2 mins to load

02.jpg

 

-Train: 20 secs to load

03.jpg

 

-Tunnels: 10 secs to load

04.jpg

 

This is what I get with some post effects enabled (FPS/4):

05.jpg

 

Also remark the editor takes 1 minute to close...

Share this post


Link to post

Just to add, this is just rendering... I would only be able to run the tunnels scene with pretty poor post effects to enable gameplay.

Share this post


Link to post

these loading times don't make sense... and as for the editor taking a long time to close, wasn't that an issue back in the day with sandbox and the modelviewer due to some issue with a driver? my editor closes immediately.

Share this post


Link to post

i may be mising this but is your loading time on a laptop

as the spec you showing is laptop spec

so the slowest part you got is harddisk so it may be the problem but i could be wrong

 

PLus i would say update you driver as laptop driver are normal very old even when its a new laptop

 

sorry if am wrong on this and forget what i said

Share this post


Link to post

Your performance actually seems pretty good considering the card. You're rendering about 500,000 trees at 30 FPS with dynamic lighting on a GEForce 7? :( How is that bad?

 

I can't really comment on the load times. It doesn't make sense to me why that would be slow. Perhaps the card has a low memory bandwidth, in which case the best thing would be to lower the texture quality and reload the scene.

 

This is a sort of related topic, although I don't think multithreading would do anything for your performance on this machine:

http://blitzmax.com/...php?topic=88306

Share this post


Link to post

Well I just put together this low spec test system

 

System POS: Desktop case (That is, spread out over a desktop :lol: )

 

AMD Athlon 64 3000+ 2GHz

 

1 GB RAM

 

Maxtor 40GB HDD

 

XP Home SP3

 

Sapphire Radeon X1550 ATI 512MB DDR2 AGP

 

ATI Catalyst Display Driver Version 9.11

 

 

Editor opening : 4.5 secs

 

The only standard map I could open was the tunnels anything else caused the editor to exit.

 

Tunnels.sbx : opened in ~3 secs

 

With everything turned on or set to high that is:

 

post-12-12615172126075_thumb.jpg

 

Running the flythrough.lua I got between 7 and 12 FPS.

 

Editor when closed exited almost instantly.

Share this post


Link to post

Some bloated anti-virus programs tend to slow down opening of files (usually all commercial ones). Using ClamWin everything works fast, and it finds also real viruses (commercial ones find only false alerts).

Share this post


Link to post

The X1550 actually isn't supported because it can't perform texture lookups in the vertex shader, which is why the terrain maps crashed.

Share this post


Link to post

The X1550 actually isn't supported because it can't perform texture lookups in the vertex shader, which is why the terrain maps crashed.

 

 

I wondered about that, but I was more interested in the load times and see if I could replicate the times TheoLogic was getting.. but even with a low spec POS test system I could not. I view the results for the test platform considering its spec quite a success :lol:

 

The X1550 was the lowest spec SM3 card I had.

Share this post


Link to post

These loadingtimes are really wired.

I did a testmap with over 13600 mapmodels of one type to see how it performs or if it'll crash. But after 2mins of loading it was all fine with no errors and good framerates.

 

The maps you mention load very fast within 15sec.

Share this post


Link to post

The point has gone missing again. It's possible for me to run some cool looking things, but I don't have the performance left for gameplay!

Josh, you tell me I render about 500,000 trees at 30 FPS with dynamic lighting on a GEForce 7, I don't have anything left for gameplay. There aren't even collisions!

 

I will restate my point again:

- Make LWE deployable to lower end specs (and I don't mean 300bucks mini laptops, but for example I can run L4D2 on a GeForce go 7600, but I can't run leadwerks at decent framerates).

- Speed up everything. I want to help with this, basic tests what is or isn't faster. Test on older systems, ...

- Fix existing bugs first

Share this post


Link to post

Just to add to this I've recently done a test with 20 AI controlled NPCs. Each one uses a character controller to move about.

 

The update world statement takes 20 - 30 seconds <_<

 

Hoping this can be improved on as I would like on a level >100 AI characters.

 

My machine spec is: -

 

GW-265 GAINWARD GEFORCE GTX260 "GOLDEN SAMPLE" *216 STREAM PROCESSOR* 55NM SLI 896MB DDR3 TV-OUT/DUAL DVI PCI-EXPRESS

250 GB SATA-II HDD UDMA 300 7200 8MB

Motherboard Integrated 5.1 Sound

Motherboard Integrated Ethernet Lan (Broadband Ready)

450W PSU

Motherboard Integrated Graphics

Corsair XMS2 4GB PC2-8500 1066 MHZ (2 x 2 GB) - Lifetime Warranty (DDR2)

Intel Core 2 Duo E7500 (2 x 2.9 GHZ) 1066FSB - 3 MB

ASUS P5Q 1600FSB (Intel P45)

Share this post


Link to post

Yeah, character controllers are hard on the physics engine it looks like. For that many characters dump the player controller and just do raycasts for whatever you need. I've had 200+ NPCs moving around at 20-30FPS, but they were only doing a raycast downwards to find out the terrain height, playing 2 animations and moving around. Are they all on screen at the same time? If not, maybe turn off their player controllers when they're not on screen or > than a certain distance away and enable them when it makes a difference?

Share this post


Link to post

@ Niosop: This depends on what you are doing. In our RE::Pest game we needed every AI to be updated or else some events wouldn't occur when needed. This slowed us down to 5-10 FPS...

Share this post


Link to post
The point has gone missing again.

 

Wasn't one of those points loading times?

 

 

I can run L4D2 on a GeForce go 7600, but I can't run leadwerks at decent framerates

 

Means nothing without more info. Like what settings L4D2 was using and if it had good framerates .. the only accurate comparison that can be drawn so far is you can run both.

Share this post


Link to post

Yeah, character controllers are hard on the physics engine it looks like. For that many characters dump the player controller and just do raycasts for whatever you need. I've had 200+ NPCs moving around at 20-30FPS, but they were only doing a raycast downwards to find out the terrain height, playing 2 animations and moving around. Are they all on screen at the same time? If not, maybe turn off their player controllers when they're not on screen or > than a certain distance away and enable them when it makes a difference?

 

I was worried that doing that many line picks would be just as slow. But with your evidence I'll drop the controller. I was going to in the future anyway as I wanted to do foot placement and IK as I think floaty NPCs on slopes/stairs looks "old hat".

 

For far off characters (not viewed by players eyes) I could use the navmesh as it knows an estimate of where the floor is and recast is very fast.

 

However footplacement my be beyond me and will be out of reach for a lot of leadwerks users, so the controller does need to be sorted.

Share this post


Link to post

Wasn't one of those points loading times?

 

Means nothing without more info. Like what settings L4D2 was using and if it had good framerates .. the only accurate comparison that can be drawn so far is you can run both.

 

Loading times is one thing, I think this is just an error on older specs.

 

And what a whine about me running L4D2 at full settings on my gf's laptop, you have to be an idiot to not see the comparison. And if you read well, it uses a 7600 card, not running leadwerks over 10 FPS on low resolutions.

 

I don't try to prove LWE is slow on lower end specs and older pc's, I'm saying it is and I think most people will agree. I'm asking to boost performance, and support deploying to lower specs. I also want multithreading in-engine, so we have seperate update and render calls, ...

Share this post


Link to post

 

And what a whine about me running L4D2 at full settings on my gf's laptop, you have to be an idiot to not see the comparison. And if you read well, it uses a 7600 card, not running leadwerks over 10 FPS on low resolutions.

 

 

 

:) you never mentoned settings for L4D2 hence the comment ... you simply stated you could run it.

 

I can run L4D2 on a GeForce go 7600, but I can't run leadwerks at decent framerates

Share this post


Link to post

Loading times is one thing, I think this is just an error on older specs.

 

 

 

Well I tried it on a POS low spec system and could not get the same problem.

Share this post


Link to post

I don't try to prove LWE is slow on lower end specs and older pc's, I'm saying it is and I think most people will agree.

 

hmmm i can say the same for crysis as well when ran on a POS pc... <<--speaking from experience

Share this post


Link to post

Well I'm not saying don't update them, just don't use physics for them when the player can't even see them and slightly unrealistic behavior won't matter.

Share this post


Link to post
- Make LWE deployable to lower end specs (and I don't mean 300bucks mini laptops, but for example I can run L4D2 on a GeForce go 7600, but I can't run leadwerks at decent framerates).

Yes you can. Turn off shadows.

 

Left 4 dead uses a combination of static lightmaps and single projected shadows, with vertex colors for lighting of dynamic objects. This is the approach I used to use before version 2.0 came out. I will never again implement a bsp-based engine like this.

 

One consequence of a uniform lighting model like STALKER and Crysis use is that on low-end cards the older engines may actually look better than the newer one with settings lowered. The same was true when HL2 came out; the fixed-function renderer was so simple it looked worse than Quake 3.

Share this post


Link to post

That's it, you can't!

Even when you turn of shadows you won't be that efficient. Even with shadows off 20 character controllers lag.

Like you said, most off the problem is GPU lightning, but I am sure your own code can be boosted too...

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...