Editing Building structures

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
Building structures can consist of a '''BLOCK''', '''HANGAR''', '''HANGAR2''', '''HANGAR3''', or '''TANK''' or any combination of them.
+
A '''Block''' is an object that can be used to create structures on bases. It is a cube or rectangular prism consisting of three dimensions, length, width, and height, and it can use any of the textures that are listed in the base.cfg file (Orbiter\Config\base.cfg), although some may not be appropriate for a block.
Any texture listed in the file (Orbiter\Config\base.cfg) can be used for textures in these structures, but many may not be appropriate for them, such as Runway1.
 
 
 
A '''BLOCK''' is an object that can be used to create structures on bases. It is a cube or rectangle consisting of three dimensions, length, width, and height.
 
 
 
A '''HANGAR''' is an object which consists of four sides, and a roof that is semicircular, sorta like half of a barrel. The roof takes up about the upper half of the height, the lower half is wall.
 
 
 
A '''HANGAR2''' is an object which consists of four sides, and a peaked roof, much like a house. The roof takes up about the upper half the height, the lower half is wall.
 
 
 
A '''HANGAR3''' is an object which consists of a barrel-shaped roof, much like the HANGAR2, but the roof reaches to the ground, there are only two walls, front and back.
 
 
 
A '''TANK''' is a structure that is circular of elliptical with a flat roof.
 
 
 
If you have not read the article [[Creating a simple base]] for information on how to build a base, I suggest you do so. Orbiter's description for how to build objects is located in Orbiter\Doc\OrbiterConfig.pdf.
 
  
 
The description of a block is written into the config file of a base (Orbiter\Config\<''Planet''>\Base\<''BaseConfig.cfg''>).  
 
The description of a block is written into the config file of a base (Orbiter\Config\<''Planet''>\Base\<''BaseConfig.cfg''>).  
Line 18: Line 5:
 
== Textures ==
 
== Textures ==
  
Textures used for building these structures are found in the directory Orbiter\Textures and are listed in the file Orbiter\Config\Base.cfg. Note that there are a number of textures in the \Textures directory that are not listed in the Base.cfg file that could be used, so, if you like type in the filename without the extension into the Base.cfg file so you can use them in building structures, such as Door01, but, not, let's say, Runway01.
+
Textures used for building a block are found in the directory Orbiter\Textures and are listed in the file Orbiter\Config\Base.cfg. Note that there are a number of textures in the \Textures directory that are not listed in the Base.cfg file that could be used, so, if you like type in the filename without the extension into the Base.cfg file so you can use them in building structures, such as door01, but, not, let's say, Exhaust.
 +
 
 +
So, let's build a block building. If you created
  
Open the Bonneville.cfg file (Orbiter\Config\Earth\Base\) that we created in the article [[Creating a simple base]] in your favorite text editor such as Notepad or Notepad+. Place your cursor at the end of the line BEGIN_OBJECTLIST and press {{Key|Enter}}. That provides a line to type in an object.
+
Open the Bonneville.cfg file (Orbiter\Config\Earth\Base\) in your favorite text editor such as Notepad or Notepad+. Place your cursor at the end of the line BEGIN_OBJECTLIST and press {{Key|Enter}}. That provides a line to type in an object.
  
<code>
 
 
  BLOCK
 
  BLOCK
    POS 0 0 -50
+
POS 60 0 -100
    SCALE 1 1 1
+
SCALE 1 1 1
    ROT 330
+
ROT 330
    TEX1 0 0 0
+
TEX1 0 0 0
    TEX2 0 0 0
+
TEX2 0 0 0
    TEX3 0 0 0
+
TEX3 0 0 0
 
  END
 
  END
</code>
 
  
Save the file, you can keep the file open as we will be editing this BLOCK. Exit the scenario, then re-launch it. Now, you will see a small cube sitting on the ground about 50 meters in front of you. In the scenario editor, change the time to about 16:00 hours, that puts the Sun behind you so you can see what effect shadows have.  
+
Save the file, you can keep the file open as we will be editing this block. Exit the scenario, then re-launch it. Now, you will see a small cube sitting on the ground about 100 meters in front of you. In the scenario editor, change the time to about 18:00 hours, that puts the Sun behind you so you can see what effect shadows have.  
  
Now note this BLOCK is white on the side facing you. If you moved your ship so you could see one of the sides, you will note that it is gray. Orbiter applies shading for shadows.
+
Now note the block is white on the side facing you. If you moved your ship so you could see one of the sides, you will note that it is gray. Orbiter applies shading for shadows.
  
The BLOCK should look something like this:
+
The block should look something like this:
 
[[Image:Block_0_01.png|200px|thumb|center|Image of a BLOCK with no texture.]]
 
[[Image:Block_0_01.png|200px|thumb|center|Image of a BLOCK with no texture.]]
  
This BLOCK is a cube 1 meter cubed. Now, let's edit the BLOCK in Bonneville.cfg as follows:
+
This block is a cube 1 meter cubed. Now, let's edit the block in Bonneville.cfg as follows:
  
<code>
 
 
  BLOCK
 
  BLOCK
    POS 0 0 -50
+
POS 60 0 -100
    SCALE 1 1 1
+
SCALE 1 1 1
    ROT 330
+
ROT 330
    TEX1 Fcd01 1 1
+
TEX1 Fcd01 1 1
    TEX2 Fcd03 1 1
+
TEX2 Fcd03 1 1
    TEX3 Roof01 1 1
+
TEX3 Roof01 1 1
 
  END
 
  END
</code>
 
 
Again, save the scenario, exit to the Launchpad and re-launch. Now, your BLOCK should look like something like this.
 
[[Image:Block_Fcd01_01.png|200px|thumb|center|Image of the same block with Fcd01 on the front and back, Fcd03 on the sides, Roof01 on the top, 1 meter per side.]]
 
 
Fcd01 produces a wall with four windows wide and four windows tall all into that one meter square side, and Fcd03 produces a wall with three sets of windows wide and three tall. The number of items produced on a face vary from one to another Fcd.
 
 
== Components of a BLOCK ==
 
When building a BLOCK, the first line must be '''BLOCK'''.
 
 
The next line describes the position of the BLOCK in relation to the center of the base. If you type '''POS 0 0 0''', the center of the BLOCK will sit right on the center of the base.
 
 
For the position parameter, '''POS''' must be the first part of the line.
 
 
The first number '''X''' is the distance north or south of center of the base (north is -, south us +) in meters. 
 
 
The second number '''Y''' is the elevation above the terrain or base plane the bottom of the BLOCK sits, above is +, below is -. This can be useful if you need to put one BLOCK on top of another to build a complex structure.
 
 
The third number '''Z''' is the position in meters east +, or west - of the center of the base.
 
 
The next line starts with '''SCALE'''. This indicates the size of the BLOCK in the X, Y, and Z axis. So, if you type in SCALE 1 2 3, that makes the BLOCK 1 meter wide, 2 meters tall, and 3 meters front to back. Orbiter will stretch the texture to fill the dimensions called out.
 
 
The next  line is '''ROT'''. At ROT 0, the front of the building is facing East, positive ROT is clockwise in degrees, range is 0-360.
 
 
The next line is '''TEX1'''followed by three parameters, the first 0 or which texture is called out from Base.cfg, the first number is how many iterations of the texture is squeezed into the width, and the third number is how many iterations is squeezed into the height. This applies to the front face and the back face of the BLOCK.
 
 
The next line is '''TEX2''' followed by three parameters, the same as TEX1, but applies to the left and right faces of the BLOCK.
 
 
The next line is '''TEX3''' followed by three parameters, the same as TEX1 and TEX2, but applies to the top, or roof of the BLOCK.
 
 
The first term of each '''TEX''' callout is the name of a texture from Base.cfg. Any one can be used in each, but, using Runway1 or Lpad02 would probably not be appropriate.
 
 
Now, let's build two BLOCKs each with different parameters and compare.
 
 
Replace the existing BLOCK with the following:
 
 
<code>
 
BLOCK
 
    POS  0 0 -50
 
    SCALE 1 2 3
 
    ROT 330
 
    TEX1 Fcd01 1 1
 
    TEX2 Fcd01 1 1
 
    TEX3 Roof01 1 1
 
END
 
BLOCK
 
    POS -4 0 -50
 
    SCALE 1 2 3
 
    ROT 330
 
    TEX1 Fcd01 1 2
 
    TEX2 Fcd01 2 1
 
    TEX3 Roof01 2 2
 
END
 
</code>
 
 
After launching Orbiter, you will see two BLOCKs, the same size, both use Fcd01 for all sides, but the windows are different.
 
 
For the left BLOCK, SCALE 1 2 3 creates a block 1 meter wide, 2 meters tall, 3 meters deep. TEX1 Fcd01 1 1 creates one Fcd01 wide, 1 Fcd01 tall stretching the Fcd to fit the height. The same with TEX2 and TEX3, TEX3 calling out a Roof design.
 
 
For the right block, SCALE 1 2 3 does the same, but TEX1 Fcd01 1 2 creates one Fcd01 wide and two Fcd01 tall making twice as many windows. TEX2 2 1 creates four windows high and eight windows wide on the side faces. TEX3 2 2 creates a roof with twice as many seams.
 
 
A TEX parameter can use decimal numbers in the second and third parameter. For example, TEX1 1 1.5 will get you 1.5 times as many Fcd01 tall, which creates 6 windows tall. Remember each Fcd entity may have different number of windows or doors, etc., so you need to vary the math.
 
 
Also, note that many of the textures, particularly Fcd ones will have a texture for daytime and another for nighttime, showing some lights through the windows. You can see this by changing your time of day in the scenario to nightime, let's say 04:00.
 
 
== Components of a Hangar ==
 
Let's change the BLOCK you have in Booneville.cfg to a HANGAR, it looks like this.
 
 
<code>
 
HANGAR
 
    POS 0 0 -50
 
    SCALE 1 1 1
 
    ROT 330
 
    TEX1 Roof01 1 1
 
    TEX2 Roof01 1 1
 
    TEX3 Roof01 1 1
 
END
 
</code>
 
 
Your HANGAR should look something like this:
 
[[Image:Hangar_Roof01_Day.png|200px|thumb|center|Image of a HANGAR using Roof01 texture.]]
 
 
The term POS is the same as for BLOCK, position in meters from the center of the base, the first number is North- or South+, the second is elevation above ground, the third East+ or West-.
 
 
The term SCALE is the dimensions in meters, left to right, then height, then front to back.
 
 
ROT is in degrees from East going clockwise.
 
 
TEX1 is the texture used for the front and rear walls, TEX2 is the texture used for the front and rear walls, and TEX3 is the texture used for the roof.
 
 
This Hangar has a SCALE of 10 5 15, TEX1 and TEX2 is Roof01 5 1, note that there are 5 times as many ribs on the width of the front face.
 
[[Image:Hangar_Roof01_TexX5.png|200px|thumb|center|Hangar with Roof01 on the front, Scale is 10 5 15, TEX1 and TEX2 is Roof01 5 1.]]
 
 
== Components of a HANGAR2 ==
 
A HANGAR2, which looks like a house with a peaked roof
 
<code>
 
HANGAR2
 
    POS 0 0 -50
 
    SCALE 1 1 1
 
    ROT 330
 
    TEX1 Roof01 1 1
 
    TEX2 Roof01 1 1
 
    TEX3 Roof01 1 1
 
END
 
</code>
 
 
 
== Gallery ==
 
In my Block.cfg I have added all textures from the Orbiter\Textures\ folder that can be used for blocks and shown below including night views where appropriate. So, you don't need to keep making different ones in your base to see what they look like. These blocks will be 1 meter each dimension. You can scale as needed in your base. Note: Any blocks that are visible at night have a nighttime view, but, any blocks with no nighttime view are essentially invisible at nighttime.
 
 
<gallery mode=nolines class="center">
 
Image:Block_0_01.png|<center>Block with no textures<br>Daytime</center>
 
Image:Block_Ball_01.png|<center>Ball<br>Daytime</center>
 
Image:Block_Ball2_01.png|<center>Ball2<br>Daytime</center>
 
Image:Block_Ball3_01.png|<center>Ball3<br>Daytime</center>
 
Image:Block_Cape17_Day.png|<center>Cape17<br>Daytime</center>
 
Image:Block_Cape18_Day.png|<center>Cape18<br>Daytime</center>
 
Image:Block_Cape19_Day.png|<center>Cape19<br>Daytime</center>
 
Image:Block_Cape20_Day.png|<center>Cape20<br>Daytime</center>
 
Image:Block_Cape21_Day.png|<center>Cape21<br>Daytime</center>
 
Image:Block_Cape22_Day.png|<center>Cape22<br>Daytime</center>
 
Image:Block_Cape23_Day.png|<center>Cape23<br>Daytime</center>
 
Image:Block_Cape23_Night.png|<center>Cape23<br>Nighttime</center>
 
Image:Block_Concrete_Day.png|<center>Concrete<br>Daytime</center>
 
Image:Block_Concrete1_Day.png|<center>Concrete1<br>Daytime</center>
 
Image:Block_Door01_Day.png|<center>Door01<br>Daytime</center>
 
Image:Block_Fcd01_Day.png|<center>Fcd01<br>Daytime</center>
 
Image:Block_Fcd01_Night.png|<center>Fcd01<br>Nighttme</center>
 
Image:Block_Fcd02_Day.png|<center>Fcd02<br>Daytime</center>
 
Image:Block_Fcd02_Night.png|<center>Fcd02<br>Nighttime</center>
 
Image:Block_Fcd03_Day.png|<center>Fcd03<br>Daytime</center>
 
Image:Block_Fcd03_Night.png|<center>Fcd03<br>Nighttime</center>
 
Image:Block_Fcd04_Day.png|<center>Fcd04<br>Daytime</center>
 
Image:Block_Fcd04_Night.png|<center>Fcd04<br>Nighttime</center>
 
Image:Block_Fcd05_Day.png|<center>Fcd05<br>Daytime</center>
 
Image:Block_Fcd05_Night.png|<center>Fcd05<br>Nighttime</center>
 
Image:Block_Fcd06_Day.png|<center>Fcd06<br>Daytime</center>
 
Image:Block_Fcd06_Night.png|<center>Fcd06<br>Nighttime</center>
 
Image:Block_Fcd07_Day.png|<center>Fcd07<br>Daytime</center>
 
Image:Block_Fcd08_Day.png|<center>Fcd08<br>Daytime</center>
 
Image:Block_Fcd09_Day.png|<center>Fcd09<br>Daytime</center>
 
Image:Block_Fcd10_Day.png|<center>Fcd10<br>Daytime</center>
 
Image:Block_Fcd11_Day.png|<center>Fcd11<br>Daytime</center>
 
Image:Block_Fcd11_Night.png|<center>Fcd11<br>Nighttime</center>
 
Image:Block_Fcd12_Day.png|<center>Fcd12<br>Daytime</center>
 
Image:Block_Fcd12_Night.png|<center>Fcd12<br>Nighttime</center>
 
Image:Block_Fcd13_Day.png|<center>Fcd13<br>Daytime</center>
 
Image:Block_Fcd13_Night.png|<center>Fcd13<br>Nighttime</center>
 
Image:Block_Fcd14_Day.png|<center>Fcd14<br>Daytime</center>
 
Image:Block_Fcd15_Day.png|<center>Fcd15<br>Daytime</center>
 
Image:Block_Hangrail_Day.png|<center>Hangrail<br>Daytime</center>
 
Image:Block_Hangrail_Night.png|<center>Hangrail<br>Nighttime</center>
 
Image:Block_Lpad01_Day.png|<center>Lpad01<br>Daytime</center>
 
Image:Block_Lpad01_Night.png|<center>Lpad01<br>Nighttime</center>
 
Image:Block_Lpad02_Day.png|<center>Lpad02<br>Daytime</center>
 
Image:Block_Lpad02_Night.png|<center>Lpad02<br>Nighttime</center>
 
Image:Block_Lpad02a_Day.png|<center>Lpad02a<br>Daytime</center>
 
Image:Block_Lpad02a_Night.png|<center>Lpad02a<br>Nighttime</center>
 
Image:Block_Monorail_Day.png|<center>Monorail<br>Daytime</center>
 
Image:Block_Monorail_Night.png|<center>Monorail<br>Nighttime</center>
 
Image:Block_Roof01_Day.png|<center>Roof01<br>Daytime</center>
 
Image:Block_Roof02_Day.png|<center>Roof02<br>Daytime</center>
 
Image:Block_rough1_Day.png|<center>rough1<br>Daytime</center>
 
Image:Block_Runway1_Day.png|<center>Runway1<br>Daytime</center>
 
Image:Block_Runway2_Day.png|<center>Runway2<br>Daytime</center>
 
Image:Block_Solpanel_Day.png|<center>Solpanel<br>Daytime</center>
 
Image:Block_Taxiway1_Day.png|<center>Taxiway1<br>Daytime</center>
 
Image:Block_Taxiway1_Night.png|<center>Taxiway1<br>Nighttime</center>
 
Image:Block_Taxiway2_Day.png|<center>Taxiway2<br>Daytime</center>
 
Image:Block_Taxiway2_Night.png|<center>Taxiway2<br>Nighttime</center>
 
Image:Block_tile1_Day.png|<center>tile1<br>Daytime</center>
 
Image:Block_visor_Day.png|<center>visor<br>Daytime</center>
 
Image:Block_Wall01_Day.png|<center>Wall01<br>Daytime</center>
 
Image:Block_Window01_Day.png|<center>Window01<br>Daytime</center>
 
</gallery>
 
  
[[Category:Articles]]
+
Again, save the scenario, exit to the Launchpad and re-launch.
[[Category:Tutorials]]
 

Please note that all contributions to OrbiterWiki are considered to be released under the GNU Free Documentation License 1.2 (see OrbiterWiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)

Template used on this page: