Difference between revisions of "POFCS2Help/HelpHome"
(Filled out some of the page. It was just begging for it!) |
|||
Line 6: | Line 6: | ||
− | The POF Constructor Suite 2 (PCS2) allows modification of existing .pof's as well as creation of new ones from OpenCOLLADA .dae's. The geometry, texturing, and UV mapping is done by modeling software such as Blender or 3DSmax, while PCS2 focuses | + | The POF Constructor Suite 2 (PCS2) allows modification of existing .pof's as well as creation of new ones from OpenCOLLADA .dae's. The geometry, texturing, and UV mapping is done by modeling software such as Blender or 3DSmax, while PCS2 focuses converting the model into a format usable by FS2 and adding/editing additional data used by the game. |
There are numerous tutorials on rigging for FSO using PCS2: <!-- list several active tutorials here --> | There are numerous tutorials on rigging for FSO using PCS2: <!-- list several active tutorials here --> | ||
+ | =General= | ||
+ | PCS2 can be used to define/edit all meta data (as in non-model data) needed to get a usable POF file. | ||
+ | If in doubt, look at an original Volition POF file for reference on how to set up your model. | ||
+ | |||
+ | The x/y/z coordinate system in a POF file (and therefore PCS) is probably different from what you're used in your modelling tool. In relation to the forward-direction of the model: | ||
+ | *X: Left/right, minus-direction is to the right, plus-direction is to the left | ||
+ | *Y: Up/down, minus-direction is downwards, plus-direction is upwards | ||
+ | *Z: Back/front, minus-direction is to the back, plus-direction is to the front | ||
+ | |||
+ | [[File:PCS2_Coordinates.png]] | ||
+ | |||
+ | The 0/0/0 origin is the center of the model, as defined in the modeling tool where you saved it. | ||
+ | All coordinate values in PCS are in ingame units, where 1.0 corresponds to 1 meter. Point/vector values are entered in PCS2 as a list of 3 floats separated by a colon, e.g. '''6.101850:1.240200:5.347540''' | ||
=Header= | =Header= | ||
The Header group contains the LOD and Debris list which points to which model as being the respective LOD and debris (The models themselves are contained in the [[#SubObjects | SubObjects]] group). The Header group also contains physical values (such as mass and moment of inertia) and other assorted values. | The Header group contains the LOD and Debris list which points to which model as being the respective LOD and debris (The models themselves are contained in the [[#SubObjects | SubObjects]] group). The Header group also contains physical values (such as mass and moment of inertia) and other assorted values. | ||
− | ==Bounding Box Min== | + | ==Bounding Box Min/Max== |
− | + | *'''Bounding Box Min''' is the minimum (i.e. lower rear left-hand corner if you where facing the same direction as the object) X, Y, Z coordinate of the bounding box. | |
− | + | *'''Bounding Box Max''' is the maximum(i.e. upper forward right-hand corner if you where facing the same direction as the object) X, Y, Z coordinate of the bounding box. | |
− | + | Note that the game only checks for weapon collisions with the model inside the bounding box. Model geometry outside of the bounding box is ignored (becoming non-shootable). | |
− | + | PCS2 automatically calculates this value based on the min/max dimensions of the parent object (detail0). So the problem of non-shootable geometry only applies to SubObjects that protrude outside of the bounding box. | |
− | + | The values can be edited/saved if needed. Use the "Reset" button to recalculate the value based on model geometry. | |
− | |||
− | |||
− | |||
− | |||
==Center of Mass== | ==Center of Mass== | ||
This value determines the center of mass of the object, and is namely used as a pivot point by the game engine to turn/rotate it during movement and collisions. | This value determines the center of mass of the object, and is namely used as a pivot point by the game engine to turn/rotate it during movement and collisions. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
==Max Radius== | ==Max Radius== | ||
This is the maximum distance between any point on the craft and the craft's center. <!-- center of mass? pivot point? --> | This is the maximum distance between any point on the craft and the craft's center. <!-- center of mass? pivot point? --> | ||
+ | It is used to determine ship-to-ship collisions for small craft (where model geometry is ignored). | ||
+ | PCS2 automatically calculates this value based on model geometry. The values can be edited/saved if needed. Use the "Reset" button to recalculate the value based on model geometry. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Mass== | ==Mass== | ||
− | + | Mass of the ship. Used in physics calculation in ship-to-ship collisions. | |
+ | The used unit is unclear. It's best too look at a Volition model of similar size for reference when defining this value for your model. | ||
+ | *Fighters have mass values from 100 to 250 | ||
+ | *Bombers have mass values from 500 to 1000 | ||
+ | *Freighters have mass values of several thousands | ||
+ | *Cruisers have mass values from 10'000 to 50'000 | ||
+ | *Corvettes have mass values over 100'000 | ||
+ | *Capital ships have a mass values of 1 to 3 million | ||
+ | From the POF data notes: "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." | ||
==LOD== | ==LOD== | ||
===Select=== | ===Select=== | ||
Line 96: | Line 104: | ||
=Weapon Points= | =Weapon Points= | ||
+ | Guns (primaries) and missiles (secondaries) are organized in banks, which is a list of firing points, each of which uses the weapon selected in the loadout for that bank. | ||
+ | They are only used on fighters/bombers (small craft). You can define them on capital ships, but the AI will not use them. | ||
==Gun Points== | ==Gun Points== | ||
− | + | Root node for all gun banks. Use the New/Copy/Delete buttons to add or edit gun banks. | |
− | ===Bank=== | + | ===Gun Bank=== |
− | + | Each gun bank is a list of points (x/y/z) that define the firing points per gun bank. | |
− | = | + | Use the New/Copy/Delete buttons to add or edit individual gun points. |
− | + | ====Point==== | |
− | ==Point= | + | Location (x/y/z) of the firing point |
− | + | ====Normal==== | |
− | + | Normal vector (x/y/z) that defines the direction in which the primary gun is fired. | |
− | === | ||
− | |||
− | ===Normal | ||
− | |||
==Missile Points== | ==Missile Points== | ||
− | + | Root node for all missile banks. Use the New/Copy/Delete buttons to add or edit missile banks. | |
− | ===Bank=== | + | ===Missile Bank=== |
− | + | Each missile bank is a list of points (x/y/z) that define the firing points per missile bank. | |
− | === | + | Use the New/Copy/Delete buttons to add or edit individual gun points. |
− | + | ==== Point ==== | |
− | == | + | Location (x/y/z) of the firing point |
− | === | + | ==== Normal ==== |
− | + | Normal vector (x/y/z) that defines the direction in which the missiles are fired. | |
− | === | + | |
− | + | =Docking Points= | |
− | === | + | Docking points description |
− | + | ||
+ | =Thrusters= | ||
+ | Thrusters description | ||
+ | |||
+ | =Glow Points= | ||
+ | Glow points description | ||
+ | |||
+ | =Special Points= | ||
+ | Special points description | ||
+ | |||
+ | =Turrets= | ||
+ | Turrets description | ||
+ | |||
+ | =Paths= | ||
+ | Paths description | ||
+ | |||
+ | =Eye Points= | ||
+ | Eye points description | ||
+ | |||
+ | =Insignia= | ||
+ | Insignia description | ||
+ | |||
+ | =Shield= | ||
+ | Shield description | ||
+ | |||
+ | =Auto-centering= | ||
+ | From the POF file comments: | ||
+ | The autocentering point was basically just a little convenient extra data we stuck in models where the pivot point of the model wasn't at the center. Since we rotate ships in the tech room by rotating around the pivot point, it looked dumb when the colossus' rear end was in the middle of the screen and it was spinning on it. So the autocenter point was just a point pretty much near the model we could use to push an extra matrix onto our transform stack and have it show up centered around it. The point itself is in model coordinates. | ||
+ | |||
+ | =Model comments= | ||
+ | A list of arbitrary text fields (can have more than one). | ||
+ | PCS2 auto-generates some logging information about the compilation process of that particular POF file. | ||
+ | Feel free to add your own comments or credits here. | ||
{{Stub}} | {{Stub}} |
Revision as of 18:52, 1 January 2022
- This is the stub page for the PCS2 Help Cooperative authoring. Please add all pages to the PCS2 Cooperative Authoring category.
- Once this project is finished, it will be exported and included with PCS2 releases as the official help.''
The POF Constructor Suite 2 (PCS2) allows modification of existing .pof's as well as creation of new ones from OpenCOLLADA .dae's. The geometry, texturing, and UV mapping is done by modeling software such as Blender or 3DSmax, while PCS2 focuses converting the model into a format usable by FS2 and adding/editing additional data used by the game.
There are numerous tutorials on rigging for FSO using PCS2:
Contents
General
PCS2 can be used to define/edit all meta data (as in non-model data) needed to get a usable POF file. If in doubt, look at an original Volition POF file for reference on how to set up your model.
The x/y/z coordinate system in a POF file (and therefore PCS) is probably different from what you're used in your modelling tool. In relation to the forward-direction of the model:
- X: Left/right, minus-direction is to the right, plus-direction is to the left
- Y: Up/down, minus-direction is downwards, plus-direction is upwards
- Z: Back/front, minus-direction is to the back, plus-direction is to the front
The 0/0/0 origin is the center of the model, as defined in the modeling tool where you saved it. All coordinate values in PCS are in ingame units, where 1.0 corresponds to 1 meter. Point/vector values are entered in PCS2 as a list of 3 floats separated by a colon, e.g. 6.101850:1.240200:5.347540
Header
The Header group contains the LOD and Debris list which points to which model as being the respective LOD and debris (The models themselves are contained in the SubObjects group). The Header group also contains physical values (such as mass and moment of inertia) and other assorted values.
Bounding Box Min/Max
- Bounding Box Min is the minimum (i.e. lower rear left-hand corner if you where facing the same direction as the object) X, Y, Z coordinate of the bounding box.
- Bounding Box Max is the maximum(i.e. upper forward right-hand corner if you where facing the same direction as the object) X, Y, Z coordinate of the bounding box.
Note that the game only checks for weapon collisions with the model inside the bounding box. Model geometry outside of the bounding box is ignored (becoming non-shootable). PCS2 automatically calculates this value based on the min/max dimensions of the parent object (detail0). So the problem of non-shootable geometry only applies to SubObjects that protrude outside of the bounding box. The values can be edited/saved if needed. Use the "Reset" button to recalculate the value based on model geometry.
Center of Mass
This value determines the center of mass of the object, and is namely used as a pivot point by the game engine to turn/rotate it during movement and collisions.
Max Radius
This is the maximum distance between any point on the craft and the craft's center. It is used to determine ship-to-ship collisions for small craft (where model geometry is ignored). PCS2 automatically calculates this value based on model geometry. The values can be edited/saved if needed. Use the "Reset" button to recalculate the value based on model geometry.
Mass
Mass of the ship. Used in physics calculation in ship-to-ship collisions. The used unit is unclear. It's best too look at a Volition model of similar size for reference when defining this value for your model.
- Fighters have mass values from 100 to 250
- Bombers have mass values from 500 to 1000
- Freighters have mass values of several thousands
- Cruisers have mass values from 10'000 to 50'000
- Corvettes have mass values over 100'000
- Capital ships have a mass values of 1 to 3 million
From the POF data notes: "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."
LOD
Select
Description
Model#
Description
Debris
Select
Description
Model#
Description
Cross Sections
Select
Description
Radius
Description
Depth
Description
Moment of Intertia
SubObjects
Name
Description
Rotation Axis
Description
Offset
Description
Properties
Description
Draw BSP Debug Info
Description
Subobject Info
Poly Count
Description
Child Poly Count
Description
Total
Description
Bounding Box Min
Description
Bounding Box Max
Description
Radius
Description
Parent submodel
Description
Textures
Select
Description
Texture
Description
Weapon Points
Guns (primaries) and missiles (secondaries) are organized in banks, which is a list of firing points, each of which uses the weapon selected in the loadout for that bank. They are only used on fighters/bombers (small craft). You can define them on capital ships, but the AI will not use them.
Gun Points
Root node for all gun banks. Use the New/Copy/Delete buttons to add or edit gun banks.
Gun Bank
Each gun bank is a list of points (x/y/z) that define the firing points per gun bank. Use the New/Copy/Delete buttons to add or edit individual gun points.
Point
Location (x/y/z) of the firing point
Normal
Normal vector (x/y/z) that defines the direction in which the primary gun is fired.
Missile Points
Root node for all missile banks. Use the New/Copy/Delete buttons to add or edit missile banks.
Missile Bank
Each missile bank is a list of points (x/y/z) that define the firing points per missile bank. Use the New/Copy/Delete buttons to add or edit individual gun points.
Point
Location (x/y/z) of the firing point
Normal
Normal vector (x/y/z) that defines the direction in which the missiles are fired.
Docking Points
Docking points description
Thrusters
Thrusters description
Glow Points
Glow points description
Special Points
Special points description
Turrets
Turrets description
Paths
Paths description
Eye Points
Eye points description
Insignia
Insignia description
Shield
Shield description
Auto-centering
From the POF file comments: The autocentering point was basically just a little convenient extra data we stuck in models where the pivot point of the model wasn't at the center. Since we rotate ships in the tech room by rotating around the pivot point, it looked dumb when the colossus' rear end was in the middle of the screen and it was spinning on it. So the autocenter point was just a point pretty much near the model we could use to push an extra matrix onto our transform stack and have it show up centered around it. The point itself is in model coordinates.
Model comments
A list of arbitrary text fields (can have more than one). PCS2 auto-generates some logging information about the compilation process of that particular POF file. Feel free to add your own comments or credits here.