
Ordering by Model shows how often the same model has been used.

Ordering by the unique Object Name let's you find it quicker.
You can download Moving Ground Object Viewer/Editor v1.2 (234KB) right here.
You are using this freeware tool at your own responsibility !
Backup your movgrobj.dat before using this tool !
All load and save operations are using a file dialog box. You can work outside of the fu3 area.
The Object Name must be unique in the modgrobj.dat file! Take care of this. The Model Name is not unique and will specify the model to use as stored in the /gen folder and the modelmip.tag file, It is the Name of the .bin file of the model without the last 0 character.

For a new entry just select a model and click on clone button. A copy of the selected Object is then appended at the end of the tree. Now rename the Object using the edit button and move the path using the Move to button.

To move the path just enter the new location in the new Start line (x - UTM Longitude, y - UTM Latitude and z elevation in meters). Entering data in the x fields of the simple path or in the Radius field of the spiral path will replace the current path by this new values. You can't have more than 100 path points in this program. The number of Object Entries are also restricted to 100. Until now this limit has never been reached. The real limit set by FU3 is unknown.

Soaring path of a Blanik Model over the airport generated using Radius 300, Pitch 400, Turns 8.
|
Address |
The Structure of the movgrobj.dat file |
| 0x0000 |
Header: 4 bytes integer, value 5 as file type ? |
| 0x0004 |
Header: 4 bytes integer, Number of object entries in this file |
|
0x0008 |
for each Object Entry:
typedef struct _MovModel
{
int ModelNameLen; // Length of the model name including 0x00 termination byte
CString ModelName; // Model Name
int ObjectNameLen; // Length of the object name including 0x00 termination byte
CString ObjectName; // Unique Name of the Object
double Speed; // Speed in m/s
double Pause; // seconds between turns
int Faced; // Model is faced toward moving direction
int AutoStart; // Will stat automatically
int Grounded; // Object is grounded or not
int MotionType; // Predefined path is the only working selection
int Repetition; // one-way-ticket, oscillate or loop
int SoundNameLen; // Length of the sound name including 0x00 termination byte
CString SoundName; // Name of the attached sound waw file
int atDay; // play sound at day
int atNight; // play sound at night
int atRainy; // play sound when rainy
int atFoggy; // play sound when foggy
double SoundRadius; // Distance to player to start the sound
int TriggerNameLen; // Length of the Trigger name including 0x00 termination byte
CString TriggerName; // Model name that will trigger the move sequence.
double TriggerRadius; // Trigger distance of both models
int Points; // Number of Path Points
Point Pt[100]; // Path with a reserved space for 100 path points
typedef struct _Point
{
float Px; // UTM x coordinates
float Py; // UTM y coordinates
float Pz; // Height above sea level in meters
} Point;
} MovModel;
|
Information: André Meystre
back to FU3 Terrain Workshop
next to Managing behavior of AI Planes