Tutorial Empire Earth Modification Child Parts - EE-modders/Empire-Earth-toolbox GitHub Wiki
Authors: v.1.0 - Philla007#2344 & Matthew Hastings (MJHastings#1986)
This tutorial explains the importants point to consider when working with models that contain child parts, such as propellers, turrets, and wheels.
This section highlights the important characteristics of propellers when exporting models to .CEM format.
NOTE: As Empire Earth's aircraft use 2D propellers, it is suggested that the same is done when making new propellers (if you want to make 3D propellers, go ahead, but they may not fit well with the rest of the artwork.)
Let's use the Albatross D.V. Fighter, shown in Figure 1, as an example.

NOTE: For this tutorial, the textures have already been assigned. Without doing so, it would be the default grey colour of un-textured models in Blender.
In order to have a properly functioning propeller in the game, there are few important points to consider. Otherwise rotation speed, propeller zise, and direction of rotation are defined by the user.
The location of the propeller's plane must always be at the point of symmetry of the propeller image, otherwise it will rotate weirdly. The location of the plane is shown by the yellow dot in Figure 2 (isometric) and Figure 3 (front):


The easiest way to assign the location of a simple object is as follows: in Object Mode < select propeller object < F3 (summons Operator Menu) (or Object < Set Origin) < Origin to Geometry. This will move the origin of the propeller object from the default position at the global origin to the geometric centre of the propeller object.
That will assign the LOCATION position of the propeller. As can be seen in Figure 4, the location coordinates are now non-zero.

If the rotation is not configured properly, the propeller will rotate weirdly. The propeller must be perpendicular to the Y-axis / parallel to the XZ plane. All propellers from Empire Earth's vehicles are already configured, so you can use them as a reference.
Propeller must have scale of 1.0 along all 3 axes. The easiest way to assign the scale is as follows: in Object Mode < CTRL+A < Scale. Also you can set the scale in the transform window (shortkey N).
The name of the propeller's 'child part' collection determines its rotation speed and direction. Some models have more then one propeller, all of which have their own 'child part' collection, so each can have it's own rotation speed and direction.
Figure 6 shows the Albatross D.V. Ouline Panel, with the propeller 'child part' collection highlighted.

The propeller 'child part' collection must have a certain name structure: x:orbital_nn_000_y
- x is the index number of the 'child part' collection (1:Scene Root is the body of the aircraft, the 'parent part' collection, every number above 1 is a 'child part' collection).
- nn is the direction of rotation; it can be cw (clockwise) or ccw (counter clockwise).
- 000 is the speed of rotation. This is NOT the speed in rmp. Higher is faster, lower is slower.
- y is the number of the 'child part'. This can be any number, as long as it is unique; it is recomended to start with 1 for the first 'child part', 2 for the second 'child part', etc.
For the Albartoss D.V. 2:orbital_cw_375_2.
This section highlights the important characteristics of turrets (terrestrial and nautical) when exporting models to .CEM format.
Let's use a custom version of the Sherman Tank (HE) model as an example.
NOTE: For this tutorial, the textures have already been assigned. Without doing so, it would be the default grey colour of un-textured models in Blender.
While in Object Mode < select the turret object < NUMPAD+7 (or View < Viewpoint < Top).
The turret's centre is currently positioned at the center of the scene (Figure 7), so needs to be re-positioned with respect to the vehicle's body.
SHIFT+Spacebar < Spacebar (or, select the Cursor in the tools sidebar) < Click at the position of the centre of the vehicle's body < Right-Click (or, Object) < Set Origin < Origin to 3D Cursor.
As in Figure 8, notice that the orange dot, which represents the object's centre or rotation, moves to the position which you selected.

The rotation for all axes must be 0°.
The scale for all axes must be 1.
Figure 9 shows the Sherman Tank (HE) Ouline Panel, with the turret 'child part' collection highlighted.
The name of the turret 'child part' collection must have a certain format - x:turret_n.
-
The x is the index number of the part (1:Scene Root is the body of the aircraft, the 'parent part' collection, every number above 1 is a 'child part' collection).
-
The n is number of the 'child part'. This can be any number, as long as it is unique; it is recomended to start with 1 for the first 'child part', 2 for the second 'child part', etc.
Tag Points for the turret must be in turret's collection, as highlighted in Figure 9.

Section 2.1, 2.3, & 2.4 apply to turrets facing backwards, but secion 2.3 is different, as follows.
Let's use Battleship - Bismarck model as an example.
The rear two turrets, highlighted in Figure 10, face backwards, as they should.

To turn the turret to the WRONG direction, in Object Mode, select the third turret from the front < R (or, Object < Transform < Rotate) < Z < type 180.
The turret will rotate as shown in Figure 11.
So, if a turret is facing forwads in a model and you want it to face backwards, do as above. Importantly, the z-axis rotation shown in the Transform Panel should be +/-180 when the model is exported.

Let's use the Cargo Truck as an example.
After wheel is created, go to Object Mode and select that wheel < Object < Set Origin < Origin to Geometry.
Now the point of object will be on the center of the wheel as shown in Figure 12

To test that the wheel has the correct orientation, R (or, Object < Transform < Rotate) < Z < Z (again) < move mouse.
If the orientation is correct, is rotates as shown in Figure 13.

Figure 14 shows the Cargo Truck Ouline Panel, with a wheel 'child part' collection highlighted.

The Cargo Truck model uses 6 wheels, each of which must be properly configured.
The name of the wheel 'child part' collection must have a certain format - x:wheel.
-
The x is the index number of the part (1:Scene Root is the body of the vehicle, the 'parent part' collection, every number above 1 is a 'child part' collection).
-
Each wheel must have a different index number.
Wheel have no Tag Points.