The "Conv3do" converter utility can be used to build .3do object files, ie the files that describe 3d objects in the VGP 3d engine. Every "object" you see in the virtual universe of VGP - cars, buildings, tracks, trees, etc. - has a .3do file associated to it that describes its shape, colors, textures, etc., and this utility lets you design your own "objects". Its main purpouse is to let you design your own custom car objects, but because .3do files control every visual aspect of the VGP 3d engine, it can be used to design new tracks too (see the "TrackDesigner.readme" file). SYNOPSIS Conv3do is a standard, ASCII "3DG1" object file generated by Aegis Modeler3d when you save an object "as text". is the name of the .3do file you want to create the last option selects whether do you want Conv3do to use absolute coordinate for the object "center" ( option) or calculate the "center" from points' position ( option - see later in this file) If both inputfile and outputfile have a two digit number before the file name extension ("MyNewCar01.geo" and "Car01.3do"), Conv3do will convert the first file and then it will search for "MyNewCar02.geo", "MyNewCar03.geo" and so on; this way you can convert a whole set of new objects instead of manually calling Conv3do on every one (this feature is especially useful for tracks, that are normally made of many objects). MODELER3D You should design objects using Aegis Modeler3d, whose "text" file format ("3DG1" format) is what Conv3do was designed to expect. "3DG1" files are standard ASCII files, you can load them in your preferred text editor. They simply contain a list of coordinates of the object's vertexes (in the x, y,z format), and a list of polygons - ie a series of numbers that represent how many and which vertexes build up the polygon, and the polygon's color (an integer value whose valid range is 0-4096). The problem here is that, as you may argue, Aegis Modeler3d was designed in the very early days of DTV, so the only attribute a polygon can have is its "color" and nothing more. Modeler3d has no support for texture mapping, light sourcing or so. Now, you will be wondering how can you design objects suitable for the VGP 3d engine (which supports these features) using Modeler3d. The answer is that you must use some strange "color" combinations in order to tell Conv3do how to build the "real" .3do file. In other words, the "color" attribute in Modeler3d controls everything, from the material the polygon is made of to the texture that must be mapped on the polygon's surface. Unfortunately, this means that you won't have the possibility of a real preview while designing the object in Modeler3d, and that the only way to see the final result is to convert the object and load it in "Preview3do", a utility included in this archive that shows you a .3do object. The "color" conventions are: COLOR RANGE MEANING 0-31 The polygon is a flat colored one. Its color is given by multiplying by two the number, so 0 is black, 15 is blue (color 30 in the VGP palette) and 31 is yellow. 64-79 The polygon is transparent. Its primary color is given by multiplying by four the number minus 64; so 0-1 is black, 2-3 is gray, 4-5 is white, 6-7 is blue, 8-9 is green, and so on (refer to the VGP palette). 32-47 The polygon is a reflecting one. Its primary color is given by multiplying by four the number (minus 32), much the same that transparent ones. Pay attention to the fact that, because of many approximations in the VGP 3d engine, not every polygon orientation is possible; as an example, the polygon cannot reflect objects that lie "behind" the camera because such objects are removed early from the "displayable items" list (z clipping). The best way to use reflecting polygons is to put them parallel to the ground (to simulate water, as an example). 145-175/384-511 The polygon is texture-mapped. The texture number is the color number minus 144 for the first 32 textures (so, as an example, 145 is the "Marlboro" texture) and then the color number minus 352 for the other textures (the VGP 3d engine can display worlds with up to 160 different textures). Because there is no way to specify u/v coordinates, textured polygons MUST have four vertexes and the ORDER of the vertexes MUST be: the first point is the top-left corner of the brush, the second is the top right one, the third is the bottom-right and the fourth is the bottom left. If you don't follow this order when creating the polygons in Modeler3d, the texture will appear in the wrong orientation in the best case (or won't appear at all in the worst). 128-143 The polygon is texture-mapped with a repeatable, not-oriented texture (such as grass or gravel); these polygons are normally used only for very large blocks in tracks. 192-255 The polygon is texture-mapped with a repeatable-along-the-x-axis texture; used for walls et al (again, large blocks in track objects). 176-191 The polygon is a brush. VGP trees are the only brushes currently available; they differ from textured polygons because a brush is only rescaled (based on its Z position) but it doesn't change its shape if you turn around it. Only the first two vertexes have a meaning for a brush: the first one is the top, the second is the bottom. VGP uses these values to understand how "tall" is the brush and, correspondingly, how large should it appear. 256 The polygon is a tyre!!! It may sound strange, but the VGP 3d engine supports "tyres" as native primitives (after all, it's a 3d engine designed for an F1 sim...!) The "polygon" must have four vertexes that give the tyre's dimension, put at a tyre's diameter height from the ground, and must have a strict order for VGP to know how the tyre is oriented. The best way to design your own tyres is probably to copy/paste the ones in the .geo files included in this archive, and then change their dimensions to your need. 512 The polygon is an helmet. Only the first two vertexes have a meaning for an helmet, much in the same way they have for a brush: the first one is the top, the second is the bottom. Helmet colors are controlled by the "Drivers.config" file. VERY IMPORTANT: car objects MUST have at least one helmet "polygon" because, when VGP loads the "Driver.config" file, it searches for this primitive in the car object to set up the helmet colors accordingly. If you don't supply an helmet in your car object, the game COULD overwrite illegal memory locations, thus leading to malfunctioning, crashing or so. 2048+ The polygon is shaded. This is used for light-sourcing a surface. You must specify the primary color of the polygon (the "polygon-lit" color) and the number of "shades" that the polygon must have; as an example, for a red color, you may specify 54 for the primary, "enlighted" color, and 3 color shades. The formula is: 2048 + (primary color number) + (shades X 64) So, for the above example, the right number is 2048 + 54 + (3 X 64) = 2294 The number of shades you can specify is limited by the amount of primary colors available, and is normally limited to 3, 4 or 5. Once you knew the "color" you must specify for the polygon, simply insert the number in the Aegis Modeler3d polygon color requester. Don't worry if Modeler3d seems to accept only numbers in the range 0-15, in fact it uses greater numbers for its own "material" info and the number you insert is stored correctly - just in case, you can use the polygon "info" menu to see the current polygon color number, and you'll see there the number you inserted. LIMITATIONS The VGP 3d engine has some limitations over polygons size, vertex number, etc., and you must take these into considerations when designing objects in Modeler3d: - object size shouldn't exceed 512 mts of dimensions, and it's better if their maximum radius is under 128 mts - polygons must be made of three or four vertexes; even if the color specify a "primitive" that uses only the first two vertexes, you must supply anyway the third. Polygons made of more than four vertexes aren't supported at all by the VGP 3d engine - polygon maximum radius must be under 128 mts, otherwise strange results could happen - only front-facing polygons are displayed by the VGP 3d engine: if you need a front-and-back polygon you must create TWO of them - some primitives, such as "tyres" or "brushes", can only be displayed in some orientations; textured polygons may give strange results in some "weird" orientations - you're not required to "merge" points for maximum efficiency - Conv3do already does it - you're free to use the "attach polygon" mode for detail polygons - it's supported by the VGP 3d engine - if you convert the object with the flag, the center of the object will be the Modeler3d environment center, ie the 0,0,0 origin point. This is good for small objects (such as cars), but for large objects, such as track blocks, which lie far from the origin, you should convert them with the option that make Conv3do recalculate the center of the object and refer all the points' coordinate to the new center REPLACING .3do FILES In order to replace .3do files with your own you must copy the corresponding drawer onto your HD (in the same dir you've installed VGP into). Use the Preview3do utility to discover EXACTLY which file you want to replace. Most .3do files are located in the "Blocchi/" drawer, tracks related ones are in the corresponding "Piste/" one.