Author Topic: POF Mass Errors  (Read 2614 times)

0 Members and 1 Guest are viewing this topic.

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
Ok....I've been noticing this for a while and its really starting to bother me because its actually a pretty big deal (even when it seems so small).

Part of the balance of FreeSpace 2 ships is in their mass value.  In my tests with new MOD ships (the GTF Banshee, BWO fighters, and so on and so forth) the mass values, although set to their FS2 equivalents....are not what they should be.

The Banshee and the Perseus, both interceptors, both set at the same mass value.  The Perseus takes a beam hit and gets knocked around (safely away from the center of the beam).  The Banshee takes the hit and keeps on going like nothing happened.

The calculations do work somewhat because I made the Banshee have a mass value of 5 and it works....because I was being tossed about like there was no tommorow.

Whats the cause?  How do we fix it?
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."

 

Offline Unknown Target

  • Get off my lawn!
  • 212
  • Push.Pull?
I think there's about 2 other factors that influence that.
Anyways, I special in .tbls, so I'll check when I get home...

 

Offline aldo_14

  • Gunnery Control
  • 213
Quote
Originally posted by IceFire
Ok....I've been noticing this for a while and its really starting to bother me because its actually a pretty big deal (even when it seems so small).

Part of the balance of FreeSpace 2 ships is in their mass value.  In my tests with new MOD ships (the GTF Banshee, BWO fighters, and so on and so forth) the mass values, although set to their FS2 equivalents....are not what they should be.

The Banshee and the Perseus, both interceptors, both set at the same mass value.  The Perseus takes a beam hit and gets knocked around (safely away from the center of the beam).  The Banshee takes the hit and keeps on going like nothing happened.

The calculations do work somewhat because I made the Banshee have a mass value of 5 and it works....because I was being tossed about like there was no tommorow.

Whats the cause?  How do we fix it?


Confuses me, too..... PCs autogenerates comparatively huge masses - so possibly mass is not a relative calculation (I'm assumijng PCs uses some functiopn to calculate mass)

The other thing is that big ships - no matter how large - tend to wobble like hell under heavy beam fire.  

Granted, it's not massively realistic, but I want my capships to sit still when hit.........  even realy high masses don't seem to work too well.

Oh, did you try the banshee with the Perseus tbl entry?  (to check it's not a convetor thingie)

 

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
The changes in the table entry are so minor its not really worth testing.  I can anyways to be sure.

I'm pretty experience in tables myself so unless theres something im missing in like 8 different instances, this isn't a table problem.

My capital ships wobble too....infact a reconverted special Orion gets wopped around by Morningstars from a wing of Perseus fighters.  Thats not right either.  This is a fairly major problem.
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."

 

Offline Nico

  • Venom
    Parlez-vous Model Magician?
  • 212
PCS calculates mass according to the bounding box, and is very dodgy, you end uf with huge masses, which can coz very annoying bugs ( fly through, invisible walls on capships ). can be fixed easily.
SCREW CANON!

 

Offline CP5670

  • Dr. Evil
  • Global Moderator
  • 212
I don't know a lot about the way POFs work, but Modelview has an editor for the mass, center of mass and moment of inertia, which are probably usable for fixing models with extreme values.

 

Offline an0n

  • Banned again
  • 211
  • Emo Hunter
    • http://nodewar.penguinbomb.com/forum
Yeah, there's an interia setting somewhere.
"I.....don't.....CARE!!!!!" ---- an0n
"an0n's right. He's crazy, an asshole, not to be trusted, rarely to be taken seriously, and never to be allowed near your mother. But, he's got a knack for being right. In the worst possible way he can find." ---- Yuppygoat
~-=~!@!~=-~ : Nodewar.com

 

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
Ahh....center of mass.  That may be the key....
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."

 

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
...and not the key.

Whats moment of inertia?  All of the user models I have don't have any values in there....
« Last Edit: May 18, 2002, 08:44:19 am by 18 »
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."

 

Offline aldo_14

  • Gunnery Control
  • 213
Quote
Originally posted by IceFire
...and not the key.

Whats moment of inertia?  All of the user models I have don't have any values in there....


dunno...but the Perseus has very small values there, anyway. All under 0.005.  The Hecate is even lower....certainly no large numbers used  - values in the order of 1/million.

Maybe a conversion thing.........bounding box seems the most like thing, what with your problems with the Orion......

 

Offline CP5670

  • Dr. Evil
  • Global Moderator
  • 212
Quote
Whats moment of inertia?  All of the user models I have don't have any values in there....


It's a thing in physics, but I have no idea how it is calculated for FS2 ships. All the default models seem to have values here, but they are very small.

 

Offline aldo_14

  • Gunnery Control
  • 213
Quote
- http://www.freespace-2.com/ddn/specs/pof/ -

Chunk specs  

Here is a breakdown of each of the chunk types:

 

'OHDR' (FreeSpace 1) and 'HDR2' (FreeSpace 2) - Object header info

#ifdef version2116orhigher
 // FreeSpace 2
 float max_radius           // maximum radius of entire ship
 int obj_flags              // object flags. Bit 1 = Textures contain tiling
 int num_subobjects         // number of subobjects
#else
 // FreeSpace 1
 int num_subobjects         // number of subobjects
 float max_radius           // maximum radius of entire ship
 int obj_flags              // object flags. Bit 1 = Textures contain tiling
#endif

vector min_bounding         // min bounding box point
vector max_bounding         // max bounding box point

int num_detaillevels        // number of detail levels
for each detail_level, i {
 int sobj_detailevels    // subobject number for detail level I, 0 being highest.
}

int num_debris              // number of debris pieces that model explodes into
for each debris piece, i
 int sobj_debris         // subobject number for debris piece i

#ifdef version1903orhigher
 float mass                 // see notes below
 vector mass_center         // center of mass
 float[3][3] moment_inertia // moment of inertia
#endif

#ifdef version2014orhigher
 int num_cross_sections     // number of cross sections (used for exploding ship) (*)
 for each cross_section, i {
  float depth
  float radius
 }
#endif

#ifdef version2007orhigher
 int num_lights             // number of precalculated muzzle flash lights
 for each light {
  vector location
  int light_type            // type of light
 }
#endif  

Notes:

for version<2009, mass is a volume mass
for version>=2009, mass is an area mass
conversion: area_mass=4.65*(vol_mass^2/3); also scale moment_inertia by vol_mass/area_mass
(*) if there is no cross_section data, num_cross_sections is -1 instead of 0, as one would expect.


Any help?

 

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
Not sure....any code gurus want to tell me what this means ? :)

And whats the muzzle flash bit about?
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."

 

Offline aldo_14

  • Gunnery Control
  • 213
Quote
Originally posted by IceFire

And whats the muzzle flash bit about?


The lighting effects when a fighter (or a turret)  fires a gun....basically the lights in the pof file (re  modelview-edit pof).  It seems as if you can specify them by default, like in the V pofs, but that the engine can also auto-determine lighting - re moddded ships.

AFAIK

the area mass / volume mass thing could be mportant, maybe.... have you tested a cop2pof file against a PCs file with the same mass values?  Maybe there's a diference in one of the 2's mass type that has an effect.

  

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
Well...the Banshee was converted by Woomister who still uses the antiquated COB2POF while some of the other models I've tested were converted by Bobboau using POF CS.  

I've tried editing the Mass values with POF CS and ModelView32.
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."

 

Offline IceFire

  • GTVI Section 3
  • 212
    • http://www.3dap.com/hlp/hosted/ce
Moment of Inertia!  That seems to be it.  I added the values from the Perseus to that of the Banshee and now its much better!
- IceFire
BlackWater Ops, Cold Element
"Burn the land, boil the sea, you can't take the sky from me..."