Researched and Edited by: MarkEAW
Related Downloads:
tools-tutorial-3dzmodel -
Some guides on modeling and the 3dz format.
tools-tutorial-3dzrendersequence -
Some guides on the RS.
tools-edit-3dz -
Contains the main 3DZ program and various tools.
tools-edit-3dzrs -
Contains Render Sequence programs.
>This Help Document is a very WIP project of mine. The further
down the document the harder it maybe to understand what is being
said. I'm working hard here, to get it done, eventually to document
model making.
[ GOTO THE MAIN EAWHS PAGE ]
CONTENTS
INTRODUCTION
3DZ STUDIO
To Install
3DZ Studio Command and Functions
Menu Bar |
Horizontal Tool Bar | Left
Sidebar | Hot Keys
3DZ
SUPPORTING TOOLS
Other Separate Tools | More Related Tools
3DZ FILES
Aircraft Model Files | Cockpit Model Files | Model Skin Files
MAKING A NEW
MODEL
Quick Steps | In Studio | The RS and Checking RS | Tips
3DZ STUDIO MODEL EDITING
Getting Ready | Starting Up | The Basics | Project Files
BULKHEAD DIVIDERS
LANDING GEAR
Existing Models
WEAPON HARD POINTS
PROPS
UPDATING AN EXISTING MODEL
Drawbacks | Piggybacks | More Than 15 Piggybacks | Piggyback Example
NORMALS
RENDERING SEQUENCE
SCALING
Plane |
Virtual Cockpit | Ground Objects | Terrain |
Gunship!
Calculate Hitbubble Size
CONVERTING FROM ANOTHER GAME
Convert PAW Planes | Some background
3DZ FILE STRUCTURE
Header Section | Component Insert Point | Element Normals | Element
Rendering Sequence | Nodes Section
Element Location Table | Element Section
3DZ TEXT FILE STRUCTURE
Header | Insert | Normals | Sequence |
3DZ ACTION CODES
HIGH RESOLUTION MODELS
CONVERT TO HIGH RESOLUTION
MODEL
Here's the basic process for building or modifying a model in 3DZ!Studio
and other tools.
You may want to try your hand at 3DZ modeling since its interesting
and can become satisfying. It will take a little time to get
everything in place and rolling, but when it does it will provide a
specific enjoyment.
To modify existing 3D models or to create completely new ones
you will need at least some of the tools mentioned below in this help document.
The information will give
and explain vital processes you should consider doing as you start and
continue with modeling. I'm not an expert, just an editor and
beginner, so any explanations or help with 3DZ modeling is greatly
appreciated.If you plan
on performing any modeling for this game, then you should have a closer look at the 3DZ files.
These are binary data files used to draw 3D objects in several PC
games by MicroProse - including European Air War (EAW), Pacific Air
War (PAW), Fleet Defender, M1A2TP2, Gunship! and others. They are ultimately
three-dimensional models (shapes) of aircraft and other objects
(like ground objects/targets) that appear in EAW. They are made up
of a variety of files. The primary file is the actual shape of these
3dz objects (the data in the 3dz file makes up the shape), their
file extension is 3DZ. Contained therein are various sections of
data that define all the 3D Node Points and Elements these objects
are built of; the dimensions of the aircraft, the Rendering
Sequence, moving parts like propellers and landing gears (no moving
flaps, in stock EAW) and a link to the file that contains the
texture skin the object will be physically covered with in the game.
(Hint: The size of hit bubbles (or hitboxes) etc, has nothing
to do with the dimensions etc of the 3dz model, unfortunately).
virtual cockpits are also 3dz's...
Be sure to study this entire help document before starting any editing project as 3DZ
editing requires the some understanding of the data content of those
files. If you do things wrong, you can easily end up with a
black screen (a game lock-up) when you load a corrupted 3DZ file into EAW.
This section is to explain the basics of the main 3DZ program.The
3DZ! Studio Program is a utility to view and edit the content of 3DZ
files, data and shape, to build or make modifications to the object
as you wish. I am putting together a tool pack for download that
contains everything you should need to start a 3D modeling career
for European Air War or Gunship. It is currently being packed and
you can download it now...
Some File used to Start off with:
- 3DZ! Studio For Windows v0.901 (610,304 release 21-June-2005
/ CRC A17D664B) Interface 1
3DZ! Studio For Windows v0.950 (684,032 release 14-Sept-2005 / CRC
70CA6A39) Interface 2
- 3dzstudio.cfg
Holds known directory paths for 3DZ Studio (Default is NONE SET)
- _NULL.PCX
Default shaded drawing for BEGIN.3DZ (use if no other
available)
- _GRID.PCX
Default grid drawing for BEGIN.3DZ (may help in correct
mapping of textures)
- _NULL.3DZ or BEGIN.3DZ
(DO NOT OVERWRITE OR ERASE!)
- STARTER.3DZ and Empty.pcx
Starter3dz & Texture
- STARTER2.3dz and STARTER.pcx
????
- STARTER3.3dz and PSP2ATEX.PCX
????
To Install
Simply unzip a copy of the 3DZ!Studio Folder somewhere you want too. Then rename
the folder to something related to your project. You may wish to name it with the aircraft
or object type name. such as P51Studio. (You may eventually end up
with many separate folders for your projects, each with the studio
program in it along with your project files).
There are supporting files for Visual Basic. They are primarily
DLLs. See the tool pack for instructions on how to use them to get
the Studio running. (In the future I'll provide more info here about
them). On windows 10 run the Studio program as WindowsXPSP3
compatibility for the runtimes to be excepted and allow the Studio
to run properly.
3DZ Studio Commands and Functions
These are the complete commands and functions as observed in the
program itself. The 3DZ Studio version used in this help document is
currently an old version used for EAWv1.2 made in 2005, yet it's
adequate to do the job. (I may provide support for newer versions
later on if they are found backward compatible. I have not
used any as of yet therefore there is no information here for
them).
Menu Bar:
This is located at the very top.
Model:
Loading Models; When you first load a model you can choose to load
either the entire model, or simply the 3DZ file that you have
selected. In the case of EAW aircraft, you have this option if you
load an _F.3DZ, and for TMods, if you load _H.3DZ. These are the
main models, and will load any other attached models that are in the
same directory. The model will then be loaded and display in
Perspective View.
Project:
Project files; A project file for 3DZ Studio (*.3vw file) is simply
a text file with information regarding model type, which models are
to be loaded into the project. It also contains the filenames of the
3-View drawings, the Span, Height and Length of the model, and a
reference point from which to draw the layout drawings. It can also
hold any notes made about the project.
View:
The Views; There are SEVEN views available. There is one from each
angle of the model, and a perspective view (which is the default).
Tools:
There are 6 tools available for use in 3DZ! Studio. These are:
- PICK - Use this to select elements or nodes (depending on
the edit tab) visually in the workspace.
- MOVER - Use this tool to graphically drag elements and nodes
on the model. Note that you do NOT have to drag the drawn
axes. Simply clicking the mouse on the workspace will have the
desired effect. With the tool, hold down CONTROL to use the
PICK tool. Note: You might have to select an element first, then
select the node you want to move, even if you're just moving a
node, and not the whole element.
- ZOOM - Click and drag to zoom in and out on the model
- PAN - Click and drag to pan the model. The right mouse
button is connected to the ROTATE tool.
- ROTATE - Click and drag to rotate the model. Right mouse
will PAN,
- BANK - Click and drag to cause the aircraft to BANK. Right
mouse will ROTATE the model.
Help:
Horizontal Tool Bar:
These icons across the top have mouse over
help descriptions.
All the buttons you can see across the top of the Studio, switch on or off
certain element types, or run helpful programs.
(There are 6 primary tools available for use in 3DZ! Studio).
From Left To Right:
- Open File - will open the last folder you opened the last 3dz
from (or 3DB).
- Save File - will save your current model status. Saves the
currently edited 3D object with the name "Filename_001.3dz", where
Filename is the original file name. A second saving will rename this
file to "Filename_002.3dz". This way it is guaranteed that your
recent version with the latest changes you made is stored as
"Filename_XXX.3dz".
- Modify X -
- Modify Y -
- Modify Z -
- Pick - the Arrow Icon is default and used most of the time. (With it you can click on polygons in the 3D model and that poly's
editing
window will be selected). Use this to select elements or nodes
(depending on the edit tab) visually in the workspace.
- Move - Use this tool to graphically drag elements and nodes
on the model. Note that you do NOT have to drag the drawn axes.
Simply clicking the mouse on the workspace will have te desired effect. With the tool, hold down CONTROL to use
the PICK tool.
- Zoom The View - Click and drag to zoom in and out on the
model.
- Pan The View - the Hand Icon, Click and drag to pan the
model. The right mouse button is connected to the ROTATE tool.
- Rotate The View - Click and drag to rotate the model. Right
mouse will PAN,
- Bank The Aircraft - Click and drag to cause the aircraft to
BANK. Right mouse will ROTATE the model.
- Zoom Extents -
- Toggle Texture -
- Toggles Faces -
- Toggle Nodes -
- Toggle Render Sequence -
- Pilot State - options are Alive , Dead , Bailed Out
- Landing Gear State - options are Down , Up
- Wing Damage State - options are Undamaged , Damaged
Left Sidebar:
These are the Tabs that are to the left of the sidebar.
The main area for editing is the Side Bar, which can be hidden and viewed by
clicking the "<" arrow on its right hand side. On this bar there are seven tabs.
To change values on these tabs, either use the associated scroll buttons, or
type a new value, followed by "ENTER". Without pressing enter your input will
not be error-checked and applied.
F1 Model Info -
This is the basic information about the current model.
This tab gives access to setting the texture of the current model as well as
general information regarding the number of nodes and elements. You can also
switch between the different models that are loaded (if you have loaded a HR
model), or choose to display just the model that you are using.
- Radius:
- Texture:
- # Parts:
- # Elements:
- # Nodes:
- Current 3DZ:
- Only Show This 3dZ?:
F2 Parts -
On this tab you can set the options for each of the different parts (or inserts)
in the model.
- Part #:
- Head/Pitch/Roll:
- Num:
- Predef. Insert Code:
F3 Elements -
This is THE IMPORTANT ONE! This is the tab which allows you to do most of the
changes to a model.
This Tab and box will enable you to cycle through
the 3D elements contained in the currently loaded 3DZ File. The
number, type and coordinate data of the selected 3D element will be
displayed in the white areas and you will be able to edit them using
the arrows and the small white checkboxes. This area in the Dialog
box is the section where all the actual editing is done.
You can select an element by clicking it in the workspace, or by
changing the Element # and Piggyback # boxes. The current element is displayed
with a red tint.
The first section is for changing the type of element, and any special codes
that it may have.
The second section shows all the nodes in the current element, as well as their
texture coordinates. To change these, place a tick in the box next to the node(s)
you wish to edit, and use the scroll buttons to change their values, or enter
values using the keyboard, followed by "ENTER". If the element has more than 12
elements, you can scroll through them using the scroll bar on the right.
A detailed description of the functions of the different parts of
the Main Dialog box is given below:
- Element#:
Displays the currently selected element. Example: "23/2" is
element #23, sub-element #2 A single element can have several
sub-elements to draw a single or different pieces. Click on the
arrows to select the next / previous element.
If you try to enter a number in the element box, you will notice
that you can't. That's right, you use the two blue arrows to
scroll to the element you want. There are a total of 256
elements (starting at zero) available, so if you know what
number you are going to you can do some quick math to get there
faster. For example, if you wanted to work with element number
200, you would hit the blue "up" arrow, instead of using the
blue "down" arrow and going through numbers 1 to 199to get the,
when you could go through only 55 numbers in the opposite
direction.
(As you scroll through the elements, the type of element appears
in the "Type" box. This is particularly handy when scrolling
quickly, looking for a hardpoint or some other type. Most
elements are textured polygons.)
- Piggyback#:
- Type:
Displays the type of the currently selected element.
There are 7 possible types:
1 - Colored Line
2 - Hard Point / Prop Point
3 - Flat Color Polygon
4 - Gouraud Polygon
5 - Textured Polygon
6 - Transparent Polygon
255 - NULL
- Code:
- Flag:
- Select All:
Checking this box will select all 3D nodes of an element to edit
them together. Checking on this will select all the nodes (or
points as they are called in the 3dz text dump). Very useful
when moving an entire element from one location to another.
- Check Boxes:
Clicking the box beside a 3D node will enable you to edit the
coordinates of this line.
- LOCK:
- Node #:
this is the number of the node, and corresponds to a number on
the red outline of the element displayed on the pcx - ...
The ORANGE COLUMNS
The next section with the arrows is to edit the wireframe itself.
- X (Length):
Displays the X coordinate of the selected 3D node. Positive
sense from centre towards tail of the object. Use the arrows to
change the value. this moves the node towards the front or rear
of the plane. Zero is the center of the airplane. Positive
numbers move to the rear, negative numbers move to the front.
- Y (Wingspan):
Displays the Y coordinate of the selected 3D node. Positive
sense from centre model towards left side. Use the arrows to
change the value. this moves the node towards the center of the
aircraft, or towards the wingtip. The center line of the
aircraft is zero. A positive number moves toward the right wing
tip, a negative number moves toward the left wing tip.
- Z (Height):
Displays the Z coordinate of the selected 3D node. Z is the
vertical axis. Positive sense downwards. Use the arrows to
change the value. this is the distance above or below a center
plane. Zero is somewhere in the middle of the aircraft. A
positive number moves up, a negative number moves down.
- Undo:
Restores the values of the currently selected element.
- Apply:
Applies your changes to the currently selected element. In
addition the screen will be refreshed to display the result.
The GREEN COLUMNS
These arrows move the red outline of the element around on the pcx
image.
- X Map:
The function of the arrows depends on the current element type:
Type 1 - Colored Line
First pair of arrows changes the Start and End node. Second pair
changes the color of the line, using the color palette of the
used PCX texture as a reference.
Type 2 - Hard Point
First pair changes the identifier of the point - depends on the
file LOADOUT.DAT / application to work properly. Second pair
changes the node number.
Type 3 / 4 - Colored Polygon
First pair has no function here. Second pair changes the color(s).
Type 5 / 6 - Textured Polygon
Remaps the texture, using the first pair of arrows to change X
coordinates and the second pair to change the Y coordinates.
- Y Map:
- Node Operations
These four buttons allow you to move a selected node up or down
in the order, or add or delete a node from the list. To move a
Node, simply click on the Element you want to change, check the
Node and move it using the 3 arrow keys. To change mapping,
select an Element, check the Node box, and change the mapping by
moving the Green arrow keys.
- MOVE UP:
- MOVE DN:
- ADD:
- DELETE:
- Duplicate-> New Elem:
Duplicate -> New Element does as it suggests, and duplicates this element (not
including piggybacks) to a new element as the end of the model.
- Duplicate-> Piggyback:
Duplicate -> Piggyback duplicates the current element and attaches it as a
piggyback on the current main element.
- Delete Entire Elem:
Delete Entire Element deletes the whole element (including piggybacks).
- Delete This Piggyback:
Delete This Piggyback deletes only the currently piggyback element (if there is
more than one element attached)
(NOTE: Deleting elements may cause severe RS problems! Unless
your building a new model, do not Delete Elements. Use the drop
down box and change the Element type from 5 or 6 to 255 NULL.
Unless your building a new model do not add a new Element. Use a
Piggyback, which are the two buttons at the bottom right of the
Elements Tab)
- Attrib 1:
The final two sections are for general polygon attributes and normals.
- Attrib 2:
- NORMALS X Y D F
F4 Nodes -
To add a node, just click on ADD Node, and move it to where you need
it, or add it, then change tab to Elements, and add the new Node to
an existing element. Don't forget to add the Node number, as it will
always be default {0}, and your new Node will be a different number.
Using the tab allows you to move individual nodes, as well as add a new node.
The other two buttons allow you to set any unused nodes to 0,0,0, or to simply
delete them! This tab automatically turns all nodes on for viewing
WHEN THIS TAB IS SELECTED, YOU MAY SELECT A NODE ON THE MODEL BY CLICKING IT. IF
THE NODE IS NOT SELECTED, THEN MAKE SURE IT IS ON THE MODEL THAT YOU ARE WORKING
ON (eg, _F.3DZ or _A.3DZ)
- Node #:
- X:
- Y:
- Z:
- Parent Body:
- Add New Node:
- Set Unused Nodes to 0:
- Delete Unused Nodes:
If your model has lots of unused Nodes, simply click Delete
Unused Nodes, to remove them, so you can reuse them.
F5 Center Mover -
This tab is another copy from Alessandro's original 3DZ! Studio. It allows you
to both move the entire center point of a model, or scale it. Both of these
commands require you to click APPLY to confirm changes. However you can click
undo on the centre move to move the center back to it original position.
Beware when scaling that shrinking a model (especially) WILL cause rounding
errors. Thus, do NOT expect an identical restoration if you decrease the size to
50% then back up by 200%. There WILL be problems!
THE SCALER
THE CENTER MOVER
- X (Length):
- Y (Span):
- Z (Height):
- APPLY:
- UNDO:
- Scale (%):
- APPLY:
- Wingspan: m
- Length: m
F6 Notepad -
This is simply an area to write notes for your project.
F7 3 View Data -
This section is also for use with project files, and allows selection of 3-view
drawings. See the projects section for more information.
- 3-View Data:
- Wingspan:
- Length:
- Height: (Height Includes the Gear)
- Get Dimensions From Model:
If you look at the last tab in the studio, and click "get
dimensions from the model" you will see how big, in terms of EAW/real
life, the model is. If it's too small/or too big, you can alter
the scale by using the scaling tool, on the centre mover tab. A
tip, always keep the original 3dz safe, and recalc the Normals,
before testing the new 3dz in game. The Normals calc is located
on the Elements tab.
- Min X:
- Min Y:
- Max Z:
- Get From Model:
- Left View Top View Front View:
- Load PCX:
- Create Project:
Hot Keys:
These functions are also available along the top horizontal toolbar as buttons you
can click with the mouse.
At any time that the workspace has the focus (ie has been
clicked) the following keyboard commands will work:
Arrow Keys = Rotates the 3D
object |
UP & DOWN ARROWS |
Rotate Model - rolls
+CONTROL = Pan Model (also hold shift key for larger
increment)
(Perspective only) |
LEFT & RIGHT ARROWS |
Rotate Model - banks
+SHIFT = Bank Model
+CONTROL = Pan Model (also hold shift key for larger
increment)
(Perspective only) |
CTRL + Arrows = Changes the
position of the 3D object. |
Ctrl + Up/Down |
moves the object up and down |
Ctrl + Left/Right |
moves the object left and right |
|
|
PLUS/MINUS |
Zoom in/out (also hold shift key for
larger increment) |
|
|
F1-F7 |
Select Edit Tab (1-7) |
|
|
A |
PICK Tool |
B |
BANK Tool |
C |
Toggle Pilot ALIVE/DEAD/BAILED OUT |
D |
Toggle Wing Damage ON/OFF |
E |
Zoom Extents |
F |
Front View |
G |
Toggle Gear UP/DOWN |
L |
Left View |
M |
MOVE Tool |
N |
Nodes ON/OFF |
P |
Perspective View; Profile is the default
view and used most as it's not fixed, all other views
are fixed. (Use P if you loose the model). |
Q |
ZOOM Tool |
R |
PAN Tool |
T |
Top View |
V |
Texture ON/OFF |
W |
Faces ON/OFF |
X |
X-Axis |
Y |
Y-Axis |
Z |
Z-Axis |
Some of the supporting tools used with 3DZ making and modifying.
Other Separate Tools:
These are the tools used by a 3DZ Modeler. (This is not all of
them. I'm working on finding them and placing them in the tool
pack.)
Here will only be quick descriptions for now. Read the readme's in
the tool pack for more in depth info if available.
- 3DZ2BMP.EXE (DOS)
Creates a .BMP outline drawing of your mapping;
produces a BMP file, using EAW standard palette for aircrafts,
containing the outline of all textured polygons defined in a 3DZ
file. This program can be used to provide a good starting point to
skin the models from PAW or for a deeply changed EAW model.
- 3DZ_MAP.EXE and 3DZ_MAPC.EXE (DOS)
Outputs two files: a text dump of all elements, nodes, normals,
insertion points, header and drawing sequence where each entity
is identified by a letter/number for cross-reference when using
the editors; and a 3D DXF file that translates all nodes/3d
points (element type 2) as point entities, all polygon faces
(elements 3 to 6) as closed polylines using colors according to
type number and lines are translated to lines.
- 3DZ converterA.exe (DOS)
This is a small utility (v1.8a) to translate coded 3DZ files to text
format, and convert it back to 3DZ format. This version of the
converter is compatible
with Woolfman's Vector
Calculator...
- 3DZRSCalc.exe (Windows Command)
Calculates dreaded R/S from .3DZ, if success creates
OUTPUT.3DZ
- 3dzJoin.exe (WindowsVB)
Concatenates two .TXT into one and renumbers all
- 3dzMirror.exe (Windows Command)
Mirrors a .3DZ and OVERWRITES OLD!. Mirrors a .3dz model
Left--Right, or Front--Back, or Top--Bottom. (And vice-versa,
such as Right--Left, etc.).
- 3dzCalcA.exe (Windows)
Calculates [NORMAL] from .TXT, NEEDS [POINTS] and
[ELEMENTS]
- 3dzNodeWeld.exe (Windows Command)
Removes double nodes occupying the same spot in 3D
space and connects it's polys (OVERWRITES OLD!). It will free up
duplicate nodes in a .3dz model so that they can be deleted
later in 3dzStudio. It does NOT delete them.
- 3dzPoly.exe (Windows Command)
Creates a single poly .3DZ with X number of sides. It makes any
circular, flat 3dz. You have to be careful not to use to many
nodes, or go to small, but you'll find it a very useful tool for
making anything round in shape.
- 3dzRotate.exe (Windows Command)
Rotates entire .3DZ by X degrees in any axis (anything
else then 90, 180 and 270 destorts the model!).
- PigFix.exe (WindowsVB)
Gives each piggyback it's own polygon line in .TXT and
renumbers [ELEMENTS]
More Related Tools
These are extra tools you may use.
- TPC2PCX.EXE
The image of the skin is in the file p****TEX.tpc. Unfortunately,
we need a pcx file to do anything with it. Note: I think this is where a lot of people fail in their attempts
to use 3DZ Studio. They don't realize you need a pcx file, not a tpc
file. This caused 3DZ Studio to languish on my hard drive for quite
some time!
- CDFRW.EXE (Win9x 16-bit)
This is a program that can examine and extract EAW files from
the .CDF archives EAW originally used.
- converter18a.exe
This is a small utility to translate coded 3DZ files to text
format, and convert it back to 3DZ format.
- EAW-calc.exe
????
- PICPAC.exe (DOS)
Official skin-converting program. It is a simple command -line
parameter converter of PCX-graphics to the EAW skin-artwork
format TPC.
- An optional 3D editor like AutoCAD, AutoCAD LT, 3D Studio or
any other application capable of importing and displaying 3D DXF
file formats. Preferably this application should be able to
identify each element by layer or color when requested by the
user. This application is only used to display and identify by
number the elements to change. It can also be used to calculate
the new node and texture mapping positions.
- Possible optional, a Hex Editor...
Okay, so now you should have everything you need to start 3DZ modding.
(Really? :) ...
This section briefly describes which 3DZ Model and Skin files are
for what part of an object. The 3dz files carry all the information
about the wire frame of the aircraft or object.You need all of
the 3DZ file templates you want to edit. These files can either be
extracted from the EAW CDF Archive containing all of the original
3DZ files (3D.CDF) using the CDFRW.EXE tool – or you can use files
from a ZIP archive of an aircraft you have downloaded from any EAW
website.
Aircraft Model
Files In EAW the *.3DZ files are the 3D shapes, and the *.TPC files are the aircraft
skins. The full list of 3DZ files in EAW is as follows:
3DZ files are divided in many types which we can identify by the
last letter of their name. However these types are not used exactly
the same in every type of plane.
The ultimate development of the EAW 3dz model is found in the
four engine bombers. These aircraft are composed of six different
3dz files, pasted together by hardpoints analogous to the hardpoints
that place visible external ordnance. The six files are: F, E, G , A
, B , C . See below for descriptions.
- PxxxxA.3DZ
FOUR ENGINE BOMBERS: (Only four-engine bombers)
This file contains the upper turret.
It's used as a turret and attached using code 25
- PxxxxB.3DZ
FOUR ENGINE BOMBERS: (Only B-17)
This file contains the ball turret.
It's used as a turret and attached using code 26
- PxxxxC.3DZ
FOUR ENGINE BOMBERS: (Only four-engine bombers)
This file is not empty. (no DXF
viewer available is able to display it).
It's used for the nose art panel and attached using code 27.
- PxxxxE.3DZ
FOUR ENGINE BOMBERS: (Only four-engine bombers)
This file contains the whole left wing, including landing gear
lowered and correctly placed and one propeller including disc
and blades placed in a position which would be about the gravity
center of the plane if complete, AND the left tailplane and
elevator. This file is paired with PxxxxG.3DZ.
Its used as the left wing (close range) and attached to the element on F.3dz
which contains the code 28 hardpoint.
- PxxxxF.3DZ
External picture (Close Range); The "F" 3dz is the main 3dz. All
aircraft have it, and all parts of the plane are built off of it. In
default planes, I think the entire plane is made up of this one 3dz,
as far as the skin of the airplane is concerned. The A,
B and C 3dzs are often used in the more complex basic planes, and
many Low Resolution types also.
Includes a turning propeller, moving landing gear, nations
insignia panels, details like MGs pointing out of glass turrets
etc. The fuselage, the wings and all the other areas are
maximized in detail and the number of Node Points and Elements
is often used close to the maximum of 255 items each.
Be carefully of when applying 3DZ modifications – this is the
model you will have before your eyes most of the time. Texture
Distortions or bugs in the Rendering Sequence can be seen at
once - if something isn't right, it may spoil your enjoyment of
the whole aircraft project or delay its release for weeks until
that issue was found and solved.
Lazy modelers may try to and succeed at modifying this Close
Range "F" model first and then they copy the P####F.3DZ file and
rename the copies to be also used for the medium and long range
views, as well. This may seem like a fast option – but you
should be aware that your wasting memory and cpu cycles by using
such detailed objects so far away.
It maybe easier to learn the first steps of 3DZ model
modification with the long range "S" 3DZ. However, if you only
do minor modifications to an existing aircraft model it may be a
good choice to start with editing the Short Range right away
after all – but you should not do that if you want to do major
modifications or are a complete beginner.
FOUR ENGINE BOMBERS: (Every plane)
This file contains strictly the fuselage (the body) of four-engine bombers,
so strictly that it does include the rudder, but no tailplanes.
It is the central fuselage model to which all other files are
attached.
Two 3DZ Halves - in addition to the usual P####F.3DZ file for
the RIGHT half there is a P####G.3DZ file for the LEFT half of
the aircraft. Splitting the bigger aircraft’s this way is
necessary to stay within the limit for total numbers of Node
Points and Elements. (Note: watching a bomber formation up close
can 'stutter' the frame rate as both halves are loaded/shown
during the game, this split 3DZ model is often more difficult to
edit).
TWIN ENGINE PLANES: (Every plane)
This file contains for two-engine bombers the left half fuselage
(Close range)
and whole wing, including landing gear lowered and one propeller
complete with disc and the right number of blades, but sited in
the fuselage center, probably at 0,0,0. If you are doing a twin
engine plane, then the plane is broken down the middle (Two 3DZ
halves) and one half is in the "F" 3dz, and the other half is in
the "G" 3dz.
SINGLE ENGINE PLANES: (Every plane)
For one-engine planes this file contains a full view of the
plane (All Close range), with landing gear lowered and propeller including disc
and blades. However, the propeller is sited in the plane center
and the landing gear appears displaced both to the center, rear
and up from their real position, towards the gravity center of
the plane. (Only one 3dz defines the Close up view)
- PxxxxG.3DZ
FOUR ENGINE BOMBERS: (Only four-engine bombers)
This file contains the whole right wing, including landing gear
lowered and correctly placed and one propeller including disc
and blades placed in a position which would be about the gravity
center of the plane if complete, AND the right tailplane and
elevator. This file is paired with PxxxxE.3DZ.
It's used as the right wing and attached using code 29.
TWIN ENGINE PLANES: (Every multiengine plane)
This file contains for two-engine bombers the right half of the
plane, making pair with XXXXXF.3DZ. However, this file does not
contain any propeller.
- PxxxxH.3DZ
Every aircraft slot has its own P####H.3DZ file that contains
information to model an aircraft shadow “hovering” beneath an
aircraft when it is flying at low altitude. When you look at
such a file in 3DZ!Studio you will notice that there is nothing
but a flat outline of the airframe inside, shaped like if you
looked at it directly from above.
These shadow 3DZs are very small and contain only about 50 Node
Points and 20 Elements. They obtain their Texture Information
from the file P####TEX.TPC – or just a flat color information
from its fixed color palette.
If heavy modifications are done to an aircraft or if it is
“swapped” to use another Aircraft Slot you may have to adjust
this file to match the new airframe – thus avoiding “strange”
looking effects when shadow for the new aircraft are displayed
in the game.
You may have noticed that some aircraft have a grey or even a
multi-colored shadow in the simulation rather than a black one.
A closer look at the original shadow for EAW’s default aircraft
unravels the fact that the Elements used in the shadow often use
a certain small texture area of the file P####TEX.TPC to get
their textures from. However, these areas are quite often
situated within the texture coverings for other Elements
contained in the major airframe 3DZs – and of course these
aren’t all black in most cases.
If you care for detail in your 3DZ project you should provide a
proper P####H.3DZ shadow file to include it in the downloadable
ZIP archive for other users. It only takes about 10 minutes to
fix this file to be black under ALL circumstances – the
procedure how to achieve this is described below...
FOUR ENGINE BOMBERS: (Every plane)
Propeller and cowling. For Typhoon, Tempest and Fw190 contains
something like a triangle. For P38 it seems the cockpit assembly
shadow, and for B24 it seems like the forward half of fuselage
shadow.
TWIN ENGINE PLANES: Same as 'Four engine bombers', Shadow.
SINGLE ENGINE PLANES: Same as 'Four engine bombers', Shadow.
- PxxxxL.3DZ
Whenever an aircraft is damaged heavily at the main wing area by
enemy (or friendly) gunfire, AA shells or a mid-air collision
the “hitpoints” of that part of the aircraft may be decreased to
zero. When that happens, the wing is torn off the airframe and
will tumble towards the ground.
This effect is realized by using a certain Element Label for all
the parts that should in that case VANISH from all range models
– and a different Element Label for parts that should APPEAR
instead (like the Element forming the “cutting edge” through the
wing) appear.
When this situation occurs an additional 3DZ file is being
activated and displayed containing the torn off wing. There is
one of these files each for both main wings, the LEFT side
(P####L.3DZ) and the RIGHT side (P####R.3DZ).
These files contain all the parts that vanish from the main
airframe – usually the outer Elements of the appropriate wing
(in Short Range "F" 3DZ fashion detail). The Texture Information
is obtained from the file P####TEX.TPC and the center of the
Coordinate System is right in the middle in respect of all axis
that torn off wing stretches out to.
If heavy modifications are done to an aircraft or an aircraft is
“swapped” to use another aircraft slot you may have to adjust
these files to match the new airframe – thus avoiding “strange”
looking effects when torn off wings for the new aircraft are
displayed in the game.
FOUR ENGINE BOMBERS: (Every plane excepting V-1)
This file contains the left wing, broken. In four-engine bombers
it does contain the outer wing including one engine, no
propeller, and no landing gear.
TWIN ENGINE PLANES: Same as 'Four engine bombers'.
SINGLE ENGINE PLANES: Same as 'Four engine bombers', Left Wing
Broken.
- PxxxxM.3DZ
FOUR ENGINE BOMBERS: (Every plane)
This file contains the plane as its seen from medium distance.
It is made in a very rough, crude form, but includes things like
turrets. It does include the propeller disc, without blades, in
the center of the plane, probably in coords x0, y0, z0. It does
not include any landing gear.
(Wing View? trick of adding the PXXXXM.3DZ as the wing view is
revolutionary! Many other planes, twin and four-engined, that
doesn't have the PXXXXYTYR.3DZ can now be updated with the real
props in the cockpit view! I just thought of it as a short cut to
getting a wing view and hoped the props would work. I'll be trying
the same bodge with the Lancaster wing view when I get to that).
TWIN ENGINE PLANES: Same as 'Four engine bombers'.
SINGLE ENGINE PLANES: Same as 'Four engine bombers'.
- PxxxxN.3DZ
FOUR ENGINE BOMBERS: (Every multi-engine plane).
It contains the right half (Only) of the plane (Close Range), with landing gear
lowered in correct position and one propeller PAW style sited in
which seems to be the gravity center of the plane (coords
0,0,0). Probably this propeller is not used, but is still
present as a legacy from the initial phase of EAW development.
Where is the left half of the plane?...
Bomber nose art
TWIN ENGINE PLANES: Same as 'Four engine bombers'.
- PxxxxP.3DZ
SINGLE ENGINE PLANES: (Every one-engine propeller-driven plane)
This file contains the propeller including disc and blades, and
the spinner (separate). Possibly used exclusively for viewing
from outside the cockpit. Propeller & Spinner static and dynamic
views (include nose for P51B)
- PxxxxR.3DZ
See the "L" 3dz notes.
FOUR ENGINE BOMBERS: (Every plane excepting V-1)
This file contains the right wing broken. In four-engine bombers
it does contain the outer wing including one engine, no
propeller, and no landing gear.
TWIN ENGINE PLANES: Same as 'Four engine bombers'.
SINGLE ENGINE PLANES: Same as 'Four engine bombers', Right Wing
broken.
- PxxxxS.3DZ
FOUR ENGINE BOMBERS: (Every plane)
This file contains a simplified version of the plane, as if it
were cut from paper sheets (2D). It used for all long distance
view, just before the plane turns to a dot. No turning prop or
moving landing gear. (Tip: renaming the P####S.3DZ file to
P####F.3DZ and watching it in game up close can be revealing
(this can be done with any 3DZ file)). (These models typically
are made up of 100 Node Points and about 50 Elements. They get
their Texture Information from the P####TEX.TPC file and already
contain Element Labels.)
TWIN ENGINE PLANES: Same as 'Four engine bombers'.
SINGLE ENGINE PLANES: Same as 'Four engine bombers'.
- PxxxxT.3DZ
FOUR ENGINE BOMBERS: (Every plane)
This file is a mystery. For almost every plane it contains just
three lines, one representing the fuselage length, the other two
the wings, joining the fuselage at which seems the correct point
and angle. For P38 it contains one 'fuselage', the wings and the
'aileron line'. For He111 and Ju87 it contains two lines joined
at an angle, may be the fuselage and one wing. (All Dot Range).
TWIN ENGINE PLANES: Same as 'Four engine bombers'.
SINGLE ENGINE PLANES: Same as 'Four engine bombers'.
Cockpit Model Files
- PxxxxU.3DZ
(Every one-engine plane)
This file seems to include the wings, in part or whole, but only
the upper part (in DXF viewers when seen upwards you can't see
anything). It only exists in one-engine planes, suggesting that
this file is somehow used when the pilot looks right/left: in
two-engine planes the engines supposedly cover the wings (?).
Internal View of
Wings (single engine)
- PxxxxV.3DZ
When you enter Virtual Cockpit Mode in EAW or change the
resolution to differ from the default 640x480 pixels (or
1280x1024 pixels) a Virtual pit is displayed instead of the
fixed hard-coded bitmap graphics. You can “turn your head”
fluidly to look around freely and you will notice that it is a
true 3DZ environment you are “sitting” in.
The Virtual pit is being modeled by numerous 3DZ and TPC files -
...
There are two possibilities to provide your 3DZ project with a
virtual cockpit:
The first (easier) method is to “swap” and rename existing files
to match the Aircraft Slot your aircraft will use. You will find
some good resources in many downloadable user-made aircraft. For
example, Mikko Kosonen from Finland has painted some beautifully
PCX/TPC texture resources for cockpit instruments that are
reused in many user-made aircraft. This “swapping” of existing
Virtual pit models was also done by Charles Gunst as part of
realizesing his Enemy Coast Ahead (ECA) add-on for EAW.
The second method is (of course) to do your own modifications to
the various 3DZ/TPC files for the Virtual pit model...
(Every plane)
This file, paired with XXXXXW.3DZ includes the left half
cockpit, including the canopy frame.
Inner left cockpit
- PxxxxW.3DZ
(Every plane)
This file, paired with XXXXXW.3DZ, includes the right half
cockpit including the canopy frame.
Inner right cockpit
- PxxxxX.3DZ
(Every plane)
This file includes the instruments. In some planes it seems to
include some forward cockpit details.
Instrument panel
- PxxxxY.3DZ
(Every plane)
In one-engine planes this file includes the propeller with the
correct number of blades and their shape. In two-engine planes
it does include a much larger portion of the plane. It is
probably related with the routines used to show the propeller,
which do need to show the wing in two-engine planes. However,
Me262 do have this file , may be because not having XXXXXU.3DZ
it needs to have somewhere defined the wings view, left and
right.
Internal View of propeller static and dynamic (single engine)
Internal View of Wings (twin engines)
- PxxxxZ.3DZ
(Only some planes)
This file is used as a supplementary file for cockpits, defined
only where needed. In many planes it includes just the gunsight,
but there are examples including headrest, cockpit lining,
wheels and panels, etc, etc. and not including any gunsight.
Gunsight (twin engines) (Absent from 110C, 110G) Include Top of
Pilot Chair for 262A
Gunsight (single engine) (Absent from P51D, 190A, 190D, 109E)
Include Top of Pilot Chair for P51B, SP2A, SP09, SP14
Model Skin Files
Editable texture files in PCX format can be extracted from the ZIP
archives. EAW uses PCX templates of 256x256 pixel size that are
converted to TPC format that EAW uses with the PICPAC.EXE utility.
Some EAW aircraft skin authors (Skinners) do not include the texture
files in editable PCX format to their aircraft ZIPs – but only the
TPC files already converted by PICPAC.EXE. If you have no PCX
template at all you can create one from scratch with your graphics
application or rename another PCX template to the filename you need
(remember to erase any existing textures from that file as it won’t
fit the other 3DZ file’s 3D part layout in most cases).
In case you have a 3DZ file without a PCX template you can create
a file in BMP format previously using the 3DZ2BMP.EXE utility. The
resulting file will contain the outlined areas of the 3D part
coverings – and your graphics application will most assuredly be
capable of saving that BMP file to a PCX file template (if not, you
will need to get a separate conversion tool capable of doing this).
******.tpc = The extension for all skin files. This is simply a
specific type of compressed file that EAW uses. Each skin file has a
specific task. To extract a .PCX file from a compressed .TPC
container. You use gpmwapls' TPC2PCX extractor, PicPac/photoshop 8
bit.
- P****TEX.TPC
Main texture file; The primary aircraft skin
files. These files display the exterior. (256x256 pcx)
- P***2TEX.TPC
?(non-mirrored plane skin)?
- P****TES.TPC
Smaller middle-distance picture; The
companion low res aircraft skin file. Display the exterior for
the long distance model. (128x128) (Just down sample the p****tex.pcx
file to half) (not TXS)
- P***2TES.TPC
?(non-mirrored plane skin)?
- P****TRA.TPC
Main transparency file; Is a transparency overlay,
which allows things like glass, moving propellers, and aircraft
markings to be displayed on the outside. (If the transparent
areas have been edited this file is required, with default EAW
aircraft, this is often not necessary, but with new 3dz files,
or non standard aircraft, it is generally needed.) (256x256 pcx)
- P****g.tpc
Contains the Virtual Cockpit view textures.
- P****n.tpc
Contains the nose art for B17 and B24 (256x256 pcx)
- P****u.tpc
Contains the Cockpit Wing View Textures
(256x256 Hi-Res pcx)
- P****v.tpc
Contains the Virtual Cockpit view textures and
can give you the Wing view textures.
- P****w.tpc
- P****x.tpc
Are the gauges and dials for a virtual cockpit.
(256x256 pcx)
- P****y.tpc
Additional virtual cockpit files for the Me262
and P38. These are used because of the complexity displaying
multi-engine models.
- P****vtr.tpc
Is the virtual cockpit transparency file.
- ***ytr.tpc
Additional virtual cockpit files for the Me262
and P38. These are used because of the complexity displaying
multi-engine models. (256x256)
- P****bex.tpc
? (256x256 pcx)
- P****lex.tpc
? (256x256 pcx)
- P****mex.tpc
? (256x256 pcx)
- P****rex.tpc
? (256x256 pcx)
When making a new model, its best to roughly design the model with pencil and paper and
examines the nodes and polygon elements. You could do this on
plain paper or graph paper.
Quick Steps
This is a run down of what you will be doing to complete a model.
1) First, you create the wireframe.
2) Then, use 3dz Analyzer/Calc to create or adjust the Normals.
3) Also check the BSP (Rendering sequence).
4) Then, you map the texture onto the wireframe (skin it).
5) Then, insert it into the game to test it.
In Studio
Then you will start by creating the model within 3DZ!Studio,
...??one plain at a time to divide space into workable regions (you do not
want to do one
entire aircraft part at a time, as this is the incorrect
way??...). One has therefore
divided space into safe BSP areas that are isolated from each
other... Then and only then does one fill in the regions to
complete the model. ??what's this sentence really mean??...
When in the Studio, we call the model a Wireframe, but it's not a wireframe
at all. Your placing polygon elements
into certain locations with nodes. The program can
outline those polygon elements with a color (usually white), which
may look like a wireframe but it is not. 3DZ!Studio really needs a texture to display
those elements, if doesn't find one in it's directory it will
create a blank (white) one. It will also highlight a element
when you click on it (usually in red but these colors can be custom
set).
You will find once you want to place the first node, that it's easier
to start with a grid drawing in the background. This will provide
some perspective in the model and makes it easier to manipulate
the elements in 3D space.
Since your making a model from scratch, the first thing to do is
to make the
distance model (a distance model is what is used by EAW to display
far viewed planes), out of simple shapes, to the correct scale, which is
really easy. Do the shadow at the same time. Then break up the
distance model, into Five 3dz's and detail them, into the main models.
The RS and Checking RS
The RS (Render Sequence) as far as my understanding of it, it is
what mathematically displays the plane or object model correctly (or
incorrectly) in the EAW game world. See portions of a model need to
display first or in order to the viewer (player). Like a square
building, the nearest wall needs to display over or before the back
wall so that the object is displayed correctly and looks like a real
structure. Why this isn't automatic, or done in an easier fashion, I
don't know. The RS will be covered in a later section below this
one.
Since your new to this and just for safer model making, you may feel more comfortable to check RS
(Render Sequence)
after every five elements you add or you can run the risk of making
a model that doesn't pass the R/S requirements. If something did
go wrong, it will be easier to backtrack over five elements than it is several dozen,
you would only need to manipulate up to five elements to find the offending element. To do this, you
exit out of the 3dZ!Studio Model Program and run 'Gurneys RS
Calc'. )If you prefer to double check things, you can plan out
the model on paper with pencil and see if you can pre-calculate the RS
outcome)...
For Advanced users they can take the full structured approach and with some
planning, it won't even be necessary to test for working RS (BSP) until
major parts of the model are done, or until the whole model is
done. One only has to understand how BSP works and build the
model in a BSP compliant manner. One should be able to build
their new model and write out manually the BSP(RS) sequence as
they are creating the model without even using a BSP(RS) tool.
This is where something called 'Bulkhead Dividers' become a very valuable tool,
these are mentioned in the next section.
On a side note about the complexity of the RS. One may want to think
twice about partially building a model and concluding that a
construction path is or will be impossible when testing for BSP(RS)
compliance of a partially built part of a model.
It is possible to create a model in process to get in a situation where a working BSP(RS) sequence
seems impossible. However as one continues adding to
the model, a working BSP(RS) sequence can all of a sudden become
possible again.
Example: If one were to create the wing and the tail fin first with
no construction connecting them, and then try to create a
working BSP(RS) sequence, it would fail. Then one adds in a
bulkhead from the body of the model, and all of a sudden a
working BSP(RS) is possible again.
Tips These things will improve your
chances of getting a good Rendering Sequence result. A good RS
result is where the object, such as a plane displays properly in the
game, with no diapering panel elements etc...
Tips For Building a Successful Model:
- A single model is limited to 255 nodes and 255 Polygons.
- Concave elements will give the RS calc a headache, so try
not to have any.
- Create half of the object and mirror the rest, less chance
of RS errors. Build in half profile, and then mirror the sides,
then join them together. Working that way you have half the
chances for errors, and don't have to map the second side.
- Care needs to be in aligning elements, so you want to have
clear lines across the model.
- Make sure all of your elements are flat, and not twisted.
It's very common if you have a four of more node element, for
one of the nodes to be out of line.
- Best results come from having only triangle elements, three
Nodes.
- Animation codes:
Animation codes can be added to each polygon but selection in
the various versions isn't the same, personally I prefer to
build without and set them later in a text conversion using
Paolo's conversion tools. The text conversion is also needed to
calculate the normals section and make adjustments when
necessary. It's usually easier to have the text nearby so you
can change something in Studio and immediately change it
manually in the text to save doing a new conversion.
- Something that has many smooth continuous coupled surfaces
is not a good measure of a RS generation program.
To demonstrate this, create a cube or a spherical shape with
many polygons. There will only be 1 true possible RS sequence
for this sort of shape. Every polygon has every other polygon
behind it. The only true RS sequence would be a starting polygon
(any one of them) followed by any randomly selected polygon
behind it, followed by any remaining random selected polygon
behind that, followed by ..... until the straight line BSP tree
is finished. Any cube or spherical shape will now render properly with a true
PROPER BSP(RS) sequence.
NOW: with the same model make up any random WRONG BSP(RS)
sequence for that cube or sphere. See if you can force that model to render incorrectly in either
EAW or Gunship. Please let us know if you can achieve a corrupted model this way
for a cube or a spherical object.
I suspect this little test should give you some insight about
BSP(RS) and certain exceptions that don't require proper BSP
rendering sequences.
There are many of these strange quirks that one detects, but
only after playing with BSP(RS) sequences manually within the
mind, and seeing how it all ties together.
- Rebuild Final Model:
I always rebuild the final model from the text file, after
calculating the R/S and the normals. The easy part is putting
the polygons where they belong and making sure the model is
created efficiently, in that piggybacks can be an important
necessity but not for beginners. The hard part is to create the
model in such a way that it complies to the rules of 3D models
in EAW but if the model doesn't generate an R/S you can always
try slightly tweaking it untill it does work. Eventually you
will learn the pitfalls of the calculator as there are quite a
few.
- Thus far I don't think anyone has mastered the use of the
calculator, not even the "greatest" modellers and therefore most
models created have R/S issues, especially the more complex
models. These are very hard to build, but you can do a lot with
simple shapes. Models with straight rectangles are easiest,
curvatures are immediately complex, building with triangles to
create highly irregular shapes is beyond anyone's capability
and the outcome of such models relies purely on chance. The
human mind simply can not visualize polygon issues when their
number goes over 64 and Studio can't show such issues either.
The trick of a successful model is to figure out why the R/S
calculator crashes or freezes and that has taken me 10 years.
Moggy's manual calculation my be right but it's not a useful
way of doing things, it would take If anything fails years to
calculate the R/S for the complex models I create. ou can always
use my single branch technique, which is a sequence which
sequentially starts with 0 and ends with 255, which is how I
build them in the early days trying to figure out the rules.
Couldn't visualize things over 100 polys but below that I
usually got them to work correctly, even if it needed quite a
few tweaks.
You'll need that technique in any case, the R/S calculator can't
calculate if there isn't already a simple R/S present in the
model which covers the number of polygons in use. Everyone is
using it by now.
This section is to describe in steps how to use the main program,
with information to help you as you do use it.
Getting Ready
For a beginner your name of your folder will be "3DZ Studio NULL" as you will be
using the provided Null model.
Before starting 3DZ!Studio, this is where you would have to copy the 3DZ files (and
the matching texture PCX file in either 256x256 or 512x512 8bit) you want to view or edit
into the program's folder. However, for a beginner the provided 3DZ!Studio Kit comes
with an example set, _NULL.3DZ and _NULL.PCX files that you can use
for testing purposes or begin from scratch. Today we use it to get
you familiar with the studio.
Starting Up
Always load your models from within the studio program, never by
association.
- 1)
Open the _NULL.3DZ from within the 3DZStudio
GUI1 program MODEL menu bar
command and you're on your
way (This .3DZ has enough room to create very intricate models but starts
with
just a single polygon in 3D space).
- 2)
After starting 3DZ Studio immediately select the F3_Elements tab on
the left and then you will see the editing pane.
- 3)
Select MODEL in the LEFT top corner and select Load Model.
- 4)
Browse the folder for the _NULL.3DZ and select it.
When loaded the editing pane on the right will show the polygon but no 3D info is
displayed yet in the fields on the left.
- 5) Tick Piggyback#: to display the 1st polygon's 3D info.
- 6) Next to the Table checkmark Select ALL or checkmark under Node
0, 1, 2, or 4 boxes to change the polygon's
positioning and shape in 3D space. To do so use X Length Y Span and Z
Height Arrow buttons to increment or decrement the displayed values.
(Notice that under Node only Nodes 0 - 3 are editable for this poly,
with the
Up/Down arrows on the right of the Node value you can select other
(used or
unused) nodes for this polygon. (All higher nodes then 3 are unused
and
positioned at 0, 0, 0 XYZ and will change the polygon shape when
selected,
the old node will remain where it was).
- 7) Under Node Operations,
Use the Move UP or Move Down buttons and XYZ arrow buttons for destructive editing, there's
NO undo
so if you screw up reload your original .3DZ. (Always SaveAs with an
incremental file names).
Play with this a little first and familiarize yourself with the
editing pane
before moving on, have fun.
Advanced
Find a 3D Model/skin you want to work on. If you are doing this for the first
time, I strongly suggest you use a low resolution model. Unzip it
into a temp directory, and look for the following files, where ****
is the name of the base model:
p****A.3dz
p****B.3dz
p****C.3dz
p****F.3dz
p****G.3dz
p****TEX.tpc
p****TRA.tpc
Select these files and copy them into your 3DZ Studio folder.
The Basics
Loading Models
When you first load a model you can choose to load either the entire model, or
simply the 3DZ file that you have selected. If your working with a multi 3dz
model, you can switch which model your working with, by changing the 3dz model
window. If your working with EAW aircraft, you can just load the F.3dz and the
linked models will load too when they are present in the same Windows folder. In the case of
Terrain/Target Objects (TMods), you have this option if you load an _H.3DZ. These
are the main models, and will load any other linked models.
The model will then be loaded and display in Perspective View.
PROJECT FILES
A project file for 3DZ Studio (*.3vw file) is simply a text file with
information regarding model type, which models are to be loaded into the
project. It also contains the filenames of the 3-View drawings, the Span, Height
and Length of the model, and a reference point from which to draw the layout
drawings. It can also hold any notes made about the project.
Setting up the 3-View Drawings
The first step in using a project, and the main objective of implementing a
project file, is to use 3-view drawings. Once you have sourced your drawings
from the internet or book etc, you must size and save these views into a format
that can be read by 3DZ Studio. This format is:
- Must be a 256 colour PCX file
- Image must be a square 2^n size (eg. 128x128, 512x512, 1024x1024)
Do not worry if the image appears highly distorted, as when it is used as a
background it will regain it's original size
The top view must be with the nose facing LEFT.
The left view must be with the nose facing LEFT, fin UPWARDS.
The front view must be with fin UPWARDS.
Creating a New Project
The best use for a project is when creating a new HR model. To do this, first
load the _F.3DZ file, and all connected models. Next, move to the 3-View Data
Tab, and set the dimensions of the model, and a reference point. This can be
done either by entering real world dimensions, or by obtaining them directly
from the model. If you are obtaining them from the model, if it advised that you
first move through each loaded 3DZ file and remove any unused nodes. The
dimensioning routines are based on finding the extreme nodes, and if there are
extra nodes outside the normal dimensions, then your layout drawings will be
improperly scaled and likely distorted.
Next, for each of the three views listed in the drop-down box (Left, Top &
Front), choose the appropriate file that you created above. Now click Create
Project... and save the project with a .3VW extension. You now have a working
project file. You should now re-load the PROJECT file, in order to create the
background 3-Views.
Project File Notes
When you change the view textures, you must save and reload project for the
changes to become active.
MAKE SURE YOU MANUALLY SAVE THE PROJECT BEFORE EXITING. THE REMINDER MESSAGE ON
EXIT ONLY SAVES THE MODEL FILES.
This section is to describe about placing Walls or better known as
bulkheads into your 3dz model.
Bulkhead dividers help make the model making easier.
At certain points, insert bulkhead elements to cut the model
into smaller chunks. Think of a ship, with it's watertight
compartments, and you won't go far wrong in understanding what the
dividers look like. If you have ever built a card model, you
have an internal structure, and external structure. The bulkhead
elements are like the internal formers of the model. They just
divide up the model internally. They have no other use than to
divide up the model, into compartments, if you like, in a ship.
They just simplify the RS, because the RS calc does not have to
try and find the one and only RS for all the elements in a
model, it just calculates the RS for the sections.
Clean models, which work right away in game tend to be using bulkhead
elements. They cut the model into smaller chunks, and therefore
make it easier to create an RS. The bulkheads normally cut the
model in the vertical plane, but sometimes you'll need one in
the horizontal plane on rare occasions. (You
won't need to build in a full shape bulkhead, a 4 node flat
rectangle is more than enough to get a correct result in the RS,
they will help the calculation process).
When the model is finished, the
last job is to remove most of these bulkhead elements by
manually deleting the ones which are no longer needed. Just remember you'll want
to leave the dividers in until your 100% sure you are finished. Some bulkheads will remain as part of the cockpit
, interior , stump of a torn off wing and bomb aimer / gunners positions.
Note that Bulkhead Dividers will use up elements, but it's really the
best way to do
make a successful model. However making a model with up to Six 3dz files,
makes it hard
to run out out of elements.....You'll run out of total Nodes,
long before you'll run out of Elements.
As mentioned above, once the model is finished and we added the
RS and Normals, we just remove
the divider element by deletion and mapping by
replacing the divider element information with just 255.
(The Divider Element number, RS and Normals for the 255'ed
divider element must
remain in the model, or else to RS sequence will be broken). The Game does not use the element, other than to
provide the proper Rendering Sequence.
Assuming the bulkhead elements are in place, you'll just need to
run the RS calc, and Normals calc, and add these results to your
model...
I presume the exported model will be in 3dz format? This is the
easiest to work with, as you'll just need to convert your 3dz to
text, to add the results and convert back, and try in game.
If you end up with one big model, you can then divide it into
several sections. Break the model into the following:
Engine cowling B.3dz
Cockpit section F.3dz
Tail section A.3dz
Left Wing E.3dz
Right Wing G.3dz
Prop P.3dz
This section is to describe how to place landing gear correctly into your 3dz
model.
In the case of the landing gear wheel wells on the underside of the wing or
fuselage there needs to be one element showing the wheel well open and one
showing it closed. We apply an 'action code' to the two elements, one for the
landing gear down and one for the landing gear retracted. (Actually it usually involves more than one element, sometimes as many as four
different elements).
Then the modeler maps the "closed" elements to a position on the texture file
that is drawn with the wheel well closed and the "open" elements to a different
position on the texture with the wheel well drawn in the open position.
Now when the action code is activated you will see the open wheel well on the
underside of the wing when the landing gear is extended and vice versa.
All of the moving parts of a 3dz have to have to be built in
the "deployed" position.
The RS and Normals have to then be generated from the zero point
of the model. At this stage you have to add the offset codes to
the Normals and Nodes, and reposition the parts of the model,
back to the correct positions. This is because the Offset is
normally the center point of the folding part of the model, from
the zero point, and when you add this Offset to the existing
Nodes, it has the effect of moving the entire section, like a
wheel, way out of position. This s a very complicated topic to
try and describe, but I'm sure you get the idea.
Existing Models
See the section below this one for information on Piggybacks.
You will have noticed that landing gear is included in a seemingly haphazard way
in the 3DZ files. You are right: they are included in a haphazard manner, coming
to award-winning extremes in cases like B-26, where the landing gear is
displaced towards the center in a half-plane and towards the opposite side in
the other half (an error, probably).
At first sight it would seem that only the Stuka do have their landing gear properly defined, and
this strongly points to that differences being due to the way in which the
landing gears open and close. Legs do start at the correct position, but wheels
are displaced (so much that in Bf109, for example, both wheels appear joined
together at the center of the plane), and consequently the legs appear heavily
distorted. I'm still far from understanding the mechanism, and I'm afraid that
it could mean that this matter is dealt with at 3DZ file level and that a
general method for all planes does not exist.
On many older existing models this is either missing or poorly done so when upgrading
(tweaking) the
easiest thing to do is to get the closed elements shaped as accurately as
possible and mapped to the correct position on the texture file.
Then it's a simple matter to make a piggyback of the element and map the
piggyback to a different position on the texture file.
This section is for placing hard points (attachment locations) for
weapons, like on the underside of wings.
If your going to add a hard point, you need to first add an element which
covers the position where the joint will take place.
Joining things like wings need very large cutting element, which cover all of
the side of the fuselage. To this element you piggyback the hard point. Once you
have finished the model these large elements can be deleted, leaving only the
hard point to use the RS and Normals.
If the original element is correctly rendered, and has correct Normals, then the
Hard point will also show correctly with the _f value at 0, but if it does
flicker, then the good old -32768 value normally fixes it.
but a hardpoint can never ever be connected to any INSERT part (except the root)
That's why the _f must be 0, or -32768, so it shows at all angles. If the _f
value is 1,2,3...... then it's linked to the insert codes
To get a correct result for a hardpoint you need firstly
have to have a element which covers the area of the model where
the joint will be. The two elements shown, carry the hardpoints
for the joint between fuselage and inner wing, and the inner
wing to outer wing. The actual hardpoint position is 0,0,0, not
in the middle of the elements, as you might think.
A proper method (no Piggyback) of modeling; where cannons were piggybacked
onto a wing, and showed though each other, because the wing did
not have a split in the right place. Wings are very simple
models, but to make the RS work, you need to remove the offsets
for the folding gear, so it stands in the correct position. All
you need to do is remove the 1/2's from the nodes for the gear, keeping a
copy in text, so it can be pasted back into the folded node positions.
Then it's just a question of moving the gear back. Then the only
other thing you need to do is replace the bulkhead element in
the middle of the wing, and your ready to get a new RS. Not
difficult
This section is help on how to properly place props or propellers on
your plane.
Another use is when making a four bladed prop from a three bladed prop.
In that case you move the two blades that are at 120 degrees and 240 degrees
into new positions at 90 and 270 degrees. Then you make a piggyback of the
vertical blade at 0 degrees and change the height numbers from positive to
negative. The blade makes a mirror image 180 degrees from the original. Then all
you have to do is reverse the nodes so that the blade faces front, apply the
correct action code and you're finished.
THE PROPELLER BIG QUESTION
The propeller seems to be defined at several places, sometimes with disc (not a
whole disc, but a kind of “flowerlike” mask for the “dizzy” zones that you see
when the propeller rotates), sometimes disc and blades, and sometimes only the
blades. This are my own ideas at the respect.
Four engine planes: the propeller is defined at files XXXXXE.3DZ and XXXXXG.3DZ
for close viewing and at XXXXXM.3DZ for long distance viewing. There is no need
for more as these planes have no cockpit views, and it will probably be
necessary to have access to the code to define proper cockpit views with two
engines and their propellers, left and right.
Two engine planes: the propeller is defined at XXXXXF.3DZ for close viewing and
at XXXXM.3DZ for long distance viewing. For the cockpit views, refer to the last
paragraph.
One engine planes: the propeller is defined at XXXXXF.3DZ for close viewing and
at XXXXXM.3DZ for long distance viewing. It is defined too at XXXXXP.3DZ, which
is probably used for external viewing, as it includes a detailed spinner, but
why two engine planes have no XXXXXP.3DZ? Probably because they are defined in
two halves, and thus have less size problems (remember that 3DZ files are
limited to 256 nodes and 256 3D elements). XXXXXP.3DZ are probably used just as
auxiliaries.
Virtual cockpit: The propeller is defined at XXXXXY.3DZ, which is used for the
front view in one engine planes and for left/right view in two engine planes.
Then, can we include EAW propellers in PAW planes? I think so, if (and this is a
big if) their inclusion is possible within the “256 limit”.
This section is for help concerning the methods used to updating or
modify existing planes or 3dz models.
You may want to update an existing model because its much faster
than making one from scratch. This deals with Stretching and Warping
elements. Also includes the piggyback method.
You may find
tweaking an old low res model where it has several nodes and elements
still available to make a hi res model that uses up the remaining nodes and elements.
Such as adding more nodes to round off the tires, wingtips, engine nacelles
and such.
Drawbacks
This "recycling" of existing 3dz objects is simply something one
does when they don't have
the time to make an entire new model. However because its known to be an easier
task to use an original full 3dz model as a base model to reshape it
in short order, it is the lazy model option. It comes with some
downfalls.
- You have to out side of the studio modeling program, remap
and piggyback after the fact...
- They can
effect the function of the model within the game... During a proper
working game the tweaked object will appear to render properly.
There is a performance hit for game play.
Since they types of models are un-optimized in the sense of displaying and
using up resources.
- The trusty RS Calc made by Gurney can corrupt the model when
checking the mathematical rendering sequence.
However though, an Analyzer program by Will B has a notification
feature for such tweaked models...
- Also be advised
before you start work on a existing model that you can only
tweak a model so far, and then you'll reach the point
where, you simply can't "fix" a model without redoing the
entire RS...
- In the actual usage of modeling with these tweaks this can
produce bad habits for people looking to try to fix their
rendering issues the correct way. You actually stop yourself from learning how to do
things properly, and as such, stops yourself from being as creative
as you can become. Because the in-experienced will always rely on
improper tweaks (Piggybacks) and in result will practice
incorrect modeling techniques.
All the problems one can have
with a model stems from the lack of knowing enough about the RS
(BSP tree)
sequence.
If you learn not to rely on tweaks or quick fixes and learn to
edit the RS or BSP tree, then you will do it right
nearly every time to produce proper
models that are optimized and there is no reason to have a
Piggyback as it is not needed.
In a more complex fore site, one has the skills to
create BSP compliant models, even when one stretches older models, because one can see in
their minds what that change will do to the BSP, and one will
know how far one can manipulate a model in the first place and
then one does not require piggybacks...
Piggybacks
In EAW model construction, there are things called piggyback polygons. These are
polygons that appear twice in the BSP sequence.
Piggyback is used on
occasion in the original stock EAW models, they where piggyback
elements with -32768 in the Normals. One of the examples is in the
tail of the original B17 model, where two elements are
duplicated to cover up an RS glitch. The reason for
this is typically because a model was created by perhaps a lazy
model maker that did not have a proper BSP sequence (resulting
in disappearing parts of the plane during viewing it in game) and it became necessary
to introduce the rendering patch of that polygon element twice to cover up
the visual anomalies.
The Piggyback are actually 2 separate polygon
elements
sitting in the same area of the model representing the same
surface of the model, but are actually in different areas of the BSP
sequence (has a second element which shares the RS and Normals
of it's original element). Piggyback are often used to splitting old elements, to
refine the shape of a pre-existing model, to improve an old
model, without recalculating a new RS, or Normals. Often you
will find you may need to add more than one
piggyback to cover this new element, so the new element appears
to work correctly.
You can stick about 15 piggybacks on any one element before the
RS converter gives up and scrambles the model. But you can go past that limit
by adding the piggybacks from within 3dz Studio. It's more time
consuming but not much.
It's a "desperation" move though because once you have used that
method to go over the 15 piggyback limit you won't be able to use
the text conversion method if you have to apply another patch
somewhere else on the model. You'll want to use this method
sparingly.
More Than 15 Piggybacks
I don't know how well this really works,
but depending on the text length of each piggybacked element there is one
exception if you can manipulate the last
element to finish exactly when notepad is maxxed out with it ending with the
last node you can wrap that elements text to a second line and cheat that 13-15
max element line from crashing or in some cases multiple wrap arounds. This way
it's possible to have some elements going up to 30+ piggybacks long,
no crashing. Just better have your mapping correctly done prior
because that becomes the real pain.
Piggyback Example
An example of why Piggybacking actually makes modeling easier; To make a P-47N
model from a P-47D model should be simple. They are similar
planes, just the later has much
longer wings. If one attempts to get the R/S to work on the wing
using Gurney's RS Calc can be time consuming, perhaps due to limitation in the program.
One would think you would have to remove all the 'inserts' for the landing
gear and then move the gear to a "neutral location" before even
trying to get a working R/S. When and if you do get an R/S you
then have to move the gear back to it's correct location. Which
is a lot of work. Then the R/S still wouldn't render properly so
one would have to start
deleting elements to find the offending one. After chopping up
about 1/4 of the wing and not finding the solution, you may end
up stretching the wing, and add a piggyback to fill the gap.
This simple few steps would only take 10 minutes.
Another case in point. We have a low res Beaufighter needing to
be updated to hi-res. This should take approximately 7 to 10
days with the updating of an existing model with Piggybacks. For
comparison without the Piggyback approach, to build a new Beaufighter
from scratch would require months of free time. So using the improper method of
Piggybacks is faster for the modeler.
You must adjust the Normals before adjusting the RS. To adjust the
Normals, EAW modders use a tool called 3dz Vector2.exe. With it, you
open your .3dz file, then click 'Calculate normals', then save the
text file to disk. You then open that file, copy and paste the newly
calculated Normals to the 3dzToText file of your model, then convert
back to .3dz. (WB created his own Normals calculator, called 3dz
Analyzer 3dzEdit for larger GUNSHIP! models because Vector2 crashes
with them.)
Definition of a Normal:
- An Element's Normal is the vector that is perpendicular to
its plane and points to the origin 0,0,0. We can also describe
the Normal as an infinitely long line stretching off to infinity
in either direction.
The element's entry in the [NORMALS] section of the .3dz file
also includes it's 'D' value, which defines where on that line
the plane sits, i.e. the D value will increase or decrease as
you slide the plane up (increase) and down (decrease) on that
line.
Every polygon or element, if you extend it's plane, will have a
point on it where you can draw a line from 0,0,0 that's
perpendicular to its plane, not necessarily to the element or
polygon itself, but to the plane that it's a part of. The
origin, 0,0,0 could be toward either the positive or negative
arrows. This is the way the game decides
what plane is facing the player at any given time, and,
therefore, what elements to draw and their angle to the player.
It's really ingenious. The nice thing about Gunship! is that the
rendering engine seems to work perfectly, but the model .3dz
files might be wrong, though.
Then, use 3dz Analyzer/Calc to create or adjust the Normals, which are found in
the 3dzToText file like this:
[NORMAL]
;N000= _y0 _z0 _x0 _d _c _f
N000= 0 15266 -5947 7304 -85 0
N001= 0 16259 2012 -30767 -47 0
When you convert your model to text, you will see where the bulkhead elements
were in the model. In the text version, look for the elements section. You will see
groups of elements, divided by an element which is simply 255 [Like E098 = 255].
These are the former bulkhead elements, which have been deleted from the model,
but still retain a position in the RS and Normals.
A new version of Will's 3dz Analyzer, version 2.33 (02/16/2007)
It has new tips about how to create Normals for type 1 and 2
elements, and how to generate a better Rendering Sequence, and he
clarified a few other topics. To display the manual, just press F1
after running the program. Some enhancements to the program were
also added, including a new alternative for creating Normals for
type 1 or 2 elements, which saves time and makes things easier.
One of the most difficult things about 3dz Editing, is making a
Rendering Sequence, aka Binary Space Partition tree. So before the use of a RS Calculator, the BSP Tree (rendering sequence)
was a horror to deal with. How "Charles..." and others dealt with it in
the past is a wonder. Previously, this task had to be done by hand,
because we didn't have the original Microprose tool(s) to do it. Moggy
and others did this by hand with very long R/S calculations on
paper. Because of errors you will find Piggybacks were commonly
added as a questionable 'Workaround' to most models. Their success
depended on how well the Piggyback followed the existing R/S before
the Piggybacks where added. There does seem to always be some kink
that could be found
in most user made models.
Now to get proper RS from the Calculator, there should be no
piggybacks when trying to run it. If a model has
Piggybacks, then its quit possible that model actually does not have
a working BSP sequence and the Calculator is just going to go on forever,
retrying over and over all possible sequences, failing to produce a
proper RS for you and it will fill up your hard drive with a massive
text file if not stopped. Gurney's calc is a bit too precise, in a
good way, because it forces you to build a clean model, no
piggybacks.
A proper model with Gurney's 3dz Calc normally runs in a fraction of a second. If it
does not close and produce an Output.3dz. If it works for several
seconds (like 3 or 4) you might get a failed Output text file. The program automatically searches for the best
starting element, so you don't need to worry about setting a
particular element, for the model to start from. When a model is
built correctly you should never have a bad result from
Gurney's program, so I guess it's better than the original MPS
calc.
If you can't get a sequence with Gurneys RScalc, you should try Will
Baldwin's 3dzCalc. It's a brilliant little program, and it's not
overly complicated to use, either. Personally, I like having the 4
options for creating the BSP tree, but most of the time I just
choose 1,1,1,1. Don't even have to move the mouse for that-- four
clicks in the same spot.
Unlike RScalc, there is cutting & pasting involved in 3dzCalc,
though... The horror!
Admittedly, the program ain't perfect. It can create flawed
sequences. Non-co-planar Elements are especially troublesome. As the
Colonel pointed out, the program works best if all your Elements are
triangles (but you don't necessarily have to limit yourself to tris
provided that your Ngons are co-planar). 3dzCalc also sometimes has
difficulty with models that have relatively few Elements, for some
reason. iirc, it won't properly sequence a box.
If you have a basic understanding of BSP trees, there's another
useful feature in the program:
You can delete the Normals for Element(s) of your choice, and they
won't be factored into the sequence. Those Elements can later be
manually added to the 3dz.txt file Sequence Sector wherever you see
fit.
3dzCalc also gives the option of choosing the Root Element, which
can be very handy in some situations. If you leave the Root box
blank, the Calculator will try to determine a Root that gives the
best balance to the tree.
I've had tremendous success using 3dzCalc on fairly complex models
(including ones with concave areas).
Just another option to consider.
If you, on the other hand want to take a look at Will's (WB) RS
Analyzer, this will deliver a finished RS result on almost any
model, even with piggybacks, but it will not be 100% perfect for
game displaying and performance.
Will Baldwin (WB) has after several months, now added some significant improvements to
his
program. Including an RS Generator function to 3dz Analyzer. The
added new function displays the binary RS (Rendering
Sequence) tree. Previously, to make a change to the RS tree required
writing it out by hand, but my program does it automatically, and
also does some error checking that would be difficult, if not
impossible, to do by hand. Also, I fixed a problem when creating a
partial RS. You can generate an RS for just one specific part of an
object, or even generate each part separately, then glue them into
one RS. You don't even have to re-number / re-sequence any element #'s. This capability was already in
the program before, but he found out that it didn't work all the
time, so he fixed it. 3dz Analyzer can be used for either EAW
or Gunship! modeling.
There's some important things that my Analyzer seems to do better
than Gurney's RS Calc: 1 - Adding piggybacks with new nodes, a green
highlight. I know,
we shouldn't be using piggybacks but they still have a place when
upgrading old models. 2 - "Save As" option picks up the file you are
presently working on. You don't have to pick the file name from the
pop up window thus avoiding accidentally writing over the wrong
file. 3 - Color notification if an element has piggybacks. 4 -
Option to add a new node or an existing node on the element pop up
screen. 5 - Texture pop up screen includes a "see all mapping"
button. 6 - The option to outline an element in red rather than
highlighting the entire element.
since the node positions are integers, any rescaling will cause a distortion on
all elements when the values are rounded off. In the worst case an element may
no longer sit in the right position compared to the other elements and the
previous BSP tree may no longer be correct.
It's adviced to recalculate the r/s after rescaling or make sure that the node
positions are in the same relative position as compared to the node positions of
the original model.
This is quite a timeconsuming undertaking but necessary if you do not wish to
compromise the shape of the model. The more complex the model, the more severe
these distortions can become, some very small elements may even completely
disappear when their node positions will be calculated to be in exactly the same
spot because of rounding off. Increasing the size is less problematic then
decreasing, also because of the minimal node distance you can use in EAW, an
element using minimal node distance allready, will completely disappear when
only one node will occupy the same spot as another in an element.
Also after a rescale the normals need to be recalculated since the node distance
from the centre has changed.
If you have good Normals and RS, then the model should work.The
only other question is, are you using the Output3dz renamed, or did
you convert your model to text, convert the Output.3dz to text, and
copy and paste the RS out of the Output.3dz text, into your text
file?
The problem is, despite you getting a good output.3dz, these 3dz's
are normally corrupt in some way, and do not work in EAW. But, if
you cut and paste the Output.3dz RS into your original model, then
it should work perfectly.
Scale is all over the place in EAW. It is that 3DZ used for
different types of objects use different scales. New aircraft models
should be proportionate in size to the originals, and ground objects
would be better if they where proportionate to the said aircraft
scale. Simple enough you would think, but unfortunately it doesn’t
seem to have occurred to MicroProse when they produced EAW.Now
the relative sizes of ground objects to aircraft has always been
desirable but not essential. You fly over them, maybe shoot at them
and zoom over the top in a matter of seconds, sometimes park near
them on airfields.
Looking at other flight sims the buildings and planes all seem to be based on
the same scale, which is not the case in EAW. The reasons why it was done the way it is, are lost in time, but that is no
reason why, when we have the chance to fix this problem, we don't.
EAW uses different 3d grid sizes (i.e. different intervals
between the nodes) for different purposes.
also note that 1 "EAW unit" is, more or less, 2 inches or 5
centimeters (1,83 or 1/46 scale, ).
This also means that we can make 3D details with this minimum size,
except, of course, effects with transparencies, as tailWheel,
machine guns, etc
In Fleet Defender, the scale bigger. Some planes can have up to
2,000+ size units, and they appear giants in EAW!!!
These have another thing : we could make small 3D details more
easily...
Question : Did they use 1/48 plastic models to build the original
EAW 3D models ??
Scale of EAW Planes:
AIRCRAFT 3DZ
1 EAW POINT = 1.765" = 44.83mm
In EAW aircraft models the scale is one EAW click = 4.5 cm (or
about 1.7 inches).
I have always used 1.6 point per inch for scale. I came up with
that estimate for making 3DZ models a long time before Anthony did
his in depth research. I looked at 10 or 12 of the stock models
length and wingspan in points and then compared them to the real
planes' dimensions. The scale was not that consistent, but it
averaged out to 1.6 points.
Col. Gibbon researched the average of the fuselage lengths of the
default EAW 3DZ and some user made aircraft. He found the average
comparison of default 3DZ to real aircraft was something like 1 EAW
point = 48mm = 4.8 cm.
Paulo Morais helped by providing "for comparison purposes only" a
conversion of EAW points to real world centimeters ( 1 EAW point =
3.05 cm) based on the wingspan of the default stock EAW plane, the
FW-190D. Paulo went ahead and based his brilliant "3dz-scl"
3dz re-scaling tool on this measurement. (Its possible that the
original Alessandro Studio tools based conversion on the same built
scale). This is critical, as it turns
out that the wingspan is incorrectly scaled in comparison to the
fuselage, when done by MPS. So watch that when re-scaling objects in EAW.
Making an EAW style model, in the correct scale of [1/48]
and without using too many elements and nodes, you need to
remember to build in 1/48 scale. To work out the EAW length of a plane in 1/48, simply take the mm
Length of the plane, and divide by 48, and the number you get is the
EAW scale of clicks!...
Scale in EAW Virtual Cockpits:
virtual cockpit models scale is about a quarter of the aircraft
scale: 1 click = 1cm = 0.4 inches aprox.
(1 click to 0.44 inches would be exactly four times the apparent
scale of the planes).
Work with the quarter of the plane scale, 1 click =
0.44 inches. (10mm)
cockpits: These appear to use a scale of their own in order to allow
finer graduations for cockpit detail. From memory, the wingtip in
the cockpit view is 400 odd Y 3dz points, but the main 3dz is around
180.
Ground Objects Scale:
The pattern, all stationary 3DZ objects are rendered at 2 times
the aircraft scale. All moving vehicles Tmods are rendered at 4
times the aircraft scale and some Bridge parts and 3D forest may be
8 times aircraft scale.
1 EAW point = 3.53 inches = 89.66mm (2x the aircraft scale)
1 EAW POINT = 7.06 inches = 179.3mm (4x the aircraft scale)
Looking at the tmod 3dz's, the scales look like this:
Ships, and the train 1/70
Tanks 1/60
Tress 1/60
Parachutist 1/30 based on a 6' man
Buildings? - no drawings to compare.
TMOD Object Scales:
3D file set Shape Tex ref for main file Tmod##_H.3DZ Scale
----------- ------- ----------
Tmod01_*.3dz factory grnd01.PCX 3.53"
Tmod02_*.3dz factory grnd01.PCX 3.53"
Tmod03_*.3dz refnry/chm.plnt grnd01.PCX 3.53"
Tmod04_*.3dz factory grnd01.PCX 3.53"
Tmod05_*.3dz (not used)
Tmod06_*.3dz arms factory grnd01.PCX 3.53"
Tmod07_*.3dz RR Station grnd06.PCX 3.53" (rendered at half the
scale of the train)
Tmod08_*.3dz warehouse grnd08.PCX
Tmod09_*.3dz u-boat pen grnd04.PCX 3.53"
Tmod10_*.3dz v-1 launcher grnd02.PCX
Tmod11_*.3dz Bridge grnd07.PCX 3.53"
Tmod12_*.3dz Susp bridge end grnd07.PCX 14.12"
Tmod13_*.3dz Susp bridge grnd07.PCX 14.12"
Tmod14_*.3dz Bridge roadbed grnd07.PCX
Tmod15_*.3dz Short bridge grnd07.PCX
Tmod16_*.3dz Long bridge grnd07.PCX
Tmod17_*.3dz Heavy Flak grnd04.PCX
Tmod18_*.3dz Light Flak grnd04.PCX
Tmod19_*.3dz Oil tank grnd01.PCX
Tmod20_*.3dz Radar control grnd02.PCX 3.53"
Tmod21_*.3dz Radar tower grnd04.PCX
Tmod22_*.3dz 3D Forest grnd12.PCX 14.12"
Tmod23_*.3dz Fort grnd02.PCX
Tmod24_*.3dz Fuel Dump grnd02.PCX
Tmod25_*.3dz AC Tower grnd02.PCX
Tmod26_*.3dz Ammo bunker grnd02.PCX 3.53"
Tmod27_*.3dz Hanger grnd05.PCX 3.53"
Tmod28_*.3dz Barracks grnd02.PCX
Tmod29_*.3dz Mess hall grnd02.PCX
Tmod30_*.3dz Headquarters grnd02.PCX
Tmod31_*.3dz Briefing Rm grnd02.PCX
Tmod32_*.3dz Tree grnd09.PCX 3.53"
Tmod33_*.3dz Trees grnd09.PCX 3.53"
Tmod34_*.3dz Tree grnd09.PCX 3.53"
Tmod35_*.3dz Trees grnd09.PCX
Tmod36_*.3dz Tree grnd03.PCX
Tmod37_*.3dz Trees grnd03.PCX
Tmod38_*.3dz Tree grnd07.PCX
Tmod39_*.3dz Trees grnd07.PCX
Tmod40_*.3dz 3D Forest grnd12.PCX
Tmod41_*.3dz warehouse grnd05.PCX
Tmod42_*.3dz 3D Forest grnd12.PCX
Tmod43_*.3dz Locomotive grnd04.PCX 7.06"
Tmod44_*.3dz RR Tender grnd04.PCX
Tmod45_*.3dz Box car grnd04.PCX
Tmod46_*.3dz Tanker car grnd04.PCX
Tmod47_*.3dz Flat car grnd04.PCX
Tmod48_*.3dz Car w/Panthers grnd04.PCX
Tmod49_*.3dz Flak car grnd04.PCX
Tmod50_*.3dz Fuel truck grnd03.PCX
Tmod51_*.3dz Open truck grnd03.PCX
Tmod52_*.3dz Truck grnd03.PCX
Tmod53_*.3dz Halftrack grnd03.PCX
Tmod54_*.3dz Kubelwagen grnd03.PCX 7.06"
Tmod55_*.3dz Panther grnd04.PCX 7.06"
Tmod56_*.3dz Sherman grnd03.PCX 7.06"
Tmod57_*.3dz Transport ship grnd05.PCX
Tmod58_*.3dz Small church grnd01.PCX
Tmod59_*.3dz City bldgs grnd11.PCX 3.53"
Tmod60_*.3dz City bldgs grnd11.PCX
Tmod61_*.3dz City bldgs grnd11.PCX
Tmod62_*.3dz City bldgs grnd11.PCX
Tmod63_*.3dz Cathedral grnd10.PCX
Tmod64_*.3dz Farm grnd10.PCX 3.53"
Tmod65_*.3dz Manor house grnd10.PCX
Tmod66_*.3dz Large chateau grnd10.PCX
Tmod67_*.3dz Windmill grnd10.PCX
Tmod68_*.3dz Chateau grnd10.PCX
Tmod69_*.3dz Parachuter grnd06.PCX
Tmod70_*.3dz (not used)
Tmod71_*.3dz (not used)
Tmod72_*.3dz Destroyer grnd04.PCX 3.53"
...the 42000 point factory proves that my(Anthony) 1 point =
3.53" scale agrees with the HUD distance to friendly display and
therefore the way distance is measured in the game. And these 2
figures agree with the real elapsed time to traverse a terrain tile
at a constant velocity. Therefore, if you adhere to the scales I
have posted, you will be keeping all objects in proportion to the
aircraft 3dz AND the EAW terrain they are placed in.
Note: SLOT placing may change the size of
the aircraft object. A plane in a plane slot is one scale, but the
same plane model in a ground slot is twice the size (or larger). An
example; Placing static planes in certain tmod slots
can make them appear twice the size. Taxi up close with your plane
and you'll see the size difference. Therefore to correct this using
the same tmod slot, you need to scale down the aircraft model to
view them in game at the correct size. (TMOD slots are not
interchangeable either). You can
use Paulo's (3dz-scl) 3dz scaler now, and it makes it a lot easier.
NOTE: Size is rescaled by the game when it is rendered on the
screen. The tmod table left in the exe, can be altered to change the scale factor of the groundobjects......there are three model types designated for the game and they
appear to correspond to the planes and the two scales of ground
objects...its a single byte in the exe tmod table...
Terrain Tile:
TK said they used 4Km (across) resolution DEM data, so each tile is 4,000 meters
on a side. However the graphics such are roads may be scaled incorrectly on the
tile...if the ground models were smaller or significantly larger, there can be
issues relating to the terrain tiles...
When compared with a map of Europe, It was found that the east-west scale was
different from the north-south scale! East to west, one tile is about 1.36
miles, whereas north to south it's about 2.09 miles (whatever that is in km).
Gunship! .3db wireframe size:
What follows is entirely speculation.
If anybody else has any other opinions, please let me know.
Examining some .3db files converted to directly to .3dzs, or text dumps of those
files, the following is gathered:
3db Length Reality Ratio
havoc 4264p 17.01m 250.68p/m
hiphi 4427p 18.2m 243.24p/m
tiger 3591p 14.08m 255.04p/m
uh60 3902p 15.6m 250.13p/m
ch53 5783p 22.35m 258.74p/m
hind 4010p 17.5m 229.14p/m***
Most of the ratios are suspiciously close to 254 points/meter, which would equal
10 times the resolution of the accepted decimal foot value for .3dz files.
The Hind is an anomaly, but It can't be looked at the model directly, since it has too
many points and elements to convert to a .3dz.
There's a problem sometimes when converting stuff that was originally made in .3db
format to .3dz. If a model has in excess of 256 nodes or elements, it can't be
converted to a .3dz. The only thing to do is to look at a text dump of the .3db.
But then, you never know if there's extraneous nodes in the model or not. You
also can't tell if the model is shorter (or longer) than the accepted fuselage
length on account of FLIRs and the like being added via hardpoints.
For a couple of the available models converted to .3dz, I had to manually remove
extraneous rotor nodes.
What all this crap boils down to is that I suspect 1 3dz point = .0039737 METERS.
If ya' wanna' build a model in 3dz Studio, however, you can't just look at the
length of the model in the project's 3-View Data box and divide by ten. You have
to look at the 3dz point numbers in the first column of that particular box
(wingspan, length, and height) to determine the size of your model.
For instance, if you convert the CH53 from .3db to .3dz, the fuselage is 5783
3dz points in length. 3dz Studio will show the fuselage length in metres as
259.12. If ya' divide that length by 10, you get 25.912 metres. Often, the
length of the CH53 fuselage is given as 22.35 metres. That's a discrepancy of
more than 3.5 metres. But if you take the 5783 3dz point length and multiply by
0.003937, you end up with a length of 22.95851 metres. That's much closer to the
generally accepted CH53 fuselage length of 22.35 metres.
Calculate The Hitbubble Size From The 3dz:
For aircraft this question had already
been answered by Anthony. He had found the scale of the aircraft 3dz
and his theory proved right in the last couple of month. According
to his work you have to multiply the 3dz-points with a factor of
0.14708723 to convert it to feet.
For ground object hitbubbles, you have to multiply this
value with the 'model type' factor of the ground objects table in
the exe to get the right value.
A little explanation:
The model type is actual a multiplication factor.....We know, that there are 3 different ground object 'model types'
representing 3 different scales. Example: If you take an aircraft
3dz and put it to a ground object slot, it will mostly display twice
as large, because most ground objects use 2 as 'model type factor',
(but 3 and 4 can also be found). So you have to pay attention when
switching ground object-slots, because the 'scale factor' can be
different and the moved ground object can display too small or too
big.
model type scale compared to one 3dz point matches
model type 1
0 no model (e.g. airfield) - -
1 (aircraft (flying) object) 1x 0,147 feet
2 (static ground object) 2x 0,294 feet
3 (all moving vehicles) 4x 0,588 feet
4 (bridges and 3d forest) 8x 1,177 feet
Rescaling, changes everything, so the first thing to look at is
concave elements. Because when you change sizes, some round up, and
others round down, in and out too, so you need to look very
carefully. You can have at least two elements, (a mirror of each
other) causing the trouble.
- EAW seems to be 1/10th scale
for cockpits, and the planes are 1/40th.
- Tmods then would be 1/40th or 1/80th scale depending on what they are.
Here you should find some details about getting other game models
that are compatible or convertible, into EAW. Games that have been
successfully converted from with special tool programs is PAW and
Gunship!.
Converting 1942 Pacific Air War (PAW) files to EAW:
The format in PAW is similar. In EAW the 3DZ files are the 3D shapes, and the
TPC files are the aircraft skins. The reference in the EAW *.3DZ files is to a
PCX file, which does not exist in EAW - it is the TPC file of the same name.
(This is a coding hangover from PAW, which does use *.PCX files)
In PAW the skin file is *.PCX, but this is not a regular PCX file, but obviously
a Microprose file, with the same format as the EAW *.TPC files. The EAW *.TPC
files are 256x256 size, but the PAW *.PCX files are only 256x128 size Using the
corresponding PAW skin file, and re-naming it, gives an error message about
"File the wrong size". For EAW, the *.TPC files have to be drawn from scratch
over the PAW 3D shapes.
The PAW 3DZ files are easier to convert. Change the internal reference to
PxxxxTEX.PCX and change the file name itself as follows:
PAW file name EAW file name
xxx.3DZ PxxxxF.3DZ
xxx_HALF.3DZ PxxxxG.3DZ
3xxx.3DZ PxxxxM.3DZ
3xxx.3DZ (again) PxxxxN.3DZ
23xxx.3Dz PxxxxS.3DZ
123xxx.3DZ PxxxxT.3DZ
I hope this is clear. If not, look at one of the new converted shapes. Jamie
Richards' new Ki43 Oscar is a good example, taking the Fw190A shape and putting
it in the Bf109E slot.
It is fairly simple, but you do need to make the appropriate changes within the
3DZ files by hex-editing. You need to hex-edit the *.PCX file reference in the
first line of the 3DZ files, as well as changing the file names appropriately.
And remember, if you are hex-editing, always keep backups. And if you can't add
in hexadecimal, you shouldn't be hex-editing.
Some Background:
The 3DZ files used in 1942 – The Pacific Air War (PAW) game (also made by
MicroProse) had a similar format as the 3DZ files of EAW (This format was
developed by MicroProse). After renaming those 3DZ files from PAW to match the
filenames used by EAW (as shown above) it was then possible to get the American
and Japanese aircraft that flew in the Pacific Theatre of War to fly in EAW.
However, there were some limitations on those converted 3D models from PAW –
when that game was released (in 1994) there were no 3D accelerator cards at all
that would have allowed transparent texture effects. Every EAW player is used to
see these transparency effects on EAW’s aircraft that are used to display
cockpit windows and modeling the visual effect of fast turning propeller blades.
(On the PAW aircraft, frames all surfaces are solid and the propeller is modeled
by simple lines rotating around the propeller axis).
The details of how the data lines and values are organized within the aircraft’s
3DZ files (with some limitations). The wrote a document about the 3DZ File
Structure that contained information about this data organization (something
that advanced users, hex editor users and programmers who may want to mess
around with 3DZ files should read).
In the following description of the file format it will be used a C
like notation. The example values were taken from the file
PHURRF.3DZ.
Each 3DZ file is made of several sections, some of them being
optional. The way to calculate the offset to reach a particular
section is given in terms of variables previously defined. Some
sections can be better represented by a C structure that is repeated
depending on the number of elements involved. All values are
integers of different sizes, signed or unsigned. Not a single
floating point value is used by the 3DZ file format.
The variable types used are:
char single byte unsigned integer; used in file names
byte single byte unsigned integer; used for codes and flags
int two byte signed integer; 3d and texture mapping coordinates
word two byte unsigned integer; internal addresses and counters
Header Section (_header)
Located at Offset: 0
Size: 22 bytes
Internal Offset |
Type |
Example Value (PHURRF.3DZ) |
Variable Name |
Description |
0000 |
word |
201 |
- |
Unknown. Apparently not used. Maybe a 16 bit CRC |
0002 |
char[14] |
PHURRTEX.PCX |
|
Texture file name 8.3 format + NULL terminator |
0016 |
word |
4 |
_par |
Number of components/parts |
0018 |
word |
210 |
_nod |
Number of nodes defined |
0020 |
word |
232 |
_ele |
Number of 3d elements |
Every 3DZ file can only use a single texture file to cover some or
all of the internally defined elements. The name must point to the
uncompressed version of the texture file, that is always in PCX file
format. The size of this last file has varied with time, being
256x200 for older simulations and 256x256 for EAW.
Components are model parts that can have relative motion.
Propellers and undercarriage wheels are some of the possible
components. Can be internally defined or externally. In the last
case is up to the application to provide the name of the missing
component. It is for this reason that some of the PAW models are not
compatible with EAW. The different parts that make the entire model
are distributed in a different way.
Nodes are 3d points that can be used for several purposes inside
the file, and are all grouped in a single table. All elements only
make references to entries in this table using a single byte instead
of defining all three coordinates.
Elements are all the 3d points, lines and different types of
polygons, textured or simply painted in one color, with transparent
information or not that are defined inside the file.
Component insertion point (_insert)
Located at Offset: sizeof(_header)
Size: (_par-1) x 8 bytes
Internal Offset |
Type |
Example Value (PHURRF.3DZ) |
Variable Name |
Description |
0000 |
byte |
2 |
_cod |
Component code (meaning not fully known) |
0002 |
byte |
4 |
_num |
Component number |
0006 |
int |
0 |
_y |
Y coordinate |
0008 |
int |
0 |
_z |
Z coordinate |
0010 |
int |
0 |
_x |
X coordinate |
The referential used is: Y is the model transversal axis, wingtip to
wingtip in the case of aircraft, positive sense from model centre
towards left wingtip; Z is the model vertical axis, positive sense
downwards; X longitudinal axis; positive sense backwards, from
centre towards tail.
This section is absent if the total number of components is one.
Otherwise the same data structure repeats for each extra component.
Element normals (_nrm)
Located at Offset: sizeof(_header) + (_par-1) x 8 bytes
Size: _ele x 12 bytes
Internal |
Offset Type |
Example Value (PHURRF.3DZ) |
Variable Name |
Description |
0000 |
int |
0 |
_y0 |
Y component of normal vector |
0002 |
int |
15830 |
_z0 |
Z component |
0004 |
int |
-4221 |
_x0 |
X component |
0006 |
int |
28257 |
_d |
offset (not sure) |
0008 |
int |
-8 |
_c |
curvature (not sure) |
0010 |
int |
0 |
_f |
flag/parent body (not sure) |
The surface normal is normalized to 16384. That means the square
root of the sum of squares of components always gives that value.
The fourth value can be the independent term for a clipping plane
definition. The fifth can be some curvature value used for rendering
the surface. The last is a flag or body ownership value.
Element rendering sequence (_seq)
Located at Offset: sizeof(_header) + (_par-1) x 8 bytes + _ele x 12
bytes
Size: (_ele+1) x 2 bytes
This is a circular linked list with branching that defines the
correct sequence of element drawing.
0B0E 3E 00 FF 52 FF ....
This is the trickiest part of the 3DZ file structure. If a element
is absent of list it is simply ignored. If misplaced it can be drawn
in front of others even if it is physically behind. If the sequence
is cutted by a misplaced element entire parts of the model are left
blank. The best interpretation I can give is that each value
represents a element and also a jump to the relative position from
start of sequence that should be occupied by the next element in
sequence.
Nodes (_nodes)
Located at Offset: sizeof(_header) + (_par-1) x 8 bytes + _ele x 12
bytes + (_ele+1) x 2 bytes
Size: _nod x 8 bytes
Internal Offset |
Type |
Example Value (PHURRF.3DZ) |
Variable Name |
Description |
0000 |
int |
0 |
_y |
Y coordinate of node |
0002 |
int |
6 |
_z |
Z coordinate |
0004 |
int |
-95 |
_x |
X coordinate |
0006 |
word |
0 |
_b |
parent body |
Simply the coordinates of each node and body ownership value.
Element location table (_elt)
Located at Offset: sizeof(_header) + (_par-1) x 8 bytes + _ele x 12
bytes + (_ele+1) x 2 bytes
+ _nod x 8 bytes
Size: _ele x 2 bytes
1370 1540 1551 1562 1573 ....
A table containing the absolute offsets from start of file for each
individual element. This table is necessary because the size of each
element is variable and dependent on its type and number of nodes
used.
Element section (_elem)
Located at Offset: the element location table must be read to find
the precise location of each element.
Size: undefined
Next is the first element of the file PHURRF.3DZ as an example.
1540 BYTE 5 _cod element type code. An opaque face
1541 BYTE 4 _crn number of element nodes (corners)
1542 BYTE 6 _nod[0] first node number
1543 BYTE 33 _ymp[0] y coord for texture mapping
1544 BYTE 10 _xmp[0] x coord for texture mapping
1545 BYTE 7 _nod[1] second node number
1546 BYTE 33 _ymp[1] y coord for texture mapping
1547 BYTE 15 _xmp[1] x coord for texture mapping
1548 BYTE 1 _nod[2] third node number
1549 BYTE 15 _ymp[2] y coord for texture mapping
154A BYTE 13 _xmp[2] x coord for texture mapping
154B BYTE 0 _nod[3] last node number
154C BYTE 15 _ymp[3] y coord for texture mapping
154D BYTE 10 _xmp[0] x coord for texture mapping
154E BYTE[2] 00 A6 _att element attributes/color index
1550 BYTE FF _end element terminator character
|
to end of file
Some elements have a WORD prefix meaning the element belongs to a
certain detachable part like a wing for example. The word is made of
a first byte that identify the part, the second byte is a flag. A
element from the point of view of the location table, drawing
sequence and normals only ends when a FF character is found. So it
is possible to find entire chains of several elements including the
WORD prefix that only count as one.
All element type codes are:
1 - Single-colored Line
(data syntax: Node # 1, Node # 2, Color Index in the P####TEX.TPC)
byte code=1
byte start node
byte end node
byte color index to choose from texture palette to paint line
2 - Single Insertion Point. Underwing stores; “Hardpoint” for bombs
/ drop tanks
(data syntax: Index in the LOADOUT.DAT file, Node #)
byte code=2
byte identifier. Must match underwing hardpoint numbers in
Loadout.dat for example.
byte node
3 - Single-colored Polygon. Surface painted in single color of index
given.
(data syntax: Total number of Nodes, Node #1, Node #, [...],Color
Index in the P####TEX.TPC)
byte code=3
byte number of nodes (n)
(n)byte node numbers
byte color index to choose from texture palette for the entire
surface
4 - Multiple-colored Polygon. Surface painted in color index given for each
corner.
(data syntax: Total number of Nodes, Node # 1, Color Index # 1, Node
Nr. 2, etc.)
byte code=4
byte number of nodes (n)
(n) byte node numbers
byte color index to choose from texture palette for the node
Presumably color index for points between nodes is linearly
interpolated
5 - Opaque textured polygon.
(see the above example Element - this is the most common Element
Type in 3DZ files)
byte code=5
byte number of nodes (n)
(n) byte node numbers
byte y coordinate of texture file to map
byte x coordinate of texture file to map
byte unknown always zero
byte additional attribute/default colour index/rendering parameter
6 - Textured Polygon with Transparency Information. Depends on contents of TRA texture file. This element share the same structure of the
previous
(e.g. cockpit windows; data syntax is the same as of a polygon type
5 - in addition to the texture information of the P####TEX.TPC file
the Transparency Information is scanned from the P####TRA.TPC file
and applied to the texture pixels accordingly...)
The pairing of TRA and TEX files is application dependent. For EAW
that pairing is not defined for every aircraft slot. The usage of
non-standard names will also compromise transparent effects.
3DZ Converted to TEXT File Structure:
The converted out file structure. made by Alessandro Borges's
Converter(the lastest what is available is v2.0 when i was writing
this Lesson Book)
Header Section:
[HEADER]
INI=162 - This is a byte at the beginning of each 3dz but it's quite
uncertain is it used for anything (My guesses, it was used to make
the 3dz-s sorted at the 'Factory of MicroProse')
TEXTURE=P109ETEX.PCX - This is the name of the Skin what will be
used to map the elements texture from.
PARTS=4 - the numbers of "Insertion Coordinate system" so called
'Insertion Points' will be used (!!!IT HAS ABSOLUTELY NO CONNECTION
to the how many 3dz the plane or object is built up!!!)
POINTS=215 - the number of Points ACTIVE IN the 3dz, it's not
necessary to use them all BUT at the Points section You will allways
find one lesser point because the Point 0 does counts as One.
ELEMENTS=245 - the number of Elements ACTIVE IN the 3dz, it's not
necessary to use them all BUT at the Elements section You will
always find one lesser element because the Element 0 does counts as
One.
[END] - end of the header section
Insert section:
[INSERT]
;I000=_cod _num _y _z _x
I000= 2 4 0 0 -90
I001= 2 2 -10 -13 -49
I002= 2 1 10 -13 -49
[END]
- the _Cod means that it's a 'Hardpoint' or to be precise the Zero
Point of the new coordinate system by what the actions will be done.
- the _Num means the what type of hard point it is, Propeller,
Landing Gear,
- _y the 'new' coordinate system's left or right placing
- _z the 'new' coordinate system's up or down placing
- _x the 'new' coordinate system's front or back placing
Itself the coordinate systems can be/or are 'activated' at the
Points Sections, it's not a big deal only the naming
number(I000;I001;I002 in this case) has to be added at the end of
the points in the _B 'Row' BUT only the ONE Digit form of it like 0;
1; 2.
Value of the insertion Point will be subtracted or added to the
point's X,Y,Z Values. (BE aware, the propellers Insert Planes are
Rotating! it was not nice when once i have accidently used the inset
of the propeller and when the plane was loaded into EAW i saw a
Gunner rotating around the Fuselage of the B-24 :) )
the way it works: Lets take a main Plane, the Insertion points for
the New one, is (Y)-22 (Z)0 (X)-27. it means that the new plane will
be In front of the original, and to the Left.
Known Insertion codes, and their Functions:
2 0 = Does nothing, just adds a new insert to the plane (wing landing
gear that does not fold)
2 1 = Rotates the Elements by the X axis to the left (wing landing
gear that folds to the left when viewed from behind)
2 2 = Rotates the Elements by the X axis to the right (wing landing
gear that folds to the right when viewed from behind)
2 3 = same as 2 1 above (Supposed to, but for me it seems it's doing
nothing)
2 4 = Element (gear) continuously rotates around the X axis like a prop (as
it uses the prop insert codes)
2 4 = prop for left engine in twins, No. 2 engine in 4 engine
bombers
2 5 = prop for right engine in twins, No. 3 engine in 4 engine
bombers
2 6 = prop for No. 1 engine in 4 engine bombers
2 7 = prop for No. 4 engine in 4 engine bombers
1 0 = Nothing
1 1 = forwards retracting gear / rearwards retracting gear -
can be used in nose (262) and wings (110g)
1 2 = Backwards retracting gear / gear that retracts to the right
1 3 = same as 1 2 above (Supposed to, but for me it seems it's doing
nothing)
1 4 = Element (gear) continuously rotates around the Y axis. (like a
helicopter's Tail Rotor)
0 0 = Nothing
0 1 = Rotates the Elements by the Z axis to the right
0 2 = Rotates the Elements by the Z axis to the left
0 3 = (For me it seems it's doing nothing)
0 4 = Element Continuously rotates around the Z axis like a prop
(like a helicopter's Main Rotor)
The points and elements must have codes as well. These indicate
which INSERT number the normals and points are attributed to.
For example :
In the NORMALS section in the F column -
0 indicates that the normal is connected to NO insert data (this
covers most normals)
1 indicates that the normal is connected to I000.
2 indicates that the normal is connected to I001
3 indicates that the normal is connected to I002
etc. etc.
Likewise in the POINTS section in the b column -
0 indicates the point is connected to NO insert data (this covers
most points)
1 indicates the point is connected to I000.
2 indicates the point is connected to I001.
3 indicates that the point is connected to I002.
etc. etc.
In the Header, the PARTS section shows how many different
components there are in the 3dz. If for example, there was a main
aircraft structure, an inserted left gear, an inserted right gear
and an inserted nose gear, there would be 4 PARTS. Note that some
single engine fighters have I000 4 2 .... indicating that they
intended to insert a prop, but there are no 1's in the Normal F
column, or 1's in the Points b column. The developers must have
decided to hardpoint the props in, and left the Insert section
there.
Note: Missing the insertion codes for 0 - *, which cause
rotational movements in both the X as well as Y axis simultaneously,
haven't tested if all (1 to 7) can be used but O 4 certainly is
available and very useful for erratic movements on shadow
replacements
The Normal section:
the normals are Normal/seeing vectors by what an
element or a line or a hardpoint can be seen.
For easier understanding an example: Physically take a piece of white
paper. Got it? OK. Then hold it in front of you. Now you see the
whole paper, start rotating it to one direction. If You have rotated
it to 90 degrees then you will only see a thin line. If more
rotation done then you won't see the side of the paper what you've
been looking till now. This is a Normal/Sight vector what you have
experienced. So now you can state that one side has a Half-Sphere
sight range by what you can see it. the Normal vectors are the same
as this example but by the numbers of EAW.
[NORMAL]
;N000= _y0 _z0 _x0 _d _c _f
N000= 0 0 -16384 -32768 -23 0
N001= 0 15993 -3554 10925 -7 0
N002= 0 16361 -861 3807 -4 0
...
[END]
The _y0 is for the being seen from the Left or the right.
The _z0 is for the being seen from the under or over.
The _x0 is for the being seen from the front or behind.
the function of _d and _c is uncertain. but You don't have to care
about that.
the _f is responsible for the in which coordinate system the Normal
is used. In this field You have to fill in the Insertion Point's
single numbered form. for the main Coordinate system You use 0, for
a sub-coordinate system (like Gears and Props) you use 1, 2, 3, etc.
just as many as the number of Insertion Points available.
And one More: When using a Hard Point, in the Column _f you have to
set the value to: -32768 (i don't know why, but take it as a Just.)
Luckily you won't have to do anything with the Normals because they
aren't needed to be calculated by you. (at the school on advanced
mathematics we were learning about normal vectors for 8 hours)
3DZ!Studio or Vector Calculator 2.0 will do it for you.
The Sequence section:
Whew this is gonna be a hard one! so Sequence is the BSP Tree (A
Binary Space Partitioning Tree as it is called by the professional
3D engineers.)
These are responsible for the Drawing/Spacing order of the elements.
As long as we don't have a BSP calculator for EAW's 3DZ everyone has
to do it for him / herself.
In Converter's dumped text version:
[SEQUENCE]
;S000= Back Front
;the first line is the start point of rendering sequence
S000= 0 3
S000= 1 2
S001= 255 255
S002= 255 255
S003= 0 255
[END]
WARNING!!! the Back and Front signs are not TRUE!!! it Should be
Before and Behind. because Sequence is only Timing and Spacing.
the S000 is duplicated because the fist is telling where to start
it's not realy the S000 it's only a header, but my guess is that
Alessandro just coudn't gave any better name to it...
at the first S000 it sais 0 3 the first value is ALLWAYS 0 but the
second is allways a changing value, depends on the starting point of
the Plane. In this example it's 3. This means that the Element 3
will be drawn first, but that will be affected by it's 2 "pointers"
the one that's drawn before and the one what's drawn Behind.
the second S000= 1 2 - it means that Element 1 is dawn before
Element 0(it means that: the Element 1 covers away or will be seen
in front of the Element 0 if they are viewed from an angle that both
of them seen in the middle of the sight); But Element 2 is drawn
Behind Element 1 and of course Element 0(It means that both two
Elements will cover this one away from the sight.)
The S001= 255 255 - it means that No element is drawn Before or
Behind this Element.
The S002= 255 255 - it is the same as above: Means that No Element
is drawn Before or Behind this Element.
The S003= 0 255 - this says Element 0 is Drawn Before me, and no
Element is drawn Behind me.
BUT: if I would have to tell how Sequences work, the whole Sequence
part means only a split of a second when one Frame is generated and
drawn on your Screen. If Your Machine and Your graphic card could be
slowed down much, you could see that how it works. If this helps i
can tell a picture what can be easily seen if You Close your eyes:
Remember Matrix? when Neo moves away from the bullets? Then Good, if
not i strongly recommend to go to a Movie or a Video Store, and see
the Movie. if there would be a "camera" like "that fast" and it
would circle round the 3DZ's final Object, like it did it around
Neo, but a bit more times, than You Would see that first the "Header
Sequence" Element would be Drawn. Then next after it, the one what
is ordered as the ## is in front of me, if more than two rounds
could be done while One Element is rendered then "now" You would see
two Elements of the Object drawn. Then the third, and the fourth and
so on, and so on.
The "Header" S000 tells that which Element is the first what's drawn
in time. Then that Sequence tells which is the next or next two
drawn Sequences. And it goes on like this. The being in the Front or
Back section(Before or After In Time) means only the timing, of when
the Element is drawn.
So far: If You would be VERY patient then You could make a sequence
where there would be only "Drawn After Me" type of elements. But
that would take lots of time and power resource from the users
machine.
Another important thing is: SEQUENCES ARE AFFECTED BY THE NORMAL
VECTORS, AND THE DRAWING ORDER OF THE POINTS IN AN ELEMENT.
- what i mean by this: let's say that You are standing in front of 3
pieces of paper, all three has one of it's sides painted to a color,
if all three "papers" are facing to You then you can see them but if
the one that's closest to You(in a Sequence means that's drawn
before the other two), is turned away from You by a 90 or a 180
degree. then You wouldn't see the colored side anymore but in the
meantime it's still there. if there is an Element hanging in the
space, and the Sequence of it says that is in front of anything,
that doesn't means that it covers other Elements away from you,
because it's Normal says: "From this angle, it can't be seen!"
How to imagine the working method of the Sequence: let's take four
bricks and a flat surface for the beginning.
(By the above example)
Put down Brick No. 3. That will be the starting Sequence. That will
tell Brick No. 0 is in front of me, so the "Sight" goes to Brick No.
0.
Brick No. 0 tells Brick No. 1 is in front of me in space. and Brick
No. 2 is Behind me in space. Now the sight is splitted, because
Brick 0. said I'm affected by two Bricks.
Action Codes, special management codes used within 3dz files. EAW
allows for visible changes in 3d models via the series of action and
insert codes attached to the relevant elements in the 3dz file.
These codes work by allowing the element to be drawn if one
situation applies, and not allowing the element to be drawn if
another situation applies. Like denoting which panels
will appear and disappear in certain conditions denoted by the
accompanying 0 or 1 etc insert code (wings shot off, undercarriage raised
or lowered,
props spinning or static, pilot injured or healthy etc).
Example(1): Take for example the situation whereby once your wings
have taken a certain level of damage, they fall off your plane. EAW
manages this situation by giving every element within the detachable
part of the wing a code - "148" - actually "148 1" in the main
aircraft models. This means the wing will be visible until the
damage points accumulate to a critical number. When that critical
number is reached the 148 code in effect switches off those wing
elements and the wing disappears from your plane. Where does it go?
In that plane slot there are also detachable wing models L.3dz and
R.3dz for your right and left wings. The elements in these models
are coded "148 0". This means they begin invisible. These elements
are not drawn until the critical damage level is reached. When it
is, these elements are switched on, the torn off wing becomes
visible (at the instant the wing on your plane disappears) and
begins its fall to earth.
Example(2): When you press the keyboard switch to raise undercarriage
code 151 1 panels disappear. code 151 0 panels appear.
Ordinance Loads:
The actual codes are fixed in WEAPONS.DAT:
Description Image
00 Nothing Nil
01 Simple Mount Nil
02 Simple Mount Nil
03 Internal Nil
04 Rocket Tube M10 x3
05 Rocket rail HVAR x3
06 Rocket rail HVAR x5
07 Rocket rail 60 lb x1
08 Rocket rail 60 lb x2
09 Rocket rail 60 lb x 4
0a Rocket tube WGr21 x1
0b Rocket tube WGr21 x2
0c Rockets R4M rack
0d Gun pod *20mm gun pod
0e Twin gun pod *Twin gun pod
OF Gun pod *37mm gun pod
These last three were added into WEAPONS.DAT by Charles for ECAPanel
use - the 20mm and Twin 20mm pods 3DZs were already in EAW, and
Paulo created the 37mm pod 3DZ. I can't readily find a missing code
positon for another gun pod there, though, so maybe it was left out
of the release version of EAW.The actual hardpoint codes are used to
attach separate 3dz files to the main F file.
Armament/ordinance codes for attaching underwing bomb loads and
weapons stores are:
0. Inner bomb bay
1. Inner left wing
2. Inner right wing
3. Centre line
4. Outer left wing
5. Outer right wing
Can actually code these up to 9, but use only 5 at one time.10
attachment code for P.3DZ (prop)
15 attachment code for gunsight (Z.3dz) to cockpit (V.3dz)
(I also have a reference to the X.3DZ for this code)
The rest of the cockpit 3dz's (U,W,Y,Z) seem to automatically attach
themselves to the V.3dz
25 attachment code for A.3DZ
26 attachment code for B.3DZ
27 attachment code for C.3DZ
28 attachment code for E.3DZ
29 attachment code for G.3dz
128
129 1 night/day switch Fleetdefender?
129 0-5 parachute unfold
130
131 Front_Wheel
132
133
134
135 Gear_Flaps
The following are used to show changes in weapons stations during
firing of ordnance (rockets in particular):
136 0/1 Ordnance rack tubes fire weapon 1
137 0/1 Ordnance rack tubes fire weapon 2
138 0/1 Ordnance rack tubes fire weapon 3 (also appears on some ships of
Fleet Defender)
139 0/1 Ordnance rack tubes fire weapon 4
These ones for 4 engine bombers:
140 = Engine No. 4 - 0=on, 1=off
141 = Engine No. 1 - 0=on, 1=off
142 = Engine No. 3 - 0=on, 1=off
143 = Engine no. 2 - 0=on, 1=off
If inserting the props into the wing 3dz's (As in the b-24 and b-17)
you need to use the correct insert data to get them to run and shut
down properly. Here are the correct codes for the insert section:
2 4 = No. 2 prop
2 6 = No. 1 prop
2 5 = No. 3 prop
2 7 = No. 4 prop.
The following are used for propeller blades, still (single blades),
software rendering PAW type lines, or full 3d turning (triangular
sections):
140 0/1 props 4 engine outer? (G.3dz)
141 0/1 props 4 engine outer? (E.3dz)
142 0/1 props 4 engine inner/2 engine (G.3dz)
143 - props 1 engine/2 engine (F.3dz)/4 engine (E.3dz)
143 0 props - triangular sections for turning props / running engines (not visible
when switched off)
143 1 props - prop blades at start up and switch off and still
143 2 props - PAW type prop lines / for software rendering (activated on
medium distance model)
144 Ordnance Me110 cannon pack (20mm) The gun pack doesn't appear in
the game or as part of the available gunnery for this plane. appears
to have been intended to be used for paste-on gun packs, but not
actually.
145 0/1 used for central fuselage undercarriage elements (wheels
(tail wheel) and doors (P51(F.3dz)) extended or retracted.
(code covers the nose wheel in Me262, too).
145 - 0 not in any plane?
146 0/1 used to show the pilot uninjured or injured (used for both
pilot and shattered glass in cockpit canopy)
146 - 2 for the canopy when the pilot has bailed out, but I'm
not sure?.
147 0/1/2/3 cycles through exhaust panels when engine is on. Only used in V1
slot (0 =
engine off/no fuel pressure).
The Following are used for the tear-off left and right wing
elements undamaged or damaged and etched:
148 1 wing outer undamaged (F.3dz)(E.3dz)
148 0 wing outer damaged/detached (R.3dz) Left landing gear well?
149 1 wing outer undamaged (G.3dz)
149 0 wing outer damaged/detached (L.3dz) Right landing gear well?
150 UNUSED PAW-only code (stick value?) for the right horizontal
tailplane and right elevator. This suggests another code (151?) for the left horizontal tailplane and
left elevator.
151 0/1 left undercarriage raised/lowered (F.3dz) gearwell open P51
(includes the doors)
152 0/1 right undercarriage raised/lowered (G.3dz) gearwell closed P51
(includes the doors)
153 is the mechanism to display individual nose art to a formation
of B17 or B24 slots only.
It works like this:
The xxxxxc.3DZ file has 18 equal elements which are a part of the
aircraft fuselage.
This file points to the xxxxxn.TPC texture file where all the
individual nose art are drawn.
The elements section of the xxxxxc.3DZ file, after conversion to
.txt, appear like this:
153 0 ... (draws the nose art on 1st plane P***C.3DZ)
153 1 ... (draws the nose art on 2nd plane)
153 2 ... (draws the nose art on 3rd plane)
..
.
153 17 ... (draws the nose art on 18th plane)
Gun flash codes for the W file are 153, 155, 157. Gun flash codes
for the V file are 154, 156, 158.
153 to 158 remmed out cockpit muzzle gun flash in PAW, EAW Demo and
PP51DV.3DZ (animation_vars[muzzle_id])
The useful thing about these codes is that you can use them for
other purposes. Cockpit covers which open and close when the engine
starts, landing lights which go on when the wheels are lowered and
off when they are raised and so on. (The Firm's Defiant uses the
undercarriage codes also to retract the turret fairing, lower the
rear radio mast, and turn off the landing lights)
153 1 = muzzleflash 1
154 1 = muzzleflash 2 (cockpitwingview inner)
155 1 = muzzleflash 3
156 1 = muzzleflash 4 (cockpitwingview middle)
157 1 = muzzleflash 5
158 1 = muzzleflash 6 (cockpitwingview outer)
159 1 = muzzleflash 7
160 according to Borges in cockpit (bullethole?)
161 - 168 = UNUSED ? [128 + 40] animation_vars in source code
255 (no flag!) = ???? found in destroyed jet in Gunship 3DZ, ends
flyable model when destroyed and activates destroyed ground model
Don't see the newly discovered action 131 and 132 of which a
description here:
131 to 134 subcodes 0 to 5 Wheeltrack animation
from M1TP2 similar to EAW's code 147: plane elements visible until
engine on, then brief random flashes in EAW with long intervals. On
groundobjects invisible element till plane leaves the tile.
More testing shows that code 131 0 behaves the same as prop on, add
the same line with 131 1 and the element starts shimmering, being
switched on/off in rapid succession. Could this be an even more
realistic prop model? When seen on a groundobject, the element
becomes fully visible and shimmering and rotation stops when seen
from a certain angle.
Code 131 0 followed by 132 1 has the same result as above but
shimmering seems to be less rapid
Code 131 0 followed by 131 1 same as previous
Code 132 0 results in the brief flashing of the element in large
intervals. The viewing angle seems to play a role here too. Element
remains visible from cockpit.
Code 132 0 followed by 131 1 results in the brief flashing of the
element in large intervals. The viewing angle seems to play a role
here too.
Code 132 0 followed by 132 1 same as previous
Code 132 1 followed by 132 0 same as previous
Code 131 1 followed by 132 0 same as previous
Code 131 1 followed by 131 0 looks static with a very brief
disappearing of the element at a certain point in it's rotational
stage (can't say if this is due to my video card)
Code 132 1 followed by 131 0 same as previous
Subcode 0 or 1 in the first line seem to determine visibility of the
element before startup, multiple elements switch at the same moment
as the others.
In mouseview the element remains static depending on the state when
leaving the plane and gets visible at a certain viewing angle.
All tests done with rotating prop insertion, the action was simply
added to the element's rotation.
The lightning was tested on a few systems and seems to work fine.
Later research showed that the effect would also be generated using
code 132 only but I'm not entirely finished researching yet.
136-0/1 for the rockets showing under the wing and fired rockets.
137-0/1 for the rockets showing under the wing and fired rockets.
Moggy(1) The Basics
The ultimate development of the EAW 3dz model is found in the
four engine bombers. These aircraft are composed of six different
3dz files, pasted together by hardpoints analogous to the hardpoints
that place visible external ordnance.
The six files are:
P????F.3dz which is the central fuselage model to which all other
files are attached
P????E.3dz used as the right wing and attached to the element on
F.3dz which contains the code 28 hardpoint
P????G.3dz used as the left wing and attached using code 29
P????A.3dz used as a turret and attached using code 25
P????B.3dz used as a turret and attached using code 26
P????C.3dz used for the nose art panel and attached using code 27.
What use is this? This scheme can actually be used for any plane,
and the paste on files can be anything you want to paste the basic
model, thus escaping the 255 element limit. Each paste-on file can
have its own up to 255 elements. The basic requirements are that to
use the A, B, and C files, you must already be using E, F, and G.
You can add the coded hardpoints to other elements in the usual way
EAW engineers have added weapons stations hardpoints, or it may be
that in a particular model, it is better to set them up in their own
element. The crucial consideration here will be how the rendering
sequence will work out.
Basic single engine planes in EAW use only the F.3dz file for the
whole model. To paste items on such a plane, you should therefore
use E.3dz and G.3dz first, if only as "ghost" (very small
effectively invisible) files and then A.3dz. B.3dz, and C.3dz if
required.
Two engine planes in EAW use the F.3dz and G.3dz files to form two
halves of the plane. In the default setup these two files do not
require a linking hardpoint. EAW simply recognises that the two
files are present and treats them accordingly. This fact was used
originally to make non-mirrored versions of single engine planes,
and as Captain Kurt noted in a post on SimHG, in can be used to get
single engine planes to work in two engine slots.
To use the other paste-on files in two engine models however, it is
first necessary to link the F.3dz and G.3dz by means of a code 29
hardpoint on the F.3dz, and then use E.3dz linked by a code 28
hardpoint. You can then use the other paste-on files A, B, and C.3dz
anywhere on the model.
Pending new utilities which may provide automatic recalculation of
the rendering sequence, RS problems are the only serious difficulty
in using paste-on files. The problems can be overcome. When creating
the Firm's A26 Invader model, I transformed it into an effective six
file model. I first joined F.3dz and G.3dz with a code 29 hardpoint
which I put at the dead centre of the F.3dz, coordinates 0/0/0, as a
new element. Getting rendering problems which prevented the G.3dz
side of the plane from displaying, I tried a number of possible
soloutions, but in the end the one which got the G.3dz half of the
model to appear, was to put the new element 224 at the root of the
sequence in the F.3dz, displacing the previous root element (52) to
second place in the tree, although to a newly created line at the
end of the sequence as set out in the converter text dump ...
[SEQUENCE]
;S000= code endcode
S000= 224 0 255
S001= 19 255
S002= 6 16 4 255
S003= 2 7 255 255
S004= 57 255
S005= 53 255 255 255
S006= 5 255
S007= 10 255
S008= 11 255
S009= 30 13 3 195 255
S010= 56 155 255
S142= 218 255
S143= 219 255
S144= 220 255
S145= 221 255
S146= 222 255
S147= 223 255
S148= 1
S149= 52 255
[END]
Although this was an educated guess, placing the new pointpoint in
this position worked fine, and both halves of the plane displayed.
(2) Applications - Additions to aircraft models
On The Firm's Defiant these paste on items were used to add the
turret, the forward radiator, and the retractable aerials on the
undersurface of the plane. On Charles Gunst's IL2, the paste-on
files were used to form the wing nacelles, and on his Rufe, were
used to form the floats.
In Captain Kurt's I-15 bis a paste-on file was used to form the
upper wing
Charles Gunst's Rufe uses paste-on files to make the floats - his
IL2 uses paste-on files to form the wing nacelles
The Firm's Invader uses all available stick-on files to create
dorsal and ventral turrets, DF loop aerial and the radio masts and
wires
The Firm's Defiant uses paste-on files to create the turret, the
lower radiator, the lower radio masts and wires, and the radar
aerial
(3) New High Resolution Aircraft Models
One of the applications of using all of the available parts of the
EAW aircraft model opened up the prospect of new fighter models
using several instead of one, skinfile, and there achieving a high
resolution effect without breaking the 256x256 skinfile limit. I
posted this basic illustration of the possibilities in October 2001,
showing a spitfire model made not from one 3dz file, but from three
3dz files, and using different skinfiles for the fuselage, the port
wing and the starboard wing. To produce completed models would
obviously take a great deal of work, but members of the EAW
community were up for that.
The first fully realised EAW hires model was Chompy's wonderful P51,
where A.3dz and B.3dz form the two sides of the tail and rear
fuselage, C.3dz forms the cockpit and associated parts of the
fuselage, F.3dz forms the forward fuselage, and E.3dz and G.3dz form
the port and starnoard wings. Each of these files is able to have
its own skinfile, solving all mirroring problems. The onlt
limitation is that all transparent elements must use the main TEX
skinfile, as within the EAW model, only the main TEX skinfile for
any slot can have the transparency enabling TRA file.
This is a very simple, step by step guide to how to convert
a Standard res single engined 3dz into a HR 3dz set.
I have based this readme on the work done by Moggy, and Chompy, plus
my own work on converting planes to HR.
There are many ways to break up a 3dz to obtain a HR model, and
their differences in my approach to the problem,
as to the way Chompy and the others have done Thiers, but it works
for me.
What you will need.
3DZ Studio
Text Converter (converter)
PPCPAC
A Hex Editor program.
Some good reference 3 elevation drawings to make the basic skin
from.
Good color profiles, or photographs to paint the skin from
A good graphics program like Paint Shop 6 or Adobe Photo Shop.
I'm assuming you have had some experience with 3dz Studio so I won't
go into detail in how to use the program.
STAGE 1 Removing the Wings.
Starting with a PxxxF 3dz, which you wish to convert to Hi-res.
Convert it into a text file using the Text Converter program in 3dz
Studio,
By either dragging and dropping it over the program icon,
Or by clicking on the program and selecting option A, and typing in
the file names.
Once you have a text file, open it and you can start work on
deviding up the model.
Look at the codes firstly in the Elements section,
These are in the lower section of the converted text file.
You will see lines of code like this:
E000= 148 0 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159 255
E001= 5 8 13 99 114 10 134 122 11 99 124 16 89 124 17 84 124 14 70
124 9 58 119 15 70 114 0 223 255
E002= 149 0 5 4 230 87 83 231 129 83 232 129 89 134 87 89 0 159 255
E003= 6 3 19 72 1 22 89 10 21 89 1 0 5 255
E004= 146 1 6 4 125 76 202 126 99 202 127 99 194 128 82 190 0 16 255
E005= 151 1 5 3 66 232 184 14 251 188 67 232 166 0 213 255
E006= 152 1 5 4 120 232 188 160 232 184 118 251 188 121 237 188 0
213 255
E007= 2 10 217 255
E008= 2 1 222 255
E009= 2 2 223 255
E010= 2 3 224 255
Looking at the Text file add 255 into the beginning of all the lines,
which have the starting codes of:
148/149/151/152.
Very important do not forget to add the correct amount of spaces
before and after 255 as shown below.
E000= 255 148 0 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159 255
E001= 5 8 13 99 114 10 134 122 11 99 124 16 89 124 17 84 124 14 70
124 9 58 119 15 70 114 0 223 255
E002= 255 149 0 5 4 230 87 83 231 129 83 232 129 89 134 87 89 0 159
255
E003= 6 3 19 72 1 22 89 10 21 89 1 0 5 255
E004= 146 1 6 4 125 76 202 126 99 202 127 99 194 128 82 190 0 16 255
E005= 255 151 1 5 3 66 232 184 14 251 188 67 232 166 0 213 255
E006= 255 152 1 5 4 120 232 188 160 232 184 118 251 188 121 237 188
0 213 255
E007= 2 10 217 255
E008= 2 1 222 255
E009= 2 2 223 255
E010= 2 3 224 255
Save the text file when you have finished and using the converter
program, and option B,
convert the file back to a PxxxxF.3dz.
Check the file in 3dz Studio, and you should have a plane with no
wings.
STAGE 2 making the wing 3dz's.
You do this by doing the same as with deleting the wing sections,
that is, to add 255 at the start of every element line,
and save the note pad as basic.txt.
E000= 255 148 0 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159 255
E001= 255 5 8 13 99 114 10 134 122 11 99 124 16 89 124 17 84 124 14
70 124 9 58 119 15 70 114 0 223 255
E002= 255 149 0 5 4 230 87 83 231 129 83 232 129 89 134 87 89 0 159
255
E003= 255 6 3 19 72 1 22 89 10 21 89 1 0 5 255
E004= 255 146 1 6 4 125 76 202 126 99 202 127 99 194 128 82 190 0 16
255
E005= 255 151 1 5 3 66 232 184 14 251 188 67 232 166 0 213 255
E006= 255 152 1 5 4 120 232 188 160 232 184 118 251 188 121 237 188
0 213 255
E007= 255 2 10 217 255
E008= 255 2 1 222 255
E009= 255 2 2 223 255
E010= 255 2 3 224 255
Then taking away the 255 check at every line which has 148, and 151,
and save this as PxxxxE.txt.
E000= 148 0 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159 255
E001= 255 5 8 13 99 114 10 134 122 11 99 124 16 89 124 17 84 124 14
70 124 9 58 119 15 70 114 0 223 255
E002= 255 149 0 5 4 230 87 83 231 129 83 232 129 89 134 87 89 0 159
255
E003= 255 6 3 19 72 1 22 89 10 21 89 1 0 5 255
E004= 255 146 1 6 4 125 76 202 126 99 202 127 99 194 128 82 190 0 16
255
E005= 151 1 5 3 66 232 184 14 251 188 67 232 166 0 213 255
E006= 255 152 1 5 4 120 232 188 160 232 184 118 251 188 121 237 188
0 213 255
E007= 255 2 10 217 255
E008= 255 2 1 222 255
E009= 255 2 2 223 255
E010= 255 2 3 224 255
Convert this file to the PxxxxE.3dz as you did with the PxxxxF.3dz.
Then using the basic.txt again, take away the 255 check on all
elements coded 149, and 152
and them save this file as G.txt and convert it to PxxxxG.3dz
E000= 255 148 0 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159 255
E001= 255 5 8 13 99 114 10 134 122 11 99 124 16 89 124 17 84 124 14
70 124 9 58 119 15 70 114 0 223 255
E002= 149 0 5 4 230 87 83 231 129 83 232 129 89 134 87 89 0 159 255
E003= 255 6 3 19 72 1 22 89 10 21 89 1 0 5 255
E004= 255 146 1 6 4 125 76 202 126 99 202 127 99 194 128 82 190 0 16
255
E005= 255 151 1 5 3 66 232 184 14 251 188 67 232 166 0 213 255
E006= 152 1 5 4 120 232 188 160 232 184 118 251 188 121 237 188 0
213 255
E007= 255 2 10 217 255
E008= 255 2 1 222 255
E009= 255 2 2 223 255
E010= 255 2 3 224 255
Open the 3dz Studio and look at your new wing 3dz's, and check they
look correct.
STAGE 3 Adding the Wings
Using 3dz Studio, find the element numbers of the top of each
wingtip and write it down,
making a note of which element number refers to which 3dz.
These will be used in the F.3dz to attach the wings by adding hard
points to the model in the following manner.
Convert your new PxxxxF.3dz back to a text file.
You will have to now start looking at the Points's section of the
text file.
[POINTS]
;P000= _y _z _x _b
P000= -7 4 -90 0
P001= -7 -4 -90 0
P002= -4 8 -90 0
P003= -4 -8 -90 0
P004= -9 5 -78 0
P005= -9 -8 -78 0
P006= -6 9 -78 0
P007= -5 -14 -78 0
[END]
Go to the end of the Points section and type in an extra line, with
all zero's in the columns
[POINTS]
;P000= _y _z _x _b
P000= -7 4 -90 0
P001= -7 -4 -90 0
P002= -4 8 -90 0
P003= -4 -8 -90 0
P004= -9 5 -78 0
P005= -9 -8 -78 0
P006= -6 9 -78 0
P007= -5 -14 -78 0
Pxxx= 0 0 0 0
[END]
Very important make sure all the zeros line up with the other
numbers in the rows.
Next go to the Header section at the top of the file.
[HEADER]
INI=179
TEXTURE=PSP09TEX.PCX
PARTS=4
POINTS=238
ELEMENTS=249
; place here the preview bitmap file's name. Useful to 3dz library
PREVIEW=
[END]
Change the number of Points by + one.
[HEADER]
INI=179
TEXTURE=PSP09TEX.PCX
PARTS=4
POINTS=239
ELEMENTS=249
; place here the preview bitmap file's name. Useful to 3dz library
PREVIEW=
[END]
Now, go to the elements section and locate the two wing tip elements
which you noted earlier.
For the PxxxE.3dz write in the following
Exxx= 2 28 xxx 255 148 0 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0
159 255
(xxx) this is the line number in the point's section for the point
you added earlier.
For the PxxxG.3dz write in the following
Exxx= 2 29 xxx 255 149 0 5 4 230 87 83 231 129 83 232 129 89 134 87
89 0 159 255
(xxx) this is the line number in the point's section for the point
you added earlier, and is the same as the one above.
The last thing to do before converting the file to a 3dz is to go to
the Normal's section
[NORMAL]
;N000= _y0 _z0 _x0 _d _c _f
Nxxx= 11585 -11585 0 4657 7 0
Nxxx= -16384 0 0 -16384 -3 0
Nxxx= -2201 -15654 -4304 24134 -8 0
Nxxx= -1676 -15516 -4985 18300 -8 0
Nxxx= -1936 -15105 -6042 25575 -9 0
Nxxx= -14603 -7301 1369 7225 -3 0
Nxxx= -12793 10235 0 -26579 -2 0
and add -32768 to the two same line numbers in the Normal's sections
as you did in the Elements section, in coloumn "F"
[NORMAL]
;N000= _y0 _z0 _x0 _d _c _f
Nxxx= 11585 -11585 0 4657 7 0
Nxxx= -16384 0 0 -16384 -3 0
Nxxx= -2201 -15654 -4304 24134 -8 -32768
Nxxx= -1676 -15516 -4985 18300 -8 0
Nxxx= -1936 -15105 -6042 25575 -9 0
Nxxx= -14603 -7301 1369 7225 -3 0
Nxxx= -12793 10235 0 -26579 -2 -32768
Then convert the text file back to 3dz and drop the three files you
now have into EAW, along with the original tpc.
You should see a plane with wings, but made from 3 3dz's.
STAGE 4. Breaking the fuslarge up.
Once you have reached this stage you can divide the front and rear
sections of the aircraft up.
To do this look at the F.3dz in 3dz Studio.
You will see the model has a number of straight vertical lines
running the whole way around the plane.
These are the best points to cut the model, and in most cases this
is directly behind the cockpit.
Make two lists of the entire element numbers in the two halves,
front, which will become the PxxxxF.3dz
and rear of the plane, which will become the PxxxxA.3dz, using 3dz
Studio.
Also at this point make a note of the upper elevator element
numbers, left, and right,
as these will be used later to add further hard points to the model
A note here about Hard Points. These shows up are red dots as seen
in 3dz Studio,
and should all be listed with the front section {PxxxxF.3dz}
Once you have a full list of each section, convert you new
PxxxxF.3dz into a text file again,
and make a second copy of the text file named PxxxxA.txt.
Working with your list, and the PxxxxF.txt, firstly add 255 to each
Element line, which appears in your rear section list,
just the same way as we did to remove the wings.
Again from your notes, find the two upper elevator element lines.
Add the following, at the beginning of the line for the Left side
Exxx= 2 25 xxx 255 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159
255
(xxx) this is the line number in the point's section for the point
you added earlier, to add the wings.
Add the following, at the beginning of the line for the Right side
Exxx= 2 26 xxx 255 5 4 33 87 89 39 129 89 38 129 83 34 87 83 0 159
255
(xxx) this is the line number in the point's section for the point
you added earlier, and is the same as the one above.
And as before go to the Normal's section and -32768 to the two same
line numbers in the Normal's sections,
as you did in the Elements section, in column "F"
Convert your text file back into a PxxxxF.3dz.
Check the 3dz in 3dz Studio, and you should have a complete front
section PxxxF.3dz.
STAGE 5 Making the Rear section 3dz.
Staring with the PxxxxA.txt file you made earlier, and working with
you list,
add 255 at the beginning of each element line of your front section,
including all the Hard Points.
Once you have done this convert the file into PxxxxA.3dz.
Later the PxxxxA.3dz will it's self be split into two 3dz's A and B,
but we will do this after re-mapping the model
Check the file in 3dz Studio.
If all the files look correct, copy them into your EAW main file and
check them in the game.
You should have a complete model but now made from 4 3dz's!
Problems:
If the file fail to load in 3dz Studio, the text file has errors in
it.
You have maybe made typing mistakes, extra spaces, or not enough, or
wrong number entered in a line,
which cause the game and 3dz Studio to crash.
To fix these sorts of problems go back to your original text file
for the 3dz,
and check the lines of code, which you have altered, they are
normally easy to spot where you've gone wrong.
If you have made some mistakes, and holes have appeared in the
model,
this is because you have accidently deleted an element which you
should not have.
To correct this simply look at the original starting model in 3dz
Studio, and locate the element in question.
Then remove the 255 check from the element in the text file you used
to create the new 3dz from,
and convert the file one again to a 3dz.
Check the 3dz in game, and the hole should have disappeared.
Rendering sequence problems is a tricky subject to enter into,
and my best advice is to seek further help on the forum.
STAGE 6 How to make a whole new skin.
The easiest way I've found is to scan or download a good 3 sided
scale drawing of the aircraft you wish to make the skin for.
Because of the amount of detail there will be visible, all panel
lines and a lot of rivet detail, needs to be included.
Firstly look at the F and A 3dz's and check the lengths of the two
sections of the plane.
They are normally about 100+- EAW 3dz units long each, depending on
the aircraft.
the longest part of the model is the restricting half, as you cannot
map to any more than 254 PCX points.
If you have a 3dz with 110 points long, the scale for mapping would
be 2.3,
as this would map the 3dz to 253 points on the PCX.
then add the number of points from the smaller 3dz to the larger,
lets say 93 + 110 = 203 X 2.3 = 466.9, call it 467.
using your Paint program, make a blank page 467 X 467,
and carefully cut and resize the top view, of the drawing, of the
plane your making.
A note: When you cut the drawing do not include the spinner,
but take it from the exact end of the tail to the end of the engine
cowl,
and include both wings.
Do the same for the lower view, and both sides, using the same size
blanks.
Doing this you will create a scaled down drawing, from which you can
paint a master skin from.
Once you have painted your master skins, you can then start to
assemble your PCX files for mapping the model.
I always start with the front section first, the Pxxxxtex.pcx.
Cut and paste on the left side of the front section onto the PCX.
the position of the first part of the plane can be sometimes a bit
tricky,
but if you normally place it near the bottom of the PCX then you
will have space to add the other side
Do not further reduce the size of the drawing, or you will never get
the part to match up again.
STAGE 7 Now you can start mapping.
Using the scale we calculated earlier, in this case being 2.3,
recalculate the mapping by this factor and starting from the front
of the engine,
recalculate each element in order of adjoining.
You will find it very useful to keep a sort of map on a piece of
paper while doing this job,
as it is easy to get lost.
If you look at some PCX files for other HR models you will soon see
how the layout of the PCX's can differ,
so it's up to you to work out the best way to make things fit.
Your other new 3dz's all need to have the file pointers changed at
this time, because they are all looking at the TEX.pcx.
To chance this you can using the text editor, convert the file to
text, and change the file like this:
[HEADER]
INI=179
TEXTURE=PSP09TEX.PCX
PARTS=4
POINTS=239
ELEMENTS=249
; place here the preview bitmap file's name. Useful to 3dz library
PREVIEW=
[END]
to
[HEADER]
INI=179
TEXTURE=PSP09EEX.PCX (in my case this I use for the E.3dz)
PARTS=4
POINTS=239
ELEMENTS=249
; place here the preview bitmap file's name. Useful to 3dz library
PREVIEW=
[END]
Or you can open the 3dz file using a Hex editor, and change the ANSI
text to suit your PCX's
You can use any other name you like, but these are how I do mine.
PxxxxA.3dz - left Tail section.
PxxxxB.3dz - Right tail section.
PxxxxC.3dz - Free to use.
PxxxxE.3dz - Right wing.
PxxxxF.3dz - Front section of fuselage, both sides.
PxxxxG.3dz - Left wing.
PxxxxH.3dz - Shadow.
PxxxxM.3dz - Medium distance model (old f.3dz)
PxxxxP.3dz - Propeller
PxxxxS.3dz - Long Distance Model
PxxxxU.3dz - High res cockpit wing views
PxxxxY.3dz - Cockpit Prop view.
Texture files:
Pxxxxaex.pcx/tpc - texture file for A.3dz
Pxxxxbex.pcx/tpc - texture file for B.3dz
Pxxxxcex.pcx/tpc - texture file for C.3dz
Pxxxxeex.pcx/tpc - texture file for E.3dz
Pxxxxgex.pcx/tpc - texture file for G.3dz
Pxxxxmex.pcx/tpc - texture file for M, & S.3dz's
Pxxxxtex.pcx/tpc - texture file for C, H, P & Y.3dz's
Pxxxxtra.pcx/tpc - transparency info for F.3dz
Pxxxxuex.pcx/tpc - texture file for U.3dz
On most models I don't have to use a Canopy 3dz, but I always have
the B.3dz to use for this, or another mod.
For further information on this subject take a look at my HR skin
Readme included in this zip file.
STAGE 8
Once you have fully mapped the model you can split the tail in to
separate halves.
Simply list as you did before the two halves, using 3dz Studio.
Convert your fully mapped PxxxxA.3dz into a text file again, and
working with your list create,
as we've done before to files from one.
Keep the left side 3dz as the PxxxxA.3dz and name the right side
PxxxxB.3dz, and create a PCX file for it.
Because we added the hard point for the B.3dz earlier, there is
nothing further to do.
With all the new 3dz's and PCX files in the game, you should now
have a finished HR Plane.
3dz names and codes.
P****A.3dz attaching code = 25
P****B.3dz attaching code = 26
P****C.3dz attaching code = 27
P****E.3dz attaching code = 28
P****G.3dz attaching code = 29
[END]
|