KIND Interior
KIND Interior provides the basis for a building or 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 controlset "" 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. Sounds may be triggered by the asset script, or by object animations.
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). e.g. "cameradefault 3" will make "camera3" the default camera view.
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, as locomotive cabs are very performance intensive.
outside-visible-from-cabin
- Type: Boolean
- Desc: If true, makes the loco body mesh visible while in the cab interior view.
This is intended to be used with an interior where the cab controls that are not in an enclosed space - e.g. a transfer table. 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 graphical problems with overlapping polygons and unexpectedly visible or opaque surfaces.
controlset
- Type: Text
- Desc: Specifies a [[KIND_Controlset|controlset] asset used to send script messages to this interiors custom script. Optional.
mesh-table
- Type: MeshTable Container (Interior version)
- 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?