Wing Commander Prophecy: Secret Ops Model Update Pack

DefianceIndustries

Rear Admiral
Hi All,

I'm separating the work I'm doing on the WCP:SO HD Model pack to this thread from my other eye-candy thread and associated HW mod project work to keep things from getting muddled. My goal is to post regular updates to this thread on my progress as well as to take requests and feedback. That way I can keep myself motivated which is always a key in these projects. :)

I plan on doing the pack in several releases; the first major release will replace all models in the game with HD versions, including new textures and spec maps. A stretch goal for 1.0 will include updated cockpits as well; but depending on how long the models and testing take, that might get moved to 1.5. 1.0 will also include an updated Cerberus .ROM file with a simulator and model view built in. Briefing models remain a question mark, I'm pretty sure that the way I'm assembling the models will break the briefing wireframes in ICIS. I'll look at a work around for it but that may also slide to 1.5 unless it totally ruins playability.

2.0 will include visual improvements to the models as well as any "nice to have" fan requests. So far I have fully modeled cockpits and potentially animated pilots on the docket. I'm also talking with a friend of mine who is a good 2D artist, if I can land his help, I'll also look at potentially improving the weapon and damage effect sprites but that's still TBD.

Work completed thus far:

from my other thread I've been able to get a Piranha model and an Excalibur model into the ship viewer. The geometry and textures (after some heartburn) now look like they will work:

Excal_ingame1.jpg Excal_ingame2.jpg Excal_ingame3.jpg Pir_ingame1.jpg Pir_ingame2.jpg Pir_ingame3.jpg

If anyone has a hankering to help, I'm never too proud to accept it. ;)

Since I have a long holiday weekend - I'm going to put the Piranha into a simulator mission and see how it works out; watch this space.
 
Success! I've rebuilt the .IFF for the Piranha and it checks out in a sim mission. Collision meshes and shields are good, I'll have to tweak the position of the engine glows and afterburner cones though. I'll post a video in a bit once I figure out why Shadowplay refuses to actually record anything...:confused:

Also - I'm a bit miffed that SO removed the Stormfire. I'll probably re-add it at some point. 3x Ions are no Bueno against a swarm of bugs. :)

Pir_ingame4.jpg Pir_ingame5.jpg Pir_ingame6.jpg
 
Nice work. It was a great idea to use components to break up the model to get more detail in. Did you use the rotation component with 0 dps rotations to add more detail? I thought doing this might allow extra detail to be added but never tried.

I think the amount of normals contributes more to the crash than the amount of tri's. Strange thing is the code available on the DEV disks doesn't seem to indicate an upper limit, but this code is incomplete and could have been modified later. I seem to remember a while ago I imported a model which crashed the game and I was able to load it by removing duplicate normals in the VTNM segment and telling the FVRT to use the de-duplicated normal. Something to try if you aren't already?

I am not sure that you have a limit of a total number of triangles possible in gameplay, the limit will be the amount of objects you can have. These are hardcoded and can be changed. Remember this and this from HC1's page?

Also try my Frame Rate Boost and max out the FPS, see if you're getting any hit with the higher quality models.
 
Last edited by a moderator:
Did you use the rotation component with 0 dps rotations to add more detail? I thought doing this might allow extra detail to be added but never tried.

Thanks!

Yes, I used the PART chunk with 0 rotation. One thing I found is that you can't initially treat the model like a cap ship or corvette and just put one hardpoint at 0,0,0 and assemble the model around it. For some reason the engine gets the orientation of the submeshes all wrong. you need to create several hardpoints, one for each submesh where they would join on the whole model, and then build it. That gets the base orientation correct but usually the position is off, (normally down the Y axis for some reason). you can then use the hardpoint editor in wcpedit to reset them to 0,0,0 and the model then assembles fine. I'll write up a tutorial when I finish 1.0 and publish it here so others can hopefully improve off what I've done here.

I actually use the remove duplicates function in blender along with the decimate modifier to keep normals to a minimum. I've also set an arbitrary limit of no more than 2,500 faces per fighter for the initial trial run. Also once you start creating dedicated greeble parts the reassembly would take a while. Also, if the engine counts each submesh as an object, you could hit the 250 upper bound quickly. For example, the piranha is 6 submeshes, the excal is 7, multiply that by bug ships, wingman, etc. and it could get out of hand quickly. At that point I'll have to beg Lt. Overload to finish his engine upgrades. :)
 
Last edited:
Nice, that's something I always wanted to see done. I'm especially looking forward to seeing what improvements you can make to the capital ships.

Have you considered adding standoff style engine flames with additive blending?
 
Nice, that's something I always wanted to see done. I'm especially looking forward to seeing what improvements you can make to the capital ships.

Have you considered adding standoff style engine flames with additive blending?

I was thinking about that - I need to do the specular mapping first though.
 
Thanks!

Also, if the engine counts each submesh as an object, you could hit the 250 upper bound quickly. For example, the piranha is 6 submeshes, the excal is 7, multiply that by bug ships, wingman, etc. and it could get out of hand quickly.

You're right. Take the Midway... It has 25 laser turrets, six missile turrets, two launchers, two landing decks, two engines and a bridge. The laser and missile turrets are each made up of two separate objects. So the Midway itself is 69 objects by itself! To me now it is strange an arbitrary limit of 256 objects was set, but back then in 1996/7 the amount of video memory available was just scratching double digit megabytes so it would make sense. Fortunately now we can tweak these limits.

Edit: I even forgot the plasma weapon, make that 70 objects for the Midway!
 
You're right. Take the Midway... It has 25 laser turrets, six missile turrets, two launchers, two landing decks, two engines and a bridge. The laser and missile turrets are each made up of two separate objects. So the Midway itself is 69 objects by itself! To me now it is strange an arbitrary limit of 256 objects was set, but back then in 1996/7 the amount of video memory available was just scratching double digit megabytes so it would make sense. Fortunately now we can tweak these limits.
You need to set limits, generally, because it allows you to design specific structures to keep things in memory. It's not even a matter of what the limit is, rather it's a matter of simply having some sort of limit so that you know what you're dealing with. Why bother setting up a cumbersome, open-ended structure? To be "futureproof", when two years down the track you'll be building a new engine? Or to be prepared for the seemingly very likely chance that 18 years later, fans will still be modding your game? :)

In any case, I would strongly disagree that 256 is a low limit. Particularly in 1997, what possible purpose could there have been to having more child objects, when most of the objects had radically low poly counts in the first place? Even at that time, the Midway could have doubled its poly count without adding a single extra object into the game. It would still have worked fine under some circumstances, but of course in particularly heavy battles, the framerate would have dropped terribly. So, at the time, this just wasn't an issue.

Is it an issue today? Well, sure, maybe. Let me know when somebody makes a Midway model that makes full use of the 1000-1500 polys per object limit for each of those 70 child objects, and then adds another 140 child objects on top of the originals, tripling the number of child objects altogether, and boosting the polycount to over 200,000. Somehow, however, I just don't see that happening too soon.
 
Or to be prepared for the seemingly very likely chance that 18 years later, fans will still be modding your game?

Aw come on Quarto? Who would be silly enough to try and resurrect an 18 year old game engine to...oh wait.

On another note: Got the Excalibur into the game. Below are some shots from Ella2. I'll have to make some changes to the location of the engine flares per normal. Enjoy!

Excal_ingame4.jpg Excal_ingame5.jpg Excal_ingame6.jpg Excal_ingame7.jpg Excal_ingame8.jpgExcal_ingame9.jpg Excal_ingame10.jpg
 
Last edited:
The Vision Engine has so much potential. I really like the models and what you've done so far, and the clever way to got around to doing it. Keep up the good work.

As for relying on me to make any improvements to the engine, don't. :P The most I'd be able to do, at first anyways, is incorporate HCl's engine modifications into vanilla Secret Ops. I don't even know if he found a way of upping the base polycount. The problem is, life finds a way to entrench on my efforts, and roadblocks kill my motivation to continue working on it. I may have some free time coming in the latter half of next month into January. But like I said, don't hold your breath on me coming up with some revolutionary new thing that makes the game modernized.

And if I recall correctly, was the Excalibur incorrectly scaled in SO? Like the model was significantly smaller that what it should have been?

As for the lack of Stormfire, the Accel Chamber, an unused gun in SO's files, already is a ammo-based weapon. Simply change the stat values to match the Stormfire, and copy over the texture code from Prophecy's game.iff and you got yourself a Stormfire in SO.
 
was the Excalibur incorrectly scaled in SO?

I scaled the model to 31 meters which is what the encyclopedia has it at. my model is longer than the original SO model, but only by a meter or so because I added actual engine nacelles whereas the SO model doesn't. That accounts for the difference. I usually pull in the original model and compare it against mine after I scale it to see if there are huge discrepancies.

Oh and I get it; life is always trying to sneak in and hose me too. :)

***Edit - the encyclopedia has the Excalibur at 32 meters. I checked my dimensions in blender and they are 32.132 meters.***
 
Last edited:
The Vision Engine has so much potential. I really like the models and what you've done so far, and the clever way to got around to doing it. Keep up the good work.

As for relying on me to make any improvements to the engine, don't. :p The most I'd be able to do, at first anyways, is incorporate HCl's engine modifications into vanilla Secret Ops. I don't even know if he found a way of upping the base polycount. The problem is, life finds a way to entrench on my efforts, and roadblocks kill my motivation to continue working on it. I may have some free time coming in the latter half of next month into January. But like I said, don't hold your breath on me coming up with some revolutionary new thing that makes the game modernized.

And if I recall correctly, was the Excalibur incorrectly scaled in SO? Like the model was significantly smaller that what it should have been?

As for the lack of Stormfire, the Accel Chamber, an unused gun in SO's files, already is a ammo-based weapon. Simply change the stat values to match the Stormfire, and copy over the texture code from Prophecy's game.iff and you got yourself a Stormfire in SO.
Some old engines, can be upgraded to a point that they can hold even larger poly models without losing performance

LordHavok made a great example of that with Darkplaces Quake, before he was hired to work on Google... Someone made even a mod to port The Shambler's Castle monsters from the Doom 3 mod to Quake 1, and it works perfecly!

and Battlezone II Remodeled HD mod(since bz2 engine its based on the Dark Reign 2 one)

http://www.moddb.com/mods/battlezone-ii-remodeled/images
 
Some old engines, can be upgraded to a point that they can hold even larger poly models without losing performance
Yes, where source code is available. When working with source code, however, it's not really modding - it is a real, genuine upgrade of the technology. In the case of WCP/SO, we are relying on technological hacks, which are somewhat limited.
 
Speaking of hacks, I would love for there to be a dll hook to reverse joystick rudder input. It's been a long annoyance..
 
So I'm going to keep working on fighters, but I'm also noodling over some revisions to the Cerebus. I've always thought it looked a bit too much like a 1930's roadster or an Edsel. So I'm going to post a quick poll here. Do you want a newly "reimagined" Cerebus (keeping the same basic idea and structures) or leave it as is?
 
Do you want a newly "reimagined" Cerebus (keeping the same basic idea and structures) or leave it as is?
For this kind of project, I am not a big fan of "reimagining". It must be as faithfull to the original as possible.

Awesome project BTW ! I've tried to do exactly that some time ago, the plan was to include the hi-res models into the OpenGL enhancement package... but since I am no artist I had to find a modeler, found none and then gave up :p

Keep it up !
 
As Pete said, staying faithful to the originals gets my vote. Although I'd be curious to see a sketch or rough model of your idea if you already have one.

Keep up the great work!
 
Yeah, I would agree with Pete on that. I don't at all mind "reimaginings", and a couple of ships were slightly reimagined in Standoff, but a high-poly upgrade should be just a high-poly upgrade.


Speaking of hacks, I would love for there to be a dll hook to reverse joystick rudder input. It's been a long annoyance..
Hmm, what do you mean by this? You want to change the yaw axis, so that right goes left, or something?
 
Back
Top