Author Topic: Load times...  (Read 2265 times)

0 Members and 1 Guest are viewing this topic.

I've just being playing FS2 with all the graphical enhancements activated. Big issue - the loading times. They are just way, way, too long.

I've been tracking down what the hang up is, and it seems to be in the HT&L initialization when the game tries to page in fighter2t-03.pof from the kpack.vp

I don't have ModelView installed right now, but which ship is this, and more importantly, is there some way we can save the data loaded by it each mission so it can be pre-read from file?

I don't fully understand the code so I'm hesitant to change it, but this issue definitely needs to be addressed else hi-poly models are just going to keep slowing everything down.

 
That's the Perseus I think (which was certainly given a high-res texture recently, maybe a high-poly model too in the MVP)

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
load times will drop soon.. because taylor was working on caching the vertex buffers to disk so they only have to be built when model files change
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 

Offline Deepblue

  • Corporate Shill
  • 210
Excellent...

 

Offline magatsu1

  • 210
*cough*Fenris*cough*

:nervous:
Blitzerland: Knows what he's talkin' about

 

Offline Trivial Psychic

  • 212
  • Snoop Junkie
Quote
Originally posted by SadisticSid
That's the Perseus I think (which was certainly given a high-res texture recently, maybe a high-poly model too in the MVP)

The Hi-Poly Perseus is not in the MVPs.  It was released in Nico's farewell thread.
The Trivial Psychic Strikes Again!

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
Quote
Originally posted by magatsu1
*cough*Fenris*cough*

For the Fenris it's more like:

*cough* *cough* *gasp* *choke* *gasp* *gasp* *thud*

 

Offline magatsu1

  • 210
Quote
Originally posted by taylor

For the Fenris it's more like:

*cough* *cough* *gasp* *choke* *gasp* *gasp* *thud*


I read somwhere in Mantis it was a table issue but I don't know if it was ever resolved.
Blitzerland: Knows what he's talkin' about

 

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
Quote
Originally posted by magatsu1
I read somwhere in Mantis it was a table issue but I don't know if it was ever resolved.

I know it will hit an Assert() during vertex generation since it returns -1 at one point.  The other issue with it is that it's just a complex model and same_vert() is really slow.  When you have to run through it about 400,000 times for the hipoly Fenris you get slowness problems.  This is some gprof data from just loading "The Romans Blunder" and then exiting on a AMD64 3400+:
Code: [Select]
 %   cumulative   self              self     total
 time   seconds   seconds    calls   s/call   s/call  name
 60.74    313.90   313.90 1290949685   0.00     0.00  same_vert(vertex*, vertex*, vector*, vector*)
 15.66    394.85    80.95   282637     0.00     0.00  find_fisrt_index(poly_list*, int)
  6.08    426.25    31.40   103167     0.00     0.00  find_fisrt_index_vb(poly_list*, int, poly_list*)

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
1.3 BILLION calls to same_vert HOLY ****ING HELL
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 

Offline phreak

  • Gun Phreak
  • 211
  • -1
i think it would be a good idea to have a separate program to create ibx files.
Offically approved by Ebola Virus Man :wtf:
phreakscp - gtalk
phreak317#7583 - discord

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
phreak: it creates them once aand then loads them from disk after that (soon as taylor commits that feature to CVS!)
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

  

Offline taylor

  • Super SCP/Linux Guru
  • Moderator
  • 212
    • http://www.icculus.org/~taylor
Quote
Originally posted by PhReAk
i think it would be a good idea to have a separate program to create ibx files.

I thought about that too but I didn't really want to write it.  You'd need so much of the POF parsing code that I didn't want to do anything from scratch.  The actual IBX read/write code is pretty well contained and easy enough to move around and I don't think there is too much to the functions that generate the data.  I suppose the code could be integrated with one of the POF utils but I haven't used any so I don't know.

My current position is tell anyone that asks to just make one or more missions in FRED that would contain all of the ships and weapons for a mod.  The mission doesn't have to do anything since all you need to do is load it once and the IBX files get generated.  After that, just pack them in a VP and distribute them.  As long as the model doesn't change the IBX will always work.

I'm probably going to go ahead and commit the IBX stuff to CVS either sometime tonight or tomorrow.  I'm happy enough with it and there isn't really a need to wait for extra testing beyond the last build so there isn't any reason to hold off on getting in CVS.