stuff
This commit is contained in:
BIN
objects/Material.material
Normal file
BIN
objects/Material.material
Normal file
Binary file not shown.
21
objects/foundation.tscn
Normal file
21
objects/foundation.tscn
Normal file
@@ -0,0 +1,21 @@
|
||||
[gd_scene load_steps=4 format=2]
|
||||
|
||||
[sub_resource type="SpatialMaterial" id=2]
|
||||
|
||||
[sub_resource type="CubeMesh" id=1]
|
||||
material = SubResource( 2 )
|
||||
|
||||
[sub_resource type="ConcavePolygonShape" id=3]
|
||||
data = PoolVector3Array( -1, 1, 1, 1, 1, 1, -1, -1, 1, 1, 1, 1, 1, -1, 1, -1, -1, 1, 1, 1, -1, -1, 1, -1, 1, -1, -1, -1, 1, -1, -1, -1, -1, 1, -1, -1, 1, 1, 1, 1, 1, -1, 1, -1, 1, 1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, 1, -1, -1, -1, -1, 1, 1, -1, -1, 1, -1, -1, -1, 1, 1, 1, -1, 1, 1, 1, 1, -1, -1, 1, 1, -1, 1, -1, 1, 1, -1, -1, -1, 1, 1, -1, 1, -1, -1, -1, 1, -1, 1, 1, -1, -1, -1, -1, -1 )
|
||||
|
||||
[node name="foundation" type="Spatial"]
|
||||
|
||||
[node name="MeshInstance" type="MeshInstance" parent="."]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0 )
|
||||
mesh = SubResource( 1 )
|
||||
material/0 = null
|
||||
|
||||
[node name="StaticBody" type="StaticBody" parent="MeshInstance"]
|
||||
|
||||
[node name="CollisionShape" type="CollisionShape" parent="MeshInstance/StaticBody"]
|
||||
shape = SubResource( 3 )
|
||||
15
objects/house.gd
Normal file
15
objects/house.gd
Normal file
@@ -0,0 +1,15 @@
|
||||
extends Spatial
|
||||
|
||||
|
||||
# Declare member variables here. Examples:
|
||||
# var a = 2
|
||||
# var b = "text"
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
for g in get_children():
|
||||
if g.name.begins_with("spawn"):
|
||||
g.add_to_group("spawn")
|
||||
$spawn_npc1.add_to_group("keep")
|
||||
|
||||
BIN
objects/palace.bin
Normal file
BIN
objects/palace.bin
Normal file
Binary file not shown.
123
objects/palace.gd
Normal file
123
objects/palace.gd
Normal file
@@ -0,0 +1,123 @@
|
||||
extends Spatial
|
||||
|
||||
var courtyard_tile: PackedScene = load("res://objects/courtyard-tile.scn")
|
||||
var foundation_tile: PackedScene = load("res://objects/foundation.scn")
|
||||
var room_tile: PackedScene = load("res://objects/block-room-corridoor.scn")
|
||||
var tower_walls_tile: PackedScene = load("res://objects/tower-walls.scn")
|
||||
var tower_floor_tile: PackedScene = load("res://objects/tower_floor.scn")
|
||||
var stairs_tile: PackedScene = load("res://objects/stairs.scn")
|
||||
var gate_bottom_tile: PackedScene = load("res://objects/gate_bottom.scn")
|
||||
var gate_top_tile: PackedScene = load("res://objects/gate-top.scn")
|
||||
var entry_tile: PackedScene = load("res://objects/block-room-entry.scn")
|
||||
var roof_tile: PackedScene = load("res://objects/roof.scn")
|
||||
var tower_roof_tile: PackedScene = load("res://objects/tower-roof.scn")
|
||||
|
||||
const tile_size = 8
|
||||
const palace_size = 8
|
||||
const layers = 4
|
||||
|
||||
|
||||
func _ready():
|
||||
var voffset = 0.0
|
||||
for layer in range(layers):
|
||||
match layer:
|
||||
0:
|
||||
voffset += 0.0
|
||||
1:
|
||||
voffset += 1
|
||||
2:
|
||||
voffset += 4
|
||||
_:
|
||||
voffset += 4
|
||||
for i in range(palace_size):
|
||||
for j in range(palace_size):
|
||||
var x = i * tile_size - palace_size * tile_size / 2
|
||||
var z = j * tile_size - palace_size * tile_size / 2
|
||||
if layer == 0:
|
||||
var ct = courtyard_tile.instance()
|
||||
var xform = Transform(Basis(), Vector3(x, voffset, z))
|
||||
if i > 0 && i < palace_size - 1:
|
||||
if j > 0 && j < palace_size - 1:
|
||||
call_deferred("place", ct, xform)
|
||||
if i in [0, palace_size - 1] || j in [0, palace_size - 1]:
|
||||
call_deferred("place", ct, xform)
|
||||
else:
|
||||
var ct = room_tile.instance()
|
||||
var tower_angles = {
|
||||
0:
|
||||
{
|
||||
0: -PI / 2.0,
|
||||
palace_size - 1: 0
|
||||
},
|
||||
palace_size - 1:
|
||||
{
|
||||
0: PI,
|
||||
palace_size - 1: PI / 2.0
|
||||
}
|
||||
}
|
||||
var xform = Transform(Basis(), Vector3(x, voffset, z))
|
||||
if i == 0 && !j in [0, palace_size - 1]:
|
||||
xform.basis = Basis().rotated(Vector3.UP, -PI / 2.0)
|
||||
spawn_wall(layer, i, j, xform)
|
||||
elif i == palace_size - 1 && !j in [0, palace_size - 1]:
|
||||
xform.basis = Basis().rotated(Vector3.UP, PI / 2.0)
|
||||
spawn_wall(layer, i, j, xform)
|
||||
elif !i in [0, palace_size - 1] && j == 0:
|
||||
xform.basis = Basis().rotated(Vector3.UP, PI)
|
||||
spawn_wall(layer, i, j, xform)
|
||||
elif !i in [0, palace_size - 1] && j == palace_size - 1:
|
||||
xform.basis = Basis()
|
||||
spawn_wall(layer, i, j, xform)
|
||||
elif tower_angles.has(i) && tower_angles[i].has(j):
|
||||
xform.basis = Basis().rotated(Vector3.UP, tower_angles[i][j])
|
||||
if layer == layers - 1:
|
||||
var twr = tower_roof_tile.instance()
|
||||
call_deferred("place", twr, xform)
|
||||
else:
|
||||
var tw = tower_walls_tile.instance()
|
||||
call_deferred("place", tw, xform)
|
||||
var st = stairs_tile.instance()
|
||||
call_deferred("place", st, xform)
|
||||
if layer == 1:
|
||||
var tfl = tower_floor_tile.instance()
|
||||
call_deferred("place", tfl, xform)
|
||||
var car = Spatial.new()
|
||||
car.add_to_group("spawn")
|
||||
car.add_to_group("keep")
|
||||
car.add_to_group("car")
|
||||
add_child(car)
|
||||
for e in range(5):
|
||||
var major_f = Spatial.new()
|
||||
major_f.add_to_group("spawn")
|
||||
if e == 0:
|
||||
major_f.add_to_group("male")
|
||||
else:
|
||||
major_f.add_to_group("female")
|
||||
major_f.add_to_group("keep")
|
||||
add_child(major_f)
|
||||
major_f.global_transform = Transform(Basis(), Vector3(cos(PI / 3 * e) * 2.0, 0, sin(PI / 3 * e) * 2.0) + Vector3(10.0, 0, 0))
|
||||
print("PALACE done")
|
||||
func place(obj, where):
|
||||
add_child(obj)
|
||||
obj.transform = where
|
||||
print("placed at ", where.origin)
|
||||
|
||||
func spawn_wall(layer:int, i: int, j: int, xform: Transform):
|
||||
if layer == layers - 1:
|
||||
var rt = roof_tile.instance()
|
||||
call_deferred("place", rt, xform)
|
||||
elif (j != palace_size / 2.0 && i != palace_size / 2.0)|| layer > 2:
|
||||
var ct = room_tile.instance()
|
||||
call_deferred("place", ct, xform)
|
||||
elif (j == palace_size / 2.0 && i != palace_size / 2.0) && layer == 1:
|
||||
var ent = entry_tile.instance()
|
||||
call_deferred("place", ent, xform)
|
||||
elif (j != palace_size / 2.0 && i == palace_size / 2.0) && layer == 1:
|
||||
var gw = gate_bottom_tile.instance()
|
||||
call_deferred("place", gw, xform)
|
||||
elif (j != palace_size / 2.0 && i == palace_size / 2.0) && layer == 2:
|
||||
var gw = gate_top_tile.instance()
|
||||
call_deferred("place", gw, xform)
|
||||
elif (j == palace_size / 2.0 && i != palace_size / 2.0) && layer == 2:
|
||||
var ct = room_tile.instance()
|
||||
call_deferred("place", ct, xform)
|
||||
889
objects/palace.gltf
Normal file
889
objects/palace.gltf
Normal file
@@ -0,0 +1,889 @@
|
||||
{
|
||||
"asset" : {
|
||||
"generator" : "Khronos glTF Blender I/O v1.6.16",
|
||||
"version" : "2.0"
|
||||
},
|
||||
"scene" : 0,
|
||||
"scenes" : [
|
||||
{
|
||||
"name" : "Scene",
|
||||
"nodes" : [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9,
|
||||
10
|
||||
]
|
||||
}
|
||||
],
|
||||
"nodes" : [
|
||||
{
|
||||
"mesh" : 0,
|
||||
"name" : "courtyard-tile-col",
|
||||
"translation" : [
|
||||
94,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 1,
|
||||
"name" : "block-room-corridoor-col",
|
||||
"translation" : [
|
||||
83,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 2,
|
||||
"name" : "foundation-col",
|
||||
"translation" : [
|
||||
104,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 3,
|
||||
"name" : "tower-walls-col",
|
||||
"translation" : [
|
||||
56,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 4,
|
||||
"name" : "stairs-col",
|
||||
"translation" : [
|
||||
73,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 5,
|
||||
"name" : "gate_bottom-col",
|
||||
"translation" : [
|
||||
115,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 6,
|
||||
"name" : "gate-top-col",
|
||||
"translation" : [
|
||||
115,
|
||||
4,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 7,
|
||||
"name" : "tower_floor-col",
|
||||
"translation" : [
|
||||
66,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 8,
|
||||
"name" : "block-room-entry-col",
|
||||
"translation" : [
|
||||
46,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 9,
|
||||
"name" : "roof-col",
|
||||
"translation" : [
|
||||
36,
|
||||
0,
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 10,
|
||||
"name" : "tower-roof-col",
|
||||
"translation" : [
|
||||
26,
|
||||
0,
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"materials" : [
|
||||
{
|
||||
"name" : "palace",
|
||||
"pbrMetallicRoughness" : {
|
||||
"baseColorFactor" : [
|
||||
0.800000011920929,
|
||||
0.800000011920929,
|
||||
0.800000011920929,
|
||||
1
|
||||
],
|
||||
"metallicFactor" : 0,
|
||||
"roughnessFactor" : 0.5
|
||||
}
|
||||
}
|
||||
],
|
||||
"meshes" : [
|
||||
{
|
||||
"name" : "Cube",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 0,
|
||||
"NORMAL" : 1,
|
||||
"TEXCOORD_0" : 2
|
||||
},
|
||||
"indices" : 3,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.351",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 4,
|
||||
"NORMAL" : 5,
|
||||
"TEXCOORD_0" : 6
|
||||
},
|
||||
"indices" : 7,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.001",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 8,
|
||||
"NORMAL" : 9,
|
||||
"TEXCOORD_0" : 10
|
||||
},
|
||||
"indices" : 3,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.003",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 11,
|
||||
"NORMAL" : 12,
|
||||
"TEXCOORD_0" : 13
|
||||
},
|
||||
"indices" : 14,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.005",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 15,
|
||||
"NORMAL" : 16,
|
||||
"TEXCOORD_0" : 17
|
||||
},
|
||||
"indices" : 18,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.007",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 19,
|
||||
"NORMAL" : 20,
|
||||
"TEXCOORD_0" : 21
|
||||
},
|
||||
"indices" : 22,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.008",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 23,
|
||||
"NORMAL" : 24,
|
||||
"TEXCOORD_0" : 25
|
||||
},
|
||||
"indices" : 26,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.009",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 27,
|
||||
"NORMAL" : 28,
|
||||
"TEXCOORD_0" : 29
|
||||
},
|
||||
"indices" : 30,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.010",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 31,
|
||||
"NORMAL" : 32,
|
||||
"TEXCOORD_0" : 33
|
||||
},
|
||||
"indices" : 34,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.011",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 35,
|
||||
"NORMAL" : 36,
|
||||
"TEXCOORD_0" : 37
|
||||
},
|
||||
"indices" : 38,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.017",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 39,
|
||||
"NORMAL" : 40,
|
||||
"TEXCOORD_0" : 41
|
||||
},
|
||||
"indices" : 42
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"accessors" : [
|
||||
{
|
||||
"bufferView" : 0,
|
||||
"componentType" : 5126,
|
||||
"count" : 24,
|
||||
"max" : [
|
||||
4,
|
||||
0,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-1,
|
||||
-4
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 1,
|
||||
"componentType" : 5126,
|
||||
"count" : 24,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 2,
|
||||
"componentType" : 5126,
|
||||
"count" : 24,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 3,
|
||||
"componentType" : 5123,
|
||||
"count" : 36,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 4,
|
||||
"componentType" : 5126,
|
||||
"count" : 1057,
|
||||
"max" : [
|
||||
4,
|
||||
3.799999952316284,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4.000003337860107,
|
||||
-0.20000004768371582,
|
||||
-4.099991321563721
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 5,
|
||||
"componentType" : 5126,
|
||||
"count" : 1057,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 6,
|
||||
"componentType" : 5126,
|
||||
"count" : 1057,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 7,
|
||||
"componentType" : 5123,
|
||||
"count" : 2604,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 8,
|
||||
"componentType" : 5126,
|
||||
"count" : 24,
|
||||
"max" : [
|
||||
4,
|
||||
0.800000011920929,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-1,
|
||||
-4
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 9,
|
||||
"componentType" : 5126,
|
||||
"count" : 24,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 10,
|
||||
"componentType" : 5126,
|
||||
"count" : 24,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 11,
|
||||
"componentType" : 5126,
|
||||
"count" : 849,
|
||||
"max" : [
|
||||
4,
|
||||
3.799999952316284,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-0.20000000298023224,
|
||||
-4
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 12,
|
||||
"componentType" : 5126,
|
||||
"count" : 849,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 13,
|
||||
"componentType" : 5126,
|
||||
"count" : 849,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 14,
|
||||
"componentType" : 5123,
|
||||
"count" : 2178,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 15,
|
||||
"componentType" : 5126,
|
||||
"count" : 905,
|
||||
"max" : [
|
||||
4,
|
||||
5,
|
||||
3.9000000953674316
|
||||
],
|
||||
"min" : [
|
||||
-3.8999996185302734,
|
||||
0,
|
||||
-4
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 16,
|
||||
"componentType" : 5126,
|
||||
"count" : 905,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 17,
|
||||
"componentType" : 5126,
|
||||
"count" : 905,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 18,
|
||||
"componentType" : 5123,
|
||||
"count" : 1596,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 19,
|
||||
"componentType" : 5126,
|
||||
"count" : 80,
|
||||
"max" : [
|
||||
4,
|
||||
3.799999952316284,
|
||||
4.5
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-0.19999992847442627,
|
||||
-4.5
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 20,
|
||||
"componentType" : 5126,
|
||||
"count" : 80,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 21,
|
||||
"componentType" : 5126,
|
||||
"count" : 80,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 22,
|
||||
"componentType" : 5123,
|
||||
"count" : 156,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 23,
|
||||
"componentType" : 5126,
|
||||
"count" : 504,
|
||||
"max" : [
|
||||
4,
|
||||
4,
|
||||
4.5
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-0.19999992847442627,
|
||||
-4.5
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 24,
|
||||
"componentType" : 5126,
|
||||
"count" : 504,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 25,
|
||||
"componentType" : 5126,
|
||||
"count" : 504,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 26,
|
||||
"componentType" : 5123,
|
||||
"count" : 1332,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 27,
|
||||
"componentType" : 5126,
|
||||
"count" : 4,
|
||||
"max" : [
|
||||
1.5,
|
||||
0,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-3.9000000953674316,
|
||||
0,
|
||||
-3.9000000953674316
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 28,
|
||||
"componentType" : 5126,
|
||||
"count" : 4,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 29,
|
||||
"componentType" : 5126,
|
||||
"count" : 4,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 30,
|
||||
"componentType" : 5123,
|
||||
"count" : 6,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 31,
|
||||
"componentType" : 5126,
|
||||
"count" : 1143,
|
||||
"max" : [
|
||||
4,
|
||||
3.799999952316284,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-0.9818469285964966,
|
||||
-5.357455253601074
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 32,
|
||||
"componentType" : 5126,
|
||||
"count" : 1143,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 33,
|
||||
"componentType" : 5126,
|
||||
"count" : 1143,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 34,
|
||||
"componentType" : 5123,
|
||||
"count" : 3180,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 35,
|
||||
"componentType" : 5126,
|
||||
"count" : 36,
|
||||
"max" : [
|
||||
4,
|
||||
5,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-0.20000000298023224,
|
||||
-4
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 36,
|
||||
"componentType" : 5126,
|
||||
"count" : 36,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 37,
|
||||
"componentType" : 5126,
|
||||
"count" : 36,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 38,
|
||||
"componentType" : 5123,
|
||||
"count" : 60,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 39,
|
||||
"componentType" : 5126,
|
||||
"count" : 1832,
|
||||
"max" : [
|
||||
4,
|
||||
14,
|
||||
4
|
||||
],
|
||||
"min" : [
|
||||
-4,
|
||||
-0.30000001192092896,
|
||||
-4
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 40,
|
||||
"componentType" : 5126,
|
||||
"count" : 1832,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 41,
|
||||
"componentType" : 5126,
|
||||
"count" : 1832,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 42,
|
||||
"componentType" : 5123,
|
||||
"count" : 2964,
|
||||
"type" : "SCALAR"
|
||||
}
|
||||
],
|
||||
"bufferViews" : [
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 288,
|
||||
"byteOffset" : 0
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 288,
|
||||
"byteOffset" : 288
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 192,
|
||||
"byteOffset" : 576
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 72,
|
||||
"byteOffset" : 768
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 12684,
|
||||
"byteOffset" : 840
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 12684,
|
||||
"byteOffset" : 13524
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 8456,
|
||||
"byteOffset" : 26208
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 5208,
|
||||
"byteOffset" : 34664
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 288,
|
||||
"byteOffset" : 39872
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 288,
|
||||
"byteOffset" : 40160
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 192,
|
||||
"byteOffset" : 40448
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 10188,
|
||||
"byteOffset" : 40640
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 10188,
|
||||
"byteOffset" : 50828
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 6792,
|
||||
"byteOffset" : 61016
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 4356,
|
||||
"byteOffset" : 67808
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 10860,
|
||||
"byteOffset" : 72164
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 10860,
|
||||
"byteOffset" : 83024
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 7240,
|
||||
"byteOffset" : 93884
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 3192,
|
||||
"byteOffset" : 101124
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 960,
|
||||
"byteOffset" : 104316
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 960,
|
||||
"byteOffset" : 105276
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 640,
|
||||
"byteOffset" : 106236
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 312,
|
||||
"byteOffset" : 106876
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 6048,
|
||||
"byteOffset" : 107188
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 6048,
|
||||
"byteOffset" : 113236
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 4032,
|
||||
"byteOffset" : 119284
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 2664,
|
||||
"byteOffset" : 123316
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 48,
|
||||
"byteOffset" : 125980
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 48,
|
||||
"byteOffset" : 126028
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 32,
|
||||
"byteOffset" : 126076
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 12,
|
||||
"byteOffset" : 126108
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 13716,
|
||||
"byteOffset" : 126120
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 13716,
|
||||
"byteOffset" : 139836
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 9144,
|
||||
"byteOffset" : 153552
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 6360,
|
||||
"byteOffset" : 162696
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 432,
|
||||
"byteOffset" : 169056
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 432,
|
||||
"byteOffset" : 169488
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 288,
|
||||
"byteOffset" : 169920
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 120,
|
||||
"byteOffset" : 170208
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 21984,
|
||||
"byteOffset" : 170328
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 21984,
|
||||
"byteOffset" : 192312
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 14656,
|
||||
"byteOffset" : 214296
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 5928,
|
||||
"byteOffset" : 228952
|
||||
}
|
||||
],
|
||||
"buffers" : [
|
||||
{
|
||||
"byteLength" : 234880,
|
||||
"uri" : "palace.bin"
|
||||
}
|
||||
]
|
||||
}
|
||||
1064
objects/palace.gltf.import
Normal file
1064
objects/palace.gltf.import
Normal file
File diff suppressed because it is too large
Load Diff
BIN
objects/palace.material
Normal file
BIN
objects/palace.material
Normal file
Binary file not shown.
6
objects/palace.tscn
Normal file
6
objects/palace.tscn
Normal file
@@ -0,0 +1,6 @@
|
||||
[gd_scene load_steps=2 format=2]
|
||||
|
||||
[ext_resource path="res://objects/palace.gd" type="Script" id=2]
|
||||
|
||||
[node name="palace" type="Spatial"]
|
||||
script = ExtResource( 2 )
|
||||
BIN
objects/palace_001.material
Normal file
BIN
objects/palace_001.material
Normal file
Binary file not shown.
BIN
objects/trailer-house.bin
Normal file
BIN
objects/trailer-house.bin
Normal file
Binary file not shown.
151
objects/trailer-house.gd
Normal file
151
objects/trailer-house.gd
Normal file
@@ -0,0 +1,151 @@
|
||||
extends Spatial
|
||||
|
||||
var side_wall: PackedScene = preload("res://objects/wall-side.scn")
|
||||
var bottom_side: PackedScene = preload("res://objects/bottom-side.scn")
|
||||
var bottom: PackedScene = preload("res://objects/bottom.scn")
|
||||
var bottom_wheels: PackedScene = preload("res://objects/bottom-wheels.scn")
|
||||
var entry: PackedScene = preload("res://objects/entry.scn")
|
||||
var roof_floor: PackedScene = preload("res://objects/roof-floor.scn")
|
||||
var roof_floor_range: PackedScene = preload("res://objects/roof-floor-range.scn")
|
||||
var wall_internal: PackedScene = preload("res://objects/wall-internal.scn")
|
||||
var window_narrow: PackedScene = preload("res://objects/window-narrow.scn")
|
||||
var window_wide: PackedScene = preload("res://objects/window-wide.scn")
|
||||
var wall_solid: PackedScene = preload("res://objects/wall-solid.scn")
|
||||
onready var rnd = RandomNumberGenerator.new()
|
||||
|
||||
|
||||
# Declare member variables here. Examples:
|
||||
# var a = 2
|
||||
# var b = "text"
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
var thread: Thread
|
||||
func _ready():
|
||||
thread = Thread.new()
|
||||
# var parts = {
|
||||
# "side_wall": side_wall,
|
||||
# "bottom_side": bottom_side,
|
||||
# "bottom": bottom,
|
||||
# "bottom_wheels": bottom_wheels,
|
||||
# "entry": entry,
|
||||
# "roof_floor": roof_floor,
|
||||
# "roof_floor_range": roof_floor_range,
|
||||
# "wall_internal": wall_internal,
|
||||
# "window_narrow": window_narrow,
|
||||
# "window_wide": window_wide,
|
||||
# "wall_solid": wall_solid
|
||||
# }
|
||||
# for k in parts.keys():
|
||||
# Spawner.add_scene(k, parts[k])
|
||||
func _exit_tree():
|
||||
if thread.is_active():
|
||||
thread.wait_to_finish()
|
||||
func spawn_child(n, xform):
|
||||
add_child(n)
|
||||
n.transform = xform
|
||||
func build_house(userdata):
|
||||
var s = int(global_transform.origin.x + 100 * global_transform.origin.z * 2) % 0x1ffffff
|
||||
rnd.seed = s
|
||||
print(global_transform.origin, " seed = ", s)
|
||||
var l = 6 + 2 * rnd.randi() % 7 - 1
|
||||
var h = l - 1
|
||||
var d = 3 + rnd.randi() % (l - 5 + 1)
|
||||
var range_used = false
|
||||
for k in range(l + 1):
|
||||
var pos = Vector3(0, 0, k * 2)
|
||||
if k > 0:
|
||||
if k != d && rnd.randf() > 0.5 && !range_used:
|
||||
var r = roof_floor_range.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", r, xform)
|
||||
range_used = true
|
||||
else:
|
||||
var r = roof_floor.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", r, xform)
|
||||
var what
|
||||
var xt = [Transform(Basis(), pos), Transform(Basis().rotated(Vector3.UP, PI), pos - Vector3(0, 0, 2))]
|
||||
for x in range(xt.size()):
|
||||
if x == 0 && k == d:
|
||||
continue
|
||||
if rnd.randf() > 0.5:
|
||||
what = wall_solid.instance()
|
||||
elif rnd.randf() > 0.5:
|
||||
what = window_narrow.instance()
|
||||
else:
|
||||
what = window_wide.instance()
|
||||
call_deferred("spawn_child", what, xt[x])
|
||||
|
||||
if k > 1 && k < l && rnd.randf() > 0.6:
|
||||
var r = wall_internal.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", r, xform)
|
||||
match k:
|
||||
0:
|
||||
var b = side_wall.instance()
|
||||
var c = bottom_side.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
call_deferred("spawn_child", c, xform)
|
||||
1:
|
||||
var b = bottom.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
2:
|
||||
var b = bottom_wheels.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
d:
|
||||
var b = entry.instance()
|
||||
var c = bottom.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
call_deferred("spawn_child", c, xform)
|
||||
h:
|
||||
var b = bottom_wheels.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
l:
|
||||
var b = side_wall.instance()
|
||||
var c = bottom_side.instance()
|
||||
var a = bottom.instance()
|
||||
var xform = Transform(Basis().rotated(Vector3(0, 1, 0), PI), pos)
|
||||
var xform2 = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
call_deferred("spawn_child", c, xform)
|
||||
call_deferred("spawn_child", a, xform2)
|
||||
_:
|
||||
var b = bottom.instance()
|
||||
var xform = Transform(Basis(), pos)
|
||||
call_deferred("spawn_child", b, xform)
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
var state = 0
|
||||
func _process(delta):
|
||||
match state:
|
||||
0:
|
||||
state = 1
|
||||
1:
|
||||
build_house(self)
|
||||
state = 2
|
||||
|
||||
var prev = 3000000
|
||||
func _physics_process(delta):
|
||||
var cam = get_viewport().get_camera()
|
||||
var dst = cam.global_transform.origin.distance_to(global_transform.origin)
|
||||
match state:
|
||||
2:
|
||||
if abs(prev - dst) > 20:
|
||||
var space_state = get_viewport().get_world().direct_space_state
|
||||
var where = get_global_transform().origin
|
||||
var from = where
|
||||
var to = where
|
||||
from.y -= 8.0
|
||||
to.y += 8.0
|
||||
var result = space_state.intersect_ray(from, to)
|
||||
if result.empty() || !result.has("collider"):
|
||||
return
|
||||
else:
|
||||
global_transform.origin = result.position
|
||||
prev = dst
|
||||
|
||||
901
objects/trailer-house.gltf
Normal file
901
objects/trailer-house.gltf
Normal file
@@ -0,0 +1,901 @@
|
||||
{
|
||||
"asset" : {
|
||||
"generator" : "Khronos glTF Blender I/O v1.5.17",
|
||||
"version" : "2.0"
|
||||
},
|
||||
"scene" : 0,
|
||||
"scenes" : [
|
||||
{
|
||||
"name" : "Scene",
|
||||
"nodes" : [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9,
|
||||
10
|
||||
]
|
||||
}
|
||||
],
|
||||
"nodes" : [
|
||||
{
|
||||
"mesh" : 0,
|
||||
"name" : "wall-side-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
23
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 1,
|
||||
"name" : "roof-floor-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
22.700000762939453
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 2,
|
||||
"name" : "wall-solid-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
22.700000762939453
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 3,
|
||||
"name" : "window-wide-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
17
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 4,
|
||||
"name" : "window-narrow-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
14
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 5,
|
||||
"name" : "entry-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
11
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 6,
|
||||
"name" : "bottom-side-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
23
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 7,
|
||||
"name" : "bottom-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
22.700000762939453
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 8,
|
||||
"name" : "bottom-wheels-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
17
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 9,
|
||||
"name" : "wall-internal-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
17.299999237060547
|
||||
]
|
||||
},
|
||||
{
|
||||
"mesh" : 10,
|
||||
"name" : "roof-floor-range-col",
|
||||
"translation" : [
|
||||
0,
|
||||
0,
|
||||
19.700000762939453
|
||||
]
|
||||
}
|
||||
],
|
||||
"materials" : [
|
||||
{
|
||||
"name" : "Material",
|
||||
"pbrMetallicRoughness" : {
|
||||
"baseColorFactor" : [
|
||||
0.800000011920929,
|
||||
0.800000011920929,
|
||||
0.800000011920929,
|
||||
1
|
||||
],
|
||||
"metallicFactor" : 0,
|
||||
"roughnessFactor" : 0.4000000059604645
|
||||
}
|
||||
}
|
||||
],
|
||||
"meshes" : [
|
||||
{
|
||||
"name" : "Cube",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 0,
|
||||
"NORMAL" : 1,
|
||||
"TEXCOORD_0" : 2
|
||||
},
|
||||
"indices" : 3,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.003",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 4,
|
||||
"NORMAL" : 5,
|
||||
"TEXCOORD_0" : 6
|
||||
},
|
||||
"indices" : 7,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.004",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 8,
|
||||
"NORMAL" : 9,
|
||||
"TEXCOORD_0" : 10
|
||||
},
|
||||
"indices" : 11,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.006",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 12,
|
||||
"NORMAL" : 13,
|
||||
"TEXCOORD_0" : 14
|
||||
},
|
||||
"indices" : 15,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.007",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 16,
|
||||
"NORMAL" : 17,
|
||||
"TEXCOORD_0" : 18
|
||||
},
|
||||
"indices" : 19,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.008",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 20,
|
||||
"NORMAL" : 21,
|
||||
"TEXCOORD_0" : 22
|
||||
},
|
||||
"indices" : 23,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.009",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 24,
|
||||
"NORMAL" : 25,
|
||||
"TEXCOORD_0" : 26
|
||||
},
|
||||
"indices" : 27,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.010",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 28,
|
||||
"NORMAL" : 29,
|
||||
"TEXCOORD_0" : 30
|
||||
},
|
||||
"indices" : 31,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.011",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 32,
|
||||
"NORMAL" : 33,
|
||||
"TEXCOORD_0" : 34
|
||||
},
|
||||
"indices" : 35,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.012",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 36,
|
||||
"NORMAL" : 37,
|
||||
"TEXCOORD_0" : 38
|
||||
},
|
||||
"indices" : 39,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Cube.013",
|
||||
"primitives" : [
|
||||
{
|
||||
"attributes" : {
|
||||
"POSITION" : 40,
|
||||
"NORMAL" : 41,
|
||||
"TEXCOORD_0" : 42
|
||||
},
|
||||
"indices" : 43,
|
||||
"material" : 0
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"accessors" : [
|
||||
{
|
||||
"bufferView" : 0,
|
||||
"componentType" : 5126,
|
||||
"count" : 64,
|
||||
"max" : [
|
||||
1.7999999523162842,
|
||||
4.5,
|
||||
0.09999996423721313
|
||||
],
|
||||
"min" : [
|
||||
-1.8000000715255737,
|
||||
0.800000011920929,
|
||||
5.960464477539063e-08
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 1,
|
||||
"componentType" : 5126,
|
||||
"count" : 64,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 2,
|
||||
"componentType" : 5126,
|
||||
"count" : 64,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 3,
|
||||
"componentType" : 5123,
|
||||
"count" : 108,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 4,
|
||||
"componentType" : 5126,
|
||||
"count" : 56,
|
||||
"max" : [
|
||||
1.8000000715255737,
|
||||
4.5,
|
||||
0
|
||||
],
|
||||
"min" : [
|
||||
-1.8000000715255737,
|
||||
0.800000011920929,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 5,
|
||||
"componentType" : 5126,
|
||||
"count" : 56,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 6,
|
||||
"componentType" : 5126,
|
||||
"count" : 56,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 7,
|
||||
"componentType" : 5123,
|
||||
"count" : 84,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 8,
|
||||
"componentType" : 5126,
|
||||
"count" : 20,
|
||||
"max" : [
|
||||
1.8000000715255737,
|
||||
3.6000001430511475,
|
||||
0
|
||||
],
|
||||
"min" : [
|
||||
1.7000000476837158,
|
||||
0.800000011920929,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 9,
|
||||
"componentType" : 5126,
|
||||
"count" : 20,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 10,
|
||||
"componentType" : 5126,
|
||||
"count" : 20,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 11,
|
||||
"componentType" : 5123,
|
||||
"count" : 36,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 12,
|
||||
"componentType" : 5126,
|
||||
"count" : 84,
|
||||
"max" : [
|
||||
1.8000000715255737,
|
||||
3.6000001430511475,
|
||||
0
|
||||
],
|
||||
"min" : [
|
||||
1.7000000476837158,
|
||||
0.800000011920929,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 13,
|
||||
"componentType" : 5126,
|
||||
"count" : 84,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 14,
|
||||
"componentType" : 5126,
|
||||
"count" : 84,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 15,
|
||||
"componentType" : 5123,
|
||||
"count" : 192,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 16,
|
||||
"componentType" : 5126,
|
||||
"count" : 76,
|
||||
"max" : [
|
||||
1.8000000715255737,
|
||||
3.6000001430511475,
|
||||
0
|
||||
],
|
||||
"min" : [
|
||||
1.7000000476837158,
|
||||
0.800000011920929,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 17,
|
||||
"componentType" : 5126,
|
||||
"count" : 76,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 18,
|
||||
"componentType" : 5126,
|
||||
"count" : 76,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 19,
|
||||
"componentType" : 5123,
|
||||
"count" : 192,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 20,
|
||||
"componentType" : 5126,
|
||||
"count" : 609,
|
||||
"max" : [
|
||||
5.500000476837158,
|
||||
3.6000001430511475,
|
||||
0
|
||||
],
|
||||
"min" : [
|
||||
1.7000000476837158,
|
||||
-0.20000000298023224,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 21,
|
||||
"componentType" : 5126,
|
||||
"count" : 609,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 22,
|
||||
"componentType" : 5126,
|
||||
"count" : 609,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 23,
|
||||
"componentType" : 5123,
|
||||
"count" : 1650,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 24,
|
||||
"componentType" : 5126,
|
||||
"count" : 20,
|
||||
"max" : [
|
||||
1.7999999523162842,
|
||||
0.800000011920929,
|
||||
0.10000001639127731
|
||||
],
|
||||
"min" : [
|
||||
-1.7999999523162842,
|
||||
0,
|
||||
-2.2351741790771484e-08
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 25,
|
||||
"componentType" : 5126,
|
||||
"count" : 20,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 26,
|
||||
"componentType" : 5126,
|
||||
"count" : 20,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 27,
|
||||
"componentType" : 5123,
|
||||
"count" : 30,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 28,
|
||||
"componentType" : 5126,
|
||||
"count" : 12,
|
||||
"max" : [
|
||||
1.7999999523162842,
|
||||
0.800000011920929,
|
||||
1.4901161193847656e-08
|
||||
],
|
||||
"min" : [
|
||||
-1.7999999523162842,
|
||||
0,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 29,
|
||||
"componentType" : 5126,
|
||||
"count" : 12,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 30,
|
||||
"componentType" : 5126,
|
||||
"count" : 12,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 31,
|
||||
"componentType" : 5123,
|
||||
"count" : 18,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 32,
|
||||
"componentType" : 5126,
|
||||
"count" : 20928,
|
||||
"max" : [
|
||||
1.8000000715255737,
|
||||
0.800000011920929,
|
||||
1.1473894119262695e-06
|
||||
],
|
||||
"min" : [
|
||||
-1.8000000715255737,
|
||||
-0.058527711778879166,
|
||||
-2.000000238418579
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 33,
|
||||
"componentType" : 5126,
|
||||
"count" : 20928,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 34,
|
||||
"componentType" : 5126,
|
||||
"count" : 20928,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 35,
|
||||
"componentType" : 5123,
|
||||
"count" : 31008,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 36,
|
||||
"componentType" : 5126,
|
||||
"count" : 114,
|
||||
"max" : [
|
||||
1.7000000476837158,
|
||||
4.300000190734863,
|
||||
0.10000038146972656
|
||||
],
|
||||
"min" : [
|
||||
-1.7000000476837158,
|
||||
0.9000000357627869,
|
||||
0
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 37,
|
||||
"componentType" : 5126,
|
||||
"count" : 114,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 38,
|
||||
"componentType" : 5126,
|
||||
"count" : 114,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 39,
|
||||
"componentType" : 5123,
|
||||
"count" : 276,
|
||||
"type" : "SCALAR"
|
||||
},
|
||||
{
|
||||
"bufferView" : 40,
|
||||
"componentType" : 5126,
|
||||
"count" : 180,
|
||||
"max" : [
|
||||
1.8000000715255737,
|
||||
4.800000190734863,
|
||||
0
|
||||
],
|
||||
"min" : [
|
||||
-1.8000000715255737,
|
||||
0.800000011920929,
|
||||
-2
|
||||
],
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 41,
|
||||
"componentType" : 5126,
|
||||
"count" : 180,
|
||||
"type" : "VEC3"
|
||||
},
|
||||
{
|
||||
"bufferView" : 42,
|
||||
"componentType" : 5126,
|
||||
"count" : 180,
|
||||
"type" : "VEC2"
|
||||
},
|
||||
{
|
||||
"bufferView" : 43,
|
||||
"componentType" : 5123,
|
||||
"count" : 312,
|
||||
"type" : "SCALAR"
|
||||
}
|
||||
],
|
||||
"bufferViews" : [
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 768,
|
||||
"byteOffset" : 0
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 768,
|
||||
"byteOffset" : 768
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 512,
|
||||
"byteOffset" : 1536
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 216,
|
||||
"byteOffset" : 2048
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 672,
|
||||
"byteOffset" : 2264
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 672,
|
||||
"byteOffset" : 2936
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 448,
|
||||
"byteOffset" : 3608
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 168,
|
||||
"byteOffset" : 4056
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 240,
|
||||
"byteOffset" : 4224
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 240,
|
||||
"byteOffset" : 4464
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 160,
|
||||
"byteOffset" : 4704
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 72,
|
||||
"byteOffset" : 4864
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 1008,
|
||||
"byteOffset" : 4936
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 1008,
|
||||
"byteOffset" : 5944
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 672,
|
||||
"byteOffset" : 6952
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 384,
|
||||
"byteOffset" : 7624
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 912,
|
||||
"byteOffset" : 8008
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 912,
|
||||
"byteOffset" : 8920
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 608,
|
||||
"byteOffset" : 9832
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 384,
|
||||
"byteOffset" : 10440
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 7308,
|
||||
"byteOffset" : 10824
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 7308,
|
||||
"byteOffset" : 18132
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 4872,
|
||||
"byteOffset" : 25440
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 3300,
|
||||
"byteOffset" : 30312
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 240,
|
||||
"byteOffset" : 33612
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 240,
|
||||
"byteOffset" : 33852
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 160,
|
||||
"byteOffset" : 34092
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 60,
|
||||
"byteOffset" : 34252
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 144,
|
||||
"byteOffset" : 34312
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 144,
|
||||
"byteOffset" : 34456
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 96,
|
||||
"byteOffset" : 34600
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 36,
|
||||
"byteOffset" : 34696
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 251136,
|
||||
"byteOffset" : 34732
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 251136,
|
||||
"byteOffset" : 285868
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 167424,
|
||||
"byteOffset" : 537004
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 62016,
|
||||
"byteOffset" : 704428
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 1368,
|
||||
"byteOffset" : 766444
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 1368,
|
||||
"byteOffset" : 767812
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 912,
|
||||
"byteOffset" : 769180
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 552,
|
||||
"byteOffset" : 770092
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 2160,
|
||||
"byteOffset" : 770644
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 2160,
|
||||
"byteOffset" : 772804
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 1440,
|
||||
"byteOffset" : 774964
|
||||
},
|
||||
{
|
||||
"buffer" : 0,
|
||||
"byteLength" : 624,
|
||||
"byteOffset" : 776404
|
||||
}
|
||||
],
|
||||
"buffers" : [
|
||||
{
|
||||
"byteLength" : 777028,
|
||||
"uri" : "trailer-house.bin"
|
||||
}
|
||||
]
|
||||
}
|
||||
1064
objects/trailer-house.gltf.import
Normal file
1064
objects/trailer-house.gltf.import
Normal file
File diff suppressed because it is too large
Load Diff
6
objects/trailer-house.tscn
Normal file
6
objects/trailer-house.tscn
Normal file
@@ -0,0 +1,6 @@
|
||||
[gd_scene load_steps=2 format=2]
|
||||
|
||||
[ext_resource path="res://objects/trailer-house.gd" type="Script" id=1]
|
||||
|
||||
[node name="trailer-house" type="Spatial"]
|
||||
script = ExtResource( 1 )
|
||||
Reference in New Issue
Block a user