KIND Interior

From TrainzOnline
Revision as of 15:22, 12 May 2011 by Jamesmoody (Talk | contribs)

Jump to: navigation, search

KIND Interior provides the basis for an building of vehicle interior, with or without control levers and dials.

This asset type inherits all mesh display characteristics, and adds interior-specific functionality such as control levers.

Contents

KIND Hierarchy

Parent Classes

Child Classes

  • none.

Supported Tags

Each interior asset supports the following tags. Each tag is shown here with its default value.


kind "interior"
cameralist
{
  camera0                               0,0,0,0,0
}
soundscript
{
}
cameradefault                           0
cabin-visible-from-outside              0
outside-visible-from-cabin              0
mesh-table
{
}


cameralist

Type: CameraList Container
Desc: Lists the different camera view positions and orientations this interior has.

soundscript

Type: SoundScript Container
Desc: Details sounds that a cab interior can produce.

cameradefault

Type: Integer
Desc: Defines which of the cameras in 'cameralist' is the default camera (the one selected when the user first goes into cab view mode).

cabin-visible-from-outside

Type: Boolean
Desc: If true, makes the cab mesh visible from the outside view.

This is intended for objects with simple but obviously visible cab controls that are not enclosed - e.g. the controls to operate a transfer table. It would be far too much of a performance impact to use this on locomotive models.

outside-visible-from-cabin

Type: Boolean
Desc: If true, makes the loco body mesh visible while in the cab interior view.

While using this on a traincar is not considered problematic from a performance perspective, please note this will require a very carefully designed cab and loco asset - both the inside of the loco mesh and the cab interior will be visible at the same time, and unless done very carefully, this is likely to cause problems.

mesh-table

Type: MeshTable(Interior) Container
Desc: All the meshes for the cab interior (the shell itself, along with all the controls and gauges) are listed here. A mesh table for an interior has a number of additional options that a normal mesh table does not.

Example Config.txt

Sample config.txt file for a interior asset, with the Standard Tags excluded for brevity:


kind "interior"

cameralist {

 camera0                               -1.236,0.173,0.392,0.511,-0.155
 camera1                               -1.278,-0.176,0.392,0.511,-0.155
 camera2                               -1.247,0.344,0.52,6.708,-0.403
 camera3                               -0.113,0.965,0.52,6.312,-0.377
 camera4                               1.35,0.15,0.52,5.71,-0.265
 camera5                               1.374,0.208,0.205,6.048,-0.06
 camera6                               -0.754,0.926,1.011,6.636,-0.516
 camera7                               -1.293,0.449,0.459,6.757,-0.342

} cameradefault 0

mesh-table {

 default
 {
   mesh                                "c_interior.im"
   auto-create                         1
 }
 
 wheelslip_light
 {
   kind                                "light"
   mesh                                "wheelslip_light.im"
   auto-create                         0
 }
 
 bptrainbrakepipe_needle2
 {
   kind                                "digital-dial-prs"
   mesh                                "brakeneedle.im"
   att                                 "a.brakepipe2"
   limits                              0,55
   font                                "arial"
   fontsize                            0.007
   fontcolor                           80,240,120
   auto-create                         1
 }
 
 speedo_needle2
 {
   kind                                "digital-dial-spd"
   mesh                                "brakeneedle.im"
   att                                 "a.digispeedo"
   limits                              0,55
   font                                "arial"
   fontsize                            0.01
   fontcolor                           0,0,0
   auto-create                         1
 }
 
 throttle_lever
 {
   kind                                "lever"
   mesh                                "throttle.im"
   att                                 "a.throttle"
   limits                              0,8
   angles                              0,1.69
   notches                             0,0.125,0.25,0.375,0.5,0.625,0.75,0.875,1
   notchheight                         1,2,2,2,2,2,2,2,1
   radius                              0.35
   mousespeed                          -1
   auto-create                         1
 }
 
 dynamicbrake_lever
 {
   kind                                "lever"
   mesh                                "dynamic_handle.im"
   att                                 "a.dynamic"
   limits                              0,2
   angles                              0,-1.69
   notches                             0,1
   notchheight                         0.1,1
   mousespeed                          -1
   radius                              0.35
   auto-create                         1
 }
 
 trainbrakelap_lever
 {
   kind                                "lever"
   auto-create                         1
   mesh                                "trainbrake_handle.im"
   att                                 "a.trainbrake_handle"
   limits                              0,4
   angles                              0,-2
   notches                             0,0.25,0.5,0.75,1
   notchheight                         2,2,2,2,2
   mousespeed                          1
 }
 
 independantbrake_lever
 {
   kind                                "lever"
   mesh                                "indy_handle.im"
   att                                 "a.ind"
   limits                              0,32
   angles                              0.94,0
   notches                             0,0.5,1
   notchheight                         1,1,1
   radius                              0.35
   mousespeed                          1
   auto-create                         1
 }
 
 flow_needle
 {
   kind                                "needle"
   mesh                                "flowneedle.im"
   att                                 "a.bpflow"
   limits                              0,1050
   auto-create                         1
 }
 
 bplocomain_needle
 {
   kind                                "needle"
   mesh                                "brakeneedlered.im"
   att                                 "a.mainres"
   limits                              0,1240
   auto-create                         1
 }
 
 bploco_equaliser
 {
   kind                                "needle"
   mesh                                "brakeneedle.im"
   att                                 "a.eqres"
   limits                              0,1240
   auto-create                         1
 }
 
 bptrainbrakecylinder_needle
 {
   kind                                "needle"
   mesh                                "brakeneedlered.im"
   att                                 "a.brakecyl"
   limits                              -50,1390
   auto-create                         1
 }
 
 bptrainbrakepipe_needle
 {
   kind                                "needle"
   mesh                                "brakeneedle.im"
   att                                 "a.brakepipe"
   limits                              0,1240
   auto-create                         1
 }
 
 speedo_needle
 {
   kind                                "needle"
   mesh                                "speedo_pointer.im"
   att                                 "a.speedo"
   limits                              0,43
   auto-create                         1
 }
 
 ampmeter_needle
 {
   kind                                "needle"
   mesh                                "needleamps.im"
   att                                 "a.ampmeter"
   limits                              0,1700
   angles                              0,3.02058
   auto-create                         1
 }
 
 reverser_lever
 {
   kind                                "lever"
   mesh                                "reverser_handle.im"
   att                                 "a.throttle01"
   limits                              0,2
   angles                              -0.55,0.55
   notches                             0,0.5,1
   notchheight                         1,1,1
   mousespeed                          -1
   auto-create                         1
 }
 
 right_sliding_window
 {
   mesh                                "window1.im"
   auto-create                         1
   att                                 "a.window1"
   att-parent                          "default"
   limits                              0,1
   angles                              0,-0.009
   notches                             0,1
   notchheight                         1,1
   kind                                "lever"
 }
 
 right_sliding_window2
 {
   mesh                                "window2.im"
   auto-create                         1
   att                                 "a.window2"
   att-parent                          "default"
   limits                              0,1
   angles                              0,0.009
   notches                             0,1
   notchheight                         1,1
   kind                                "lever"
   mousespeed                          -1
 }
 
 left_sliding_window
 {
   mesh                                "window3.im"
   auto-create                         1
   att                                 "a.window3"
   att-parent                          "default"
   limits                              0,1
   angles                              0,-0.009
   notches                             0,1
   notchheight                         1,1
   kind                                "lever"
   mousespeed                          -1
 }
 
 left_sliding_window2
 {
   mesh                                "window4.im"
   auto-create                         1
   att                                 "a.window4"
   att-parent                          "default"
   limits                              0,1
   angles                              0,0.009
   notches                             0,1
   notchheight                         1,1
   kind                                "lever"
   mousespeed                          1
 }
 
 light_switch
 {
   kind                                "lever"
   att                                 "a.hdlt"
   mesh                                "hdltswtch.im"
   limits                              0,1
   angles                              0,2
   notches                             0,1
   notchheight                         0.1,0.1
   mousespeed                          -1
   auto-create                         1
 }
 
 horn
 {
   kind                                "pulllever"
   mesh                                "horn.im"
   att                                 "a.horn"
   auto-create                         1
   angles                              0,-0.55
   limits                              0,1
   mousespeed                          -1
   radius                              -0.02
   notches                             0,1
   notchheight                         0,0
 }

}

Downloads

Attach sample files here?

Categories

Personal tools