diff --git a/res/models/group/vehicle/train/P36.grp b/res/models/group/vehicle/train/P36.grp new file mode 100644 index 0000000..444573c --- /dev/null +++ b/res/models/group/vehicle/train/P36.grp @@ -0,0 +1,155 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36_body_lod0.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod1.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.5522, 0, 1.31867, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod2.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.30878, 0, 1.31597, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod3.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.11842, 0, 0.9163, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod4.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.31511, 0, 0.96936, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod5.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.31631, 0, 0.79002, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod6.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 4.69385, 0, 1.62953, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_rod7.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.98071, 0, 1.60598, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_w1_lod0.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 3.2566, 0, 0.925, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_wm_lod0.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.31626, 0, 0.925, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_w1_lod0.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0.61272, 0, 0.925, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/p36/p36_w4_lod0.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -2.54668, 0, 0.925, 1, + }, + type = "MESH", + + },{ + id = "vehicle/train/P36_Bogie1.grp", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 5.89791, 0, 0, 1 }, + type = "GROUP", + }, + { + id = "vehicle/train/P36_Bogie2.grp", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -5.49095, 0, 0, 1 }, + type = "GROUP", + }, + }, + matConfigs = { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + }, + --animations = { + --}, + events = { + drive = { + [2] = { + forward = true, + name = "rot_Rod_1", + }, + [3] = { + forward = true, + name = "rot_Rod_2", + }, + [4] = { + forward = true, + name = "rot_Rod_3", + }, + [5] = { + forward = true, + name = "rot_Rod_4", + }, + [6] = { + forward = true, + name = "rot_Rod_5", + }, + [7] = { + forward = true, + name = "rot_Rod_6", + }, + [8] = { + forward = true, + name = "rot_Rod_7", + }, + [9] = { + forward = true, + name = "rot_WheelM", + }, + [10] = { + forward = true, + name = "rot_WheelM", + }, + [11] = { + forward = true, + name = "rot_WheelM", + }, + [12] = { + forward = true, + name = "rot_WheelM", + }, + }, + }, +} +end diff --git a/res/models/group/vehicle/train/P36_Bogie1.grp b/res/models/group/vehicle/train/P36_Bogie1.grp new file mode 100644 index 0000000..f3de19f --- /dev/null +++ b/res/models/group/vehicle/train/P36_Bogie1.grp @@ -0,0 +1,22 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36_bogie1_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, + type = "MESH", + },{ + id = "vehicle/train/p36/p36_wb1_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -1.13639, 0, 0.45, 1 }, + type = "MESH", + },{ + id = "vehicle/train/p36/p36_wb1_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.21781, 0, 0.45, 1 }, + type = "MESH", + }, + }, + matConfigs = { + { 0, 0, 0, } + }, +} +end diff --git a/res/models/group/vehicle/train/P36_Bogie2.grp b/res/models/group/vehicle/train/P36_Bogie2.grp new file mode 100644 index 0000000..ab8e110 --- /dev/null +++ b/res/models/group/vehicle/train/P36_Bogie2.grp @@ -0,0 +1,22 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36_bogie2_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, + type = "MESH", + },{ + id = "vehicle/train/p36/p36_wb2_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -0.7751, 0, 0.525, 1 }, + type = "MESH", + },{ + id = "vehicle/train/p36/p36_wb2_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0.81637, 0, 0.525, 1 }, + type = "MESH", + }, + }, + matConfigs = { + { 0, 0, 0, } + }, +} +end diff --git a/res/models/group/vehicle/train/P36_Tender.grp b/res/models/group/vehicle/train/P36_Tender.grp new file mode 100644 index 0000000..81d2963 --- /dev/null +++ b/res/models/group/vehicle/train/P36_Tender.grp @@ -0,0 +1,22 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36td_body_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, + type = "MESH", + },{ + id = "vehicle/train/P36_Tender_Bogie.grp", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 2.97625, 0, 0, 1 }, + type = "GROUP", + },{ + id = "vehicle/train/P36_Tender_Bogie.grp", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -3.10901, 0, 0, 1 }, + type = "GROUP", + }, + }, + matConfigs = { + { 0, 0, 0, } + }, +} +end \ No newline at end of file diff --git a/res/models/group/vehicle/train/P36_Tender_Bogie.grp b/res/models/group/vehicle/train/P36_Tender_Bogie.grp new file mode 100644 index 0000000..ff2129b --- /dev/null +++ b/res/models/group/vehicle/train/P36_Tender_Bogie.grp @@ -0,0 +1,27 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36td_bogie_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, + type = "MESH", + },{ + id = "vehicle/train/p36/p36_wb2_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -1.56594, 0, 0.525, 1 }, + type = "MESH", + },{ + id = "vehicle/train/p36/p36_wb2_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0.0, 0, 0.525, 1 }, + type = "MESH", + }, + { + id = "vehicle/train/p36/p36_wb2_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1.56594, 0, 0.525, 1 }, + type = "MESH", + }, + }, + matConfigs = { + { 0, 0, 0, } + }, +} +end diff --git a/res/models/group/vehicle/train/P36_Tender_lod.grp b/res/models/group/vehicle/train/P36_Tender_lod.grp new file mode 100644 index 0000000..53ecab1 --- /dev/null +++ b/res/models/group/vehicle/train/P36_Tender_lod.grp @@ -0,0 +1,14 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36td_body_lod0.msh", + transf = { 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 }, + type = "MESH", + }, + }, + matConfigs = { + { 0, 0, 0, } + }, +} +end \ No newline at end of file diff --git a/res/models/group/vehicle/train/P36_lod.grp b/res/models/group/vehicle/train/P36_lod.grp new file mode 100644 index 0000000..4f3fc0d --- /dev/null +++ b/res/models/group/vehicle/train/P36_lod.grp @@ -0,0 +1,24 @@ +function data() +return { + children = { + { + id = "vehicle/train/p36/p36_body_lod1.msh", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, + }, + type = "MESH", + + }, + }, + matConfigs = { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + }, + --animations = { + --}, + events = { + + }, +} +end diff --git a/res/models/material/vehicle/train/p36.mtl b/res/models/material/vehicle/train/p36.mtl new file mode 100644 index 0000000..eaa2b3e --- /dev/null +++ b/res/models/material/vehicle/train/p36.mtl @@ -0,0 +1,57 @@ +function data() +return { + params = { + fade_out_range = { + fadeOutEndDist = 20000, + fadeOutStartDist = 10000, + + }, + map_color_reflect = { + compressionAllowed = true, + fileName = "models/vehicle/train/p36.tga", + magFilter = "LINEAR", + minFilter = "LINEAR_MIPMAP_LINEAR", + mipmapAlphaScale = 0, + type = "TWOD", + wrapS = "CLAMP_TO_EDGE", + wrapT = "CLAMP_TO_EDGE", + + }, + map_env = { + compressionAllowed = true, + fileName = "c.tga", + magFilter = "LINEAR", + minFilter = "LINEAR", + mipmapAlphaScale = 0, + type = "CUBE_MAP", + wrapS = "REPEAT", + wrapT = "REPEAT", + + }, + map_normal = { + compressionAllowed = false, + fileName = "models/vehicle/train/p36_nrml.tga", + magFilter = "LINEAR", + minFilter = "LINEAR_MIPMAP_LINEAR", + mipmapAlphaScale = 0, + type = "TWOD", + wrapS = "CLAMP_TO_EDGE", + wrapT = "CLAMP_TO_EDGE", + + }, + props = { + coeffs = { + 1, 1, 0.8, 11, + }, + + }, + two_sided = { + twoSided = false, + + }, + + }, + type = "REFLECTIVE_NRML_MAP", + +} +end \ No newline at end of file diff --git a/res/models/material/vehicle/train/p36td.mtl b/res/models/material/vehicle/train/p36td.mtl new file mode 100644 index 0000000..3a34b8d --- /dev/null +++ b/res/models/material/vehicle/train/p36td.mtl @@ -0,0 +1,57 @@ +function data() +return { + params = { + fade_out_range = { + fadeOutEndDist = 20000, + fadeOutStartDist = 10000, + + }, + map_color_reflect = { + compressionAllowed = true, + fileName = "models/vehicle/train/p36td.tga", + magFilter = "LINEAR", + minFilter = "LINEAR_MIPMAP_LINEAR", + mipmapAlphaScale = 0, + type = "TWOD", + wrapS = "CLAMP_TO_EDGE", + wrapT = "CLAMP_TO_EDGE", + + }, + map_env = { + compressionAllowed = true, + fileName = "c.tga", + magFilter = "LINEAR", + minFilter = "LINEAR", + mipmapAlphaScale = 0, + type = "CUBE_MAP", + wrapS = "REPEAT", + wrapT = "REPEAT", + + }, + map_normal = { + compressionAllowed = false, + fileName = "models/vehicle/train/p36td_nrml.tga", + magFilter = "LINEAR", + minFilter = "LINEAR_MIPMAP_LINEAR", + mipmapAlphaScale = 0, + type = "TWOD", + wrapS = "CLAMP_TO_EDGE", + wrapT = "CLAMP_TO_EDGE", + + }, + props = { + coeffs = { + 1, 1, 0.8, 11, + }, + + }, + two_sided = { + twoSided = false, + + }, + + }, + type = "REFLECTIVE_NRML_MAP", + +} +end \ No newline at end of file diff --git a/res/models/mesh/vehicle/train/p36/P36_body_lod1.msh b/res/models/mesh/vehicle/train/p36/P36_body_lod1.msh new file mode 100644 index 0000000..8ae291b --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/P36_body_lod1.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 65952, offset = 0, }, + normal = { count = 65952, offset = 65952, }, + uv0 = { count = 65952, offset = 131904, }, + tangent = { count = 65952, offset = 197856, }, + }, + materials = { "vehicle/train/p36.mtl" }, -- Material "P36" + }, + }, + vertexAttr = { + position = { count = 197856, numComp = 3, offset = 263808, }, + normal = { count = 197856, numComp = 3, offset = 461664, }, + uv0 = { count = 131904, numComp = 2, offset = 659520, }, + tangent = { count = 263808, numComp = 4, offset = 791424, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/P36_body_lod1.msh.blob b/res/models/mesh/vehicle/train/p36/P36_body_lod1.msh.blob new file mode 100644 index 0000000..6b67b89 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/P36_body_lod1.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_body_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_body_lod0.msh new file mode 100644 index 0000000..e198b7e --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_body_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 166968, offset = 0, }, + normal = { count = 166968, offset = 166968, }, + uv0 = { count = 166968, offset = 333936, }, + tangent = { count = 166968, offset = 500904, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 500904, numComp = 3, offset = 667872, }, + normal = { count = 500904, numComp = 3, offset = 1168776, }, + uv0 = { count = 333936, numComp = 2, offset = 1669680, }, + tangent = { count = 667872, numComp = 4, offset = 2003616, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_body_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_body_lod0.msh.blob new file mode 100644 index 0000000..810cf2f Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_body_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_bogie1_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_bogie1_lod0.msh new file mode 100644 index 0000000..adfb722 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_bogie1_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 5184, offset = 0, }, + normal = { count = 5184, offset = 5184, }, + uv0 = { count = 5184, offset = 10368, }, + tangent = { count = 5184, offset = 15552, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 15552, numComp = 3, offset = 20736, }, + normal = { count = 15552, numComp = 3, offset = 36288, }, + uv0 = { count = 10368, numComp = 2, offset = 51840, }, + tangent = { count = 20736, numComp = 4, offset = 62208, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_bogie1_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_bogie1_lod0.msh.blob new file mode 100644 index 0000000..d83ef44 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_bogie1_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_bogie2_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_bogie2_lod0.msh new file mode 100644 index 0000000..e72f15a --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_bogie2_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 12984, offset = 0, }, + normal = { count = 12984, offset = 12984, }, + uv0 = { count = 12984, offset = 25968, }, + tangent = { count = 12984, offset = 38952, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 38952, numComp = 3, offset = 51936, }, + normal = { count = 38952, numComp = 3, offset = 90888, }, + uv0 = { count = 25968, numComp = 2, offset = 129840, }, + tangent = { count = 51936, numComp = 4, offset = 155808, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_bogie2_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_bogie2_lod0.msh.blob new file mode 100644 index 0000000..0b2319b Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_bogie2_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod1.msh b/res/models/mesh/vehicle/train/p36/p36_rod1.msh new file mode 100644 index 0000000..c6093fb --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod1.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_1 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, 0, 0.0 }, + transl = { 0.151073, 0.0, -0.0278569 } + },{ time = 726, + rot = { 0.0, 0, 0.0 }, + transl = { 0.279985, 0.0, -0.111406 } + },{ time = 1089, + rot = { 0.0, 0, 0.0 }, + transl = { 0.367111, 0.0, -0.237928 } + },{ time = 1452, + rot = { 0.0, 0, 0.0 }, + transl = { 0.399188, 0.0, -0.388162 } + },{ time = 1815, + rot = { 0.0, 0, 0.0 }, + transl = { 0.371331, 0.0, -0.539234 } + },{ time = 2179, + rot = { 0.0, 0, 0.0 }, + transl = { 0.287781, 0.0, -0.668146 } + },{ time = 2542, + rot = { 0.0, 0, 0.0 }, + transl = { 0.161259, 0.0, -0.755273 } + },{ time = 2905, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0110264, 0.0, -0.787349 } + },{ time = 3268, + rot = { 0.0, 0, 0.0 }, + transl = { -0.140046, 0.0, -0.759492 } + },{ time = 3631, + rot = { 0.0, 0, 0.0 }, + transl = { -0.268959, 0.0, -0.675943 } + },{ time = 3995, + rot = { 0.0, 0, 0.0 }, + transl = { -0.356085, 0.0, -0.549421 } + },{ time = 4358, + rot = { 0.0, 0, 0.0 }, + transl = { -0.388161, 0.0, -0.399188 } + },{ time = 4721, + rot = { 0.0, 0, 0.0 }, + transl = { -0.360304, 0.0, -0.248115 } + },{ time = 5084, + rot = { 0.0, 0, 0.0 }, + transl = { -0.276755, 0.0, -0.119203 } + },{ time = 5447, + rot = { 0.0, 0, 0.0 }, + transl = { -0.150233, 0.0, -0.0320764 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 7200, offset = 0, }, + normal = { count = 7200, offset = 7200, }, + uv0 = { count = 7200, offset = 14400, }, + tangent = { count = 7200, offset = 21600, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 21600, numComp = 3, offset = 28800, }, + normal = { count = 21600, numComp = 3, offset = 50400, }, + uv0 = { count = 14400, numComp = 2, offset = 72000, }, + tangent = { count = 28800, numComp = 4, offset = 86400, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod1.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod1.msh.blob new file mode 100644 index 0000000..ffc5ad7 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod1.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod2.msh b/res/models/mesh/vehicle/train/p36/p36_rod2.msh new file mode 100644 index 0000000..ee69883 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod2.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_2 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, -0.508517, 0.0 }, + transl = { 0.150186, 0.0, -0.0268998 } + },{ time = 726, + rot = { 0.0, -2.0644, 0.0 }, + transl = { 0.278645, 0.0, -0.109226 } + },{ time = 1089, + rot = { 0.0, -4.44126, 0.0 }, + transl = { 0.365822, 0.0, -0.234444 } + },{ time = 1452, + rot = { 0.0, -7.27945, 0.0 }, + transl = { 0.398443, 0.0, -0.383492 } + },{ time = 1815, + rot = { 0.0, -10.1373, 0.0 }, + transl = { 0.371543, 0.0, -0.533678 } + },{ time = 2179, + rot = { 0.0, -12.5706, 0.0 }, + transl = { 0.289217, 0.0, -0.662137 } + },{ time = 2542, + rot = { 0.0, -14.2128, 0.0 }, + transl = { 0.163999, 0.0, -0.749314 } + },{ time = 2905, + rot = { 0.0, -14.8267, 0.0 }, + transl = { 0.014951, 0.0, -0.781935 } + },{ time = 3268, + rot = { 0.0, -14.3259, 0.0 }, + transl = { -0.135235, 0.0, -0.755035 } + },{ time = 3631, + rot = { 0.0, -12.7788, 0.0 }, + transl = { -0.263694, 0.0, -0.672709 } + },{ time = 3995, + rot = { 0.0, -10.4066, 0.0 }, + transl = { -0.350871, 0.0, -0.547491 } + },{ time = 4358, + rot = { 0.0, -7.56623, 0.0 }, + transl = { -0.383492, 0.0, -0.398443 } + },{ time = 4721, + rot = { 0.0, -4.70053, 0.0 }, + transl = { -0.356592, 0.0, -0.248257 } + },{ time = 5084, + rot = { 0.0, -2.2584, 0.0 }, + transl = { -0.274266, 0.0, -0.119798 } + },{ time = 5447, + rot = { 0.0, -0.611714, 0.0 }, + transl = { -0.149048, 0.0, -0.0326213 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 1248, offset = 0, }, + normal = { count = 1248, offset = 1248, }, + uv0 = { count = 1248, offset = 2496, }, + tangent = { count = 1248, offset = 3744, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 3744, numComp = 3, offset = 4992, }, + normal = { count = 3744, numComp = 3, offset = 8736, }, + uv0 = { count = 2496, numComp = 2, offset = 12480, }, + tangent = { count = 4992, numComp = 4, offset = 14976, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod2.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod2.msh.blob new file mode 100644 index 0000000..73149f4 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod2.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod3.msh b/res/models/mesh/vehicle/train/p36/p36_rod3.msh new file mode 100644 index 0000000..736eb2f --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod3.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_3 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, 3.22582, 0.0 }, + transl = { 0.00558901, 0.0, 0.0743417 } + },{ time = 726, + rot = { 0.0, 7.09545, 0.0 }, + transl = { 0.0549352, 0.0, 0.143388 } + },{ time = 1089, + rot = { 0.0, 10.0441, 0.0 }, + transl = { 0.12229, 0.0, 0.190497 } + },{ time = 1452, + rot = { 0.0, 10.9155, 0.0 }, + transl = { 0.163855, 0.0, 0.199231 } + },{ time = 1815, + rot = { 0.0, 11.5035, 0.0 }, + transl = { 0.260295, 0.0, 0.193185 } + },{ time = 2179, + rot = { 0.0, 10.1687, 0.0 }, + transl = { 0.32424, 0.0, 0.152172 } + },{ time = 2542, + rot = { 0.0, 7.52285, 0.0 }, + transl = { 0.350692, 0.0, 0.0817447 } + },{ time = 2905, + rot = { 0.0, 4.8055, 0.0 }, + transl = { 0.381212, 0.0, 0.010765 } + },{ time = 3268, + rot = { 0.0, 1.86457, 0.0 }, + transl = { 0.366042, 0.0, -0.0680419 } + },{ time = 3631, + rot = { 0.0, 0, 0.0 }, + transl = { 0.343661, 0.0, -0.125161 } + },{ time = 3995, + rot = { 0.0, -2.50929, 0.0 }, + transl = { 0.272382, 0.0, -0.175758 } + },{ time = 4358, + rot = { 0.0, -4.0444, 0.0 }, + transl = { 0.194533, 0.0, -0.195508 } + },{ time = 4721, + rot = { 0.0, -5.03039, 0.0 }, + transl = { 0.113194, 0.0, -0.185903 } + },{ time = 5084, + rot = { 0.0, -4.37699, 0.0 }, + transl = { 0.0580661, 0.0, -0.140116 } + },{ time = 5447, + rot = { 0.0, -2.20378, 0.0 }, + transl = { 0.0278978, 0.0, -0.0711018 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 1248, offset = 0, }, + normal = { count = 1248, offset = 1248, }, + uv0 = { count = 1248, offset = 2496, }, + tangent = { count = 1248, offset = 3744, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 3744, numComp = 3, offset = 4992, }, + normal = { count = 3744, numComp = 3, offset = 8736, }, + uv0 = { count = 2496, numComp = 2, offset = 12480, }, + tangent = { count = 4992, numComp = 4, offset = 14976, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod3.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod3.msh.blob new file mode 100644 index 0000000..40aa2e2 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod3.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod4.msh b/res/models/mesh/vehicle/train/p36/p36_rod4.msh new file mode 100644 index 0000000..1358265 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod4.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_4 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, 0, 0.0 }, + transl = { 0.151207, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, 0, 0.0 }, + transl = { 0.280236, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, 0, 0.0 }, + transl = { 0.367442, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, 0, 0.0 }, + transl = { 0.399552, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, 0, 0.0 }, + transl = { 0.371675, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, 0, 0.0 }, + transl = { 0.288056, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, 0, 0.0 }, + transl = { 0.161426, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0110607, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, 0, 0.0 }, + transl = { -0.140149, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, 0, 0.0 }, + transl = { -0.269179, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, 0, 0.0 }, + transl = { -0.356388, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, 0, 0.0 }, + transl = { -0.388499, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, 0, 0.0 }, + transl = { -0.360621, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, 0, 0.0 }, + transl = { -0.277, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, 0, 0.0 }, + transl = { -0.150367, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 1632, offset = 0, }, + normal = { count = 1632, offset = 1632, }, + uv0 = { count = 1632, offset = 3264, }, + tangent = { count = 1632, offset = 4896, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 4896, numComp = 3, offset = 6528, }, + normal = { count = 4896, numComp = 3, offset = 11424, }, + uv0 = { count = 3264, numComp = 2, offset = 16320, }, + tangent = { count = 6528, numComp = 4, offset = 19584, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod4.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod4.msh.blob new file mode 100644 index 0000000..db6d3e7 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod4.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod5.msh b/res/models/mesh/vehicle/train/p36/p36_rod5.msh new file mode 100644 index 0000000..165321a --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod5.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_5 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, -2.00007, 0.0 }, + transl = { 0.150945, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, -7.02997, 0.0 }, + transl = { 0.279973, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, -12.1558, 0.0 }, + transl = { 0.367179, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, -14.3783, 0.0 }, + transl = { 0.399289, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, -12.4387, 0.0 }, + transl = { 0.371412, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, -7.4337, 0.0 }, + transl = { 0.287793, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, -2.28603, 0.0 }, + transl = { 0.161163, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0107961, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, -1.70791, 0.0 }, + transl = { -0.140411, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, -6.45565, 0.0 }, + transl = { -0.269439, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, -11.784, 0.0 }, + transl = { -0.35665, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, -14.342, 0.0 }, + transl = { -0.388762, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, -12.0995, 0.0 }, + transl = { -0.360883, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, -6.85426, 0.0 }, + transl = { -0.277263, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, -1.9687, 0.0 }, + transl = { -0.15063, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 864, offset = 0, }, + normal = { count = 864, offset = 864, }, + uv0 = { count = 864, offset = 1728, }, + tangent = { count = 864, offset = 2592, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 2592, numComp = 3, offset = 3456, }, + normal = { count = 2592, numComp = 3, offset = 6048, }, + uv0 = { count = 1728, numComp = 2, offset = 8640, }, + tangent = { count = 3456, numComp = 4, offset = 10368, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod5.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod5.msh.blob new file mode 100644 index 0000000..efc628d Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod5.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod6.msh b/res/models/mesh/vehicle/train/p36/p36_rod6.msh new file mode 100644 index 0000000..93344d8 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod6.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_6 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, -10.0647, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, -18.8602, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, -24.8427, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, -27.0319, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, -25.1321, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, -19.397, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, -10.7552, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, -0.712303, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, 9.26297, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, 18.0265, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, 24.4135, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, 26.9537, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, 24.7408, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, 18.5779, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, 9.94203, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 192, offset = 0, }, + normal = { count = 192, offset = 192, }, + uv0 = { count = 192, offset = 384, }, + tangent = { count = 192, offset = 576, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 576, numComp = 3, offset = 768, }, + normal = { count = 576, numComp = 3, offset = 1344, }, + uv0 = { count = 384, numComp = 2, offset = 1920, }, + tangent = { count = 768, numComp = 4, offset = 2304, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod6.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod6.msh.blob new file mode 100644 index 0000000..96e29c5 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod6.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_rod7.msh b/res/models/mesh/vehicle/train/p36/p36_rod7.msh new file mode 100644 index 0000000..f9f18eb --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_rod7.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_Rod_7 = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, -1.77418, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, -7.90454, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, -14.9559, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, -19.0845, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, -28.4965, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, -34.8313, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, -37.4771, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, -40.1945, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, -38.1354, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, -35.3004, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, -27.5093, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, -19.0444, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, -10.0304, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, -4.37699, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, -2.20378, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 2016, offset = 0, }, + normal = { count = 2016, offset = 2016, }, + uv0 = { count = 2016, offset = 4032, }, + tangent = { count = 2016, offset = 6048, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 6048, numComp = 3, offset = 8064, }, + normal = { count = 6048, numComp = 3, offset = 14112, }, + uv0 = { count = 4032, numComp = 2, offset = 20160, }, + tangent = { count = 8064, numComp = 4, offset = 24192, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_rod7.msh.blob b/res/models/mesh/vehicle/train/p36/p36_rod7.msh.blob new file mode 100644 index 0000000..ef6093f Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_rod7.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_w1_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_w1_lod0.msh new file mode 100644 index 0000000..a11817c --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_w1_lod0.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_WheelM = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, 22.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, 45.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, 67.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, 90.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, 112.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, 135.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, 157.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, 180.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, 202.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, 225.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, 247.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, 270.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, 292.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, 315.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, 337.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 360, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 21456, offset = 0, }, + normal = { count = 21456, offset = 21456, }, + uv0 = { count = 21456, offset = 42912, }, + tangent = { count = 21456, offset = 64368, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 64368, numComp = 3, offset = 85824, }, + normal = { count = 64368, numComp = 3, offset = 150192, }, + uv0 = { count = 42912, numComp = 2, offset = 214560, }, + tangent = { count = 85824, numComp = 4, offset = 257472, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_w1_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_w1_lod0.msh.blob new file mode 100644 index 0000000..ce0b13d Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_w1_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_w4_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_w4_lod0.msh new file mode 100644 index 0000000..3f3b109 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_w4_lod0.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_WheelM = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, 22.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, 45.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, 67.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, 90.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, 112.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, 135.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, 157.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, 180.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, 202.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, 225.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, 247.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, 270.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, 292.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, 315.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, 337.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 360, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 21984, offset = 0, }, + normal = { count = 21984, offset = 21984, }, + uv0 = { count = 21984, offset = 43968, }, + tangent = { count = 21984, offset = 65952, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 65952, numComp = 3, offset = 87936, }, + normal = { count = 65952, numComp = 3, offset = 153888, }, + uv0 = { count = 43968, numComp = 2, offset = 219840, }, + tangent = { count = 87936, numComp = 4, offset = 263808, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_w4_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_w4_lod0.msh.blob new file mode 100644 index 0000000..52e82d4 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_w4_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_wb1_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_wb1_lod0.msh new file mode 100644 index 0000000..2b304ca --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_wb1_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 5952, offset = 0, }, + normal = { count = 5952, offset = 5952, }, + uv0 = { count = 5952, offset = 11904, }, + tangent = { count = 5952, offset = 17856, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 17856, numComp = 3, offset = 23808, }, + normal = { count = 17856, numComp = 3, offset = 41664, }, + uv0 = { count = 11904, numComp = 2, offset = 59520, }, + tangent = { count = 23808, numComp = 4, offset = 71424, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_wb1_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_wb1_lod0.msh.blob new file mode 100644 index 0000000..63b01b9 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_wb1_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_wb2_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_wb2_lod0.msh new file mode 100644 index 0000000..a8a2304 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_wb2_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 4416, offset = 0, }, + normal = { count = 4416, offset = 4416, }, + uv0 = { count = 4416, offset = 8832, }, + tangent = { count = 4416, offset = 13248, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 13248, numComp = 3, offset = 17664, }, + normal = { count = 13248, numComp = 3, offset = 30912, }, + uv0 = { count = 8832, numComp = 2, offset = 44160, }, + tangent = { count = 17664, numComp = 4, offset = 52992, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_wb2_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_wb2_lod0.msh.blob new file mode 100644 index 0000000..463d3fe Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_wb2_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36_wm_lod0.msh b/res/models/mesh/vehicle/train/p36/p36_wm_lod0.msh new file mode 100644 index 0000000..e06b243 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36_wm_lod0.msh @@ -0,0 +1,83 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { +animations = { + rot_WheelM = { + type = "KEYFRAME", + params = { + origin = { 0, 0, 0, }, + keyframes = { + { time = 0, + rot = { 0.0, 0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 363, + rot = { 0.0, 22.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 726, + rot = { 0.0, 45.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1089, + rot = { 0.0, 67.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1452, + rot = { 0.0, 90.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 1815, + rot = { 0.0, 112.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2179, + rot = { 0.0, 135.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2542, + rot = { 0.0, 157.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 2905, + rot = { 0.0, 180.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3268, + rot = { 0.0, 202.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3631, + rot = { 0.0, 225.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 3995, + rot = { 0.0, 247.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4358, + rot = { 0.0, 270.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 4721, + rot = { 0.0, 292.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5084, + rot = { 0.0, 315.0, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5447, + rot = { 0.0, 337.5, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + },{ time = 5811, + rot = { 0.0, 360, 0.0 }, + transl = { 0.0, 0.0, 0.0 } + }, + } + } + }, + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 22176, offset = 0, }, + normal = { count = 22176, offset = 22176, }, + uv0 = { count = 22176, offset = 44352, }, + tangent = { count = 22176, offset = 66528, }, + }, + materials = { "vehicle/train/p36.mtl" }, + }, + }, + vertexAttr = { + position = { count = 66528, numComp = 3, offset = 88704, }, + normal = { count = 66528, numComp = 3, offset = 155232, }, + uv0 = { count = 44352, numComp = 2, offset = 221760, }, + tangent = { count = 88704, numComp = 4, offset = 266112, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36_wm_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36_wm_lod0.msh.blob new file mode 100644 index 0000000..fbd978d Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36_wm_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36td_body_lod0.msh b/res/models/mesh/vehicle/train/p36/p36td_body_lod0.msh new file mode 100644 index 0000000..e85a4ec --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36td_body_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 25140, offset = 0, }, + normal = { count = 25140, offset = 25140, }, + uv0 = { count = 25140, offset = 50280, }, + tangent = { count = 25140, offset = 75420, }, + }, + materials = { "vehicle/train/p36td.mtl" }, + }, + }, + vertexAttr = { + position = { count = 75420, numComp = 3, offset = 100560, }, + normal = { count = 75420, numComp = 3, offset = 175980, }, + uv0 = { count = 50280, numComp = 2, offset = 251400, }, + tangent = { count = 100560, numComp = 4, offset = 301680, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36td_body_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36td_body_lod0.msh.blob new file mode 100644 index 0000000..699e742 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36td_body_lod0.msh.blob differ diff --git a/res/models/mesh/vehicle/train/p36/p36td_bogie_lod0.msh b/res/models/mesh/vehicle/train/p36/p36td_bogie_lod0.msh new file mode 100644 index 0000000..6ecc539 --- /dev/null +++ b/res/models/mesh/vehicle/train/p36/p36td_bogie_lod0.msh @@ -0,0 +1,23 @@ +-- Generated by Train Fever Model Converter version 0.3.5481.4047 +function data() return { + animations = { + }, + matConfigs = { { 0 } }, + subMeshes = { + { -- Object 0 + indices = { + position = { count = 14640, offset = 0, }, + normal = { count = 14640, offset = 14640, }, + uv0 = { count = 14640, offset = 29280, }, + tangent = { count = 14640, offset = 43920, }, + }, + materials = { "vehicle/train/p36td.mtl" }, + }, + }, + vertexAttr = { + position = { count = 43920, numComp = 3, offset = 58560, }, + normal = { count = 43920, numComp = 3, offset = 102480, }, + uv0 = { count = 29280, numComp = 2, offset = 146400, }, + tangent = { count = 58560, numComp = 4, offset = 175680, }, + }, +} end diff --git a/res/models/mesh/vehicle/train/p36/p36td_bogie_lod0.msh.blob b/res/models/mesh/vehicle/train/p36/p36td_bogie_lod0.msh.blob new file mode 100644 index 0000000..837e321 Binary files /dev/null and b/res/models/mesh/vehicle/train/p36/p36td_bogie_lod0.msh.blob differ diff --git a/res/models/model/vehicle/train/p36.mdl b/res/models/model/vehicle/train/p36.mdl new file mode 100644 index 0000000..eea5871 --- /dev/null +++ b/res/models/model/vehicle/train/p36.mdl @@ -0,0 +1,173 @@ +function data() +return { + boundingInfo = { + bbMax = { + 8.44359, 1.7639, 5.15999, + }, + bbMin = { + -20.90456, -1.7323, -0.0299461, + }, + + }, + collider = { + params = { + + }, + type = "MESH", + + }, + lods = { + { + animations = { + + }, + children = { + { + id = "vehicle/train/P36.grp", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, + }, + type = "GROUP", + + },{ + id = "vehicle/train/P36_Tender.grp", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -14.61206, 0, 0, 1, + }, + type = "GROUP", + + }, + }, + events = { + drive = { + [1] = { + forward = true, + name = "drive", + } + + }, + + }, + matConfigs = { + { + 0, 0, + }, + }, + static = false, + visibleFrom = 0, + visibleTo = 500, + + }, + { + animations = { + + }, + children = { + { + id = "vehicle/train/P36_lod.grp", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, + }, + type = "GROUP", + + },{ + id = "vehicle/train/P36_Tender_lod.grp", + transf = { + 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -14.61206, 0, 0, 1, + }, + type = "GROUP", + + }, + }, + events = { + }, + matConfigs = { + { + 0, 0, + }, + }, + static = false, + visibleFrom = 500, + visibleTo = 2500, + + }, + }, + metadata = { + description = { + name = _("П36"), + description = _( + "Последний советский магистральный пассажирский паровоз. За характерные полосы-лампасы по бокам был прозван Генералом. Паровоз П36 создавался как эквивалент тяжёлому ИС, способный работать на подавляющем большинстве железных дорог СССР (у паровоза ИС была слишком высокая нагрузка на ось). До появления тепловозов П36 успел вытеснить устаревшие паровозы Су с железных дорог Советского Союза." ) + }, + railVehicle = { + topSpeed = 125.0, + weight = 133.2, + engines = { + { type = "STEAM", power = 2263.0, tractiveEffort = 179.0 } + }, + configs = { + { + axles = { + "vehicle/train/p36/p36_wb1_lod0.msh", + "vehicle/train/p36/p36_wb2_lod0.msh", + }, + fakeBogies = { + {group = 2, position = 0, offset = 0}, + {group = 10, position = 3.2566, offset = 0}, + {group = 11, position = 1.31626, offset = 0}, + {group = 12, position = -0.61272, offset = 0}, + {group = 13, position = -2.54668, offset = 0}, + }, + }, + }, + soundSet = { name = "train_steam_modern"} + }, + transportVehicle = { + carrier = "RAIL" + }, + availability = { + yearFrom = 1950, + yearTo = 1956 + }, + cost = { + price = 1400000 + }, + maintenance = { + runningCosts = 825000, + lifespan = 45 + }, + particleSystem = { + emitters = { + { + position = { 5.93227, .0, 5.1 }, + velocity = { .0, .0, 10.0 }, + color = { .3, .3, .3 }, + frequency = 100, + lifeTime = 15.0, + size01 = { 1, 12.0 }, + child = 1 + }, + { + position = { 5.93227, 1.1829, .6349 }, + velocity = { .0, 4.0, 0.0 }, + color = { .4, .4, .4 }, + frequency = 12, + lifeTime = 10.0, + size01 = { .8, 10.0 }, + child = 1 + }, + { + position = { 5.93227, -1.1829, .6349 }, + velocity = { .0, -4.0, 0.0 }, + color = { .4, .4, .4 }, + frequency = 12, + lifeTime = 10.0, + size01 = { .8, 10.0 }, + child = 1 + } + + } + } + }, + +} +end diff --git a/res/textures/models/vehicle/train/p36.tga b/res/textures/models/vehicle/train/p36.tga new file mode 100644 index 0000000..48c60c1 Binary files /dev/null and b/res/textures/models/vehicle/train/p36.tga differ diff --git a/res/textures/models/vehicle/train/p36_nrml.tga b/res/textures/models/vehicle/train/p36_nrml.tga new file mode 100644 index 0000000..f393a98 Binary files /dev/null and b/res/textures/models/vehicle/train/p36_nrml.tga differ diff --git a/res/textures/models/vehicle/train/p36td.tga b/res/textures/models/vehicle/train/p36td.tga new file mode 100644 index 0000000..d37dac4 Binary files /dev/null and b/res/textures/models/vehicle/train/p36td.tga differ diff --git a/res/textures/models/vehicle/train/p36td_nrml.tga b/res/textures/models/vehicle/train/p36td_nrml.tga new file mode 100644 index 0000000..d95f50d Binary files /dev/null and b/res/textures/models/vehicle/train/p36td_nrml.tga differ diff --git a/res/textures/ui/models_small/vehicle/train/p36.tga b/res/textures/ui/models_small/vehicle/train/p36.tga new file mode 100644 index 0000000..b1efb5c Binary files /dev/null and b/res/textures/ui/models_small/vehicle/train/p36.tga differ