Hard Light Productions Forums

Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: Goober5000 on January 09, 2003, 10:35:07 pm

Title: Fun With Ship Models
Post by: Goober5000 on January 09, 2003, 10:35:07 pm
I found two beautiful functions while perusing the source code - ship_change_model, and change_ship_type. So I made them into sexps...

change-ship-model - changes the model used by particular ship or ships
change-ship-class - changes the class of a particular ship or ships

Normally, these would be mere oddities that could be fun to play with.  But I've already thought of two uses for them...


The RoboTech mod.  Now I haven't followed this much, but I have heard that they had two main obstacles to implementation in Freespace - departure into hangars, and model manipulation (a la Transformers, perhaps? :nervous: )  With end-mission and distance-ship-subsystem, they can exit into hangars, and now with these sexps, they can change around their models. :cool:


Cloakable Ships. ;7 This is made especially possible by Bobboau's animated texture feature.  Take a generic ship model, say the GTF Pegasus (it's already stealth!).  Copy and reskin it with animated textures displaying a cool cloaking effect.  Then copy and reskin it yet again with invisible textures.  Now to cloak the Pegasus, simply use change-ship-model to toggle the cloaking effect model,  then after a second or two use change-ship-model again to toggle the invisible model.


So modellers and skinners, get cracking!  I want to see some cloaking effects. :cool:
Title: Fun With Ship Models
Post by: Knight Templar on January 09, 2003, 10:53:50 pm
A distortion effect would be awesome for ships :D
Title: Re: Fun With Ship Models
Post by: Nico on January 10, 2003, 02:22:18 am
Quote
Originally posted by Goober5000
The RoboTech mod.  [...]and model manipulation (a la Transformers, perhaps? :nervous: )  With end-mission and distance-ship-subsystem, they can exit into hangars, and now with these sexps, they can change around their models. :cool:


that'd be cool, we already could do that, but I think it was a direct coed modificatoin or something. But there's not been any news lately from the team, so...
Title: Fun With Ship Models
Post by: Fury on January 10, 2003, 04:00:33 am
Although this is a neat feature for "transforming" ships, but it has one drawback if I got it right from Goober's explanation...

There's no animation during changing sequence, and that sequence is instaneous. Looks damn odd if a ship has shape A but second later it is shape B.

Animated shape change is what we need for TBP, for Vorlon ships for example.
OK, perhaps I did not got the terms right, but hopefully you still understand what I mean, yes? :D
Title: Fun With Ship Models
Post by: Petrarch of the VBB on January 10, 2003, 04:58:19 am
Ahh, useful for we tappers. For beast infection, and mimics.
Title: Fun With Ship Models
Post by: mikhael on January 10, 2003, 06:04:09 am
Quote
Originally posted by Mr. Fury

Animated shape change is what we need for TBP, for Vorlon ships for example.
OK, perhaps I did not got the terms right, but hopefully you still understand what I mean, yes? :D


Ray Harryhausen to the rescue!

Quote
Originally posted by Goober5000

Cloakable Ships. ... .Now to cloak the Pegasus, simply use change-ship-model to toggle the cloaking effect model,  then after a second or two use change-ship-model again to toggle the invisible model.


If you're willing to slideshow it a bit, perhaps some stop motion slideshow type stuff will do? :D
Title: Fun With Ship Models
Post by: elorran on January 10, 2003, 09:42:47 am
Interesting... indeed. :nod:
Title: Fun With Ship Models
Post by: Goober5000 on January 10, 2003, 09:49:35 am
mikhael: There's not much to show.  I made a sample mission with a Herc mutating into a Herc II.  The Herc was flying along, and all of a sudden, *pop* it became the Herc II.  Instantaneous. :) If I was a good texturer, I might be able to make a cloaking effect and slideshow that, but I don't texture. :p


Mr. Fury: Yes, the change is instantaneous, but the animated textures might help that a bit.  Make a model that's as big as the bigger ship to transform into, and then animate it so it looks like it's changing from one ship to the other.

Or there's the possibility of doing multiple model changes back-to-back (frame-by-frame!) to simulate a transformation.  That might work, but I'm not sure how much it would stress the engine. :)
Title: Fun With Ship Models
Post by: Killfrenzy on January 10, 2003, 10:09:50 am
Would it be possible to 'leech' some source code from Bridge Commander or Klingon Academy? Or even Starlancer?
Title: Fun With Ship Models
Post by: Petrarch of the VBB on January 10, 2003, 12:58:54 pm
Quote
Originally posted by Killfrenzy
'leech'  


LOL!

I'll have to add that to my list of "alternatvies to stealing". Lets see:
Liberate, emancipate, comandeer, confiscate, win, freemantle, relieve of, and now "Leech"
Title: Fun With Ship Models
Post by: Goober5000 on January 10, 2003, 02:21:19 pm
:lol:!

and -- abscond with, appropriate, usurp...


Why would we need any other source code?  What did you have in mind, Killfrenzy?
Title: Fun With Ship Models
Post by: DTP on January 10, 2003, 03:54:43 pm
The problem is, that animating anything would mean we would have to start messing seriously, with the POF format. up and until now, we have only added new chunks of relative short sizes.

Animation would mean, that

1 first we design a new POF file format, maybe like Quake´s MD files that has animation INFO built into them, in order to give the artist complete controle. Also we would have to think of a way to let the FRED2 mission designer chose what "frames" or "sequences" of the animation to play.

2 we alter the engine to animate these.

3 we come up with something really clever so that we don`t have to do 3-4 LOD animations for each model, or we throw away the LOD system and design our own Engine LOD code, that is present in many games today.

The size of the model would more than tripple, and then we run into memory issues.

its really a task for somebody who has done something like this before, and someone who has a clear idea of what to do.

I understand the technicalities of animation, but not how to actually code it.
Title: Fun With Ship Models
Post by: Goober5000 on January 10, 2003, 05:17:11 pm
Do you mean with the model switching or with the textures?  Bobboau already implemented animated textures.
Title: Fun With Ship Models
Post by: mikhael on January 10, 2003, 11:46:53 pm
Quote
Originally posted by Goober5000

Or there's the possibility of doing multiple model changes back-to-back (frame-by-frame!) to simulate a transformation.  That might work, but I'm not sure how much it would stress the engine. :)


This is exactly what I meant by slideshow, Goober5000.
Title: Fun With Ship Models
Post by: Bobboau on January 11, 2003, 12:13:48 am
there is already a rotational animation system in there, we could use that to get most of the stuff doable, I don't think getting translation would be all that hard after that, I started to look into an animation system but I I got boared when I was haveing trubles getting my propertys strings getting parsed corectly
Title: Fun With Ship Models
Post by: Goober5000 on January 11, 2003, 12:23:31 am
Quote
Originally posted by mikhael
This is exactly what I meant by slideshow, Goober5000.


Oh!  I thought you meant post a few screenshots illustrating the effect. :)
Title: Re: Fun With Ship Models
Post by: Setekh on January 11, 2003, 12:32:57 am
That's sweet, Goober! :D Good thinking too, thinking of those applications...

Quote
Originally posted by Goober5000
The RoboTech mod.  Now I haven't followed this much, but I have heard that they had two main obstacles to implementation in Freespace - departure into hangars, and model manipulation (a la Transformers, perhaps? :nervous: )  With end-mission and distance-ship-subsystem, they can exit into hangars, and now with these sexps, they can change around their models. :cool:


I think they actually engineered a technique to do this already, to do with destroying subsystems or LODs or something like that; but this will be infinitely better, I think. :D Again, good work. :yes:
Title: Fun With Ship Models
Post by: Goober5000 on January 11, 2003, 12:35:36 am
Thanks!  I actually just stumbled upon some code that was already there and made it more accessible, but I appreciate the appreciation. :)

Actually, if you want to thank someone, thank Bobboau.  Those animated textures will allow for some really cool cloaking effects. :cool:
Title: Fun With Ship Models
Post by: Setekh on January 11, 2003, 12:43:24 am
It's thanks to people like you that I really can't wait to get really back into FS. :nod: Make sure you keep working on the SCP while I'm away, eh? :)
Title: Fun With Ship Models
Post by: DTP on January 11, 2003, 12:45:19 am
Quote
Originally posted by mikhael


This is exactly what I meant by slideshow, Goober5000.


The proposed Slideshow would´nt solve "sudden change" problem.

It will still look funny. and dont forget that you would have to have, all those models in the TBL file, which is currently restricted to 128 polygon model ships.

what are needed to do this is a redesign of the POF format itself, while maintaining backward compatibility.
Title: Fun With Ship Models
Post by: Goober5000 on January 11, 2003, 12:50:52 am
Quote
Originally posted by Setekh
It's thanks to people like you that I really can't wait to get really back into FS. :nod: Make sure you keep working on the SCP while I'm away, eh? :)


Okay! :)

Quote
Originally posted by DTP
The proposed Slideshow would´nt solve "sudden change" problem.

It will still look funny. and dont forget that you would have to have, all those models in the TBL file, which is currently restricted to 128 polygon model ships.

what are needed to do this is a redesign of the POF format itself, while maintaining backward compatibility.


Mm, perhaps you're right.  I'll go ask the guys in the MOD forum to whip up a model for testing.
Title: Fun With Ship Models
Post by: mikhael on January 11, 2003, 12:57:35 am
Quote
Originally posted by DTP

It will still look funny. and dont forget that you would have to have, all those models in the TBL file, which is currently restricted to 128 polygon model ships.
 

:D

It was only a joke, really, DTP. hence the big, facetious grin way back there.
Title: Fun With Ship Models
Post by: Goober5000 on January 11, 2003, 01:04:47 am
Never joke with a programmer.  They'll go off and try to implement just what you were joking about - and more often than not, they'll succeed. :lol:
Title: Fun With Ship Models
Post by: WMCoolmon on January 11, 2003, 01:07:18 am
Quote
Originally posted by DTP
what are needed to do this is a redesign of the POF format itself, while maintaining backward compatibility.

It doesn't necessarily have to maintain backwards compatibility; the POF redesign could have the version upped to, say, 3000. Then, when FS2_open encounters a POF with version > 3000, it would use one set of loading code, and when it encounters one with version < 3000 it would automatically attempt to load using a different set of code.
Title: Fun With Ship Models
Post by: Bobboau on January 11, 2003, 01:08:45 am
I still think useing the angular animation system in place already would be the best bet
Title: Fun With Ship Models
Post by: Nico on January 11, 2003, 11:35:34 am
Just to say that I don't know who would use that slideshow thing. I for one would not go through the hassle of making a dozen frames just for a transformation or anything, it woul be a direct A->B transition if I had to do that. And if players aren't happy, they can try and do better. I'll use keyframes if I can ( like in Descent oof ), but not stop motion anim :p