KIND Interior
(→controlset) |
m |
||
| Line 1: | Line 1: | ||
[[KIND Interior]] provides the basis for a building or vehicle interior, with or without control levers and dials. | [[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. | + | This asset type inherits all mesh display characteristics, and adds interior-specific functionality such as control levers. Please read [[HowTo/Build a cab interior]] for a step-by-step guide to creating an Interior asset. |
==KIND Hierarchy== | ==KIND Hierarchy== | ||
Revision as of 22:06, 10 February 2013
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. Please read HowTo/Build a cab interior for a step-by-step guide to creating an Interior asset.
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: KUID
- Desc: Specifies a 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?