Designer: Difference between revisions
(img) |
|||
(150 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
[[File:NewDesignerInterface.png|right|thumb|400px|The UI of the designer.]] | |||
The '''Designer''' is a modeling tool used to design spacecraft and building blueprints. | |||
The | The [[Designer Menu]] page describes each individual menu item. | ||
The [[Design Parts]] page describes each individual kind of part. | |||
For a history of the designers, see [[Spacecraft Update]]. | |||
=Architect= | |||
The person who creates a design is the architect of the design. | The person who creates a design is the architect of the design. | ||
The person who creates each part is the architect of that part. | The person who creates each part is the architect of that part. | ||
Line 12: | Line 17: | ||
The analysis report for a design lists all architects whose parts are included in a design. | The analysis report for a design lists all architects whose parts are included in a design. | ||
=Blueprints= | |||
A blueprint is a design that has been analyzed and accepted for use in the game. Blueprints contain all of the information needed to make a functional building or spacecraft, such as its 3D model and design specifications. Blueprints are stored in a ''universal library'' where they are accessed by spacecraft and buildings during game play. Blueprints are identified by a unique number, assigned when stored in the library. | A blueprint is a design that has been analyzed and accepted for use in the game. Blueprints contain all of the information needed to make a functional building or spacecraft, such as its 3D model and design specifications. Blueprints are stored in a ''universal library'' where they are accessed by spacecraft and buildings during game play. Blueprints are identified by a unique number, assigned when stored in the library. | ||
Line 19: | Line 24: | ||
Spacecraft, buildings, and storage devices reference their blueprints in the library throughout their lifetimes. Blueprints that are in use by game objects cannot be deleted. When a player deletes a blueprint, it may instead be deactivated in the library, until it is no longer referenced and it can be finally removed. | Spacecraft, buildings, and storage devices reference their blueprints in the library throughout their lifetimes. Blueprints that are in use by game objects cannot be deleted. When a player deletes a blueprint, it may instead be deactivated in the library, until it is no longer referenced and it can be finally removed. | ||
== | In the designer and in this wiki, the word blueprint is used generally to refer to any design, whether or not it has been finalized. | ||
The blueprint exchange provides a place for players to share blueprints. Separate exchanges for spacecraft blueprints and building blueprints are accessed in the game. | |||
==In-Game Blueprint Exchange== | |||
The blueprint exchange provides a place for players to share blueprints with other players in the online game. Separate exchanges for spacecraft blueprints and building blueprints are accessed in the game. | |||
At the exchanges, blueprints can be published by architects and they can be purchased by players. Prices are in cronodollars ¢, the money of the game. Cronos are not related to real money. '''Spacecraft and building blueprints do not cost real money.''' | At the exchanges, blueprints can be published by architects and they can be purchased by players. Prices are in cronodollars ¢, the money of the game. Cronos are not related to real money. '''Spacecraft and building blueprints do not cost real money.''' | ||
Line 28: | Line 35: | ||
'''A blueprint does not have to be published to be used in the game.''' A blueprint can be saved onto a storage device in your gear, then used to make buildings or spacecraft. Interfaces that request a blueprint know how to find them in your gear. | '''A blueprint does not have to be published to be used in the game.''' A blueprint can be saved onto a storage device in your gear, then used to make buildings or spacecraft. Interfaces that request a blueprint know how to find them in your gear. | ||
==Designer Access | ==Web Blueprint Exchange== | ||
The web site offers access to a public blueprint exchange. This exchange is not connected with the in-game exchange in any way. | |||
The web blueprint exchange offers a place for players to publicly share their .SoH files. There are no publishing terms or restrictions. Blueprints posted to the web exchange are freely available for download by anyone on the Internet. | |||
===Prepare .SoH for Publishing=== | |||
Two things should be done to prepare a .SoH file for publishing to the web blueprint exchange. | |||
Obstructions should be refreshed. Obstruction data provides volume information necessary to create the design analysis report. The report is presented on a web page in the exchange. | |||
A nice scene should be present in the view window. A screen grab of the scene is stored with the file. The screen grab is shown on the report. The screen grab is also shown on the button that accesses the report page. | |||
=Designer Access= | |||
The designer can be accessed both online and when playing offline solo. | The designer can be accessed both online and when playing offline solo. | ||
==Online Designer== | |||
Online, a designer is accessed by going to a [[Design_Studio|design studio]] building or by | Online, a designer is accessed by going to a [[Design_Studio|design studio]] building or by occupying a [[Design_Parts#Station.2C_Designer|designer station]] while aboard a spacecraft. | ||
To enter a designer at a design studio, display the ''Building'' (<code>F10</code>) window and click on the "Enter" button of a studio. When a studio is "Vacant", you may leave the password box blank or you may enter a password of your choice. The password you enter establishes that studio's password until the studio becomes vacant. To join an "Occupied" design studio, you must enter the password that was established by the first person to enter the studio. | To enter a designer at a design studio, display the ''Building'' (<code>F10</code>) window and click on the "Enter" button of a studio. When a studio is "Vacant", you may leave the password box blank or you may enter a password of your choice. The password you enter establishes that studio's password until the studio becomes vacant. To join an "Occupied" design studio, you must enter the password that was established by the first person to enter the studio. | ||
Line 40: | Line 59: | ||
Players may work together in the same studio to develop a design. In this case, the first player to enter the vacant studio is registered as the architect and owner of the design. | Players may work together in the same studio to develop a design. In this case, the first player to enter the vacant studio is registered as the architect and owner of the design. | ||
==Offline Designer== | |||
When the game is launched, the designer can be entered ''solo'', instead of logging in to the game. Overall program performance is better when designing solo because no server is involved. Once a design is completed solo, it can be saved to a .SoH file. That file can be loaded into the on line designer, for storage in the universal library. | When the game is launched, the designer can be entered ''solo'', instead of logging in to the game. Overall program performance is better when designing solo because no server is involved. Once a design is completed solo, it can be saved to a .SoH file. That file can be loaded into the on line designer, for storage in the universal library. | ||
=Design Process= | |||
General steps to making a design go something like this. | General steps to making a design go something like this. | ||
* Adjust design properties to establish goals. | |||
* Create an exterior hull. | * Create an exterior hull. | ||
* Create one or more rooms inside the hull. | * Create one or more rooms inside the hull. | ||
Line 51: | Line 71: | ||
* Apply textures and other effects to finish the surfaces. | * Apply textures and other effects to finish the surfaces. | ||
* Add details: control stations, berths, lights, display screens, etc. | * Add details: control stations, berths, lights, display screens, etc. | ||
* Add room voids. | * Add room voids, paths and barriers. | ||
* Make doors operational. | |||
* Finalize the design. | |||
Designing typically involves creating many ''parts''. | Designing typically involves creating many [[Design_Parts|''parts'']]. | ||
Parts include things like hulls, rooms, jigs, lights, display screens, etc. | Parts include things like hulls, rooms, jigs, lights, display screens, etc. | ||
Check design properties from time to time. It shows an assessment of the design, based on what you are trying to design. | |||
Your goal as | |||
==Design Goal== | |||
Your goal as an architect is to make beautiful looking designs that are functional in the universe of Hazeron. | |||
Emphasis is placed on appearance over technical realism. | Emphasis is placed on appearance over technical realism. | ||
Line 63: | Line 87: | ||
This is inefficient and difficult to model. | This is inefficient and difficult to model. | ||
It is much better to butt an engine pylon into the side of the hull, rather than carving a hole so it can make a perfect junction. | It is much better to butt an engine pylon into the side of the hull, rather than carving a hole so it can make a perfect junction. | ||
Carving that hole breaks the side face into many tiny | Carving that hole breaks the side face into many tiny faces. | ||
It is likely unnecessary, unless people are going to walk or see through the opening. | It is likely unnecessary, unless people are going to walk or see through the opening. | ||
Line 80: | Line 104: | ||
A good example is a cargo hold full of cargo. | A good example is a cargo hold full of cargo. | ||
An inefficient approach would be to build a huge room and fill it with shipping containers. | An inefficient approach would be to build a huge room and fill it with shipping containers. | ||
Instead of being too literal, think of it like a movie set. | |||
It would be much more efficient to build only an accessible area representative of a cargo hold, with walls modeled and textured to look like stacks of shipping containers. | It would be much more efficient to build only an accessible area representative of a cargo hold, with walls modeled and textured to look like stacks of shipping containers. | ||
Use those precious faces where they get the most impact; don't waste them. | Use those precious faces where they get the most impact; don't waste them. | ||
Remove faces that can never be seen. Many parts that contribute to the construction materials requirement of a design are affected by the total surface area of their faces. The amount of materials directly affects the construction time. Reducing faces will reduce the construction time and materials of a design. | |||
More parts are better than less. | More parts are better than less. | ||
Line 88: | Line 115: | ||
It makes no difference in the final rendering if the information comes from one part or many. | It makes no difference in the final rendering if the information comes from one part or many. | ||
[[Design_Parts#Turbo_Lift|Turbo lifts]] help to make big designs feel elaborate and detailed on the inside, without extensive modeling effort. They are an effective scene change device in science fiction cinema and they are equally effective in the game, to give the feeling of being aboard a really big ship. They also save a lot of walking. | |||
Turbo lifts | |||
They | |||
==Part Mode vs Face Mode== | |||
Parts are composed of ''faces''. | Parts are composed of ''faces''. | ||
Faces have vertices and edges. | Faces have vertices and edges. | ||
Line 110: | Line 131: | ||
Textures are applied in face mode. | Textures are applied in face mode. | ||
==Geometry== | |||
Parts are represented by geometry that can be painted in an OpenGL scene. | Parts are represented by geometry that can be painted in an OpenGL scene. | ||
Geometry of parts is described by their vertices, edges and faces. | Geometry of parts is described by their vertices, edges and faces. | ||
===Vertices=== | |||
Vertices contain 3D Cartesian coordinate locations that describe the position of edges and faces. | Vertices contain 3D Cartesian coordinate locations that describe the position of edges and faces. | ||
Vertices also contain information needed when rendering. | Vertices also contain information needed when rendering. | ||
Line 127: | Line 147: | ||
The face menu commands ''Flatten Vertices'' and ''Smooth Vertices'' operate on vertex up directions. | The face menu commands ''Flatten Vertices'' and ''Smooth Vertices'' operate on vertex up directions. | ||
===Edges=== | |||
Edges are the visible lines that go from one vertex to another to reveal the boundaries of faces. | Edges are the visible lines that go from one vertex to another to reveal the boundaries of faces. | ||
Edges exist for the benefit of the designer, to see the model. | Edges exist for the benefit of the designer, to see the model. | ||
Their presence or absence has no effect on the final rendering result. | Their presence or absence has no effect on the final rendering result. | ||
===Faces=== | |||
Faces are flat surfaces that compose a 3D model. | Faces are flat surfaces that compose a 3D model. | ||
OpenGL paints faces in front of each other depending upon their Z-depth in the scene. | OpenGL paints faces in front of each other depending upon their Z-depth in the scene. | ||
Line 141: | Line 161: | ||
They can be seen from the back in the designer, if back face visibility is enabled. | They can be seen from the back in the designer, if back face visibility is enabled. | ||
The object menu command ''Reverse Faces'' flips their facing back and forth. | The object menu command ''Reverse Faces'' flips their facing back and forth. | ||
''Facing direction'' is determined by the direction the boundary is drawn. | |||
The boundary is clockwise when viewing the front of a face. | |||
The boundary is counterclockwise when viewing the back of a face. | |||
All faces are created equal. | All faces are created equal. | ||
Line 149: | Line 173: | ||
Faces do not "know" how they were created. A face created as part of an extrusion is no different from a face that is created individually. The extrusion command merely assembles faces into a desired shape. | Faces do not "know" how they were created. A face created as part of an extrusion is no different from a face that is created individually. The extrusion command merely assembles faces into a desired shape. | ||
=== | Faces should not be bent. They expect to represent a flat plane. A face should be drawn as multiple faces if a curved surface will be represented. | ||
Three foundational shapes exist. | |||
*Triangle - A face defined using a boundary of three vertices. | |||
*Quad - A face defined using a boundary of four vertices. | |||
*Face - A face defined using a boundary with three or more vertices. | |||
==Shapes== | |||
Shapes use parameter-driven methods to generate faces. Primitive shapes can provide a general starting point for more detailed modeling. | |||
The resulting shape may be modified like any other set of faces. The faces are in no way different than if an architect painstakingly built the same shape using faces. It is typical to generate a quick shape then rip it apart, to use some portion of it, or embellish it to mold it into what you want. | |||
===Extrusion=== | |||
[[file:ScFigExtrusion.png|right|Extrusion]] | |||
An extrusion is formed by projecting a shape along a straight path. Examples include: rooms, beams. | |||
The creation of an extrusion begins by entering the shape that will be extruded. After the shape is entered, a window presents options to finalize the extrusion. Straight extrusion is made by simply entering the length. | |||
Faces are formed at the sides of the extrusion. Stepping allows the sides to be divided along the length of the extrusion. | |||
When the extrusion is generated, the shape follows a straight line. Both ends of the extrusion are closed. | |||
Steps: | |||
* A [[Designer#Coordinate_Input|point is entered]] to begin the extrusion shape. | |||
* Subsequent points are entered to describe the extrusion shape. | |||
* A window offers extrusion options. | |||
* Depending on extrusion options, a point may be entered to indicate the height or direction of the extrusion. | |||
Key Commands: | |||
*<code>B</code> backs up to reenter the previous point requested. | |||
*<code>C</code> restarts the action at the beginning. | |||
*<code>D</code> indicates completion of the shape. | |||
===Sphere Lon/Lat=== | |||
[[file:ScFigSphereLonLat.png|right|Longitude/Latitude Sphere]] | |||
A longitude/latitude sphere is divided into equal divisions of latitude and longitude. The faces are largest at the equator. The faces converge together at the poles. | |||
Creation of a longitude/latitude sphere is described by entering the center point and a point at its radius. After the points are entered, a window presents options to finalize the sphere. Options include number of latitude divisions and number of longitude divisions. | |||
Steps: | |||
* A [[Designer#Coordinate_Input|point is entered]] at the center of the sphere. | |||
* A point is entered at the radius of the sphere. | |||
* A window offers sphere options. | |||
Key Commands: | |||
*<code>C</code> restarts the action at the beginning. | |||
===Sphere Uniform=== | |||
[[file:ScFigSphereUniform.png|right|Uniform Sphere]] | |||
A uniform sphere is divided uniformly into triangle faces. All triangles are close to the same size. | |||
Creation of a uniform sphere is described by entering the center point and a point at its radius. After the points are entered, a window presents options to finalize the sphere. Options include number of divisions at the equator. | |||
Steps: | |||
* A [[Designer#Coordinate_Input|point is entered]] at the center of the sphere. | |||
* A point is entered at the radius of the sphere. | |||
* A window offers sphere options. | |||
Key Commands: | |||
*<code>C</code> restarts the action at the beginning. | |||
===Spindle=== | |||
[[file:ScFigSpindle.png|right|Spindle]] | |||
A spindle is created by spinning a shape around an axis. Objects with axial symmetry are created as spindles. Examples include: flying saucer, spool, furniture leg, column, dome, sphere, dinner plate, door knob, dish antenna. | |||
The creation of a spindle begins by entering the shape that will be spun around an axis. After the shape is entered, a window presents options to finalize the spindle. Options include the number of steps around the axis and the choice of axes. | |||
Steps: | |||
* A [[Designer#Coordinate_Input|point is entered]] to begin the spindle shape. | |||
* Subsequent points are entered to describe the spindle shape. | |||
* A window offers spindle options. | |||
Key Commands: | |||
*<code>B</code> backs up to reenter the previous point requested. | |||
*<code>C</code> restarts the action at the beginning. | |||
*<code>D</code> indicates completion of the shape. | |||
===Tubing=== | |||
[[file:ScFigTubing.png|right|Tubing]] | |||
Tubing is very similar to an extrusion except that the path may be complex, instead of simply extruding along a straight line. When the tubing shape is extruded along the path, corners are mitered appropriately. | |||
Tubing is not just for making water pipes. Tubing is used to make any closed shape that is extruded along a complex path. Examples include: piping, ducts, crown molding, baseboard trim, railroad tracks, hand rails, soffits, wall conforming consoles, base and wall cabinets, and counter tops. | |||
Creation of tubing begins by entering the path along which the tubing will travel. After the path is entered, a window presents options to finalize the tubing. | |||
Circular tubing is made by simply entering the diameter and number of sides for the tube. | |||
Other tubing shapes are created by drawing the cross section shape of the tubing. | |||
After drawing the shape of the tubing cross section, a guide point is entered on the shape. | |||
When the tubing is generated, the shape follows the path along the guide. Both ends of the tubing are closed. | |||
Steps: | |||
* A [[Designer#Coordinate_Input|point is entered]] to begin the tubing path. | |||
* Subsequent points are entered to describe the tubing path. | |||
* A window offers tubing options. | |||
* Depending on tubing options, a point may be entered to begin the tubing shape. | |||
* Subsequent points are entered to describe the tubing shape. | |||
* Guide point for the tubing shape is entered. | |||
Key Commands: | |||
*<code>B</code> backs up to reenter the previous point requested. | |||
*<code>C</code> restarts the action at the beginning. | |||
*<code>D</code> displays options for completing the tube. | |||
==Jigs== | |||
Jigs are found underneath the Part menu button. There are many different types of Jigs, such as Door Jigs, Window Jigs, Launch Tube Jigs, Cutting Jigs, and Decal Jigs. They are created like any other hull or room objects, by selecting the Shape type (Extrusion, Sphere, Tubing, Spindle) and drawing the shape wanted. A physical object is then created and added to the Parts list as a Jig of the type selected. | |||
Jigs are used by positioning the created Jig object between two rooms, or between a hull and room, ensuring that the Jig penetrates both walls. Once this is positioned correctly, select all 3 objects at once using the Parts panel, and then select "Jig Cut" under the Design Menu button. The jig then cuts the walls in the shape of the jig, allowing you to create tube hallways as an example. The cut walls are then converted to the object type of the jig, such as the walls being converted into transparent glass if using a Window Jig, or door objects if using a Door Jig. | |||
Jigs can be used in order to create different types of objects, exits or walls between two rooms or the interior and exterior of a design. For example, the Door Jig creates a door between whatever rooms the Jig is placed between. The Window Jig creates a Window between the rooms, while the Launch Tube and Cutting jigs just create holes between the hull and room and cut the faces of each side, respectively. | |||
All jigs create faces between the two walls that they penetrate, in order to give walls thickness and prevent you from seeing any back-faces. | |||
==Origin== | |||
At the center of the design space is a yellow marker, drawn as three intersecting yellow lines. | At the center of the design space is a yellow marker, drawn as three intersecting yellow lines. | ||
Line 156: | Line 297: | ||
That is the point at which a spacecraft will pivot, when it maneuvers. The origin is the insertion point when placing a building, that determines the altitude of the building on the terrain. | That is the point at which a spacecraft will pivot, when it maneuvers. The origin is the insertion point when placing a building, that determines the altitude of the building on the terrain. | ||
==Obstructions, Voids, and Barriers== | |||
The obstruction model describes what areas of the design are solid and what areas of the design are not. It is used to determine where a person is standing on the floor and where they are allowed to stand, where vehicles collide with the design and where they go inside, where missiles and gunfire hit or pass through. The obstruction model describes the solid shape of the design and its accessible inside areas. | |||
The obstruction model | |||
The obstruction model cannot be seen. | |||
It exists somewhat like an electrical field around the design. | |||
The presence of the obstruction model can be felt by moving around the design. | |||
The menu toggle ''Blueprint, Solids Obstruct Movement'' must be checked to bump against the obstruction model. | |||
The obstruction model is created by analyzing the geometry of the design. | |||
A lot of processing effort is required to maintain the model so it is not done automatically with every modification to the design. | A lot of processing effort is required to maintain the model so it is not done automatically with every modification to the design. | ||
The obstruction model is updated using the ''Blueprint, Refresh Obstructions'' menu option. | The obstruction model is updated using the ''Blueprint, Refresh Obstructions'' menu option. | ||
The obstruction model is created from hull and landing gear parts. | The obstruction model is created from hull and landing gear parts, voids, and barriers. | ||
Each state of landing gear is represented so | Each state of landing gear is represented so its obstruction shape changes when the gear is extended. | ||
The obstruction model | |||
The obstruction model envelopes each part individually. | |||
To get the best fitting obstruction model, it is beneficial to split elaborate hull parts into | To get the best fitting obstruction model, it is beneficial to split elaborate hull parts into | ||
multiple simpler hull parts. | multiple simpler hull parts. | ||
Line 171: | Line 318: | ||
The obstruction model includes a margin around hull and landing gear parts. | The obstruction model includes a margin around hull and landing gear parts. | ||
This helps to prevent the eye camera of players from getting close enough to see inside, which breaks the illusion of solidity. | This helps to prevent the eye camera of players from getting close enough to see inside, which breaks the illusion of solidity. | ||
It can also prevent someone from moving close enough to operate a door. | |||
''Voids'' are used to carve out the spaces accessible to players, from the solid shape created by the hull. Room parts do not contribute to the obstruction model. It is the voids that really determine where people can go inside. | |||
''Barriers'' are used to create obstructions inside voids. Sometimes it is easier to add a barrier than to change the shape of the room void. Barriers can also be used to create the floor under stairs and ramps. | |||
==Part Association== | |||
''Association'' is when a part references another part by its id number. | |||
Certain parts can be associated with certain other parts. | |||
Association is a loose connection between parts. | |||
The meaning of this association depends upon the parts involved. | |||
A part can be associated with only one other part. | |||
Any number of parts can be associated with the same part. | |||
Associations are created using the [[Designer_Menu#Associate_Parts|Part, Associate Parts]] command. Associations are removed using the [[Designer_Menu#Dissociate_Parts|Part, Dissociate Parts]]. | |||
Part associations are used by the following parts. | |||
===Barriers=== | |||
[[Design_Parts#Barrier|Barriers]] can be associated with a '''state of a door or landing gear'''. | |||
This determines which barriers are obstructions when the door or landing gear is operated. | |||
It is ok to associate more than one barrier with a state of a door or landing gear. | |||
===Berth Name Decals=== | |||
[[Design_Parts#Decal.2C_Berth_Name|Berth name decals]] are associated with a '''berth'''. | |||
This determines which name to display on the decal. | |||
''Unassigned'' is displayed when the berth is not assigned. | |||
It is ok to associate more than one berth name decal to the same berth. | |||
===FTL Drive Service Panels=== | |||
[[Design_Parts#Panel.2C_FTL_Drive|FTL drive service panel]] is associated with an '''engineer station'''. | |||
This determines which FTL drive the service panel accesses. | |||
It is ok to associate more than one service panel with the same system. | |||
===Hull Voids=== | |||
[[Design_Parts#Void.2C_Hull|Hull voids]] are associated with the '''open state of a door''', when making operable hull doors. | |||
This determines which voids become accessible when the door is opened. | |||
Association of a hull void and a room void to a door causes it to become a hull door. This enables the interior room void and the exterior hull void to become accessible at once, presumably overlapping each other so a person can move from one void to the other. | |||
Hull voids may be associated with any state of a door or landing gear to make access to the void dependent upon them. | |||
It is ok to associate more than one path or void with a single state of a part. | |||
===Room Life Support Status Panels=== | |||
[[Design_Parts#Status.2C_Life_Support|Room life support status panel]] is associated with a '''room void'''. | |||
This determines which room's air pressure reading appears on the panel. | |||
It is ok to associate more than one life support status panel with a single room. | |||
===Room Voids=== | |||
[[Design_Parts#Void.2C_Room|Room voids]] are associated with the '''open state of a door''', when making operable doors. | |||
This determines which voids become accessible when the door is opened. | |||
Room voids may be associated with any state of a door or landing gear to make access to the void dependent upon them. | |||
It is ok to associate more than one path or void with a single state of a part. | |||
===Walk Paths and Ladder Paths=== | |||
[[Design_Parts#Path.2C_Walk|Walk paths]] and [[Design_Parts#Path.2C_Ladder|ladder paths]] are associated with the '''open state of a door''', when making operable doors. | |||
This guides NPCs to find their way through the door when it is open. | |||
Paths may be associated with any state of a door or landing gear to make access to the void dependent upon those states. | |||
It is ok to associate more than one path or void with a single state of a part. | |||
'' | ===Weapon Service Panels=== | ||
[[Design_Parts#Panel.2C_Weapon|Weapon service panel]] is associated with a '''fire control station'''. | |||
This determines which weapon the service panel accesses. | |||
It is ok to associate more than one service panel with the same system. | |||
==Walk Paths== | |||
In order for [[NPC]]s to successfully move around the interior of a design with multiple rooms. | |||
The walk paths need to be above the floor, hip height is usually good. Each end of a walk path is referred to as a ''node'', NPCs will need to always have a clear line to the nearest walk path node in whatever room they are in, or else they will get stuck. Walk paths need to form a full network where each walk path has to start where another ends, so that an NPC that is standing in one room can go to their nearest walk path node and then path through the network to their destination room. | |||
[[File:WalkPathExample.png|thumb|none|Example of walk paths seen from above. Grey is room voids, blue is door room voids, red is walk path node, and green are the walk paths.]] | |||
NPC pathing strategy is fairly primitive. When they want to go somewhere, they look for the closest path end point to them that they can move straight to without obstructions. Similar logic is used to find the path node closest to the destination. There must be a complete end-to-end chain of path segments from beginning to end, from there on. | |||
==Designer Interface | ===Common Mistakes=== | ||
The designer interface is dominated by a first person 3D view of the design space. It is in this space that the design will | Common mistake 1. NPCs will always start by going to the nearest node in their room when they need to path to another room. If the NPC cannot find a path to its destination from its nearest walk path node it will be unable to go anywhere. A walk path is needed to connect the doors across the room from each other, so the NPC can find the closest node at the nearby door, then follow the path to the room containing the destination, then walk across the room straight to destination's room. | ||
[[File:WalkPathFail.png|thumb|none|Common mistake 1. Bad walk paths on the left. Correct walk paths on the right.]] | |||
Common mistake 2. NPCs will need a clear line to the nearest node in their room, or they will be unable to leave it. If there are walls or solid furniture inside the room that will prevent a NPC from having a clear line to the nearest walk path node, add a closer walk path node they can use to path to the room's exit. | |||
[[File:WalkPathFail2.png|thumb|none|Common mistake 2. Bad walk paths on the left. Correct walk paths on the right.]] | |||
==Finalize== | |||
When a design is complete, it undergoes a finalizing process to insure that it is usable for its intended purpose. The result of the finalize process is presented to the architect in a list. The list may contain green notes, amber warnings and red errors. | |||
* Green notes are merely informative, providing information about the finalize process. | |||
* Amber warnings bring attention to things that may indicate a design error or oversight was made. Warnings do not prevent a design from being finalized. | |||
* Red errors highlight aspects of the design that must be changed before it can be finalized. | |||
In the on line designer, a design that finalizes with no errors can be saved into the universal library. Once saved to the library, a unique blueprint number is assigned and reported back to the architect. Then the design can be built in the game and it can be published in the appropriate exchange. | |||
In the solo designer, a design that finalizes with no errors reports that it could be saved to the library if it was finalized on line. | |||
=Designer Interface= | |||
The designer interface is dominated by a first person 3D view of the design space. It is in this space that the design will appear as it is created. The mouse pointer is used in this view to select things. The mouse is also used to drag the selected things from one place to another, to move or copy them. | |||
Hover the mouse pointer over most buttons and controls to see a tool tip. Tool tips on buttons explain their function and they sometimes reveal features that are not obvious at first. The tool tips on some buttons change, depending on current conditions. | Hover the mouse pointer over most buttons and controls to see a tool tip. Tool tips on buttons explain their function and they sometimes reveal features that are not obvious at first. The tool tips on some buttons change, depending on current conditions. | ||
===Menu Bar | ==Grid== | ||
The grid is a tool for drawing, initially visible in the view as a faint grid of lines at floor level. | |||
The grid is more like a ruler, a measuring tool, than the lines on a piece of graph paper, a static medium. The architect will move and rotate the grid many times during a typical design session, as needed, wherever it helps to draw. | |||
When more than one person is in the designer, each person sees and interacts with their own grid. | |||
===Coordinate Systems=== | |||
[[file:NumberLine.png|right|Number Line]] | |||
An understanding of coordinate systems is helpful to use the grid effectively. | |||
Real numbers extend to infinity, both positive and negative. This can be represented visually as a ''number line''. Whole numbers are placed at regular intervals along the line. Fractional numbers fall proportionally between the whole numbers. i.e. 1.5 is 50% of the way between 1 and 2. | |||
A number can be expressed in units of length, such as meters, in either the positive or negative direction, along the number line. The number is its ordinal value or ''ordinate''. | |||
That defines a one-dimensional vector. The absolute value of the number is its length. The sign of the number indicates the direction, either positive or negative. | |||
[[file:CoordinateSystem.png|left|Cartesian Coordinate System]] | |||
A ''Cartesian coordinate system'' is created when two number lines are placed perpendicular to each other, so they cross at 0. In a Cartesian coordinate system, each number line is called an ''axis''. They are named X and Y. | |||
A plane is formed by the intersection of the two axes, called the ''XY plane''. At any location in the plane, the X ordinate and the Y ordinate can be determined by dropping the point perpendicular to the respective axes. Knowing that, we can plot any location in the plane if we know the X ordinate and the Y ordinate at the location. | |||
The combination of ordinates is called ''coordinates''. Coordinates are expressed using notation like this (X, Y). In the picture, the coordinates of the starship are (-4, -2). The coordinates of the asteroid are (2.5, 3). Coordinates (0,0) are called the ''origin'', because that is where the numbers originate, or begin, for all axes. | |||
This is a 2 dimensional (2D) coordinate system because it expresses locations as dimensions measured along two axes. | |||
[[file:3DCoordinateSystem.png|right|3D Coordinate System]] | |||
A third axis can be added perpendicular to each of the other two axes. It is named Z. | |||
Using the coordinates of three axes, any location in space can be described. This is a 3 dimensional (3D) coordinate system because it expresses locations as dimensions measured along three axes. 3D coordinates are expressed like this (X, Y, Z). | |||
====Right Hand Rule==== | |||
Which way does the Z axis go? There are two possible orientations. | |||
Hazeron uses the right-hand rule for making that determination. It can be visualized by looking at the right hand held out flat. The thumb points in the direction of the positive X axis. The index finger points in the direction of the positive Y axis. Curl the remaining fingers upward, perpendicular to the palm. The middle finger points in the direction of the positive Z axis. | |||
Mathematically, that means the Z axis is equal to the cross product of the X axis against the Y axis. | |||
<code>Z = X cross Y</code> | |||
Rotations around axes are also determined using the right hand rule. The positive direction of angular rotation around each axis can be determined by grasping the axis with the right hand, with the thumb pointing in the positive direction. The fingers curl around the axis in the positive angle direction. | |||
====Absolute Coordinate System==== | |||
The ''absolute coordinate system'' underlies all geometry in the designer. | |||
The absolute coordinate system is indicated by an immovable yellow marker. It is visible in the view as three short intersecting XYZ axis lines. | |||
That is where the grid starts in a new drawing. To put the grid back to that position, use the [[Designer_Menu#Position_Grid|Position Grid]] command, then choose the '''S=Reset''' option. | |||
Mathematically, the grid shows the position of a 4x4 transformation matrix. The absolute coordinate system is defined as the identity matrix. | |||
<code>1 0 0 0</code><br> | |||
<code>0 1 0 0</code><br> | |||
<code>0 0 1 0</code><br> | |||
<code>0 0 0 1</code> | |||
*Origin is at (0,0,0). | |||
*X axis vector is (1,0,0). | |||
*Y axis vector is (0,1,0). | |||
*Z axis vector is (0,0,1). | |||
===Visible Grid=== | |||
The visible grid represents a 3D coordinate system. Axis lines are bright in the positive direction and dim in the negative direction. The position of X is shown as a red line. The position of Y is shown as a green line. The position of Z is shown as a blue line. | |||
X and Y lines are marked at the ends with the axis name and direction. | |||
The XY plane contains lines parallel to the X and Y axes, forming a visible grid. Regular interval spacing between the grid lines is controlled by a combo box control on the reference tool bar. | |||
Grid colors are controlled on the Designer page of the Settings window. | |||
[[Designer_Menu#Show_Grid|Grid visibility]] can be turned off. | |||
Grid rounding can be turned on or off, independently of the grid visibility state. | |||
===Grid as a Tool=== | |||
All drawing takes place in the 3D coordinate system of the grid. Position the grid to draw anywhere in the drawing, using coordinates relative to the subject matter. This is typically done frequently while creating a design, using commands accessed on the [[Designer#Reference_Tool_Bar|reference tool bar]] and the [[Designer_Menu#Helpers|helpers menu]]. | |||
[[Designer#Coordinate_Input|Coordinates entered into the input tool bar]] are relative to the grid. | |||
Freehand drawing happens in the plane of the grid. In the view, the location of the mouse pointer is projected straight into the screen until it intersects the XY plane of the grid, regardless of the visibility state of the grid. If ''Snap to Grid'' is enabled, that location will be rounded to the nearest grid line intersection. Various snapping switches can be enabled. Grid rounding behavior is overridden when the mouse pointer snaps to existing geometry. | |||
Most drawing commands terminate/replace the current drawing command; grid positioning commands suspend the current drawing command instead. Whenever a drawing command is requesting point input, a grid positioning command can be invoked. Upon termination of the grid positioning command, the suspended drawing command will resume its request for point input. | |||
When selected geometry is copied to the clipboard, the geometry on the clipboard is in the coordinate space of the grid, at the time of the copy. | |||
When geometry is pasted from the clipboard, it is placed in the coordinate space of the grid, at its location at the time of the paste. | |||
For example, move the grid to the center of a selected part. Copy that part to the clipboard. Move the grid. Paste the clipboard; it will be added at the new location of the grid. Use [[Designer_Menu#Paste_At|Paste At]] to place more than one of them. | |||
==Menu Bar== | |||
[[file:DesignerMenu.png|right|Menu Bar]] | [[file:DesignerMenu.png|right|Menu Bar]] | ||
At the top of the designer interface is a menu bar. Most functions of the program can be accessed using the menu bar. | At the top of the designer interface is a menu bar. Most functions of the program can be accessed using the menu bar. | ||
See [[Designer_Menu|designer menu]] for a list of the items on the menu bar. | |||
==Input Tool Bar== | |||
[[file:DesignerInputBar.png|right|Input Tool Bar]] | [[file:DesignerInputBar.png|right|Input Tool Bar]] | ||
The ''Input Tool Bar'' appears below the menu bar, at the left. It can be moved by dragging the dotted grip at the left end. Tool tips on the buttons explain their function. | The ''Input Tool Bar'' appears below the menu bar, at the left. It can be moved by dragging the dotted grip at the left end. Tool tips on the buttons explain their function. | ||
===Reference Tool Bar | ===Design Properties=== | ||
Equivalent to the [[Designer_Menu#Properties|Blueprint, Properties]] menu item. | |||
===Refresh Obstructions=== | |||
Equivalent to the [[Designer_Menu#Refresh_Obstructions|Blueprint, Refresh Obstructions]] menu item. | |||
===Solids Obstruct Movement=== | |||
Equivalent to the [[Designer_Menu#Solids_Obstruct_Movement|Blueprint, Solids Obstruct Movment]] menu item. | |||
===Gravity=== | |||
Equivalent to the [[Designer_Menu#Gravity_On.2FOff|Blueprint, Gravity On/Off]] menu item. | |||
===Preview=== | |||
Equivalent to the [[Designer_Menu#Preview_On.2FOff|Blueprint, Preview On/Off]] menu item. | |||
===Preview Sun Position=== | |||
Equivalent to the [[Designer_Menu#Preview_Settings|Blueprint, Preview Settings]] menu item. | |||
===Construct Building=== | |||
Equivalent to the [[Designer_Menu#Preview_Place_Building|Blueprint, Preview Place Building]] menu item. | |||
===Preview People=== | |||
Equivalent to the [[Designer_Menu#Preview_People|Blueprint, Preview People]] menu item. | |||
===Coordinate Input=== | |||
Many design commands will ask the architect to enter a 3D point location. A location can then be entered by clicking with the mouse pointer in the view window. Alternatively, locations can be entered into the coordinate input box, at the end of the [[Designer#Input_Tool_Bar|Input Tool Bar]]. | |||
3D coordinates are entered as '''X,Y,Z''' values, which are positive or negative offsets along the '''X''', '''Y''' and '''Z''' axes. | |||
Coordinates are not bracketed with parentheses. | |||
Omitted values are 0. e.g. <i>1,,2</i> is the same as <i>1,0,2</i>; <i>p2</i> is the same as <i>p2,0,0</i>; <i>a,3</i> is the same as <i>a0,3,0</i>. | |||
Polar coordinates are entered as '''pD,A,I''' values: '''D''' is distance from the origin; '''A''' is angle around the Z axis, positive counterclockwise and negative clockwise; '''I''' is the angle of inclination off the XY plane, positive above and negative below. | |||
Coordinates are relative to the location and orientation of the [[Designer#Grid|grid]] unless specified otherwise. | |||
Coordinates prefixed with '''a''' are ''absolute''. Absolute coordinates are relative to the [[Designer#Absolute_Coordinate_System|absolute coordinate system]] of the design, ignoring the grid. e.g. ''a1.25,2.3,-4.5'' or ''ap2.5,-30,10''. | |||
Distances are interpreted in units depending upon the ''unit of measure'' setting. Whole numbers are interpreted as whole units of measure. For example, if the unit of measure is meters, which is the default, then 10 means 10 meters. Unit of measure is configured on the Designer page of the Settings window. Unit of measure can be changed at any time while drawing. | |||
====Rotating==== | |||
Some design commands will ask the architect to enter a rotation value. e.g. rotate selected objects. | |||
Angles are entered in degrees. | |||
When responding to a request for rotation, input into the Coordinate Input box is interpreted as 3D rotation angles around the X, Y and Z axes. e.g. To rotate 45 degrees around the Z axis, enter 0,0,45, or simply ,,45. | |||
Positive and negative direction of rotation is determined by the [[Designer#Right_Hand_Rule|right hand rule]]. | |||
====Scaling==== | |||
Some design commands will ask the architect to enter a scale value. e.g. stretch selected objects. | |||
When responding to a request for scaling, input into the Coordinate Input box is interpreted as 3D stretch factors along the X, Y and Z axes. e.g. To double the overall size, enter 2,2,2; to reduce the X dimension by half, enter .5,1,1. | |||
====Move/Copy==== | |||
When no design command is active, the coordinate input box can be used to move or copy the objects that are selected. | |||
* '''Move parts''' by entering a coordinate. The objects that are selected will be moved using the vector entered. | |||
* '''Copy parts''' by entering a coordinate while holding the <code>Ctrl</code> key. The objects that are selected will be copied and moved using the vector entered. | |||
==Reference Tool Bar== | |||
[[file:DesignerReferenceBar.png|right|Reference Tool Bar]] | [[file:DesignerReferenceBar.png|right|Reference Tool Bar]] | ||
The ''Reference Tool Bar'' appears below the menu bar, to the right of the input tool bar. It can be moved by dragging the dotted grip at the left end. | The ''Reference Tool Bar'' appears below the menu bar, to the right of the input tool bar. It can be moved by dragging the dotted grip at the left end. | ||
===Parts=== | ===Face Mode=== | ||
Equivalent to the [[Designer_Menu#Face_Mode|Face, Face Mode]] menu item. | |||
===Isolate Parts=== | |||
Equivalent to the [[Designer_Menu#Isolate_Parts|Face, Isolate Parts]] menu item. | |||
===Find Vertices=== | |||
Equivalent to the [[Designer_Menu#Find_Vertices|Helpers, Find Vertices]] menu item. | |||
===Find Edges=== | |||
Equivalent to the [[Designer_Menu#Find_Edges|Helpers, Find Edges]] menu item. | |||
===Find Faces=== | |||
Equivalent to the [[Designer_Menu#Find_Faces|Helpers, Find Faces]] menu item. | |||
===Show Edges=== | |||
Equivalent to the [[Designer_Menu#Show_Edges|View, Show Edges]] menu item. | |||
===Show Faces=== | |||
Equivalent to the [[Designer_Menu#Show_Faces|View, Show Faces]] menu item. | |||
===Show Back Faces=== | |||
Equivalent to the [[Designer_Menu#Show_Back_Faces|View, Show Back Faces]] menu item. | |||
===Move Grid=== | |||
Equivalent to the [[Designer_Menu#Move_Grid|Helpers, Move Grid]] menu item. | |||
===XY Grid=== | |||
Equivalent to the [[Designer_Menu#XY_Grid|Helpers, XY Grid]] menu item. | |||
===XZ Grid=== | |||
Equivalent to the [[Designer_Menu#XZ_Grid|Helpers, XZ Grid]] menu item. | |||
===YZ Grid=== | |||
Equivalent to the [[Designer_Menu#YZ_Grid|Helpers, YZ Grid]] menu item. | |||
===Position Grid=== | |||
Equivalent to the [[Designer_Menu#Position_Grid|Helpers, Position Grid]] menu item. | |||
===Grid Spacing=== | |||
Changes the spacing between lines in the grid. | |||
===Show Grid=== | |||
Equivalent to the [[Designer_Menu#Show_Grid|Helpers, Show Grid]] menu item. | |||
===Grid Follows Work=== | |||
Equivalent to the [[Designer_Menu#Grid_Follows_Work|Helpers, Grid Follows Work]] menu item. | |||
===Snap to Grid=== | |||
Equivalent to the [[Designer_Menu#Snap_to_Grid|Helpers, Snap to Grid]] menu item. | |||
===Snap to Edges=== | |||
Equivalent to the [[Designer_Menu#Snap_to_Edges|Helpers, Snap to Edges]] menu item. | |||
===Snap to Vertices=== | |||
Equivalent to the [[Designer_Menu#Snap_to_Vertices|Helpers, Snap to Vertices]] menu item. | |||
===Coordinate Feedback=== | |||
Shows coordinates relevant to the current drawing operation. | |||
When responding to coordinate input, the coordinate at the mouse pointer position is shown, relative to the grid. That coordinate is usually the location where the mouse pointer hits the grid, though it may change if the pointer snaps to an existing object. | |||
When dragging objects using the mouse pointer, the offset of the drag is shown. Dragging usually occurs in the grid plane, though it may change if the pointer snaps to an existing object. | |||
==Parts Window== | |||
[[file:DesignerParts.png|right|Parts]] | [[file:DesignerParts.png|right|Parts]] | ||
The ''Parts'' window is displayed using the F6 key or the menu. It is typically docked at the right side of the designer window. | The ''Parts'' window is displayed using the F6 key or the menu. It is typically docked at the right side of the designer window. | ||
Line 224: | Line 658: | ||
The parts list contains every [[Design_Parts|part]] that is in the current design. This includes hull objects, imported meshes, rooms, berths, etc. This allows you to easily see everything within the design at once, and also provides buttons for toggling the visibility of each part, as well as other part properties. | The parts list contains every [[Design_Parts|part]] that is in the current design. This includes hull objects, imported meshes, rooms, berths, etc. This allows you to easily see everything within the design at once, and also provides buttons for toggling the visibility of each part, as well as other part properties. | ||
The | The parts list is also useful for selecting parts and deleting parts. | ||
===Id Column=== | |||
Every part in a design is assigned a unique id number. Part id numbers may range from 1 to 65,535. | Every part in a design is assigned a unique id number. Part id numbers may range from 1 to 65,535. | ||
Part id numbers are not preserved when copied and pasted between designs. Parts are assigned new ids when pasted into a design. | Part id numbers are not preserved when copied and pasted between designs. Parts are assigned new ids when pasted into a design. | ||
===Name Column=== | |||
The name column starts with an icon that indicates the kind of the [[Design_Parts|part]]. | The name column starts with an icon that indicates the kind of the [[Design_Parts|part]]. | ||
The icon is followed by a text name assigned to the part. Names are assigned by the designer based on the type and properties of the part. | The icon is followed by a text name assigned to the part. Names are assigned by the designer based on the type and properties of the part. | ||
===Group Column=== | |||
The group column shows the name of the group assigned to each part. | The group column shows the name of the group assigned to each part. | ||
Line 296: | Line 730: | ||
|} | |} | ||
==='''V'''isibility Column=== | |||
Shows and controls the visibility state of parts. | Shows and controls the visibility state of parts. | ||
Line 305: | Line 739: | ||
Making a part invisible does not exclude it from the final design. Invisible parts are included in the final design. | Making a part invisible does not exclude it from the final design. Invisible parts are included in the final design. | ||
==='''L'''ock Column=== | |||
Shows and controls the locked state of parts. | Shows and controls the locked state of parts. | ||
Line 312: | Line 746: | ||
Left click to toggle the lock of the selected parts. Right-click to choose the locked or unlocked state from a menu. | Left click to toggle the lock of the selected parts. Right-click to choose the locked or unlocked state from a menu. | ||
==='''O'''mit Column=== | |||
Shows and controls whether a part is omitted from the final design. | Shows and controls whether a part is omitted from the final design. | ||
Line 319: | Line 753: | ||
Excluded parts can be useful for reference purposes, as a way to keep images or geometry in the design that are not intended to be part of the final design. Parts that exist only as design tools are omitted regardless of this setting, e.g. door jigs. | Excluded parts can be useful for reference purposes, as a way to keep images or geometry in the design that are not intended to be part of the final design. Parts that exist only as design tools are omitted regardless of this setting, e.g. door jigs. | ||
==='''S'''eal Column=== | |||
Shows and controls whether a part is sealed. | Shows and controls whether a part is sealed. | ||
Line 332: | Line 766: | ||
The design report lists all architects whose parts are included in a design. | The design report lists all architects whose parts are included in a design. | ||
===State Column=== | |||
Shows the current state of parts that can have multiple states, such as doors that can be open or closed. | Shows the current state of parts that can have multiple states, such as doors that can be open or closed. | ||
On some kinds of parts, a slide bar is shown for adjusting the transparency of the part. | On some kinds of parts, a slide bar is shown for adjusting the transparency of the part. | ||
==Texture Wrapper Window== | |||
[[file:DesignerTextureWrapper.png|right|Texture Wrapper]] | [[file:DesignerTextureWrapper.png|right|Texture Wrapper]] | ||
The ''Texture Wrapper'' window is displayed using the Shift+F6 key or the menu. It can be docked stacked on top of the parts window; tabs will appear at the bottom, to choose between them. | The ''Texture Wrapper'' window is displayed using the Shift+F6 key or the menu. It can be docked stacked on top of the parts window; tabs will appear at the bottom, to choose between them. | ||
The texture wrapper | '''The texture wrapper is only used in face mode.''' | ||
Texture wrapper is a tool for positioning textures on faces. | |||
Texture wrapper only operates on faces that are selected. | |||
The designer must be in face mode to select faces. | |||
The viewing area shows the texture applied to the faces. | |||
Edge lines of the faces are painted where the texture is mapped to them. | |||
The viewing area is blank when the texture differs between the selected faces. | |||
A combo box contains the current texture palette. | |||
Change the texture of faces by choosing a texture in the combo box. | |||
===Palette=== | |||
A design has a palette of textures. | |||
Each face may refer to one of the textures in the palette for its primary surface texture. | |||
Faces reference palette entries. | |||
If the texture in a palette entry is changed, faces that refer to that palette entry will also change. | |||
Texture palette entries can be customized. | |||
Each palette entry can be loaded with a custom picture file or it can be configured to use one of the built-in | |||
textures included with the designer. | |||
The ''Material'' entry changes based on the material used to manufacture the design. | |||
Manufacturing material is configured in the design properties. | |||
The material texture can be overridden by loading a custom texture. | |||
When a custom texture is selected for the material entry, it no longer changes according to the manufacturing | |||
material. | |||
This is the material entry's only special behavior. | |||
The texture may be used on any faces that should change appearance based on material. | |||
The textures used for materials exist among the built-in choices included with the designer. | |||
To use one of those textures without it changing due to manufacturing material, | |||
simply assign it to a different palette entry. | |||
Custom picture files are limited to a size of 256x256 pixels. | |||
Pictures are automatically reduced to fit within that size, while maintaining aspect ratio. | |||
===Unwrap=== | |||
Unwraps the faces onto the texture. A window presents options for unwrapping the faces. | |||
Texture unwrapper is a tool for automatically positioning textures on faces. | |||
Texture unwrapper only operates on faces that are selected. | |||
The designer must be in face mode to select faces. | |||
[[file:ScFigUnwrap.png|right|Unwrap Texture]] | |||
The term ''unwrap'' derives from the notion of unwrapping or unfolding the faces of a 3D solid onto a flat surface. | |||
The flat surface is the texture. | |||
Texture unwrapper is affected by the position and orientation of the grid. | |||
In particular, the texture pattern will start where the grid center corresponds to a face. | |||
A texture is selected from the design's texture palette. | |||
It will be applied to the selected faces. | |||
The size of the texture is specified, using the ''unit of measure'' configured in settings. | |||
Texture unwrapper offers several strategies to try keeping a continuous texture pattern around corners. | |||
Sometimes one strategy will produce a better result than another. | |||
Angle tolerance is used by all unwrap strategies except Unwrap by Face. | |||
Angle tolerance enables the unwrapper to group together faces with similar facing. | |||
'''Unwrap by Face''' maps each face individually. | |||
Texture is aligned to the plane of each face, with origin aligned to the grid center. | |||
Texture pattern restarts at each new face, without regard to others. | |||
No attempt is made to maintain a continuous texture pattern around corners. | |||
'''Unwrap by Facing''' maps faces in groups according to their facing. | |||
Texture is mapped to each group using a plane projection, with its origin aligned to the grid center. | |||
Texture pattern is continuous across all faces in each group. | |||
No attempt is made to maintain a continuous texture pattern around corners, between groups. | |||
'''Unwrap by Edges''' maps faces like Unwrap by Facing. | |||
Texture pattern continues around corners where possible. | |||
'''Unwrap by Edges Horizontally''' maps faces like Unwrap by Edges. | |||
A preference is made for unwrapping horizontally rather than vertically. | |||
'''Unwrap by Edges Vertically''' maps faces like Unwrap by Edges. | |||
A preference is made for unwrapping vertically rather than horizontally. | |||
=== | ===Plane Projection=== | ||
Unwraps the faces onto the texture. Textures are mapped onto faces using a plane projection. Position of the grid plane affects the result. | |||
Plane projected texturing applies a texture to selected faces. | |||
The palette texture referenced by selected faces is changed and the texture is mapped to the surface. | |||
The mapping method is a straight parallel projection of the texture onto the faces. | |||
A window offers a choice of palette textures. | |||
The window also requests the size of the texture. | |||
The texture is aligned with the grid plane. | |||
It is sized according to options chosen by the user. | |||
The texture is then projected onto the selected faces. | |||
This method creates a continuous pattern across all faces. | |||
The resulting pattern is increasingly distorted as the angle of faces gets closer to perpendicular to the | |||
direction the texture is projected. | |||
The pattern smears along perpendicular faces. | |||
===Cylindrical Projection=== | |||
Unwraps the faces onto the texture. Textures are mapped onto faces using a cylindrical projection. Position of the grid plane affects the result. | |||
Cylindrical projection texturing applies a texture to selected faces. | |||
The palette texture referenced by selected faces is changed and the texture is mapped to the surface. | |||
The mapping method is a cylindrical projection of the texture onto the faces. | |||
A window offers a choice of palette textures. | |||
The window also requests the size of the texture and the number of times the texture repeats around the cylinder. | |||
The texture is stretched into a cylinder that is aligned with the red X axis of the grid plane. | |||
It is sized according to options chosen by the user. | |||
The texture is then projected onto the selected faces. | |||
This method creates a continuous pattern across all faces. | |||
The resulting pattern shrinks and grows around the cylinder with distance from the axis. | |||
The pattern is sized along the X axis according to user choices, so it does not stretch in the X axis direction. | |||
Cylindrical mapping is useful for applying textures to spindles. | |||
Center the grid on the spindle's rotation axis, with the red X axis aligned to the spindle's rotation axis. | |||
Cylindrically apply a texture. | |||
===Spherical Projection=== | |||
Unwraps the faces onto the texture. Textures are mapped onto faces using a spherical projection. Position of the grid plane affects the result. | |||
Spherical projected texturing applies a texture to selected faces. | |||
The palette texture referenced by selected faces is changed and the texture is mapped to the surface. | |||
The mapping method is a spherical projection of the texture onto the faces. | |||
A window offers a choice of palette textures. | |||
The window also requests the number of times the texture repeats around the equator of a sphere. | |||
The texture is stretched into a sphere that is aligned with the grid plane. | |||
It is sized according to options chosen by the user. | |||
The texture is then projected onto the selected faces. | |||
The center of the projection is the center of the grid plane. | |||
This method creates a continuous pattern across all faces. | |||
The resulting pattern shrinks and grows with distance from the center. | |||
=== | ===Repeat=== | ||
Toggles a repeating pattern of the texture image, to aid in positioning. All textures repeat, regardless of this setting. | |||
The viewing area only shows faces that are selected in the scene. Vertices are highlighted when selected. Vertex selection matches the vertices selected in the scene. Vertices can be selected/deselected in the scene also. | |||
=== | ===Mouse Controls=== | ||
* Left click an unselected vertex to select it. | |||
* Ctrl+left click a vertex to toggle its selection. | |||
* Left click a selected vertex, then drag, to move all selected vertices. | |||
* Left click in empty space to deselect all vertices; then drag, to drag a box to select vertices. | |||
* Ctrl+left click in empty space, then drag, to drag a box to toggle selection of vertices. | |||
* Right click then drag to pan the display. | |||
* Wheel to change view magnification. | |||
* Ctrl+wheel to change view magnification in larger steps. | |||
===Key Commands=== | |||
*<code>A</code> selects all vertices. | |||
*<code>G</code> grabs selected vertices to move them. | |||
*<code>R</code> rotates selected vertices. | |||
*<code>S</code> stretches selected vertices. | |||
*<code>X</code> constraint. While moving, moves in X only. While stretching, stretches in X only. | |||
*<code>Y</code> constraint. While moving, moves in Y only. While stretching, stretches in Y only. | |||
=Spacecraft Design= | |||
For spacecraft designer specific information, see the [[Spacecraft Design]] page. | For spacecraft designer specific information, see the [[Spacecraft Design]] page. | ||
==Building Design | ==Design Checklist== | ||
The designer offers a checklist as a guide to completing a design. It provides general how-to instructions on how to design a spacecraft. | |||
Following is the text of the spacecraft design checklist. | |||
===Properties=== | |||
Configure the structure. '''Required.''' | |||
The ''structure'' tells the designer what you are trying to make. Configure this right away. | |||
The structure affects the design analysis. It also affects the spacecraft when viewed in ''Preview Mode''. | |||
===Hull=== | |||
Construct the hull. '''Required.''' | |||
''Hull'' parts are the most visible part of a spacecraft when it is seen from the outside. This is the spacecraft people see; make the hull look nice. | |||
Hull parts determine the volume of the spacecraft. Internal subsystems are allocated from this volume. Parts inside the hull do not reduce hull volume. | |||
Hull parts may overlap each other. Hull parts may not form separated pieces of a spacecraft. Hull parts must form a single contiguous spacecraft. | |||
Do not ''join'' hull parts together when done. Collision logic prefers simple hull parts instead of complicated hull parts. | |||
A concave depression into a hull part is always obstructed. Use hull voids to gain access to obstructed areas if needed. | |||
Hull parts are not required to form airtight shells; they can have holes. | |||
If you can see completely through a hull part, through an area that should be solid, its calculated volume may be incorrect. ''Door'', ''window'', ''room'' and ''room void'' parts inside the hull part will block such openings during volume calculations. It may be necessary to add faces, rooms, or room voids to a hull part with holes through it. | |||
A hull can be created by importing a 3DS or STL file. Many free spacecraft models are available on the Internet. They typically define only the outside shell and they rarely include textures, which makes them ideal for use here. | |||
The origin (0,0) location after the grid is reset is the center of gravity (CG) of the spacecraft. The CG is the point about which the spacecraft will pitch, roll, and yaw. | |||
To move the CG of a spacecraft, all the parts must be moved. Unhide and unlock all parts before proceeding. Position the grid at the desired CG and orientation: +X is starboard, +Y is forward, +Z is up. Select all the parts and ''Edit, Cut'' them. Use the ''Position Grid'' function and press '''S''' to reset the grid. ''Edit, Paste'' the parts at their new location. | |||
===Turrets=== | |||
Construct gun turrets. | |||
A turret consists of a base that spins and an optional gun that tilts. The turret is remotely operated by a troop at a control station aboard the spacecraft. | |||
Turrets need an unobstructed field of fire. Turrets can hit their own hull and its occupants; NPCs avoid doing so. | |||
Draw the base of a turret on the hull using a mesh part. Select the base and use the ''Make Turret'' function. The function prompts for the base pivot point and pivot axis. If the turret spins backward when operated, use the ''Properties, Turret Base Position'' function to flip the pivot axis in the opposite direction. | |||
At this point the turret can be used. Gunfire will emit from the center of the turret base. | |||
To add a gun to a turret, right-click the Turret in the parts list and select ''Add State'' to add a Gun. Change the turret to the Gun state and draw a gun in face mode. Use the ''Properties, Turret Gun Position'' function to configure where the gun tilts, where it shoots, and where the gunner sees out when operating the turret. | |||
In the designer, a turret shows the faces of both the base and gun only when it is in the Gunner Screen state. Otherwise a turret only shows the faces appropriate to its current state. | |||
===Lights=== | |||
Construct exterior lights. | |||
Exterior lights add visibility and draw attention. Interior lights are not represented by any part. | |||
The appearance of exterior lights can be created using mesh or hull parts. Hull parts have the advantage of adding hull volume. | |||
''Light Lens'' parts glow when the headlight of the spacecraft is on. Use ''Make Light Lens'' to convert each selected part into a light lens. Each lit light lens adds a glow sprite at the center of the part. | |||
''Nav Light Lens'' parts glow when the nav lights of the spacecraft are on. Use ''Make Navigation Light Lens'' to convert each selected part into a nav light lens. Each lit nav light lens adds a glow sprite at the center of the part. | |||
''Rotating Beacon Lens'' parts glow when the rotating beacons of the spacecraft are on. Position the grid to establish the beacon rotation axis, which will align with the Z axis when the beacon is made. Use ''Make Rotating Beacon Lens'' to convert each selected part into a rotating beacon. Each lit rotating beacon adds a rotating glow sprite at the center of the part. | |||
''Strobe Lens'' parts blink when the strobe lights of the spacecraft are on. Use ''Make Strobe Lens'' to convert each selected part into a strobe. Each lit strobe adds a glow sprite at the center of the part. | |||
===Landing Gear=== | |||
Construct landing gear. | |||
Landing gear is optional. The spacecraft will settle on its hull without landing gear. | |||
Landing altitude is determined by the bottom extent of the spacecraft. Landing gear changes the extents of the spacecraft. In the presence of more than one landing gear part, the one that reaches the farthest down will determine the landing altitude. | |||
Build each landing gear using a mesh part. Use the ''Make Landing Gear'' function to convert the mesh into a ''Landing Gear'' part. | |||
===Rooms=== | |||
Construct rooms inside the hull. '''Required.''' | |||
''Room'' parts do not contribute to collision logic. They exist only for appearance. Rooms are what players see most of the time they are aboard; make them look nice. | |||
Separate rooms should be spaced apart slightly, to allow for wall thickness between them. | |||
If the design will incorporate turbo lifts, draw one room for each turbo lift at only one of its stops. That room will become a turbo lift car in another step, after more parts have been added. | |||
===Meshes=== | |||
Construct details. | |||
Use meshes to create '''control stations''', furnishings, equipment, and other interesting details. | |||
Meshes do not create an obstacle to movement. They exist only for appearance. Make them look nice. | |||
===Doorways=== | |||
Cut doorways. '''Required.''' | |||
A ''door jig'' cuts a doorway from one room to another room, or from a room to a hull. The door jig cuts the faces, adds a lining of faces to the hole, and creates a ''Door'' part in the hole. | |||
Place a door jig into each room that will become a turbo lift. '''Do not cut doors into turbo lifts at this time.''' | |||
Jigs do not work when placed flat against a face. Raise jigs slightly above the floor before cutting doors. | |||
Jigs aren't perfect; they sometimes create too many or not enough faces when lining the hole. You may have to delete excess faces or draw missing faces there. | |||
===Windows=== | |||
Cut windows. '''Required.''' | |||
A ''window jig'' cuts a window opening from one room to another room, or from a room to a hull. A window jig can also cut a window into a hull where no room exists on the inside. The window jig cuts the faces, adds a lining of faces to the hole, and creates a ''Window'' part in the hole. | |||
Windows are for human players. People like to see out; make lots of windows. NPCs do not need windows to operate a spacecraft. | |||
Translucent windows give the appearance of occupancy in areas where there may be no rooms at all. They do this by lighting and darkening while the spacecraft has power, which gives the impression that someone is in there. | |||
In some cases an entire hull part or some faces on a hull part would make a nice window. Use ''Split Faces'' in face mode to make a separate part from selected faces. The ''Make Window'' function converts the part into a window. | |||
===Control Stations=== | |||
Add control stations. '''Required.''' | |||
Control stations are used by players and NPCs to operate subsystems of the spacecraft. In some cases the creation of the control station causes the appropriate subsystem to exist in the design. | |||
The simplest control stations to draw are the swivel consoles with chairs. They are simple because a built in model of a control station is used. You only have to specify the location and spin of the control station. | |||
Meshes are used to create the appearance of integrated control stations. The functions that create integrated control stations will prompt for the operator's location and body position. | |||
Some stations request additional information such as the screen position. The screen position can be changed by moving the face in face mode. Additional information can be changed using properties functions. | |||
Turrets require an integrated control station to operate them. Select a turret to add an integrated turret control station. | |||
Weapon stations request the weapon emit location. These weapons are omnidirectional and they do not hit their own hull or its contents. | |||
Troop posts provide a location for troops to be stationed when they are not operating a turret. | |||
===Panels=== | |||
Add service and other panels. | |||
Service panels create a place at which a subsystem of the spacecraft can be repaired manually. In the absence of a service panel, a subsystem can only be repaired by an airport repair shop. Other panels simply provide information. | |||
Some service panels must be associated with the control station of the appropriate subsystem, to know what subsystem the panel is intended to service. | |||
''Alert Status Panels'' act as the speaker grill for alert tones. Alert sounds are emitted from alert status panels. | |||
''Room Life Support Panel'' must be associated with the room void it monitors. | |||
''World Map Panel'' aspect ratio is 2:1 for spherical worlds. Aspect ratio is 10:1 for ringworld arc sections. | |||
===Vehicles=== | |||
Add vehicle parking spots. | |||
''Specific vehicle parking spots'' show a solid vehicle model in the spot with a small icon beneath them. | |||
''General vehicle parking spots'' show a bounding box that fits any vehicle that can park there. e.g. ''Ground vehicle parking spot'' shows a box large enough for any ground vehicle in the game. | |||
Spacecraft fill their vehicle parking spots by teleporting new vehicles from buildings in trade range. | |||
With a ''vehicle transporter'' in the design, vehicle parking spots act as vehicle transporter pads. A vehicle does not have to be able to move from its parking spot. The driver simply calls for transport on the comm. | |||
''Space vehicle launcher'' creates a launch pad and a launch path. While launching, a space vehicle travels along the path. It is not obstructed by the hull or anything else while launching. Voids are not required at the launcher or along the path. The exit end of the path must be clear of the hull. | |||
When a pilot requests launch, their space vehicle is teleported to an available launch pad. Doors associated with the launcher are opened and the vehicle is launched along the path. The departure speed of the vehicle is determined by the length of the path. Launcher doors close automatically after the vehicle is launched. | |||
''Space vehicle recovery subsystem'' creates a virtual runway for arriving space vehicles. It should be placed outside the hull. Allow for botched landings; sometimes a pilot has to go around. A space vehicle that stops along the centerline of the runway is teleported to an empty parking spot. | |||
===Details=== | |||
Add berths and other details. | |||
''Berths'' define the accommodations for captain, officers, crew, troops and passengers. Berths are optional. | |||
When an avatar dies who has taken a berth aboard a spacecraft, they reappear in their berth aboard that spacecraft if the life support subsystem is functioning and the spacecraft has not been captured by an enemy. On a spacecraft with no berths, the avatar reappears at the helm. | |||
''Contrail emitters'' help to see and identify spacecraft. Contrails are much easier to see than a fast moving sparkling pixel. Contrails are colored according to each empire's preferences. The size of the contrail emitter part determines the size of the contrail. | |||
If no contrail emitters are added, a single contrail emitter will automatically be added at the center of the aft extents. This is not done for space stations. | |||
''Light bulb'' is the source of light emitted by the spacecraft when the headlights switch is on. The light can be omnidirectional or focused into a cone. The light bulb part is not visible in the final spacecraft. Emitted light is not shadowed by faces of the spacecraft. | |||
''Remote cameras'' are accessed by players using the command station. | |||
''Items'' can be placed in the design. Items are populated from the city's inventory when the spacecraft is manufactured. Players can take these items. Items are replenished from the spacecraft's cargo. | |||
===Voids=== | |||
Carve out void spaces and add barriers. '''Required.''' | |||
The hull is treated as a solid mass through and through. Room meshes have no effect on this. | |||
Voids carve out the areas in which people, vehicles and other spacecraft can go. Barriers create obstacles inside those carved out areas. Voids and barriers are not visible in the final model. | |||
When two voids are placed next to each other, overlap them slightly. This assures a positive handoff as something moves from one void to another, without bouncing off an infinitesimally thin wall in between. | |||
Each void and barrier must form a single airtight bubble. There can be no holes or missing faces. Overlapping or excess faces will cause trouble. Concave areas are ok. | |||
Do not ''join'' voids together. It is better to have a few simple intersecting voids than one single complicated void. | |||
''Room Voids'' are placed inside rooms, turbo lifts and on ramps. Each operable door must have a room void in the doorway to connect the room voids accessed by the door. | |||
Voids must be as simple as possible with very few faces. Rooms can be very complex, bumpy, curvy and full of holes. Do not conform to every bump and bulge in the walls. Build simple voids just inside the bumps and most people will never notice. | |||
''Hull Voids'' allow access to areas of the hull that should '''not''' obstruct movement. | |||
''Barriers'' create obstacles to movement inside room voids. Barriers can be used to create stairs and ramps or to surround things the player should not walk through. Barriers should use extremely few faces. | |||
When blocking a large portion of a room void, consider making the room void smaller instead. | |||
Stairs can be created using a mesh that looks like stairs and a ramp-shaped barrier, instead of shaping the barrier to fit every step. Less faces are needed to make the barrier and movement on the stairs is smoother; it is also easier for small or legless creatures. | |||
===Turbo Lifts=== | |||
Make turbo lifts functional. | |||
This step is required if you are building any turbo lifts in the design. Two concepts are introduced: doors and paths. They are discussed in detail in the following '''Doors''' and '''Paths''' steps. | |||
Select the turbo lift room, room void, and door jig for one turbo lift. Use the ''Make Turbo Lift'' function to fuse them together into a ''Turbo Lift'' part. | |||
Right-click on the turbo lift in the parts list and select ''Add Stop''. Provide a name for the current stop of the turbo lift. Select the turbo lift and the adjoining room or hull and use the ''Jig Cut'' function to cut the door. The turbo lift must be outside a room to cut into it. The turbo lift must be inside a hull to cut out of it. | |||
Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new ''Turbo Lift Door''. | |||
When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door. | |||
For each additional stop, do the following. | |||
* Add a stop name for the next stop position. The current stop of the car does not matter. | |||
* Use the ''Align Turbo Lift Stop'' function to position the car at the newly added stop. The turbo lift can be moved more than once while aligning it; only the final position matters. It is essential to use the ''Align Turbo Lift Stop'' command. Mouse drag moving and cut/copy/paste will change the positions of all stops at once. | |||
* Select the turbo lift and the adjoining room or hull and use the ''Jig Cut'' function to cut the door. | |||
* Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new ''Turbo Lift Door''. | |||
* When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door. | |||
Repeat this step for each turbo lift in the design. | |||
===Paths=== | |||
Add walk paths and ladder paths. '''Required.''' | |||
NPCs do not analyze or even see rooms or obstacles. They blindly trust paths to get them where they want to go. Simple well planned paths enable NPCs to quickly and efficiently move to any room. | |||
To get from one room to another, an NPC walks straight to the closest path node in their room. Then they follow the path to the closest node to the destination location in the final room. Then they walk directly to the destination location. Any obstruction along the way will physically stop them and their ability to recover from this is poor. Any break in the path along the way is uncrossable. | |||
NPCs know how to use doors, ladders and turbo lifts. NPCs do not know how to use multiple transporters; they won't beam from one transporter to another to move about, without orders. | |||
Walk paths should not be placed directly on the floor. A meter or less above the floor works well. | |||
Paths should be kept as simple as possible. | |||
Walk paths and ladder paths must form one continuous branching structure throughout the design, wherever NPCs are expected to find their way. It is ok to loop and branch as much as needed. | |||
Ladder paths are placed where the body is to travel, not inside the ladder rungs. When moving along a ladder path, the body is centered on the path and all obstructions are ignored. | |||
Each operable interior door needs a walk path that passes through the doorway and ends a short distance inside the room void on each side. Walk paths through hull doors have one end inside a room void and the other end outside the hull. | |||
Operable floor and ceiling hatches are created using doors. However they should incorporate a ladder path instead of a walk path, even if no ladder is depicted. | |||
===Doors=== | |||
Make doors functional. '''Required.''' | |||
By now every doorway should have a door, a room void, and a path. The door jig created a ''Door'' part. If a jig was not used, draw a door using a mesh. Then use the ''Make Door'' command to convert the mesh into a ''Door'' that can open and close. | |||
Change the current state of the door to ''Open''. Select the door, room void and path together. Use the ''Associate Parts'' command to make them accessible only when the door is open. | |||
When making a hull door, the associated door parts must include a hull void. This distinguishes a hull door from an interior door. The hull void is usually needed to get through the collision margin around the hull. The hull void and room void associated with the hull door should overlap slightly near the middle of the doorway. | |||
To make a window in a door, simply make the appropriate faces transparent. This will serve as a window but it will not share lighting behavior with ''Window'' parts. | |||
When making a ramp, create the faces in the open state of the door. Then place a room void on the ramp to access the area on top of the ramp. Associate the room void with the open state of the door. Leave the group name of the room void blank so air pressure will match that of the outside. | |||
Door switches start out in the center of the door. Every door has two door switches that can be positioned using ''Properties, Door Switch Positions''. This is useful for large doors. | |||
When a switch is moved, a visual indicator of the new switch position should be created using a mesh, e.g. a small glowing box or ball. | |||
Paths in the room should have a node close enough to the switch to enable an NPC to operate the switch while standing at the node. Ideally this would be one of the nodes of the path segment associated with the open door. | |||
The icon for the door part shows what kind of door it is. Some changes require a door to be reanalyzed to determine what kind of door it has become. To reanalyze a door and set other properties, use the ''Properties, Door'' function. | |||
===Textures=== | |||
Texture the faces. '''Required.''' | |||
Textures should be applied after all changes to the faces are completed. This saves retexturing later after edits are made. | |||
Textures are applied in face mode. Select faces in face mode and apply textures to them using various methods on the Texture Wrapper. | |||
The position of the grid affects every texturing command. A technique to insure all floor and ceiling tiles align throughout all rooms is to reset the grid before applying those textures. | |||
In addition to the base texture, faces have an effects texture layer that responds to the activity of certain subsystems. e.g. The appearance of active lit transporter pads is achieved in this way. | |||
===Decals=== | |||
Add decals. | |||
Decals are textured faces that apply special rendering behavior to improve their appearance when placed on an underlying face. | |||
Decals are blended with underlying faces. This enables them to smoothly merge with underlying faces when the decal texture has transparent areas. Normally the transparent areas of textures are discarded which creates a crunchy edge on transparent areas. | |||
Decals are rendered with a slight offset from the face. That enables them to be drawn coplanar with the underlying faces without unsightly face collisions. | |||
A few generated decals are available, to display empire flag, empire name, and a few others. The color of word decals can be controlled by painting the faces. The decal that shows the name of a berth occupant must be associated with a berth. | |||
===Group Names=== | |||
Assign group names. '''Required.''' | |||
Room voids are grouped to assign a name to the room. These room names appear in various user interfaces throughout the game. | |||
Room voids in the same group will have the same air pressure and lighting. Lighting is controlled by the player using Bright/Dim/Dark controls and it may come in through the windows. Room lighting can be preset using ''Properties, Room Lighting''. That is also where you specify if the room is normally exposed to sunlight. | |||
Meshes, rooms, control stations, windows, and items should be grouped with the room void they occupy so they will be lit appropriately. Doors can only be in one group; both sides of the door will be lit according to the chosen group. | |||
Translucent windows can be grouped together to cause them to be lit synchronously. This gives them the appearance of belonging to the same room, even if no room exists. | |||
Parts with no group name or the reserved name ''Hull'' will have atmosphere and lighting determined by the external environment. | |||
===Review=== | |||
Review properties and design analysis. '''Required.''' | |||
Use the properties window to configure all settings and to adjust how much of the hull volume is allocated to each subsystem. | |||
===Finalize=== | |||
Finalize the blueprint. '''Required.''' | |||
Finalize a blueprint to analyze it for errors and inconsistencies. Errors must be fixed before the blueprint can be used in the game. Warnings should be reviewed; changes may be needed but warnings do not prevent use of a blueprint. | |||
Finalize grabs a screen image to accompany the blueprint in the library. You can provide this image yourself. Use Preview mode to get a screen grab of your design the way it will look in the game. | |||
The finalize process is slow. It may produce a large number of errors and warnings that need to be fixed or analyzed. ''Previous Finalize Result'' shows the result of the last finalize attempt. | |||
===Preview=== | |||
Preview the design. '''Required.''' | |||
Land on a world. Try to get out and see if you can get back aboard. | |||
Create crew to see that they can get to their stations. | |||
=Building Design= | |||
For building designer specific information, see the [[Building Design]] page. | For building designer specific information, see the [[Building Design]] page. | ||
==Design Checklist== | |||
The designer offers a checklist as a guide to completing a design. It provides general how-to instructions on how to design a building. | |||
Following is the text of the building design checklist. | |||
===Properties=== | |||
Configure the structure. '''Required.''' | |||
The ''structure'' tells the designer what you are trying to make. Configure this right away. | |||
'''The structure controls what parts can be used in the design.''' The structure also affects the design analysis. | |||
===Site=== | |||
Create a site. '''Required.''' | |||
''Building'', ''street light'', ''bridge'', ''biodome'', and ''ground platform'' structures require a site on which to be built. The site provides information about how to grade the terrain and what to do with the rocks and plants there. | |||
A site is created using one or more site meshes. Each portion of a building that touches the ground should rest on a site for proper ground prep. Bridges usually have two sites, one at each end of the bridge. | |||
The origin (0,0) location after the grid is reset is the insertion point when placing the building on terrain in the game. Use the ''Position Grid'' function and press '''S''' to reset the grid. The front of the building faces in the +Y direction. | |||
The altitude of the insertion point determines the altitude of the entire site. This makes building sites easy to place at a comfortable altitude next to roads. Terrain modification caused by site meshes proceeds from that placement altitude. | |||
Coastal sites are drawn with the insertion point at the back of the building. These buildings are placed on the shore facing the water. The back offers a better location to determine the altitude than the water side. | |||
Terrain uses large triangles. A site mesh cannot cut a detailed excavation into the terrain, such as a swimming pool. Instead a site mesh could push the terrain down out of the way. Then a model of a pool with a broad span of concrete around it could make that rough pit look nice. | |||
===Hull=== | |||
Construct the hull. '''Required.''' | |||
''Hull'' parts are the most visible part of a building when it is seen from the outside. This is the building people see; make the hull look nice. | |||
Hull parts determine the volume of the building. Internal subsystems are allocated from this volume. Parts inside the hull do not reduce hull volume. | |||
Hull parts may overlap each other. Hull parts may form multiple separate buildings on a site. No part of a building is required to touch the ground. | |||
Do not ''join'' hull parts together when done. Collision logic prefers simple hull parts instead of complicated hull parts. | |||
A concave depression into a hull part is always obstructed. Use hull voids to gain access to obstructed areas if needed. | |||
Hull parts are not required to form airtight shells; they can have holes. | |||
If you can see completely through a hull part, through an area that should be solid, its calculated volume may be incorrect. ''Door'', ''window'', ''room'' and ''room void'' parts inside the hull part will block such openings during volume calculations. It may be necessary to add faces, rooms, or room voids to a hull part with holes through it. | |||
A hull can be created by importing a 3DS or STL file. | |||
===Turrets=== | |||
Construct gun turret. | |||
The only building that allows a gun turret is a ''military guard tower''. | |||
A turret consists of a base that spins and an optional gun that tilts. The turret is operated automatically by the building. | |||
Turrets need an unobstructed field of fire. Turrets can hit their own hull and its occupants; NPCs avoid doing so. | |||
Draw the base of a turret on the hull using a mesh part. Select the base and use the ''Make Turret'' function. The function prompts for the base pivot point and pivot axis. | |||
At this point the turret can be used. Gunfire will emit from the center of the turret base. | |||
To add a gun to a turret, right-click the Turret in the parts list and select ''Add State'' to add a Gun. Change the turret to the Gun state and draw a gun in face mode. Use the ''Properties, Turret Gun Position'' function to configure where the gun tilts, where it shoots, and where the gunner sees out when operating the turret. | |||
In the designer, a turret shows the faces of both the base and gun only when it is in the Gunner Screen state. Otherwise a turret only shows the faces appropriate to its current state. | |||
===Lights=== | |||
Construct exterior lights. | |||
Exterior lights add visibility and draw attention. Interior lights are not represented by any part. | |||
The appearance of exterior lights can be created using mesh or hull parts. | |||
''Light Lens'' parts can only be used on a street light. They glow when it is dark outside; the glow is bright if the city has power. Use ''Make Light Lens'' to convert each selected part into a light lens. Each lit light lens adds a glow sprite at the center of the part. | |||
''Nav Light Lens'' parts glow when it is dark; building power is not needed. Use ''Make Navigation Light Lens'' to convert each selected part into a nav light lens. Each lit nav light lens adds a glow sprite at the center of the part. | |||
''Rotating Beacon Lens'' parts glow all the time light or dark; building power is not needed. Position the grid to establish the beacon rotation axis, which will align with the Z axis when the beacon is made. Use ''Make Rotating Beacon Lens'' to convert each selected part into a rotating beacon. Each lit rotating beacon adds a rotating glow sprite at the center of the part. | |||
''Strobe Lens'' parts blink all the time light or dark; building power is not needed. Use ''Make Strobe Lens'' to convert each selected part into a strobe. Each lit strobe adds a glow sprite at the center of the part. | |||
===Rooms=== | |||
Construct rooms inside the hull. | |||
''Room'' parts do not contribute to collision logic. They exist only for appearance. Rooms of buildings are not often seen because players rarely enter buildings. | |||
Some building control stations are accessible to players. Those control stations must be placed in a room. | |||
Separate rooms should be spaced apart slightly, to allow for wall thickness between them. | |||
If the design will incorporate turbo lifts, draw one room for each turbo lift at only one of its stops. That room will become a turbo lift car in another step, after more parts have been added. | |||
===Meshes=== | |||
Construct details. | |||
Use meshes to create '''control stations''', furnishings, equipment, and other interesting details. | |||
Meshes do not create an obstacle to movement. They exist only for appearance. Make them look nice. | |||
===Doorways=== | |||
Cut doorways. | |||
A ''door jig'' cuts a doorway from one room to another room, or from a room to a hull. The door jig cuts the faces, adds a lining of faces to the hole, and creates a ''Door'' part in the hole. | |||
Place a door jig into each room that will become a turbo lift. '''Do not cut doors into turbo lifts at this time.''' | |||
Jigs do not work when placed flat against a face. Raise jigs slightly above the floor before cutting doors. | |||
Jigs aren't perfect; they sometimes create too many or not enough faces when lining the hole. You may have to delete excess faces or draw missing faces there. | |||
===Windows=== | |||
Cut or construct windows. | |||
A ''window jig'' cuts a window opening from one room to another room, or from a room to a hull. A window jig can also cut a window into a hull where no room exists on the inside. The window jig cuts the faces, adds a lining of faces to the hole, and creates a ''Window'' part in the hole. | |||
Translucent windows give the appearance of occupancy in areas where there may be no rooms at all. They do this by lighting and darkening at night while the building has power, which gives the impression that someone is in there. | |||
In some cases an entire hull part or some faces on a hull part would make a nice window. Use ''Split Faces'' in face mode to make a separate part from selected faces. The ''Make Window'' function converts the part into a window. | |||
Windows for flat walled buildings can also be created as a surface detail. A window frame with a translucent window part raised slightly away from the wall surface works well. Then the window can be copy/pasted all over the building without cutting any faces. | |||
===Control Stations=== | |||
Add control stations. | |||
Very few buildings need control stations. Control stations are used by players and NPCs to operate subsystems of the building. In some cases the creation of the control station causes the appropriate subsystem to exist in the design. | |||
The simplest control stations to draw are the swivel consoles with chairs. They are simple because a built in model of a control station is used. You only have to specify the location and spin of the control station. | |||
Meshes are used to create the appearance of integrated control stations. The functions that create integrated control stations will prompt for the operator's location and body position. | |||
Some stations request additional information such as the screen position. The screen position can be changed by moving the face in face mode. Additional information can be changed using properties functions. | |||
Turrets require an integrated control station to define the module present. Select a turret to add an integrated turret control station. The station cannot be manned; it should be embedded in the building. | |||
Weapon stations request the weapon emit location. These weapons are omnidirectional and they do not hit their own hull or its contents. Weapon stations are never manned so they can be embedded in the building. | |||
Troop posts provide a location for troops to be stationed. | |||
===Panels=== | |||
Add panels. | |||
''Room Life Support Panel'' must be associated with the room void it monitors. | |||
''World Map Panel'' aspect ratio is 2:1 for spherical worlds. Aspect ratio is 10:1 for ringworld arc sections. | |||
===Vehicles=== | |||
Add vehicle parking spots. | |||
''Specific vehicle parking spots'' show a solid vehicle model in the spot with a small icon beneath them. | |||
''General vehicle parking spots'' show a bounding box that fits any vehicle that can park there. e.g. ''Ground vehicle parking spot'' shows a box large enough for any ground vehicle in the game. | |||
Buildings fill their vehicle parking spots by teleporting new vehicles from factories to which they are connected. Vehicle factories fill their vehicle parking spots by manufacturing vehicles. | |||
With a ''vehicle transporter'' in the design, vehicle parking spots act as vehicle transporter pads. A vehicle does not have to be able to move from its parking spot. The driver simply calls for transport on the comm. | |||
''Space vehicle launcher'' creates a launch pad and a launch path. While launching, a space vehicle travels along the path. It is not obstructed by the hull or anything else while launching. Voids are not required at the launcher or along the path. The exit end of the path must be clear of the hull. | |||
When a pilot requests launch, their space vehicle is teleported to an available launch pad. Doors associated with the launcher are opened and the vehicle is launched along the path. The departure speed of the vehicle is determined by the length of the path. Launcher doors close automatically after the vehicle is launched. | |||
''Space vehicle recovery subsystem'' creates a virtual runway for arriving space vehicles. It should be placed outside the hull. Allow for botched landings; sometimes a pilot has to go around. A space vehicle that stops along the centerline of the runway is teleported to an empty parking spot. | |||
===Details=== | |||
Add berths and other details. | |||
''Light bulb'' is the source of light emitted by the street light building when it gets dark. The light can be omnidirectional or focused into a cone. The light bulb part is not visible in the final building. Emitted light is not shadowed by faces of the building. | |||
''Items'' can be placed in the design. Items are populated from the city's inventory when the building is constructed. Players can take these items. Items are replenished from the city's inventory. | |||
===Voids=== | |||
Carve out void spaces and add barriers. | |||
The hull is treated as a solid mass through and through. Room meshes have no effect on this. | |||
Voids carve out the areas in which people, vehicles and spacecraft can go. Barriers create obstacles inside those carved out areas. Voids and barriers are not visible in the final model. | |||
When two voids are placed next to each other, overlap them slightly. This assures a positive handoff as something moves from one void to another, without bouncing off an infinitesimally thin wall in between. | |||
Each void and barrier must form a single airtight bubble. There can be no holes or missing faces. Overlapping or excess faces will cause trouble. Concave areas are ok. | |||
Do not ''join'' voids together. It is better to have a few simple intersecting voids than one single complicated void. | |||
''Room Voids'' are placed inside rooms, turbo lifts and on ramps. Each operable door must have a room void in the doorway to connect the room voids accessed by the door. | |||
Voids must be as simple as possible with very few faces. Rooms can be very complex, bumpy, curvy and full of holes. Do not conform to every bump and bulge in the walls. Build simple voids just inside the bumps and most people will never notice. | |||
''Hull Voids'' allow access to areas of the hull that should '''not''' obstruct movement. | |||
''Barriers'' create obstacles to movement inside room voids. Barriers can be used to create stairs and ramps or to surround things the player should not walk through. Barriers should use extremely few faces. | |||
When blocking a large portion of a room void, consider making the room void smaller instead. | |||
Stairs can be created using a mesh that looks like stairs and a ramp-shaped barrier, instead of shaping the barrier to fit every step. Less faces are needed to make the barrier and movement on the stairs is smoother; it is also easier for small or legless creatures. | |||
===Turbo Lifts=== | |||
Make turbo lifts functional. | |||
This step is required if you are building any turbo lifts in the design. Two concepts are introduced: doors and paths. They are discussed in detail in the following '''Doors''' and '''Paths''' steps. | |||
Select the turbo lift room, room void, and door jig for one turbo lift. Use the ''Make Turbo Lift'' function to fuse them together into a ''Turbo Lift'' part. | |||
Right-click on the turbo lift in the parts list and select ''Add Stop''. Provide a name for the current stop of the turbo lift. Select the turbo lift and the adjoining room or hull and use the ''Jig Cut'' function to cut the door. The turbo lift must be outside a room to cut into it. The turbo lift must be inside a hull to cut out of it. | |||
Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new ''Turbo Lift Door''. | |||
When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door. | |||
For each additional stop, do the following. | |||
* Add a stop name for the next stop position. The current stop of the car does not matter. | |||
* Use the ''Align Turbo Lift Stop'' function to position the car at the newly added stop. The turbo lift can be moved more than once while aligning it; only the final position matters. It is essential to use the ''Align Turbo Lift Stop'' command. Mouse drag moving and cut/copy/paste will change the positions of all stops at once. | |||
* Select the turbo lift and the adjoining room or hull and use the ''Jig Cut'' function to cut the door. | |||
* Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new ''Turbo Lift Door''. | |||
* When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door. | |||
Repeat this step for each turbo lift in the design. | |||
===Paths=== | |||
Add walk paths and ladder paths. | |||
This step is required if you have built any interior rooms. | |||
NPCs do not analyze or even see rooms or obstacles. They blindly trust paths to get them where they want to go. Simple well planned paths enable NPCs to quickly and efficiently move to any room. | |||
To get from one room to another, an NPC walks straight to the closest path node in their room. Then they follow the path to the closest node to the destination location in the final room. Then they walk directly to the destination location. Any obstruction along the way will physically stop them and their ability to recover from this is poor. Any break in the path along the way is uncrossable. | |||
NPCs know how to use doors, ladders and turbo lifts. NPCs do not know how to use multiple transporters; they won't beam from one transporter to another to move about, without orders. | |||
Walk paths should not be placed directly on the floor. A meter or less above the floor works well. | |||
Paths should be kept as simple as possible. | |||
Walk paths and ladder paths must form one continuous branching structure throughout the design, wherever NPCs are expected to find their way. It is ok to loop and branch as much as needed. | |||
Ladder paths are placed where the body is to travel, not inside the ladder rungs. When moving along a ladder path, the body is centered on the path and all obstructions are ignored. | |||
Each operable interior door needs a walk path that passes through the doorway and ends a short distance inside the room void on each side. Walk paths through hull doors have one end inside a room void and the other end outside the hull. | |||
Operable floor and ceiling hatches are created using doors. However they should incorporate a ladder path instead of a walk path, even if no ladder is depicted. | |||
===Doors=== | |||
Make doors functional. | |||
This step is required if you have built any doors. | |||
By now every doorway should have a door, a room void, and a path. The door jig created a ''Door'' part. If a jig was not used, draw a door using a mesh. Then use the ''Make Door'' command to convert the mesh into a ''Door'' that can open and close. | |||
Change the current state of the door to ''Open''. Select the door, room void and path together. Use the ''Associate Parts'' command to make them accessible only when the door is open. | |||
When making a hull door, the associated door parts must include a hull void. This distinguishes a hull door from an interior door. The hull void is usually needed to get through the collision margin around the hull. The hull void and room void associated with the hull door should overlap slightly near the middle of the doorway. | |||
To make a window in a door, simply make the appropriate faces transparent. This will serve as a window but it will not share lighting behavior with ''Window'' parts. | |||
When making a ramp, create the faces in the open state of the door. Then place a room void on the ramp to access the area on top of the ramp. Associate the room void with the open state of the door. Leave the group name of the room void blank so air pressure will match that of the outside. | |||
Door switches start out in the center of the door. Every door has two door switches that can be positioned using ''Properties, Door Switch Positions''. This is useful for large doors. | |||
When a switch is moved, a visual indicator of the new switch position should be created using a mesh, e.g. a small glowing box or ball. | |||
Paths in the room should have a node close enough to the switch to enable an NPC to operate the switch while standing at the node. Ideally this would be one of the nodes of the path segment associated with the open door. | |||
The icon for the door part shows what kind of door it is. Some changes require a door to be reanalyzed to determine what kind of door it has become. To reanalyze a door and set other properties, use the ''Properties, Door'' function. | |||
===Textures=== | |||
Texture the faces. '''Required.''' | |||
Textures should be applied after all changes to the faces are completed. This saves retexturing later after edits are made. | |||
Textures are applied in face mode. Select faces in face mode and apply textures to them using various methods on the Texture Wrapper. | |||
The position of the grid affects every texturing command. A technique to insure all floor and ceiling tiles align throughout all rooms is to reset the grid before applying those textures. | |||
In addition to the base texture, faces have an effects texture layer that responds to the activity of certain subsystems. e.g. The appearance of active lit transporter pads is achieved in this way. | |||
===Decals=== | |||
Add decals. | |||
Decals are textured faces that apply special rendering behavior to improve their appearance when placed on an underlying face. | |||
Decals are blended with underlying faces. This enables them to smoothly merge with underlying faces when the decal texture has transparent areas. Normally the transparent areas of textures are discarded which creates a crunchy edge on transparent areas. | |||
Decals are rendered with a slight offset from the face. That enables them to be drawn coplanar with the underlying faces without unsightly face collisions. | |||
Two generated decals are available, to display empire flag and empire name. The color of the empire name decal can be controlled by painting the faces. | |||
===Group Names=== | |||
Assign group names. | |||
This step is required if you have built any interior rooms. | |||
Room voids are grouped to assign a name to the room. These room names appear in various user interfaces throughout the game. | |||
Room voids in the same group will have the same air pressure and lighting. Lighting is controlled by the player using Bright/Dim/Dark controls and it may come in through the windows. Room lighting can be preset using ''Properties, Room Lighting''. That is also where you specify if the room is normally exposed to sunlight. | |||
Meshes, rooms, control stations, windows, and items should be grouped with the room void they occupy so they will be lit appropriately. Doors can only be in one group; both sides of the door will be lit according to the chosen group. | |||
Translucent windows can be grouped together to cause them to be lit synchronously. This gives them the appearance of belonging to the same room, even if no room exists. | |||
Parts with no group name or the reserved name ''Hull'' will have atmosphere and lighting determined by the external environment. | |||
===Review=== | |||
Review properties and design analysis. '''Required.''' | |||
Use the properties window to configure all settings and to adjust how much of the hull volume is allocated to each subsystem. | |||
===Finalize=== | |||
Finalize the blueprint. '''Required.''' | |||
Finalize a blueprint to analyze it for errors and inconsistencies. Errors must be fixed before the blueprint can be used in the game. Warnings should be reviewed; changes may be needed but warnings do not prevent use of a blueprint. | |||
Finalize grabs a screen image to accompany the blueprint in the library. You can provide this image yourself. Use Preview mode to get a screen grab of your design the way it will look in the game. | |||
The finalize process is slow. It may produce a large number of errors and warnings that need to be fixed or analyzed. ''Previous Finalize Result'' shows the result of the last finalize attempt. | |||
===Preview=== | |||
Preview the design. '''Required.''' | |||
Place the building on terrain. See if the terrain is modified by the site meshes the way you expect. | |||
[[Category:Designer]] | |||
[[Category:Spacecraft]] | [[Category:Spacecraft]] | ||
[[Category:Buildings]] |
Latest revision as of 13:29, 12 March 2024
The Designer is a modeling tool used to design spacecraft and building blueprints.
The Designer Menu page describes each individual menu item.
The Design Parts page describes each individual kind of part.
For a history of the designers, see Spacecraft Update.
Architect
The person who creates a design is the architect of the design. The person who creates each part is the architect of that part. Parts retain their architect information with them.
When multiple architects work on the same design, the architect who initiates the designer instance is the architect of the design.
The analysis report for a design lists all architects whose parts are included in a design.
Blueprints
A blueprint is a design that has been analyzed and accepted for use in the game. Blueprints contain all of the information needed to make a functional building or spacecraft, such as its 3D model and design specifications. Blueprints are stored in a universal library where they are accessed by spacecraft and buildings during game play. Blueprints are identified by a unique number, assigned when stored in the library.
Blueprints can be saved onto media items in an avatar's gear. Blank paper and blank disks can each hold only one blueprint. Storage devices can hold varying numbers of blueprints, depending on the device.
Spacecraft, buildings, and storage devices reference their blueprints in the library throughout their lifetimes. Blueprints that are in use by game objects cannot be deleted. When a player deletes a blueprint, it may instead be deactivated in the library, until it is no longer referenced and it can be finally removed.
In the designer and in this wiki, the word blueprint is used generally to refer to any design, whether or not it has been finalized.
In-Game Blueprint Exchange
The blueprint exchange provides a place for players to share blueprints with other players in the online game. Separate exchanges for spacecraft blueprints and building blueprints are accessed in the game.
At the exchanges, blueprints can be published by architects and they can be purchased by players. Prices are in cronodollars ¢, the money of the game. Cronos are not related to real money. Spacecraft and building blueprints do not cost real money.
Publishing is a way to share blueprints with other players. Publishing terms control the price and who is permitted to use the blueprint.
A blueprint does not have to be published to be used in the game. A blueprint can be saved onto a storage device in your gear, then used to make buildings or spacecraft. Interfaces that request a blueprint know how to find them in your gear.
Web Blueprint Exchange
The web site offers access to a public blueprint exchange. This exchange is not connected with the in-game exchange in any way.
The web blueprint exchange offers a place for players to publicly share their .SoH files. There are no publishing terms or restrictions. Blueprints posted to the web exchange are freely available for download by anyone on the Internet.
Prepare .SoH for Publishing
Two things should be done to prepare a .SoH file for publishing to the web blueprint exchange.
Obstructions should be refreshed. Obstruction data provides volume information necessary to create the design analysis report. The report is presented on a web page in the exchange.
A nice scene should be present in the view window. A screen grab of the scene is stored with the file. The screen grab is shown on the report. The screen grab is also shown on the button that accesses the report page.
Designer Access
The designer can be accessed both online and when playing offline solo.
Online Designer
Online, a designer is accessed by going to a design studio building or by occupying a designer station while aboard a spacecraft.
To enter a designer at a design studio, display the Building (F10
) window and click on the "Enter" button of a studio. When a studio is "Vacant", you may leave the password box blank or you may enter a password of your choice. The password you enter establishes that studio's password until the studio becomes vacant. To join an "Occupied" design studio, you must enter the password that was established by the first person to enter the studio.
To enter a designer aboard a spacecraft, move to a designer station and enter the station by pressing the E
key. Designers aboard a spacecraft are not password protected. Each designer station creates its own designer instance. People who enter the same designer station are placed in the same designer instance. The avatar enters the designer instance and their body does not remain at the station in the ship, like it does with other stations.
Players may work together in the same studio to develop a design. In this case, the first player to enter the vacant studio is registered as the architect and owner of the design.
Offline Designer
When the game is launched, the designer can be entered solo, instead of logging in to the game. Overall program performance is better when designing solo because no server is involved. Once a design is completed solo, it can be saved to a .SoH file. That file can be loaded into the on line designer, for storage in the universal library.
Design Process
General steps to making a design go something like this.
- Adjust design properties to establish goals.
- Create an exterior hull.
- Create one or more rooms inside the hull.
- Cut out doors and windows.
- Create finer model details.
- Apply textures and other effects to finish the surfaces.
- Add details: control stations, berths, lights, display screens, etc.
- Add room voids, paths and barriers.
- Make doors operational.
- Finalize the design.
Designing typically involves creating many parts. Parts include things like hulls, rooms, jigs, lights, display screens, etc.
Check design properties from time to time. It shows an assessment of the design, based on what you are trying to design.
Design Goal
Your goal as an architect is to make beautiful looking designs that are functional in the universe of Hazeron. Emphasis is placed on appearance over technical realism.
Hull sections do not have to be sculpted to form airtight continuous shells where they join each other. This is inefficient and difficult to model. It is much better to butt an engine pylon into the side of the hull, rather than carving a hole so it can make a perfect junction. Carving that hole breaks the side face into many tiny faces. It is likely unnecessary, unless people are going to walk or see through the opening.
A design does not require the interior to conform to the exterior. Your design may represent a large intricate spacecraft that appears to have many rooms. It is inefficient and unnecessary to create all of the interior rooms and detail that would exist in real life. Like a movie set, only a few key areas inside the hull need to be modeled. This enables the designer to efficiently achieve the look and feel desired, without laborious excess work.
Interior details have no effect on the mass calculation of the design. Rich interior designs are encouraged. There is no performance advantage to making stark minimal interiors.
Be efficient with your designs. There is no point in modeling details that can never be seen. A good example is a cargo hold full of cargo. An inefficient approach would be to build a huge room and fill it with shipping containers. Instead of being too literal, think of it like a movie set. It would be much more efficient to build only an accessible area representative of a cargo hold, with walls modeled and textured to look like stacks of shipping containers. Use those precious faces where they get the most impact; don't waste them.
Remove faces that can never be seen. Many parts that contribute to the construction materials requirement of a design are affected by the total surface area of their faces. The amount of materials directly affects the construction time. Reducing faces will reduce the construction time and materials of a design.
More parts are better than less. Parts help to manage large 3D models. Rendering information is collected and consolidated efficiently when the OpenGL model is constructed. It makes no difference in the final rendering if the information comes from one part or many.
Turbo lifts help to make big designs feel elaborate and detailed on the inside, without extensive modeling effort. They are an effective scene change device in science fiction cinema and they are equally effective in the game, to give the feeling of being aboard a really big ship. They also save a lot of walking.
Part Mode vs Face Mode
Parts are composed of faces. Faces have vertices and edges. To edit the faces of one or more selected parts, face mode is enabled. In a typical design session, face mode is enabled and disabled often, whenever the need arises to modify the faces that make up a part.
Actions on the Parts menu operate on whole parts. Most actions on the Parts menu are disabled when face mode is enabled. Some part menu actions are only enabled when one or more parts are selected.
Actions on the Face menu operate on faces of selected parts. Most actions on the Face menu are enabled when face mode is enabled. Textures are applied in face mode.
Geometry
Parts are represented by geometry that can be painted in an OpenGL scene. Geometry of parts is described by their vertices, edges and faces.
Vertices
Vertices contain 3D Cartesian coordinate locations that describe the position of edges and faces. Vertices also contain information needed when rendering. Texture coordinates are stored at vertices. Glow is emitted at vertices.
Render information is interpolated between vertices. Thus, the glow of a vertex will fade off to a neighboring vertex that does not glow.
Vertices also contain an up direction, for lighting calculations. The face menu commands Flatten Vertices and Smooth Vertices operate on vertex up directions.
Edges
Edges are the visible lines that go from one vertex to another to reveal the boundaries of faces. Edges exist for the benefit of the designer, to see the model. Their presence or absence has no effect on the final rendering result.
Faces
Faces are flat surfaces that compose a 3D model. OpenGL paints faces in front of each other depending upon their Z-depth in the scene. This is the essence of how 3D scenes are painted by a computer.
Faces have a front and a back. Faces are not visible from the back in the final rendering result. They can be seen from the back in the designer, if back face visibility is enabled. The object menu command Reverse Faces flips their facing back and forth.
Facing direction is determined by the direction the boundary is drawn. The boundary is clockwise when viewing the front of a face. The boundary is counterclockwise when viewing the back of a face.
All faces are created equal. A face copied from one part and pasted into another becomes a face of the destination part. It is irrelevant if it came from a hull and gets added to a room. The part is the hull or room; the face is just a face.
Faces do not "know" how they were created. A face created as part of an extrusion is no different from a face that is created individually. The extrusion command merely assembles faces into a desired shape.
Faces should not be bent. They expect to represent a flat plane. A face should be drawn as multiple faces if a curved surface will be represented.
Three foundational shapes exist.
- Triangle - A face defined using a boundary of three vertices.
- Quad - A face defined using a boundary of four vertices.
- Face - A face defined using a boundary with three or more vertices.
Shapes
Shapes use parameter-driven methods to generate faces. Primitive shapes can provide a general starting point for more detailed modeling.
The resulting shape may be modified like any other set of faces. The faces are in no way different than if an architect painstakingly built the same shape using faces. It is typical to generate a quick shape then rip it apart, to use some portion of it, or embellish it to mold it into what you want.
Extrusion
An extrusion is formed by projecting a shape along a straight path. Examples include: rooms, beams.
The creation of an extrusion begins by entering the shape that will be extruded. After the shape is entered, a window presents options to finalize the extrusion. Straight extrusion is made by simply entering the length.
Faces are formed at the sides of the extrusion. Stepping allows the sides to be divided along the length of the extrusion.
When the extrusion is generated, the shape follows a straight line. Both ends of the extrusion are closed.
Steps:
- A point is entered to begin the extrusion shape.
- Subsequent points are entered to describe the extrusion shape.
- A window offers extrusion options.
- Depending on extrusion options, a point may be entered to indicate the height or direction of the extrusion.
Key Commands:
B
backs up to reenter the previous point requested.C
restarts the action at the beginning.D
indicates completion of the shape.
Sphere Lon/Lat
A longitude/latitude sphere is divided into equal divisions of latitude and longitude. The faces are largest at the equator. The faces converge together at the poles.
Creation of a longitude/latitude sphere is described by entering the center point and a point at its radius. After the points are entered, a window presents options to finalize the sphere. Options include number of latitude divisions and number of longitude divisions.
Steps:
- A point is entered at the center of the sphere.
- A point is entered at the radius of the sphere.
- A window offers sphere options.
Key Commands:
C
restarts the action at the beginning.
Sphere Uniform
A uniform sphere is divided uniformly into triangle faces. All triangles are close to the same size.
Creation of a uniform sphere is described by entering the center point and a point at its radius. After the points are entered, a window presents options to finalize the sphere. Options include number of divisions at the equator.
Steps:
- A point is entered at the center of the sphere.
- A point is entered at the radius of the sphere.
- A window offers sphere options.
Key Commands:
C
restarts the action at the beginning.
Spindle
A spindle is created by spinning a shape around an axis. Objects with axial symmetry are created as spindles. Examples include: flying saucer, spool, furniture leg, column, dome, sphere, dinner plate, door knob, dish antenna.
The creation of a spindle begins by entering the shape that will be spun around an axis. After the shape is entered, a window presents options to finalize the spindle. Options include the number of steps around the axis and the choice of axes.
Steps:
- A point is entered to begin the spindle shape.
- Subsequent points are entered to describe the spindle shape.
- A window offers spindle options.
Key Commands:
B
backs up to reenter the previous point requested.C
restarts the action at the beginning.D
indicates completion of the shape.
Tubing
Tubing is very similar to an extrusion except that the path may be complex, instead of simply extruding along a straight line. When the tubing shape is extruded along the path, corners are mitered appropriately.
Tubing is not just for making water pipes. Tubing is used to make any closed shape that is extruded along a complex path. Examples include: piping, ducts, crown molding, baseboard trim, railroad tracks, hand rails, soffits, wall conforming consoles, base and wall cabinets, and counter tops.
Creation of tubing begins by entering the path along which the tubing will travel. After the path is entered, a window presents options to finalize the tubing.
Circular tubing is made by simply entering the diameter and number of sides for the tube.
Other tubing shapes are created by drawing the cross section shape of the tubing.
After drawing the shape of the tubing cross section, a guide point is entered on the shape.
When the tubing is generated, the shape follows the path along the guide. Both ends of the tubing are closed.
Steps:
- A point is entered to begin the tubing path.
- Subsequent points are entered to describe the tubing path.
- A window offers tubing options.
- Depending on tubing options, a point may be entered to begin the tubing shape.
- Subsequent points are entered to describe the tubing shape.
- Guide point for the tubing shape is entered.
Key Commands:
B
backs up to reenter the previous point requested.C
restarts the action at the beginning.D
displays options for completing the tube.
Jigs
Jigs are found underneath the Part menu button. There are many different types of Jigs, such as Door Jigs, Window Jigs, Launch Tube Jigs, Cutting Jigs, and Decal Jigs. They are created like any other hull or room objects, by selecting the Shape type (Extrusion, Sphere, Tubing, Spindle) and drawing the shape wanted. A physical object is then created and added to the Parts list as a Jig of the type selected.
Jigs are used by positioning the created Jig object between two rooms, or between a hull and room, ensuring that the Jig penetrates both walls. Once this is positioned correctly, select all 3 objects at once using the Parts panel, and then select "Jig Cut" under the Design Menu button. The jig then cuts the walls in the shape of the jig, allowing you to create tube hallways as an example. The cut walls are then converted to the object type of the jig, such as the walls being converted into transparent glass if using a Window Jig, or door objects if using a Door Jig.
Jigs can be used in order to create different types of objects, exits or walls between two rooms or the interior and exterior of a design. For example, the Door Jig creates a door between whatever rooms the Jig is placed between. The Window Jig creates a Window between the rooms, while the Launch Tube and Cutting jigs just create holes between the hull and room and cut the faces of each side, respectively.
All jigs create faces between the two walls that they penetrate, in order to give walls thickness and prevent you from seeing any back-faces.
Origin
At the center of the design space is a yellow marker, drawn as three intersecting yellow lines. It does not move when the design grid moves. The immovable yellow marker is the true origin (0,0,0) location of the design space. That is the point at which a spacecraft will pivot, when it maneuvers. The origin is the insertion point when placing a building, that determines the altitude of the building on the terrain.
Obstructions, Voids, and Barriers
The obstruction model describes what areas of the design are solid and what areas of the design are not. It is used to determine where a person is standing on the floor and where they are allowed to stand, where vehicles collide with the design and where they go inside, where missiles and gunfire hit or pass through. The obstruction model describes the solid shape of the design and its accessible inside areas.
The obstruction model cannot be seen. It exists somewhat like an electrical field around the design. The presence of the obstruction model can be felt by moving around the design. The menu toggle Blueprint, Solids Obstruct Movement must be checked to bump against the obstruction model.
The obstruction model is created by analyzing the geometry of the design. A lot of processing effort is required to maintain the model so it is not done automatically with every modification to the design. The obstruction model is updated using the Blueprint, Refresh Obstructions menu option.
The obstruction model is created from hull and landing gear parts, voids, and barriers. Each state of landing gear is represented so its obstruction shape changes when the gear is extended.
The obstruction model envelopes each part individually. To get the best fitting obstruction model, it is beneficial to split elaborate hull parts into multiple simpler hull parts.
The obstruction model includes a margin around hull and landing gear parts. This helps to prevent the eye camera of players from getting close enough to see inside, which breaks the illusion of solidity. It can also prevent someone from moving close enough to operate a door.
Voids are used to carve out the spaces accessible to players, from the solid shape created by the hull. Room parts do not contribute to the obstruction model. It is the voids that really determine where people can go inside.
Barriers are used to create obstructions inside voids. Sometimes it is easier to add a barrier than to change the shape of the room void. Barriers can also be used to create the floor under stairs and ramps.
Part Association
Association is when a part references another part by its id number.
Certain parts can be associated with certain other parts. Association is a loose connection between parts. The meaning of this association depends upon the parts involved.
A part can be associated with only one other part. Any number of parts can be associated with the same part.
Associations are created using the Part, Associate Parts command. Associations are removed using the Part, Dissociate Parts.
Part associations are used by the following parts.
Barriers
Barriers can be associated with a state of a door or landing gear. This determines which barriers are obstructions when the door or landing gear is operated.
It is ok to associate more than one barrier with a state of a door or landing gear.
Berth Name Decals
Berth name decals are associated with a berth. This determines which name to display on the decal. Unassigned is displayed when the berth is not assigned.
It is ok to associate more than one berth name decal to the same berth.
FTL Drive Service Panels
FTL drive service panel is associated with an engineer station. This determines which FTL drive the service panel accesses.
It is ok to associate more than one service panel with the same system.
Hull Voids
Hull voids are associated with the open state of a door, when making operable hull doors. This determines which voids become accessible when the door is opened.
Association of a hull void and a room void to a door causes it to become a hull door. This enables the interior room void and the exterior hull void to become accessible at once, presumably overlapping each other so a person can move from one void to the other.
Hull voids may be associated with any state of a door or landing gear to make access to the void dependent upon them.
It is ok to associate more than one path or void with a single state of a part.
Room Life Support Status Panels
Room life support status panel is associated with a room void. This determines which room's air pressure reading appears on the panel.
It is ok to associate more than one life support status panel with a single room.
Room Voids
Room voids are associated with the open state of a door, when making operable doors. This determines which voids become accessible when the door is opened.
Room voids may be associated with any state of a door or landing gear to make access to the void dependent upon them.
It is ok to associate more than one path or void with a single state of a part.
Walk Paths and Ladder Paths
Walk paths and ladder paths are associated with the open state of a door, when making operable doors. This guides NPCs to find their way through the door when it is open.
Paths may be associated with any state of a door or landing gear to make access to the void dependent upon those states.
It is ok to associate more than one path or void with a single state of a part.
Weapon Service Panels
Weapon service panel is associated with a fire control station. This determines which weapon the service panel accesses.
It is ok to associate more than one service panel with the same system.
Walk Paths
In order for NPCs to successfully move around the interior of a design with multiple rooms.
The walk paths need to be above the floor, hip height is usually good. Each end of a walk path is referred to as a node, NPCs will need to always have a clear line to the nearest walk path node in whatever room they are in, or else they will get stuck. Walk paths need to form a full network where each walk path has to start where another ends, so that an NPC that is standing in one room can go to their nearest walk path node and then path through the network to their destination room.
NPC pathing strategy is fairly primitive. When they want to go somewhere, they look for the closest path end point to them that they can move straight to without obstructions. Similar logic is used to find the path node closest to the destination. There must be a complete end-to-end chain of path segments from beginning to end, from there on.
Common Mistakes
Common mistake 1. NPCs will always start by going to the nearest node in their room when they need to path to another room. If the NPC cannot find a path to its destination from its nearest walk path node it will be unable to go anywhere. A walk path is needed to connect the doors across the room from each other, so the NPC can find the closest node at the nearby door, then follow the path to the room containing the destination, then walk across the room straight to destination's room.
Common mistake 2. NPCs will need a clear line to the nearest node in their room, or they will be unable to leave it. If there are walls or solid furniture inside the room that will prevent a NPC from having a clear line to the nearest walk path node, add a closer walk path node they can use to path to the room's exit.
Finalize
When a design is complete, it undergoes a finalizing process to insure that it is usable for its intended purpose. The result of the finalize process is presented to the architect in a list. The list may contain green notes, amber warnings and red errors.
- Green notes are merely informative, providing information about the finalize process.
- Amber warnings bring attention to things that may indicate a design error or oversight was made. Warnings do not prevent a design from being finalized.
- Red errors highlight aspects of the design that must be changed before it can be finalized.
In the on line designer, a design that finalizes with no errors can be saved into the universal library. Once saved to the library, a unique blueprint number is assigned and reported back to the architect. Then the design can be built in the game and it can be published in the appropriate exchange.
In the solo designer, a design that finalizes with no errors reports that it could be saved to the library if it was finalized on line.
Designer Interface
The designer interface is dominated by a first person 3D view of the design space. It is in this space that the design will appear as it is created. The mouse pointer is used in this view to select things. The mouse is also used to drag the selected things from one place to another, to move or copy them.
Hover the mouse pointer over most buttons and controls to see a tool tip. Tool tips on buttons explain their function and they sometimes reveal features that are not obvious at first. The tool tips on some buttons change, depending on current conditions.
Grid
The grid is a tool for drawing, initially visible in the view as a faint grid of lines at floor level.
The grid is more like a ruler, a measuring tool, than the lines on a piece of graph paper, a static medium. The architect will move and rotate the grid many times during a typical design session, as needed, wherever it helps to draw.
When more than one person is in the designer, each person sees and interacts with their own grid.
Coordinate Systems
An understanding of coordinate systems is helpful to use the grid effectively.
Real numbers extend to infinity, both positive and negative. This can be represented visually as a number line. Whole numbers are placed at regular intervals along the line. Fractional numbers fall proportionally between the whole numbers. i.e. 1.5 is 50% of the way between 1 and 2.
A number can be expressed in units of length, such as meters, in either the positive or negative direction, along the number line. The number is its ordinal value or ordinate.
That defines a one-dimensional vector. The absolute value of the number is its length. The sign of the number indicates the direction, either positive or negative.
A Cartesian coordinate system is created when two number lines are placed perpendicular to each other, so they cross at 0. In a Cartesian coordinate system, each number line is called an axis. They are named X and Y.
A plane is formed by the intersection of the two axes, called the XY plane. At any location in the plane, the X ordinate and the Y ordinate can be determined by dropping the point perpendicular to the respective axes. Knowing that, we can plot any location in the plane if we know the X ordinate and the Y ordinate at the location.
The combination of ordinates is called coordinates. Coordinates are expressed using notation like this (X, Y). In the picture, the coordinates of the starship are (-4, -2). The coordinates of the asteroid are (2.5, 3). Coordinates (0,0) are called the origin, because that is where the numbers originate, or begin, for all axes.
This is a 2 dimensional (2D) coordinate system because it expresses locations as dimensions measured along two axes.
A third axis can be added perpendicular to each of the other two axes. It is named Z.
Using the coordinates of three axes, any location in space can be described. This is a 3 dimensional (3D) coordinate system because it expresses locations as dimensions measured along three axes. 3D coordinates are expressed like this (X, Y, Z).
Right Hand Rule
Which way does the Z axis go? There are two possible orientations.
Hazeron uses the right-hand rule for making that determination. It can be visualized by looking at the right hand held out flat. The thumb points in the direction of the positive X axis. The index finger points in the direction of the positive Y axis. Curl the remaining fingers upward, perpendicular to the palm. The middle finger points in the direction of the positive Z axis.
Mathematically, that means the Z axis is equal to the cross product of the X axis against the Y axis.
Z = X cross Y
Rotations around axes are also determined using the right hand rule. The positive direction of angular rotation around each axis can be determined by grasping the axis with the right hand, with the thumb pointing in the positive direction. The fingers curl around the axis in the positive angle direction.
Absolute Coordinate System
The absolute coordinate system underlies all geometry in the designer.
The absolute coordinate system is indicated by an immovable yellow marker. It is visible in the view as three short intersecting XYZ axis lines.
That is where the grid starts in a new drawing. To put the grid back to that position, use the Position Grid command, then choose the S=Reset option.
Mathematically, the grid shows the position of a 4x4 transformation matrix. The absolute coordinate system is defined as the identity matrix.
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
- Origin is at (0,0,0).
- X axis vector is (1,0,0).
- Y axis vector is (0,1,0).
- Z axis vector is (0,0,1).
Visible Grid
The visible grid represents a 3D coordinate system. Axis lines are bright in the positive direction and dim in the negative direction. The position of X is shown as a red line. The position of Y is shown as a green line. The position of Z is shown as a blue line.
X and Y lines are marked at the ends with the axis name and direction.
The XY plane contains lines parallel to the X and Y axes, forming a visible grid. Regular interval spacing between the grid lines is controlled by a combo box control on the reference tool bar.
Grid colors are controlled on the Designer page of the Settings window.
Grid visibility can be turned off.
Grid rounding can be turned on or off, independently of the grid visibility state.
Grid as a Tool
All drawing takes place in the 3D coordinate system of the grid. Position the grid to draw anywhere in the drawing, using coordinates relative to the subject matter. This is typically done frequently while creating a design, using commands accessed on the reference tool bar and the helpers menu.
Coordinates entered into the input tool bar are relative to the grid.
Freehand drawing happens in the plane of the grid. In the view, the location of the mouse pointer is projected straight into the screen until it intersects the XY plane of the grid, regardless of the visibility state of the grid. If Snap to Grid is enabled, that location will be rounded to the nearest grid line intersection. Various snapping switches can be enabled. Grid rounding behavior is overridden when the mouse pointer snaps to existing geometry.
Most drawing commands terminate/replace the current drawing command; grid positioning commands suspend the current drawing command instead. Whenever a drawing command is requesting point input, a grid positioning command can be invoked. Upon termination of the grid positioning command, the suspended drawing command will resume its request for point input.
When selected geometry is copied to the clipboard, the geometry on the clipboard is in the coordinate space of the grid, at the time of the copy.
When geometry is pasted from the clipboard, it is placed in the coordinate space of the grid, at its location at the time of the paste.
For example, move the grid to the center of a selected part. Copy that part to the clipboard. Move the grid. Paste the clipboard; it will be added at the new location of the grid. Use Paste At to place more than one of them.
Menu Bar
At the top of the designer interface is a menu bar. Most functions of the program can be accessed using the menu bar.
See designer menu for a list of the items on the menu bar.
Input Tool Bar
The Input Tool Bar appears below the menu bar, at the left. It can be moved by dragging the dotted grip at the left end. Tool tips on the buttons explain their function.
Design Properties
Equivalent to the Blueprint, Properties menu item.
Refresh Obstructions
Equivalent to the Blueprint, Refresh Obstructions menu item.
Solids Obstruct Movement
Equivalent to the Blueprint, Solids Obstruct Movment menu item.
Gravity
Equivalent to the Blueprint, Gravity On/Off menu item.
Preview
Equivalent to the Blueprint, Preview On/Off menu item.
Preview Sun Position
Equivalent to the Blueprint, Preview Settings menu item.
Construct Building
Equivalent to the Blueprint, Preview Place Building menu item.
Preview People
Equivalent to the Blueprint, Preview People menu item.
Coordinate Input
Many design commands will ask the architect to enter a 3D point location. A location can then be entered by clicking with the mouse pointer in the view window. Alternatively, locations can be entered into the coordinate input box, at the end of the Input Tool Bar.
3D coordinates are entered as X,Y,Z values, which are positive or negative offsets along the X, Y and Z axes. Coordinates are not bracketed with parentheses. Omitted values are 0. e.g. 1,,2 is the same as 1,0,2; p2 is the same as p2,0,0; a,3 is the same as a0,3,0.
Polar coordinates are entered as pD,A,I values: D is distance from the origin; A is angle around the Z axis, positive counterclockwise and negative clockwise; I is the angle of inclination off the XY plane, positive above and negative below.
Coordinates are relative to the location and orientation of the grid unless specified otherwise.
Coordinates prefixed with a are absolute. Absolute coordinates are relative to the absolute coordinate system of the design, ignoring the grid. e.g. a1.25,2.3,-4.5 or ap2.5,-30,10.
Distances are interpreted in units depending upon the unit of measure setting. Whole numbers are interpreted as whole units of measure. For example, if the unit of measure is meters, which is the default, then 10 means 10 meters. Unit of measure is configured on the Designer page of the Settings window. Unit of measure can be changed at any time while drawing.
Rotating
Some design commands will ask the architect to enter a rotation value. e.g. rotate selected objects.
Angles are entered in degrees.
When responding to a request for rotation, input into the Coordinate Input box is interpreted as 3D rotation angles around the X, Y and Z axes. e.g. To rotate 45 degrees around the Z axis, enter 0,0,45, or simply ,,45.
Positive and negative direction of rotation is determined by the right hand rule.
Scaling
Some design commands will ask the architect to enter a scale value. e.g. stretch selected objects.
When responding to a request for scaling, input into the Coordinate Input box is interpreted as 3D stretch factors along the X, Y and Z axes. e.g. To double the overall size, enter 2,2,2; to reduce the X dimension by half, enter .5,1,1.
Move/Copy
When no design command is active, the coordinate input box can be used to move or copy the objects that are selected.
- Move parts by entering a coordinate. The objects that are selected will be moved using the vector entered.
- Copy parts by entering a coordinate while holding the
Ctrl
key. The objects that are selected will be copied and moved using the vector entered.
Reference Tool Bar
The Reference Tool Bar appears below the menu bar, to the right of the input tool bar. It can be moved by dragging the dotted grip at the left end.
Face Mode
Equivalent to the Face, Face Mode menu item.
Isolate Parts
Equivalent to the Face, Isolate Parts menu item.
Find Vertices
Equivalent to the Helpers, Find Vertices menu item.
Find Edges
Equivalent to the Helpers, Find Edges menu item.
Find Faces
Equivalent to the Helpers, Find Faces menu item.
Show Edges
Equivalent to the View, Show Edges menu item.
Show Faces
Equivalent to the View, Show Faces menu item.
Show Back Faces
Equivalent to the View, Show Back Faces menu item.
Move Grid
Equivalent to the Helpers, Move Grid menu item.
XY Grid
Equivalent to the Helpers, XY Grid menu item.
XZ Grid
Equivalent to the Helpers, XZ Grid menu item.
YZ Grid
Equivalent to the Helpers, YZ Grid menu item.
Position Grid
Equivalent to the Helpers, Position Grid menu item.
Grid Spacing
Changes the spacing between lines in the grid.
Show Grid
Equivalent to the Helpers, Show Grid menu item.
Grid Follows Work
Equivalent to the Helpers, Grid Follows Work menu item.
Snap to Grid
Equivalent to the Helpers, Snap to Grid menu item.
Snap to Edges
Equivalent to the Helpers, Snap to Edges menu item.
Snap to Vertices
Equivalent to the Helpers, Snap to Vertices menu item.
Coordinate Feedback
Shows coordinates relevant to the current drawing operation.
When responding to coordinate input, the coordinate at the mouse pointer position is shown, relative to the grid. That coordinate is usually the location where the mouse pointer hits the grid, though it may change if the pointer snaps to an existing object.
When dragging objects using the mouse pointer, the offset of the drag is shown. Dragging usually occurs in the grid plane, though it may change if the pointer snaps to an existing object.
Parts Window
The Parts window is displayed using the F6 key or the menu. It is typically docked at the right side of the designer window.
The parts list contains every part that is in the current design. This includes hull objects, imported meshes, rooms, berths, etc. This allows you to easily see everything within the design at once, and also provides buttons for toggling the visibility of each part, as well as other part properties.
The parts list is also useful for selecting parts and deleting parts.
Id Column
Every part in a design is assigned a unique id number. Part id numbers may range from 1 to 65,535.
Part id numbers are not preserved when copied and pasted between designs. Parts are assigned new ids when pasted into a design.
Name Column
The name column starts with an icon that indicates the kind of the part.
The icon is followed by a text name assigned to the part. Names are assigned by the designer based on the type and properties of the part.
Group Column
The group column shows the name of the group assigned to each part.
Select one or more parts and right-click to assign them to a group. Group names are chosen by the architect. Parts are assigned to groups as needed.
Groups organize parts together.
In building and spacecraft designs, groups define the rooms.
- Group names become room names in the final blueprint, if the group contains a room void.
- Room voids in the same group have the same internal air pressure.
- All parts in the same group are lit similarly, according to room lighting.
The Hull group is reserved for hull parts; it is never considered to be a room. Hull parts are lit according to the external environment of the building or spacecraft.
- Parts with a blank group name are grouped with the hull, for lighting.
In fence and wall blueprints, two groups are required: Post and Section.
The Post group appears at each post of the final fence. The blueprint origin is where the post is placed on the ground, with +Z up according to the direction of gravity at the placement location. The post is oriented to align with the fence line on the ground.
The Section group forms the fence between the posts, from post location to post location. A section of fence is designed from the origin, extending along the +X axis, with +Z up at each end. The +X extent of the section defines the typical post spacing of the fence.
When placed on a world, the fence section is morphed to fit between two post locations. Post locations may vary in altitude and gravity direction and their spacing may vary from the typical section that is drawn.
- The section origin, at Z=0, is placed at the first post.
- The section +X extent, at Z=0, is placed at the second post.
- The section geometry stretches accordingly.
Visibility Column
Shows and controls the visibility state of parts.
Parts can be made invisible to simplify the design view. Invisible parts are not selected when using the mouse in the scene. Editing functions do not operate on invisible parts.
Left click to toggle the visibility of the selected parts. Right-click to choose visibility from a menu.
Making a part invisible does not exclude it from the final design. Invisible parts are included in the final design.
Lock Column
Shows and controls the locked state of parts.
Lock parts to protect them from accidental editing. The locked state of parts has no effect in the final design.
Left click to toggle the lock of the selected parts. Right-click to choose the locked or unlocked state from a menu.
Omit Column
Shows and controls whether a part is omitted from the final design.
Omit parts to prevent them from being included in the final design. Omitted parts are excluded from the design analysis report. Some parts are always omitted; they cannot be included.
Excluded parts can be useful for reference purposes, as a way to keep images or geometry in the design that are not intended to be part of the final design. Parts that exist only as design tools are omitted regardless of this setting, e.g. door jigs.
Seal Column
Shows and controls whether a part is sealed.
Parts remember who their architect was. Seal parts to prevent other architects from editing them in face mode. Only the architect of a part can seal or unseal the part.
Sealed parts can be used in part mode like other whole parts. They can be moved, stretched, rotated, copied to the clipboard and saved into files. Whole part editing operations are mostly disabled when a sealed part is selected, to protect the design of the part from changes.
A sealed part can be used as a jig but it cannot be cut using a jig.
Only the architect of a sealed part can enter face mode when the part is selected. This prevents individual faces of sealed parts from being modified or copied to the clipboard by other architects.
The design report lists all architects whose parts are included in a design.
State Column
Shows the current state of parts that can have multiple states, such as doors that can be open or closed.
On some kinds of parts, a slide bar is shown for adjusting the transparency of the part.
Texture Wrapper Window
The Texture Wrapper window is displayed using the Shift+F6 key or the menu. It can be docked stacked on top of the parts window; tabs will appear at the bottom, to choose between them.
The texture wrapper is only used in face mode.
Texture wrapper is a tool for positioning textures on faces. Texture wrapper only operates on faces that are selected. The designer must be in face mode to select faces.
The viewing area shows the texture applied to the faces. Edge lines of the faces are painted where the texture is mapped to them. The viewing area is blank when the texture differs between the selected faces.
A combo box contains the current texture palette. Change the texture of faces by choosing a texture in the combo box.
Palette
A design has a palette of textures. Each face may refer to one of the textures in the palette for its primary surface texture.
Faces reference palette entries. If the texture in a palette entry is changed, faces that refer to that palette entry will also change.
Texture palette entries can be customized. Each palette entry can be loaded with a custom picture file or it can be configured to use one of the built-in textures included with the designer.
The Material entry changes based on the material used to manufacture the design. Manufacturing material is configured in the design properties. The material texture can be overridden by loading a custom texture. When a custom texture is selected for the material entry, it no longer changes according to the manufacturing material.
This is the material entry's only special behavior. The texture may be used on any faces that should change appearance based on material.
The textures used for materials exist among the built-in choices included with the designer. To use one of those textures without it changing due to manufacturing material, simply assign it to a different palette entry.
Custom picture files are limited to a size of 256x256 pixels. Pictures are automatically reduced to fit within that size, while maintaining aspect ratio.
Unwrap
Unwraps the faces onto the texture. A window presents options for unwrapping the faces.
Texture unwrapper is a tool for automatically positioning textures on faces. Texture unwrapper only operates on faces that are selected. The designer must be in face mode to select faces.
The term unwrap derives from the notion of unwrapping or unfolding the faces of a 3D solid onto a flat surface. The flat surface is the texture.
Texture unwrapper is affected by the position and orientation of the grid. In particular, the texture pattern will start where the grid center corresponds to a face.
A texture is selected from the design's texture palette. It will be applied to the selected faces. The size of the texture is specified, using the unit of measure configured in settings.
Texture unwrapper offers several strategies to try keeping a continuous texture pattern around corners. Sometimes one strategy will produce a better result than another.
Angle tolerance is used by all unwrap strategies except Unwrap by Face. Angle tolerance enables the unwrapper to group together faces with similar facing.
Unwrap by Face maps each face individually. Texture is aligned to the plane of each face, with origin aligned to the grid center. Texture pattern restarts at each new face, without regard to others. No attempt is made to maintain a continuous texture pattern around corners.
Unwrap by Facing maps faces in groups according to their facing. Texture is mapped to each group using a plane projection, with its origin aligned to the grid center. Texture pattern is continuous across all faces in each group. No attempt is made to maintain a continuous texture pattern around corners, between groups.
Unwrap by Edges maps faces like Unwrap by Facing. Texture pattern continues around corners where possible.
Unwrap by Edges Horizontally maps faces like Unwrap by Edges. A preference is made for unwrapping horizontally rather than vertically.
Unwrap by Edges Vertically maps faces like Unwrap by Edges. A preference is made for unwrapping vertically rather than horizontally.
Plane Projection
Unwraps the faces onto the texture. Textures are mapped onto faces using a plane projection. Position of the grid plane affects the result.
Plane projected texturing applies a texture to selected faces. The palette texture referenced by selected faces is changed and the texture is mapped to the surface. The mapping method is a straight parallel projection of the texture onto the faces.
A window offers a choice of palette textures. The window also requests the size of the texture.
The texture is aligned with the grid plane. It is sized according to options chosen by the user. The texture is then projected onto the selected faces.
This method creates a continuous pattern across all faces. The resulting pattern is increasingly distorted as the angle of faces gets closer to perpendicular to the direction the texture is projected. The pattern smears along perpendicular faces.
Cylindrical Projection
Unwraps the faces onto the texture. Textures are mapped onto faces using a cylindrical projection. Position of the grid plane affects the result.
Cylindrical projection texturing applies a texture to selected faces. The palette texture referenced by selected faces is changed and the texture is mapped to the surface. The mapping method is a cylindrical projection of the texture onto the faces.
A window offers a choice of palette textures. The window also requests the size of the texture and the number of times the texture repeats around the cylinder.
The texture is stretched into a cylinder that is aligned with the red X axis of the grid plane. It is sized according to options chosen by the user. The texture is then projected onto the selected faces.
This method creates a continuous pattern across all faces. The resulting pattern shrinks and grows around the cylinder with distance from the axis. The pattern is sized along the X axis according to user choices, so it does not stretch in the X axis direction.
Cylindrical mapping is useful for applying textures to spindles. Center the grid on the spindle's rotation axis, with the red X axis aligned to the spindle's rotation axis. Cylindrically apply a texture.
Spherical Projection
Unwraps the faces onto the texture. Textures are mapped onto faces using a spherical projection. Position of the grid plane affects the result.
Spherical projected texturing applies a texture to selected faces. The palette texture referenced by selected faces is changed and the texture is mapped to the surface. The mapping method is a spherical projection of the texture onto the faces.
A window offers a choice of palette textures. The window also requests the number of times the texture repeats around the equator of a sphere.
The texture is stretched into a sphere that is aligned with the grid plane. It is sized according to options chosen by the user. The texture is then projected onto the selected faces. The center of the projection is the center of the grid plane.
This method creates a continuous pattern across all faces. The resulting pattern shrinks and grows with distance from the center.
Repeat
Toggles a repeating pattern of the texture image, to aid in positioning. All textures repeat, regardless of this setting.
The viewing area only shows faces that are selected in the scene. Vertices are highlighted when selected. Vertex selection matches the vertices selected in the scene. Vertices can be selected/deselected in the scene also.
Mouse Controls
- Left click an unselected vertex to select it.
- Ctrl+left click a vertex to toggle its selection.
- Left click a selected vertex, then drag, to move all selected vertices.
- Left click in empty space to deselect all vertices; then drag, to drag a box to select vertices.
- Ctrl+left click in empty space, then drag, to drag a box to toggle selection of vertices.
- Right click then drag to pan the display.
- Wheel to change view magnification.
- Ctrl+wheel to change view magnification in larger steps.
Key Commands
A
selects all vertices.G
grabs selected vertices to move them.R
rotates selected vertices.S
stretches selected vertices.X
constraint. While moving, moves in X only. While stretching, stretches in X only.Y
constraint. While moving, moves in Y only. While stretching, stretches in Y only.
Spacecraft Design
For spacecraft designer specific information, see the Spacecraft Design page.
Design Checklist
The designer offers a checklist as a guide to completing a design. It provides general how-to instructions on how to design a spacecraft.
Following is the text of the spacecraft design checklist.
Properties
Configure the structure. Required.
The structure tells the designer what you are trying to make. Configure this right away.
The structure affects the design analysis. It also affects the spacecraft when viewed in Preview Mode.
Hull
Construct the hull. Required.
Hull parts are the most visible part of a spacecraft when it is seen from the outside. This is the spacecraft people see; make the hull look nice.
Hull parts determine the volume of the spacecraft. Internal subsystems are allocated from this volume. Parts inside the hull do not reduce hull volume.
Hull parts may overlap each other. Hull parts may not form separated pieces of a spacecraft. Hull parts must form a single contiguous spacecraft.
Do not join hull parts together when done. Collision logic prefers simple hull parts instead of complicated hull parts.
A concave depression into a hull part is always obstructed. Use hull voids to gain access to obstructed areas if needed.
Hull parts are not required to form airtight shells; they can have holes.
If you can see completely through a hull part, through an area that should be solid, its calculated volume may be incorrect. Door, window, room and room void parts inside the hull part will block such openings during volume calculations. It may be necessary to add faces, rooms, or room voids to a hull part with holes through it.
A hull can be created by importing a 3DS or STL file. Many free spacecraft models are available on the Internet. They typically define only the outside shell and they rarely include textures, which makes them ideal for use here.
The origin (0,0) location after the grid is reset is the center of gravity (CG) of the spacecraft. The CG is the point about which the spacecraft will pitch, roll, and yaw.
To move the CG of a spacecraft, all the parts must be moved. Unhide and unlock all parts before proceeding. Position the grid at the desired CG and orientation: +X is starboard, +Y is forward, +Z is up. Select all the parts and Edit, Cut them. Use the Position Grid function and press S to reset the grid. Edit, Paste the parts at their new location.
Turrets
Construct gun turrets.
A turret consists of a base that spins and an optional gun that tilts. The turret is remotely operated by a troop at a control station aboard the spacecraft.
Turrets need an unobstructed field of fire. Turrets can hit their own hull and its occupants; NPCs avoid doing so.
Draw the base of a turret on the hull using a mesh part. Select the base and use the Make Turret function. The function prompts for the base pivot point and pivot axis. If the turret spins backward when operated, use the Properties, Turret Base Position function to flip the pivot axis in the opposite direction.
At this point the turret can be used. Gunfire will emit from the center of the turret base.
To add a gun to a turret, right-click the Turret in the parts list and select Add State to add a Gun. Change the turret to the Gun state and draw a gun in face mode. Use the Properties, Turret Gun Position function to configure where the gun tilts, where it shoots, and where the gunner sees out when operating the turret.
In the designer, a turret shows the faces of both the base and gun only when it is in the Gunner Screen state. Otherwise a turret only shows the faces appropriate to its current state.
Lights
Construct exterior lights.
Exterior lights add visibility and draw attention. Interior lights are not represented by any part.
The appearance of exterior lights can be created using mesh or hull parts. Hull parts have the advantage of adding hull volume.
Light Lens parts glow when the headlight of the spacecraft is on. Use Make Light Lens to convert each selected part into a light lens. Each lit light lens adds a glow sprite at the center of the part.
Nav Light Lens parts glow when the nav lights of the spacecraft are on. Use Make Navigation Light Lens to convert each selected part into a nav light lens. Each lit nav light lens adds a glow sprite at the center of the part.
Rotating Beacon Lens parts glow when the rotating beacons of the spacecraft are on. Position the grid to establish the beacon rotation axis, which will align with the Z axis when the beacon is made. Use Make Rotating Beacon Lens to convert each selected part into a rotating beacon. Each lit rotating beacon adds a rotating glow sprite at the center of the part.
Strobe Lens parts blink when the strobe lights of the spacecraft are on. Use Make Strobe Lens to convert each selected part into a strobe. Each lit strobe adds a glow sprite at the center of the part.
Landing Gear
Construct landing gear.
Landing gear is optional. The spacecraft will settle on its hull without landing gear.
Landing altitude is determined by the bottom extent of the spacecraft. Landing gear changes the extents of the spacecraft. In the presence of more than one landing gear part, the one that reaches the farthest down will determine the landing altitude.
Build each landing gear using a mesh part. Use the Make Landing Gear function to convert the mesh into a Landing Gear part.
Rooms
Construct rooms inside the hull. Required.
Room parts do not contribute to collision logic. They exist only for appearance. Rooms are what players see most of the time they are aboard; make them look nice.
Separate rooms should be spaced apart slightly, to allow for wall thickness between them.
If the design will incorporate turbo lifts, draw one room for each turbo lift at only one of its stops. That room will become a turbo lift car in another step, after more parts have been added.
Meshes
Construct details.
Use meshes to create control stations, furnishings, equipment, and other interesting details.
Meshes do not create an obstacle to movement. They exist only for appearance. Make them look nice.
Doorways
Cut doorways. Required.
A door jig cuts a doorway from one room to another room, or from a room to a hull. The door jig cuts the faces, adds a lining of faces to the hole, and creates a Door part in the hole.
Place a door jig into each room that will become a turbo lift. Do not cut doors into turbo lifts at this time.
Jigs do not work when placed flat against a face. Raise jigs slightly above the floor before cutting doors.
Jigs aren't perfect; they sometimes create too many or not enough faces when lining the hole. You may have to delete excess faces or draw missing faces there.
Windows
Cut windows. Required.
A window jig cuts a window opening from one room to another room, or from a room to a hull. A window jig can also cut a window into a hull where no room exists on the inside. The window jig cuts the faces, adds a lining of faces to the hole, and creates a Window part in the hole.
Windows are for human players. People like to see out; make lots of windows. NPCs do not need windows to operate a spacecraft.
Translucent windows give the appearance of occupancy in areas where there may be no rooms at all. They do this by lighting and darkening while the spacecraft has power, which gives the impression that someone is in there.
In some cases an entire hull part or some faces on a hull part would make a nice window. Use Split Faces in face mode to make a separate part from selected faces. The Make Window function converts the part into a window.
Control Stations
Add control stations. Required.
Control stations are used by players and NPCs to operate subsystems of the spacecraft. In some cases the creation of the control station causes the appropriate subsystem to exist in the design.
The simplest control stations to draw are the swivel consoles with chairs. They are simple because a built in model of a control station is used. You only have to specify the location and spin of the control station.
Meshes are used to create the appearance of integrated control stations. The functions that create integrated control stations will prompt for the operator's location and body position.
Some stations request additional information such as the screen position. The screen position can be changed by moving the face in face mode. Additional information can be changed using properties functions.
Turrets require an integrated control station to operate them. Select a turret to add an integrated turret control station.
Weapon stations request the weapon emit location. These weapons are omnidirectional and they do not hit their own hull or its contents.
Troop posts provide a location for troops to be stationed when they are not operating a turret.
Panels
Add service and other panels.
Service panels create a place at which a subsystem of the spacecraft can be repaired manually. In the absence of a service panel, a subsystem can only be repaired by an airport repair shop. Other panels simply provide information.
Some service panels must be associated with the control station of the appropriate subsystem, to know what subsystem the panel is intended to service.
Alert Status Panels act as the speaker grill for alert tones. Alert sounds are emitted from alert status panels.
Room Life Support Panel must be associated with the room void it monitors.
World Map Panel aspect ratio is 2:1 for spherical worlds. Aspect ratio is 10:1 for ringworld arc sections.
Vehicles
Add vehicle parking spots.
Specific vehicle parking spots show a solid vehicle model in the spot with a small icon beneath them.
General vehicle parking spots show a bounding box that fits any vehicle that can park there. e.g. Ground vehicle parking spot shows a box large enough for any ground vehicle in the game.
Spacecraft fill their vehicle parking spots by teleporting new vehicles from buildings in trade range.
With a vehicle transporter in the design, vehicle parking spots act as vehicle transporter pads. A vehicle does not have to be able to move from its parking spot. The driver simply calls for transport on the comm.
Space vehicle launcher creates a launch pad and a launch path. While launching, a space vehicle travels along the path. It is not obstructed by the hull or anything else while launching. Voids are not required at the launcher or along the path. The exit end of the path must be clear of the hull.
When a pilot requests launch, their space vehicle is teleported to an available launch pad. Doors associated with the launcher are opened and the vehicle is launched along the path. The departure speed of the vehicle is determined by the length of the path. Launcher doors close automatically after the vehicle is launched.
Space vehicle recovery subsystem creates a virtual runway for arriving space vehicles. It should be placed outside the hull. Allow for botched landings; sometimes a pilot has to go around. A space vehicle that stops along the centerline of the runway is teleported to an empty parking spot.
Details
Add berths and other details.
Berths define the accommodations for captain, officers, crew, troops and passengers. Berths are optional.
When an avatar dies who has taken a berth aboard a spacecraft, they reappear in their berth aboard that spacecraft if the life support subsystem is functioning and the spacecraft has not been captured by an enemy. On a spacecraft with no berths, the avatar reappears at the helm.
Contrail emitters help to see and identify spacecraft. Contrails are much easier to see than a fast moving sparkling pixel. Contrails are colored according to each empire's preferences. The size of the contrail emitter part determines the size of the contrail.
If no contrail emitters are added, a single contrail emitter will automatically be added at the center of the aft extents. This is not done for space stations.
Light bulb is the source of light emitted by the spacecraft when the headlights switch is on. The light can be omnidirectional or focused into a cone. The light bulb part is not visible in the final spacecraft. Emitted light is not shadowed by faces of the spacecraft.
Remote cameras are accessed by players using the command station.
Items can be placed in the design. Items are populated from the city's inventory when the spacecraft is manufactured. Players can take these items. Items are replenished from the spacecraft's cargo.
Voids
Carve out void spaces and add barriers. Required.
The hull is treated as a solid mass through and through. Room meshes have no effect on this.
Voids carve out the areas in which people, vehicles and other spacecraft can go. Barriers create obstacles inside those carved out areas. Voids and barriers are not visible in the final model.
When two voids are placed next to each other, overlap them slightly. This assures a positive handoff as something moves from one void to another, without bouncing off an infinitesimally thin wall in between.
Each void and barrier must form a single airtight bubble. There can be no holes or missing faces. Overlapping or excess faces will cause trouble. Concave areas are ok.
Do not join voids together. It is better to have a few simple intersecting voids than one single complicated void.
Room Voids are placed inside rooms, turbo lifts and on ramps. Each operable door must have a room void in the doorway to connect the room voids accessed by the door.
Voids must be as simple as possible with very few faces. Rooms can be very complex, bumpy, curvy and full of holes. Do not conform to every bump and bulge in the walls. Build simple voids just inside the bumps and most people will never notice.
Hull Voids allow access to areas of the hull that should not obstruct movement.
Barriers create obstacles to movement inside room voids. Barriers can be used to create stairs and ramps or to surround things the player should not walk through. Barriers should use extremely few faces.
When blocking a large portion of a room void, consider making the room void smaller instead.
Stairs can be created using a mesh that looks like stairs and a ramp-shaped barrier, instead of shaping the barrier to fit every step. Less faces are needed to make the barrier and movement on the stairs is smoother; it is also easier for small or legless creatures.
Turbo Lifts
Make turbo lifts functional.
This step is required if you are building any turbo lifts in the design. Two concepts are introduced: doors and paths. They are discussed in detail in the following Doors and Paths steps.
Select the turbo lift room, room void, and door jig for one turbo lift. Use the Make Turbo Lift function to fuse them together into a Turbo Lift part.
Right-click on the turbo lift in the parts list and select Add Stop. Provide a name for the current stop of the turbo lift. Select the turbo lift and the adjoining room or hull and use the Jig Cut function to cut the door. The turbo lift must be outside a room to cut into it. The turbo lift must be inside a hull to cut out of it.
Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new Turbo Lift Door.
When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door.
For each additional stop, do the following.
- Add a stop name for the next stop position. The current stop of the car does not matter.
- Use the Align Turbo Lift Stop function to position the car at the newly added stop. The turbo lift can be moved more than once while aligning it; only the final position matters. It is essential to use the Align Turbo Lift Stop command. Mouse drag moving and cut/copy/paste will change the positions of all stops at once.
- Select the turbo lift and the adjoining room or hull and use the Jig Cut function to cut the door.
- Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new Turbo Lift Door.
- When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door.
Repeat this step for each turbo lift in the design.
Paths
Add walk paths and ladder paths. Required.
NPCs do not analyze or even see rooms or obstacles. They blindly trust paths to get them where they want to go. Simple well planned paths enable NPCs to quickly and efficiently move to any room.
To get from one room to another, an NPC walks straight to the closest path node in their room. Then they follow the path to the closest node to the destination location in the final room. Then they walk directly to the destination location. Any obstruction along the way will physically stop them and their ability to recover from this is poor. Any break in the path along the way is uncrossable.
NPCs know how to use doors, ladders and turbo lifts. NPCs do not know how to use multiple transporters; they won't beam from one transporter to another to move about, without orders.
Walk paths should not be placed directly on the floor. A meter or less above the floor works well.
Paths should be kept as simple as possible.
Walk paths and ladder paths must form one continuous branching structure throughout the design, wherever NPCs are expected to find their way. It is ok to loop and branch as much as needed.
Ladder paths are placed where the body is to travel, not inside the ladder rungs. When moving along a ladder path, the body is centered on the path and all obstructions are ignored.
Each operable interior door needs a walk path that passes through the doorway and ends a short distance inside the room void on each side. Walk paths through hull doors have one end inside a room void and the other end outside the hull.
Operable floor and ceiling hatches are created using doors. However they should incorporate a ladder path instead of a walk path, even if no ladder is depicted.
Doors
Make doors functional. Required.
By now every doorway should have a door, a room void, and a path. The door jig created a Door part. If a jig was not used, draw a door using a mesh. Then use the Make Door command to convert the mesh into a Door that can open and close.
Change the current state of the door to Open. Select the door, room void and path together. Use the Associate Parts command to make them accessible only when the door is open.
When making a hull door, the associated door parts must include a hull void. This distinguishes a hull door from an interior door. The hull void is usually needed to get through the collision margin around the hull. The hull void and room void associated with the hull door should overlap slightly near the middle of the doorway.
To make a window in a door, simply make the appropriate faces transparent. This will serve as a window but it will not share lighting behavior with Window parts.
When making a ramp, create the faces in the open state of the door. Then place a room void on the ramp to access the area on top of the ramp. Associate the room void with the open state of the door. Leave the group name of the room void blank so air pressure will match that of the outside.
Door switches start out in the center of the door. Every door has two door switches that can be positioned using Properties, Door Switch Positions. This is useful for large doors.
When a switch is moved, a visual indicator of the new switch position should be created using a mesh, e.g. a small glowing box or ball.
Paths in the room should have a node close enough to the switch to enable an NPC to operate the switch while standing at the node. Ideally this would be one of the nodes of the path segment associated with the open door.
The icon for the door part shows what kind of door it is. Some changes require a door to be reanalyzed to determine what kind of door it has become. To reanalyze a door and set other properties, use the Properties, Door function.
Textures
Texture the faces. Required.
Textures should be applied after all changes to the faces are completed. This saves retexturing later after edits are made.
Textures are applied in face mode. Select faces in face mode and apply textures to them using various methods on the Texture Wrapper.
The position of the grid affects every texturing command. A technique to insure all floor and ceiling tiles align throughout all rooms is to reset the grid before applying those textures.
In addition to the base texture, faces have an effects texture layer that responds to the activity of certain subsystems. e.g. The appearance of active lit transporter pads is achieved in this way.
Decals
Add decals.
Decals are textured faces that apply special rendering behavior to improve their appearance when placed on an underlying face.
Decals are blended with underlying faces. This enables them to smoothly merge with underlying faces when the decal texture has transparent areas. Normally the transparent areas of textures are discarded which creates a crunchy edge on transparent areas.
Decals are rendered with a slight offset from the face. That enables them to be drawn coplanar with the underlying faces without unsightly face collisions.
A few generated decals are available, to display empire flag, empire name, and a few others. The color of word decals can be controlled by painting the faces. The decal that shows the name of a berth occupant must be associated with a berth.
Group Names
Assign group names. Required.
Room voids are grouped to assign a name to the room. These room names appear in various user interfaces throughout the game.
Room voids in the same group will have the same air pressure and lighting. Lighting is controlled by the player using Bright/Dim/Dark controls and it may come in through the windows. Room lighting can be preset using Properties, Room Lighting. That is also where you specify if the room is normally exposed to sunlight.
Meshes, rooms, control stations, windows, and items should be grouped with the room void they occupy so they will be lit appropriately. Doors can only be in one group; both sides of the door will be lit according to the chosen group.
Translucent windows can be grouped together to cause them to be lit synchronously. This gives them the appearance of belonging to the same room, even if no room exists.
Parts with no group name or the reserved name Hull will have atmosphere and lighting determined by the external environment.
Review
Review properties and design analysis. Required.
Use the properties window to configure all settings and to adjust how much of the hull volume is allocated to each subsystem.
Finalize
Finalize the blueprint. Required.
Finalize a blueprint to analyze it for errors and inconsistencies. Errors must be fixed before the blueprint can be used in the game. Warnings should be reviewed; changes may be needed but warnings do not prevent use of a blueprint.
Finalize grabs a screen image to accompany the blueprint in the library. You can provide this image yourself. Use Preview mode to get a screen grab of your design the way it will look in the game.
The finalize process is slow. It may produce a large number of errors and warnings that need to be fixed or analyzed. Previous Finalize Result shows the result of the last finalize attempt.
Preview
Preview the design. Required.
Land on a world. Try to get out and see if you can get back aboard.
Create crew to see that they can get to their stations.
Building Design
For building designer specific information, see the Building Design page.
Design Checklist
The designer offers a checklist as a guide to completing a design. It provides general how-to instructions on how to design a building.
Following is the text of the building design checklist.
Properties
Configure the structure. Required.
The structure tells the designer what you are trying to make. Configure this right away.
The structure controls what parts can be used in the design. The structure also affects the design analysis.
Site
Create a site. Required.
Building, street light, bridge, biodome, and ground platform structures require a site on which to be built. The site provides information about how to grade the terrain and what to do with the rocks and plants there.
A site is created using one or more site meshes. Each portion of a building that touches the ground should rest on a site for proper ground prep. Bridges usually have two sites, one at each end of the bridge.
The origin (0,0) location after the grid is reset is the insertion point when placing the building on terrain in the game. Use the Position Grid function and press S to reset the grid. The front of the building faces in the +Y direction.
The altitude of the insertion point determines the altitude of the entire site. This makes building sites easy to place at a comfortable altitude next to roads. Terrain modification caused by site meshes proceeds from that placement altitude.
Coastal sites are drawn with the insertion point at the back of the building. These buildings are placed on the shore facing the water. The back offers a better location to determine the altitude than the water side.
Terrain uses large triangles. A site mesh cannot cut a detailed excavation into the terrain, such as a swimming pool. Instead a site mesh could push the terrain down out of the way. Then a model of a pool with a broad span of concrete around it could make that rough pit look nice.
Hull
Construct the hull. Required.
Hull parts are the most visible part of a building when it is seen from the outside. This is the building people see; make the hull look nice.
Hull parts determine the volume of the building. Internal subsystems are allocated from this volume. Parts inside the hull do not reduce hull volume.
Hull parts may overlap each other. Hull parts may form multiple separate buildings on a site. No part of a building is required to touch the ground.
Do not join hull parts together when done. Collision logic prefers simple hull parts instead of complicated hull parts.
A concave depression into a hull part is always obstructed. Use hull voids to gain access to obstructed areas if needed.
Hull parts are not required to form airtight shells; they can have holes.
If you can see completely through a hull part, through an area that should be solid, its calculated volume may be incorrect. Door, window, room and room void parts inside the hull part will block such openings during volume calculations. It may be necessary to add faces, rooms, or room voids to a hull part with holes through it.
A hull can be created by importing a 3DS or STL file.
Turrets
Construct gun turret.
The only building that allows a gun turret is a military guard tower.
A turret consists of a base that spins and an optional gun that tilts. The turret is operated automatically by the building.
Turrets need an unobstructed field of fire. Turrets can hit their own hull and its occupants; NPCs avoid doing so.
Draw the base of a turret on the hull using a mesh part. Select the base and use the Make Turret function. The function prompts for the base pivot point and pivot axis.
At this point the turret can be used. Gunfire will emit from the center of the turret base.
To add a gun to a turret, right-click the Turret in the parts list and select Add State to add a Gun. Change the turret to the Gun state and draw a gun in face mode. Use the Properties, Turret Gun Position function to configure where the gun tilts, where it shoots, and where the gunner sees out when operating the turret.
In the designer, a turret shows the faces of both the base and gun only when it is in the Gunner Screen state. Otherwise a turret only shows the faces appropriate to its current state.
Lights
Construct exterior lights.
Exterior lights add visibility and draw attention. Interior lights are not represented by any part.
The appearance of exterior lights can be created using mesh or hull parts.
Light Lens parts can only be used on a street light. They glow when it is dark outside; the glow is bright if the city has power. Use Make Light Lens to convert each selected part into a light lens. Each lit light lens adds a glow sprite at the center of the part.
Nav Light Lens parts glow when it is dark; building power is not needed. Use Make Navigation Light Lens to convert each selected part into a nav light lens. Each lit nav light lens adds a glow sprite at the center of the part.
Rotating Beacon Lens parts glow all the time light or dark; building power is not needed. Position the grid to establish the beacon rotation axis, which will align with the Z axis when the beacon is made. Use Make Rotating Beacon Lens to convert each selected part into a rotating beacon. Each lit rotating beacon adds a rotating glow sprite at the center of the part.
Strobe Lens parts blink all the time light or dark; building power is not needed. Use Make Strobe Lens to convert each selected part into a strobe. Each lit strobe adds a glow sprite at the center of the part.
Rooms
Construct rooms inside the hull.
Room parts do not contribute to collision logic. They exist only for appearance. Rooms of buildings are not often seen because players rarely enter buildings.
Some building control stations are accessible to players. Those control stations must be placed in a room.
Separate rooms should be spaced apart slightly, to allow for wall thickness between them.
If the design will incorporate turbo lifts, draw one room for each turbo lift at only one of its stops. That room will become a turbo lift car in another step, after more parts have been added.
Meshes
Construct details.
Use meshes to create control stations, furnishings, equipment, and other interesting details.
Meshes do not create an obstacle to movement. They exist only for appearance. Make them look nice.
Doorways
Cut doorways.
A door jig cuts a doorway from one room to another room, or from a room to a hull. The door jig cuts the faces, adds a lining of faces to the hole, and creates a Door part in the hole.
Place a door jig into each room that will become a turbo lift. Do not cut doors into turbo lifts at this time.
Jigs do not work when placed flat against a face. Raise jigs slightly above the floor before cutting doors.
Jigs aren't perfect; they sometimes create too many or not enough faces when lining the hole. You may have to delete excess faces or draw missing faces there.
Windows
Cut or construct windows.
A window jig cuts a window opening from one room to another room, or from a room to a hull. A window jig can also cut a window into a hull where no room exists on the inside. The window jig cuts the faces, adds a lining of faces to the hole, and creates a Window part in the hole.
Translucent windows give the appearance of occupancy in areas where there may be no rooms at all. They do this by lighting and darkening at night while the building has power, which gives the impression that someone is in there.
In some cases an entire hull part or some faces on a hull part would make a nice window. Use Split Faces in face mode to make a separate part from selected faces. The Make Window function converts the part into a window.
Windows for flat walled buildings can also be created as a surface detail. A window frame with a translucent window part raised slightly away from the wall surface works well. Then the window can be copy/pasted all over the building without cutting any faces.
Control Stations
Add control stations.
Very few buildings need control stations. Control stations are used by players and NPCs to operate subsystems of the building. In some cases the creation of the control station causes the appropriate subsystem to exist in the design.
The simplest control stations to draw are the swivel consoles with chairs. They are simple because a built in model of a control station is used. You only have to specify the location and spin of the control station.
Meshes are used to create the appearance of integrated control stations. The functions that create integrated control stations will prompt for the operator's location and body position.
Some stations request additional information such as the screen position. The screen position can be changed by moving the face in face mode. Additional information can be changed using properties functions.
Turrets require an integrated control station to define the module present. Select a turret to add an integrated turret control station. The station cannot be manned; it should be embedded in the building.
Weapon stations request the weapon emit location. These weapons are omnidirectional and they do not hit their own hull or its contents. Weapon stations are never manned so they can be embedded in the building.
Troop posts provide a location for troops to be stationed.
Panels
Add panels.
Room Life Support Panel must be associated with the room void it monitors.
World Map Panel aspect ratio is 2:1 for spherical worlds. Aspect ratio is 10:1 for ringworld arc sections.
Vehicles
Add vehicle parking spots.
Specific vehicle parking spots show a solid vehicle model in the spot with a small icon beneath them.
General vehicle parking spots show a bounding box that fits any vehicle that can park there. e.g. Ground vehicle parking spot shows a box large enough for any ground vehicle in the game.
Buildings fill their vehicle parking spots by teleporting new vehicles from factories to which they are connected. Vehicle factories fill their vehicle parking spots by manufacturing vehicles.
With a vehicle transporter in the design, vehicle parking spots act as vehicle transporter pads. A vehicle does not have to be able to move from its parking spot. The driver simply calls for transport on the comm.
Space vehicle launcher creates a launch pad and a launch path. While launching, a space vehicle travels along the path. It is not obstructed by the hull or anything else while launching. Voids are not required at the launcher or along the path. The exit end of the path must be clear of the hull.
When a pilot requests launch, their space vehicle is teleported to an available launch pad. Doors associated with the launcher are opened and the vehicle is launched along the path. The departure speed of the vehicle is determined by the length of the path. Launcher doors close automatically after the vehicle is launched.
Space vehicle recovery subsystem creates a virtual runway for arriving space vehicles. It should be placed outside the hull. Allow for botched landings; sometimes a pilot has to go around. A space vehicle that stops along the centerline of the runway is teleported to an empty parking spot.
Details
Add berths and other details.
Light bulb is the source of light emitted by the street light building when it gets dark. The light can be omnidirectional or focused into a cone. The light bulb part is not visible in the final building. Emitted light is not shadowed by faces of the building.
Items can be placed in the design. Items are populated from the city's inventory when the building is constructed. Players can take these items. Items are replenished from the city's inventory.
Voids
Carve out void spaces and add barriers.
The hull is treated as a solid mass through and through. Room meshes have no effect on this.
Voids carve out the areas in which people, vehicles and spacecraft can go. Barriers create obstacles inside those carved out areas. Voids and barriers are not visible in the final model.
When two voids are placed next to each other, overlap them slightly. This assures a positive handoff as something moves from one void to another, without bouncing off an infinitesimally thin wall in between.
Each void and barrier must form a single airtight bubble. There can be no holes or missing faces. Overlapping or excess faces will cause trouble. Concave areas are ok.
Do not join voids together. It is better to have a few simple intersecting voids than one single complicated void.
Room Voids are placed inside rooms, turbo lifts and on ramps. Each operable door must have a room void in the doorway to connect the room voids accessed by the door.
Voids must be as simple as possible with very few faces. Rooms can be very complex, bumpy, curvy and full of holes. Do not conform to every bump and bulge in the walls. Build simple voids just inside the bumps and most people will never notice.
Hull Voids allow access to areas of the hull that should not obstruct movement.
Barriers create obstacles to movement inside room voids. Barriers can be used to create stairs and ramps or to surround things the player should not walk through. Barriers should use extremely few faces.
When blocking a large portion of a room void, consider making the room void smaller instead.
Stairs can be created using a mesh that looks like stairs and a ramp-shaped barrier, instead of shaping the barrier to fit every step. Less faces are needed to make the barrier and movement on the stairs is smoother; it is also easier for small or legless creatures.
Turbo Lifts
Make turbo lifts functional.
This step is required if you are building any turbo lifts in the design. Two concepts are introduced: doors and paths. They are discussed in detail in the following Doors and Paths steps.
Select the turbo lift room, room void, and door jig for one turbo lift. Use the Make Turbo Lift function to fuse them together into a Turbo Lift part.
Right-click on the turbo lift in the parts list and select Add Stop. Provide a name for the current stop of the turbo lift. Select the turbo lift and the adjoining room or hull and use the Jig Cut function to cut the door. The turbo lift must be outside a room to cut into it. The turbo lift must be inside a hull to cut out of it.
Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new Turbo Lift Door.
When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door.
For each additional stop, do the following.
- Add a stop name for the next stop position. The current stop of the car does not matter.
- Use the Align Turbo Lift Stop function to position the car at the newly added stop. The turbo lift can be moved more than once while aligning it; only the final position matters. It is essential to use the Align Turbo Lift Stop command. Mouse drag moving and cut/copy/paste will change the positions of all stops at once.
- Select the turbo lift and the adjoining room or hull and use the Jig Cut function to cut the door.
- Draw a room void inside the new doorway and a walk path through the doorway. Associate them with the open state of the new Turbo Lift Door.
- When a turbo lift cuts through a hull, an exterior turbo lift door is created. Add a hull void there and associate it with the open state of the door.
Repeat this step for each turbo lift in the design.
Paths
Add walk paths and ladder paths.
This step is required if you have built any interior rooms.
NPCs do not analyze or even see rooms or obstacles. They blindly trust paths to get them where they want to go. Simple well planned paths enable NPCs to quickly and efficiently move to any room.
To get from one room to another, an NPC walks straight to the closest path node in their room. Then they follow the path to the closest node to the destination location in the final room. Then they walk directly to the destination location. Any obstruction along the way will physically stop them and their ability to recover from this is poor. Any break in the path along the way is uncrossable.
NPCs know how to use doors, ladders and turbo lifts. NPCs do not know how to use multiple transporters; they won't beam from one transporter to another to move about, without orders.
Walk paths should not be placed directly on the floor. A meter or less above the floor works well.
Paths should be kept as simple as possible.
Walk paths and ladder paths must form one continuous branching structure throughout the design, wherever NPCs are expected to find their way. It is ok to loop and branch as much as needed.
Ladder paths are placed where the body is to travel, not inside the ladder rungs. When moving along a ladder path, the body is centered on the path and all obstructions are ignored.
Each operable interior door needs a walk path that passes through the doorway and ends a short distance inside the room void on each side. Walk paths through hull doors have one end inside a room void and the other end outside the hull.
Operable floor and ceiling hatches are created using doors. However they should incorporate a ladder path instead of a walk path, even if no ladder is depicted.
Doors
Make doors functional.
This step is required if you have built any doors.
By now every doorway should have a door, a room void, and a path. The door jig created a Door part. If a jig was not used, draw a door using a mesh. Then use the Make Door command to convert the mesh into a Door that can open and close.
Change the current state of the door to Open. Select the door, room void and path together. Use the Associate Parts command to make them accessible only when the door is open.
When making a hull door, the associated door parts must include a hull void. This distinguishes a hull door from an interior door. The hull void is usually needed to get through the collision margin around the hull. The hull void and room void associated with the hull door should overlap slightly near the middle of the doorway.
To make a window in a door, simply make the appropriate faces transparent. This will serve as a window but it will not share lighting behavior with Window parts.
When making a ramp, create the faces in the open state of the door. Then place a room void on the ramp to access the area on top of the ramp. Associate the room void with the open state of the door. Leave the group name of the room void blank so air pressure will match that of the outside.
Door switches start out in the center of the door. Every door has two door switches that can be positioned using Properties, Door Switch Positions. This is useful for large doors.
When a switch is moved, a visual indicator of the new switch position should be created using a mesh, e.g. a small glowing box or ball.
Paths in the room should have a node close enough to the switch to enable an NPC to operate the switch while standing at the node. Ideally this would be one of the nodes of the path segment associated with the open door.
The icon for the door part shows what kind of door it is. Some changes require a door to be reanalyzed to determine what kind of door it has become. To reanalyze a door and set other properties, use the Properties, Door function.
Textures
Texture the faces. Required.
Textures should be applied after all changes to the faces are completed. This saves retexturing later after edits are made.
Textures are applied in face mode. Select faces in face mode and apply textures to them using various methods on the Texture Wrapper.
The position of the grid affects every texturing command. A technique to insure all floor and ceiling tiles align throughout all rooms is to reset the grid before applying those textures.
In addition to the base texture, faces have an effects texture layer that responds to the activity of certain subsystems. e.g. The appearance of active lit transporter pads is achieved in this way.
Decals
Add decals.
Decals are textured faces that apply special rendering behavior to improve their appearance when placed on an underlying face.
Decals are blended with underlying faces. This enables them to smoothly merge with underlying faces when the decal texture has transparent areas. Normally the transparent areas of textures are discarded which creates a crunchy edge on transparent areas.
Decals are rendered with a slight offset from the face. That enables them to be drawn coplanar with the underlying faces without unsightly face collisions.
Two generated decals are available, to display empire flag and empire name. The color of the empire name decal can be controlled by painting the faces.
Group Names
Assign group names.
This step is required if you have built any interior rooms.
Room voids are grouped to assign a name to the room. These room names appear in various user interfaces throughout the game.
Room voids in the same group will have the same air pressure and lighting. Lighting is controlled by the player using Bright/Dim/Dark controls and it may come in through the windows. Room lighting can be preset using Properties, Room Lighting. That is also where you specify if the room is normally exposed to sunlight.
Meshes, rooms, control stations, windows, and items should be grouped with the room void they occupy so they will be lit appropriately. Doors can only be in one group; both sides of the door will be lit according to the chosen group.
Translucent windows can be grouped together to cause them to be lit synchronously. This gives them the appearance of belonging to the same room, even if no room exists.
Parts with no group name or the reserved name Hull will have atmosphere and lighting determined by the external environment.
Review
Review properties and design analysis. Required.
Use the properties window to configure all settings and to adjust how much of the hull volume is allocated to each subsystem.
Finalize
Finalize the blueprint. Required.
Finalize a blueprint to analyze it for errors and inconsistencies. Errors must be fixed before the blueprint can be used in the game. Warnings should be reviewed; changes may be needed but warnings do not prevent use of a blueprint.
Finalize grabs a screen image to accompany the blueprint in the library. You can provide this image yourself. Use Preview mode to get a screen grab of your design the way it will look in the game.
The finalize process is slow. It may produce a large number of errors and warnings that need to be fixed or analyzed. Previous Finalize Result shows the result of the last finalize attempt.
Preview
Preview the design. Required.
Place the building on terrain. See if the terrain is modified by the site meshes the way you expect.