Hard Light Productions Forums

Community Projects => The FreeSpace Upgrade Project => Topic started by: MatthTheGeek on February 28, 2012, 10:13:38 am

Title: Split From: High Poly GTD Orion
Post by: MatthTheGeek on February 28, 2012, 10:13:38 am
The Legion hole could be made with destroyable subsystem. So you could see the beam blow through it ingame. How cool would that be.
Title: Re: Split From: High Poly GTD Orion
Post by: headdie on February 28, 2012, 11:59:26 am
The Legion hole could be made with destroyable subsystem. So you could see the beam blow through it ingame. How cool would that be.

That would be nice to see
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 28, 2012, 12:12:22 pm
That would've been perfect, and we'd get a ready Legion with Mediavps. Of course, this subsystem would have to be indestructible in normal gameplay, or else you could do this kind of damage with Akheton SDGs.
Though I admit, that would be one hilarious bug if it wasn't set as near-invulneable.  :)
Title: Re: Split From: High Poly GTD Orion
Post by: headdie on February 28, 2012, 12:18:28 pm
That would've been perfect, and we'd get a ready Legion with Mediavps. Of course, this subsystem would have to be indestructible in normal gameplay, or else you could do this kind of damage with Akheton SDGs.
Though I admit, that would be one hilarious bug if it wasn't set as near-invulneable.  :)

subsystem armour
Title: Re: Split From: High Poly GTD Orion
Post by: Fury on February 28, 2012, 12:19:41 pm
You could use armor types to allow only big beams to damage it.

Edit: goddamn headdie.
Title: Re: Split From: High Poly GTD Orion
Post by: headdie on February 28, 2012, 12:23:01 pm
:D
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 28, 2012, 12:25:55 pm
That's one way to do it, but I don't think it should be damageable at all during normal gameplay, since a large beam can strike from a wrong angle and end up making a hole facing in the wrong direction.
Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 28, 2012, 12:28:32 pm
This is totally unnecessary to have on the root MVPs Orion.. So many issues with it that we'd have to guard against... And how many campaigns actually use the Legion model in such a way that it needs to be in the MVPs?
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 28, 2012, 12:32:50 pm
It wouldn't cause too many issues, just set the hole filling with an invulnerable armor type and call it a day.
It could then be detonated via SEXP, should the mission designer want a dramatic beam pierce.
Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 28, 2012, 12:38:35 pm
Yeah.. no. This is a silly idea because again, you haven't told me the benefit to having such a specific kind of modelled damage. I can only think of one campaign that uses the Legion and it's so far away that it would never be rendered at full detail anyway. (ST:R) There is no benefit to mucking up a model with damage from a beam from a pretty specific angle for the 1 or 2 campaigns that might use it.

No, the better way is to take this model, when finished and model in the damage, then release it as the Legion. Bing Bang Boom. Done.
Title: Re: Split From: High Poly GTD Orion
Post by: Rodo on February 28, 2012, 12:45:35 pm
He's right, you know. Besides adding that damage detail will delay the progress on the model.
I'd rather have a finished model and then get someone else to add the damage from the source files... still, this is something Hades will decide.
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 28, 2012, 12:46:27 pm
You forgot about Transcend, which uses a different Legion (except it's not actually the Legion, but the model was build for it) than ST:R, though any changes won't alter the balance in any way.
Also, I recall the Legion being used in at least one more place (FOW:COTS?). That makes three appearances. I think that's enough, not to mention people might want a "derelict Orion" model. Including it like that could simplify things greatly (for example, a mission designer who'd like to use the derelict model wouldn't need any mods, just Mediavps).
This could indeed increase the development time though.
Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 28, 2012, 12:54:24 pm
No. We are not in the business of including models for campaigns that might want them. We upgrade the retail FS2 campaign and offer support to mods that want to update to use the latest MediaVPs. Once we start adding little things for any ship that it used in 3(?) campaigns or more, where do we put our foot down? At what point do we say 'no, that's not what we do in FSU'?

I will not be the one working on this model in any way, shape, or form... so it's not up to me. But I think this is a bad idea, a waste of talent and time, and sets a bad FSU precedent.
Title: Re: Split From: High Poly GTD Orion
Post by: Fury on February 28, 2012, 01:04:29 pm
I'd just like to point out that modeled damaged parts would be awesome, like poor man's geomod. Like for example, inflict enough damage on Orion's nose and see part of it breaking off. Like those spikes of Basestars in Diaspora.

The bottom line, anything that makes a capital ship actually look like it has received heavy damage is a big bonus in my books. It's just immersion breaking when the ship looks identical at 100% and at 1% and then suddenly goes boom.
Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 28, 2012, 01:10:52 pm
We aren't talking about generic modeled damage... which has complications of its own with retail compatibility.

we are talking about a very specific chunk of damage from a cutscene that would only look good in certain circumstances.
Title: Re: Split From: High Poly GTD Orion
Post by: Rga_Noris on February 28, 2012, 01:25:27 pm
Even if this is done, it should be released stand alone in the modding forum.

There is no reason to delay the release of this model for that feature in regards to the FSU.
Title: Re: Split From: High Poly GTD Orion
Post by: Hades on February 28, 2012, 07:39:27 pm
I'll look into modeling hull damage, etc into the mesh. Not massive, cruiser sized chunks, because, to me, that'd hurt immersion more than help it, but somewhat smaller chunks all around.

Though. I don't want to do this for subsystems, because the engine doesn't differenciate between a subsystem being destroyed by an antisubsystem weapon that does not do any physical damage, and a weapon that's meant to do physical damage and hits the subsystem and destroys it. Too many instances of a ship being disabled by antisubsystem weapons and then being repaired even though it has large chunks of its engines missing.

However, if some beautiful coding god manages to get something like that coded in, me love you long time.

I also think a decal system similar to Homeworld 2 would be awesome and nearly as good, but I doubt we'll be getting that anytime soon.

No, the Legion isn't going into the mediavps. Should we add the Saturn, because it's a retextured Hades? Should we add the numerous retextured Apollo variants, etc etc? No.

I may do a Legion variant but don't count on it. It's so low on my priorities list for this mesh you'd as well consider it not there at all. Certainly not going to hold back the main mesh, in any case.
Title: Re: Split From: High Poly GTD Orion
Post by: Fury on February 28, 2012, 11:42:43 pm
Though. I don't want to do this for subsystems, because the engine doesn't differenciate between a subsystem being destroyed by an antisubsystem weapon that does not do any physical damage, and a weapon that's meant to do physical damage and hits the subsystem and destroys it. Too many instances of a ship being disabled by antisubsystem weapons and then being repaired even though it has large chunks of its engines missing.

However, if some beautiful coding god manages to get something like that coded in, me love you long time.
Like already pointed out by headdie and me, this can be done with armor types.
Title: Re: Split From: High Poly GTD Orion
Post by: Hades on February 28, 2012, 11:54:18 pm
So, the game won't cause the destroyed version armor/engine/etc when a subsystem is destroyed by antisubsystem guns? Sweet.
Title: Re: Split From: High Poly GTD Orion
Post by: Fury on February 29, 2012, 12:51:27 am
No. If you want regular subsystems like turrets and engines to use different destroyed submodel based on what they were destroyed with, it can't be done currently. If that's what you wanted, then I misinterpreted your post.


What I was talking about is that you can use armor types to protect untargetable subsystems from all but biggest weapons like the beams and bombs in FS2 to simulate visible deformation of hull. For example, you model a destroyable submodel for Orion's nose. That subsystem is tabled to be untargetable and protected by armor types against anything but bombs and huge beams. After suffering enough damage by such weapons, the chunk falls apart like that Basestar's spike tip in one of those Diaspora videos.

Another example would be the Legion but not in such extreme way. Instead of a gaping hole that goes right through, it could be a hole in armor plating that exposes superstructure underneath the armor. Imagine an Orion getting pounded by LRed, the area where beam impacted now has visible deformation in the hull where armor plating has been destroyed, exposing innards of the destroyer.

Such destroyable subsystems could be placed in various locations of ships to simulate hull deformation. You just need extra time and effort to model these destroyable subsystems, the rest is piece of cake. I would like to argue that spending that time and effort would be time and effort well spent. Why? Because even if one day we get decals back, they cannot deform the hull. Decals are like persistent impact explosions, they do not shape the ship in any way.

Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 29, 2012, 07:34:11 am
Meh. It'd would lose it's novelty pretty quickly because it would always be thesame chunks being destroyed.
Title: Re: Split From: High Poly GTD Orion
Post by: MatthTheGeek on February 29, 2012, 08:11:35 am
Right. let's stop everything, because HTL will loose their novelty pretty quick. I mean, it's always the same ship being displayed, right ?
Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 29, 2012, 08:23:35 am
You know what I mean. You're argument is worthless.

Same damage means those same pieces always break off regardless of where the hit came from.

Not to mention the retail compatibility issues of too much debris in the mission space and the possibility of reducing the surface area of a model dynamically throughout the mission. (Though that will affect larger ships less)

Also, smoothing issues across separated chunks will be a Pain.In.The.Ass.

My whole point is that it's a negligable gain that after a few times seeing it, you'll (well not any of you since you aren't doing all the work).. Hades will wonder if it was worth that amount of effort. Destroyed sections aren't easy to make look right. Sure, there's the lazy way of boolean + damage.dds... VA did a really nice job with some models for ST:R and that's the only damage I've seen look so nice. You need to twist up the metal, expose girders and steel... and texture it all accordingly. Then in this case, make sure none of that is visible before the chunk is destroyed.

Consider, now, who is modelling this. Hades is a skilled modeller for sure. But he has consistently not UV'd or textured his models. Perhaps he can, like he has in the past, convince someone to UV and texture such a complicated setup.. but I wouldn't do it. Texturing a destroyer sized ship (and the Orion to boot) is tough enough.

EDIT: Not to mention that this whole idea is a stupid hack.
Title: Re: Split From: High Poly GTD Orion
Post by: Fury on February 29, 2012, 08:44:57 am
Meh. It'd would lose it's novelty pretty quickly because it would always be thesame chunks being destroyed.
I'm sorry but that sounds really lame excuse. Pretty much everything loses their novelty quickly, new effects, new models, new textures. You see them a few times, they never change and thus lose their novelty. If you're going that route, we can say that your mainhalls lose their novelty after people have seen them a dozen times. Does that mean you've wasted time and effort on them and thickness of the cables? I don't think so, they're definite improvement over old ones regardless and people wouldn't want to return to old ones.

Of course it requires work, what doesn't? I'm sorry if you feel it's a stupid hack, but having hull deformations on ships that have taken damage can make quite a bit of difference in visual department even after they have lost their novelty. Destroyable subobjects are a solid way to accomplish this. Give them such a ship, let it lose its novelty and then take it away from people. I'm pretty sure they're going to throw a fit.
Title: Re: Split From: High Poly GTD Orion
Post by: mjn.mixael on February 29, 2012, 08:50:16 am
We'll see.

I don't think the visuals will work out like you all think. Also, smoothing. It won't work across submodels. Good luck with that.
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 29, 2012, 09:24:44 am
For some reason, Esarai's Horizon did that and looks just fine.
Title: Re: Split From: High Poly GTD Orion
Post by: Mongoose on February 29, 2012, 12:29:16 pm
obviously the solution for all our problems is to geomod oh god please don't kill me :nervous:
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 29, 2012, 01:07:36 pm
Of course, GeoMod would be the best (form the visual standpoint) solution, but I guess it wouldn't be easy to implement into FS, and I don't think we'll see it in the forseeable future (*waits for Valathil to take up the challenge :)).
Title: Re: Split From: High Poly GTD Orion
Post by: Vasudan Admiral on February 29, 2012, 05:32:18 pm
Working decals with normal maps (as has been mentioned) would be the best way to get a ship to display progressive battle damage.

Just as geomodding kills coders, generic destroyable 'damage subobjects' kills modders. :p
Especially if you want live debris. Seriously, the amount of work it adds to the already fairly lengthy time to build a good ship and get it in game is just not worth it. Most mods (including the FSU) have their shipbuilding capabilities already stretched to the limit, so I'd say it'd be a much more worthwhile use of time moving on to the next ship rather than devoting time towards making a few damage chunk submodels.

It's not too hard to have destroyable details on the surface of the ship - those can be cool with (sometimes) relatively little extra effort, but as soon as you want to go taking chunks out of the hull, you have the problem of the edges of the hole, because what happens is that those edges need to look good when the hole is covered AND when the hole is showing. That's the really difficult bit. And yeah as Mjn has already said, smoothing over a splitline through curved surfaces is pretty much impossible.

-------

Now decals with normal maps could be much more finely crafted so that you can see damaged internals almost as though they were geometry, and you'd also get the blackening effect around the edges of the hole that is so important to the overall impression. With shaders you could probably even get some to give a distortion effect to the hull beneath implying warping/denting etc. Given a variety of these and maybe better and/or more varied particle spew effects on impact, you could get a much better looking overall progressive damage system for all ships for a tiny fraction of the effort needed to get even a handful of large ships using damage subobjects.
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 29, 2012, 05:41:13 pm
Perhaps it could be done by using a "damaged" map, which would show instead of diffuse in every place the ship is hit in. It could be comparatively easily made from the diffuse map, and have it's own glow, shine and normal maps. While it would effectively double the texture count, the visual effects could be worth it. Also, not every such map would need glowmaps, plus it could have lower resolution than main diffuse map.
I don't know if it's actually doable though.
Title: Re: Split From: High Poly GTD Orion
Post by: The E on February 29, 2012, 05:50:41 pm
You do not know how decals work.

In technical terms, this is what we'd have to do:

1. Let us assume a weapon has hit a ship's hull.
2. We need to track and record the exact polygon the weapon hit. We also need the exact distance of the impact point to the nearest vertices of that polygon.
3. We need to modify the vertex buffer object representing the ship so that we can render our decal. We also need to create a separate buffer object for every ship, instead of every class as we do now. Actually, given how FSO models are structured, any model can spawn a number of vbos, one for every subobject and one for every material.
We basically need to modify it in order to tell our shaders which decal to render where.

We need a LOT of modifications to the code to make this work in a performant way, because there's very little that we can do here that could be offloaded to the GPU.
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on February 29, 2012, 06:01:09 pm
You're talking about decals (I do know how they work) and I was talking about something with a similar purpose, yet different. I wanted a "scotched" map which would replace the diffuse in every place the ship took a hit, in a radius which would be set on a per-weapon basis. I don't know how feasible this would be, but it'd allow for an unlimited scotch mark number on any ship (in theory, a shot-up ship could have it's entire diffuse map replaced with "damage" map), and if done right, transition would be smooth enough for the scotch marks not to look "tacked on", as it's sometimes the case with decals.
Again I don't know if this is feasible or even doable.
Title: Re: Split From: High Poly GTD Orion
Post by: Hades on February 29, 2012, 06:33:04 pm
I don't know how feasible this would be
the way you want it? not at all, but what The_E suggests is and that's what I want more than modeling the damage itself (which I don't want to do either way)
Title: Re: Split From: High Poly GTD Orion
Post by: Vasudan Admiral on February 29, 2012, 07:04:24 pm
Damage maps as suggested also don't work on mirrored ships - it'll look....a bit silly. ;) Decals aren't constrained to UVs which is what makes them so powerful. Unfortunately they're also quite difficult to implement as The_E detailed. Bobboau got a decal system working many years ago, but IIRC it caused a lot of very difficult to kill bugs and had to be reverted, and sadly it has not been worked on since. :(
Title: Re: Split From: High Poly GTD Orion
Post by: Flaser on March 02, 2012, 04:18:57 pm
I'm sorry to have derailed the thread so much.
I suggest further discussion take place in this thread:

Visible damage on ships
http://www.hard-light.net/forums/index.php?topic=80098.0

Returning to what I meant to ask originally: I only meant stuff we already see on other models, like Bobbau's Deimos, etc. Hades has made it clear he'll incorporate a number of such submodels into the ship where he feels the workload/benefit will warrant it.

With that out of the way and a dedicated thread to argue, I think it's time we returned to giving constructive criticism and heartfelt encouragement to Hades as the newest upgraded model of the Orion is made.
Title: Re: Split From: High Poly GTD Orion
Post by: The E on March 03, 2012, 04:05:01 am
*words*

Dragon, there is no difference between a decal system and what you are proposing.
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on March 03, 2012, 06:32:37 am
I should have been more clear. Decals (as far I've seen) are individual bitmaps, independent of the ship they appear on. They're weapon specific, and in most games, there can be a finite number of them on a single object.
What I've had in mind is similar to this: http://www.hard-light.net/forums/index.php?topic=80098.msg1588235#msg1588235 Basically, another ship map which would be used wherever the ship was hit. The only thing dependent on weapon in this case if the size of a "decal". That way, the entire ship could be covered with the damage texture, without any limit.
At this point though, I've found that it has it's own problems, notably not working well with shared UV space.
Title: Re: Split From: High Poly GTD Orion
Post by: The E on March 03, 2012, 07:18:18 am
And again, on a technical level, there is no real difference. Whether you add vertex attributes to determine an area where a decal should be rendered, or add vertex attributes to determine where a map should be replaced by a map with scorch marks, it still comes down to modifying vertex attributes for a given model. In addition, the computational expenses are pretty much the same, with your solution having the added benefit of not being as flexible, and probably costing more memory.
Title: Re: Split From: High Poly GTD Orion
Post by: Dragon on March 03, 2012, 07:34:02 am
If it's so, then you're right, my method isn't the best one. Aside from allowing "infinite" decals, it provides no benefits.
My concern was that with rapid firing weapons and slashing beams, the decals per object limit will quickly be used up and the decals themselves will overlap, which tends to look bad. Is there a workaround around that?
Title: Re: Split From: High Poly GTD Orion
Post by: Aardwolf on March 03, 2012, 07:47:58 pm
That is some awesome progress on the Orion you've posted, Dragon and The E. I love what you two have done with the model! :rolleyes: