Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: ##UnknownPlayer## on October 07, 2004, 09:29:18 am
-
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)
-
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
-
Excellent...
-
*cough*Fenris*cough*
:nervous:
-
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.
-
Originally posted by magatsu1
*cough*Fenris*cough*
For the Fenris it's more like:
*cough* *cough* *gasp* *choke* *gasp* *gasp* *thud*
-
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.
-
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+:
% 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*)
-
1.3 BILLION calls to same_vert HOLY ****ING HELL
-
i think it would be a good idea to have a separate program to create ibx files.
-
phreak: it creates them once aand then loads them from disk after that (soon as taylor commits that feature to CVS!)
-
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.