[gd_scene load_steps=15 format=2] [ext_resource path="res://terrain/terrain_draw.png" type="Image" id=2] [ext_resource path="res://terrain/terrain.png" type="Image" id=3] [ext_resource path="res://terrain/terrain_edit.png" type="Image" id=4] [sub_resource type="VoxelGeneratorImgMapper" id=5] height_start = -150.0 height_range = 300.0 image_bg = ExtResource( 3 ) image_overlay = ExtResource( 4 ) image_draw = ExtResource( 2 ) [sub_resource type="VoxelMesherTransvoxel" id=6] [sub_resource type="ORMSpatialMaterial" id=7] albedo_color = Color( 0.254902, 0.886275, 0.101961, 1 ) [sub_resource type="ProceduralSky" id=4] [sub_resource type="Environment" id=8] background_mode = 2 background_sky = SubResource( 4 ) [sub_resource type="BoxShape" id=9] extents = Vector3( 550, 0.1, 550 ) [sub_resource type="CubeMesh" id=10] size = Vector3( 5, 120, 5 ) [sub_resource type="SpatialMaterial" id=11] flags_transparent = true albedo_color = Color( 0.698039, 0.192157, 0.101961, 0.427451 ) emission_enabled = true emission = Color( 0.894118, 0.0980392, 0.0980392, 1 ) emission_energy = 1.0 emission_operator = 0 emission_on_uv2 = false [sub_resource type="BoxShape" id=12] extents = Vector3( 50, 1, 50 ) [sub_resource type="CubeMesh" id=13] size = Vector3( 4, 4, 120 ) [sub_resource type="CubeMesh" id=14] size = Vector3( 3, 60, 3 ) [node name="editor" type="Spatial"] [node name="WorldEditor" type="WorldEditor" parent="."] [node name="VBoxContainer" type="VBoxContainer" parent="."] anchor_left = 1.0 anchor_right = 1.0 anchor_bottom = 1.0 margin_left = -248.0 [node name="NavPanel" type="NavPanel" parent="VBoxContainer"] unique_name_in_owner = true margin_right = 248.0 margin_bottom = 48.0 rect_min_size = Vector2( 48, 48 ) focus_mode = 2 [node name="MainTabs" type="MainTabs" parent="VBoxContainer"] unique_name_in_owner = true margin_top = 52.0 margin_right = 248.0 margin_bottom = 524.0 [node name="v_buildings" type="VBoxContainer" parent="VBoxContainer"] unique_name_in_owner = true margin_top = 528.0 margin_right = 248.0 margin_bottom = 528.0 [node name="v_navigation" type="VBoxContainer" parent="VBoxContainer"] unique_name_in_owner = true visible = false margin_top = 246.0 margin_right = 248.0 margin_bottom = 268.0 [node name="HSeparator" type="HSeparator" parent="VBoxContainer/v_navigation"] margin_right = 248.0 margin_bottom = 4.0 [node name="Label" type="Label" parent="VBoxContainer/v_navigation"] margin_top = 8.0 margin_right = 248.0 margin_bottom = 22.0 text = "Navigation mode" [node name="v_poi" type="VBoxContainer" parent="VBoxContainer"] unique_name_in_owner = true visible = false margin_top = 246.0 margin_right = 248.0 margin_bottom = 268.0 [node name="HSeparator" type="HSeparator" parent="VBoxContainer/v_poi"] margin_right = 248.0 margin_bottom = 4.0 [node name="Label" type="Label" parent="VBoxContainer/v_poi"] margin_top = 8.0 margin_right = 248.0 margin_bottom = 22.0 text = "POI mode" [node name="v_road_lines" type="VBoxContainer" parent="VBoxContainer"] unique_name_in_owner = true visible = false margin_top = 246.0 margin_right = 248.0 margin_bottom = 1205.0 [node name="road_lines_base" type="PanelContainer" parent="VBoxContainer/v_road_lines"] unique_name_in_owner = true margin_top = 8.0 margin_right = 248.0 margin_bottom = 316.0 [node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_base"] margin_left = 7.0 margin_top = 7.0 margin_right = 241.0 margin_bottom = 301.0 size_flags_horizontal = 3 size_flags_vertical = 3 [node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] margin_top = 50.0 margin_right = 234.0 margin_bottom = 74.0 [node name="Label" type="Label" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/HBoxContainer"] margin_top = 5.0 margin_right = 41.0 margin_bottom = 19.0 text = "Filter: " [node name="road_lines_filter" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/HBoxContainer"] unique_name_in_owner = true margin_left = 45.0 margin_right = 234.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="lines_list" type="ItemList" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] unique_name_in_owner = true margin_top = 78.0 margin_right = 234.0 margin_bottom = 158.0 rect_min_size = Vector2( 0, 80 ) size_flags_horizontal = 3 [node name="line_index" type="SpinBox" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] unique_name_in_owner = true margin_top = 162.0 margin_right = 234.0 margin_bottom = 186.0 [node name="HSeparator" type="HSeparator" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] margin_top = 190.0 margin_right = 234.0 margin_bottom = 194.0 [node name="Label2" type="Label" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] margin_top = 198.0 margin_right = 234.0 margin_bottom = 212.0 text = "Cursor position" [node name="road_lines_cursor_position" type="VBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] unique_name_in_owner = true margin_top = 216.0 margin_right = 234.0 margin_bottom = 240.0 [node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_cursor_position"] margin_right = 234.0 margin_bottom = 24.0 [node name="cursor_x" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_cursor_position/HBoxContainer"] unique_name_in_owner = true margin_right = 63.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="cursor_y" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_cursor_position/HBoxContainer"] unique_name_in_owner = true margin_left = 67.0 margin_right = 130.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="cursor_z" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_cursor_position/HBoxContainer"] unique_name_in_owner = true margin_left = 134.0 margin_right = 197.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="road_lines_set_cursor_position" type="Button" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_cursor_position/HBoxContainer"] unique_name_in_owner = true margin_left = 201.0 margin_right = 233.0 margin_bottom = 24.0 text = "Set" [node name="HSeparator4" type="HSeparator" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] margin_top = 244.0 margin_right = 234.0 margin_bottom = 248.0 [node name="Label3" type="Label" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] margin_top = 252.0 margin_right = 234.0 margin_bottom = 266.0 text = "Point position" [node name="road_lines_point_position" type="VBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer"] unique_name_in_owner = true margin_top = 270.0 margin_right = 234.0 margin_bottom = 294.0 [node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_point_position"] margin_right = 234.0 margin_bottom = 24.0 [node name="point_x" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_point_position/HBoxContainer2"] unique_name_in_owner = true margin_right = 63.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="point_y" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_point_position/HBoxContainer2"] unique_name_in_owner = true margin_left = 67.0 margin_right = 130.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="point_z" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_point_position/HBoxContainer2"] unique_name_in_owner = true margin_left = 134.0 margin_right = 197.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="road_lines_set_point_position" type="Button" parent="VBoxContainer/v_road_lines/road_lines_base/VBoxContainer/road_lines_point_position/HBoxContainer2"] unique_name_in_owner = true margin_left = 201.0 margin_right = 233.0 margin_bottom = 24.0 text = "Set" [node name="road_lines_create_new_line_dlg" type="PanelContainer" parent="VBoxContainer/v_road_lines"] unique_name_in_owner = true margin_top = 320.0 margin_right = 248.0 margin_bottom = 382.0 [node name="v" type="VBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_create_new_line_dlg"] margin_left = 7.0 margin_top = 7.0 margin_right = 241.0 margin_bottom = 55.0 [node name="road_lines_create_new_line_name" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_create_new_line_dlg/v"] unique_name_in_owner = true margin_right = 234.0 margin_bottom = 24.0 [node name="road_lines_create_new_cancel" type="Button" parent="VBoxContainer/v_road_lines/road_lines_create_new_line_dlg/v"] unique_name_in_owner = true margin_top = 28.0 margin_right = 234.0 margin_bottom = 48.0 text = "Cancel" [node name="road_lines_edit_metadata_dlg" type="PanelContainer" parent="VBoxContainer/v_road_lines"] unique_name_in_owner = true margin_top = 386.0 margin_right = 248.0 margin_bottom = 650.0 [node name="scroll" type="ScrollContainer" parent="VBoxContainer/v_road_lines/road_lines_edit_metadata_dlg"] margin_left = 7.0 margin_top = 7.0 margin_right = 241.0 margin_bottom = 257.0 rect_min_size = Vector2( 0, 250 ) size_flags_horizontal = 3 size_flags_vertical = 3 scroll_horizontal_enabled = false [node name="v" type="VBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_edit_metadata_dlg/scroll"] margin_right = 234.0 margin_bottom = 250.0 size_flags_horizontal = 3 size_flags_vertical = 3 [node name="road_lines_metadata_edit" type="TextEdit" parent="VBoxContainer/v_road_lines/road_lines_edit_metadata_dlg/scroll/v"] unique_name_in_owner = true margin_right = 222.0 margin_bottom = 160.0 rect_min_size = Vector2( 0, 160 ) size_flags_horizontal = 3 [node name="road_lines_metadata_update" type="Button" parent="VBoxContainer/v_road_lines/road_lines_edit_metadata_dlg/scroll/v"] unique_name_in_owner = true margin_top = 164.0 margin_right = 222.0 margin_bottom = 184.0 text = "Update" [node name="road_lines_metadata_cancel" type="Button" parent="VBoxContainer/v_road_lines/road_lines_edit_metadata_dlg/scroll/v"] unique_name_in_owner = true margin_top = 188.0 margin_right = 222.0 margin_bottom = 208.0 text = "Cancel" [node name="lines_buildings_metadata_edit" type="LineMetadataEditor" parent="VBoxContainer/v_road_lines/road_lines_edit_metadata_dlg/scroll/v"] unique_name_in_owner = true margin_top = 212.0 margin_right = 222.0 margin_bottom = 418.0 [node name="road_lines_buildings" type="PanelContainer" parent="VBoxContainer/v_road_lines"] unique_name_in_owner = true margin_top = 654.0 margin_right = 248.0 margin_bottom = 959.0 [node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/v_road_lines/road_lines_buildings"] margin_left = 7.0 margin_top = 7.0 margin_right = 241.0 margin_bottom = 298.0 [node name="Label" type="Label" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer"] margin_right = 234.0 margin_bottom = 31.0 text = "Line buildings " [node name="line_buildings_list" type="ItemList" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer"] unique_name_in_owner = true margin_top = 35.0 margin_right = 234.0 margin_bottom = 135.0 rect_min_size = Vector2( 0, 100 ) size_flags_horizontal = 3 [node name="GridContainer" type="GridContainer" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer"] margin_top = 139.0 margin_right = 234.0 margin_bottom = 219.0 columns = 2 [node name="Label" type="Label" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer/GridContainer"] margin_top = 5.0 margin_right = 85.0 margin_bottom = 19.0 text = "line offset" [node name="line_buildings_line_offset" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer/GridContainer"] unique_name_in_owner = true margin_left = 89.0 margin_right = 234.0 margin_bottom = 24.0 size_flags_horizontal = 3 [node name="Label2" type="Label" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer/GridContainer"] margin_top = 33.0 margin_right = 85.0 margin_bottom = 47.0 text = "normal offset" [node name="line_buildings_normal_offset" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer/GridContainer"] unique_name_in_owner = true margin_left = 89.0 margin_top = 28.0 margin_right = 234.0 margin_bottom = 52.0 size_flags_horizontal = 3 [node name="Label3" type="Label" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer/GridContainer"] margin_top = 61.0 margin_right = 85.0 margin_bottom = 75.0 text = "Y-rotation" [node name="LineEdit" type="LineEdit" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer/GridContainer"] margin_left = 89.0 margin_top = 56.0 margin_right = 234.0 margin_bottom = 80.0 [node name="line_buildings_remove_from_line" type="Button" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer"] unique_name_in_owner = true margin_top = 223.0 margin_right = 234.0 margin_bottom = 243.0 text = "Remove" [node name="line_buildings_assign" type="Button" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer"] unique_name_in_owner = true margin_top = 247.0 margin_right = 234.0 margin_bottom = 267.0 text = "Assign" [node name="line_buildings_close" type="Button" parent="VBoxContainer/v_road_lines/road_lines_buildings/VBoxContainer"] unique_name_in_owner = true margin_top = 271.0 margin_right = 234.0 margin_bottom = 291.0 text = "Close" [node name="v_npc" type="VBoxContainer" parent="VBoxContainer"] unique_name_in_owner = true visible = false margin_top = 1749.0 margin_right = 248.0 margin_bottom = 1771.0 [node name="HSeparator" type="HSeparator" parent="VBoxContainer/v_npc"] margin_right = 248.0 margin_bottom = 4.0 [node name="Label" type="Label" parent="VBoxContainer/v_npc"] margin_top = 8.0 margin_right = 248.0 margin_bottom = 22.0 text = "NPC mode" [node name="StreamWorld" type="StreamWorld" parent="."] [node name="VoxelLodTerrain" type="VoxelLodTerrain" parent="."] unique_name_in_owner = true generator = SubResource( 5 ) mesher = SubResource( 6 ) voxel_bounds = AABB( -5.36871e+08, -2048, -5.36871e+08, 1.07374e+09, 4096, 1.07374e+09 ) lod_count = 5 material = SubResource( 7 ) [node name="Camera" type="Camera" parent="."] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0 ) environment = SubResource( 8 ) far = 1000.0 [node name="VoxelViewer" type="VoxelViewer" parent="Camera"] [node name="DirectionalLight" type="DirectionalLight" parent="."] transform = Transform( 1, 0, 0, 0, 0.707107, 0.707107, 0, -0.707107, 0.707107, 0, 2, 0 ) [node name="selection_area" type="Area" parent="."] unique_name_in_owner = true collision_layer = 32768 collision_mask = 32768 monitoring = false [node name="CollisionShape" type="CollisionShape" parent="selection_area"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.1, 0 ) shape = SubResource( 9 ) [node name="building_cursor" type="MeshInstance" parent="."] unique_name_in_owner = true visible = false mesh = SubResource( 10 ) material/0 = SubResource( 11 ) [node name="Area" type="Area" parent="building_cursor"] collision_layer = 32768 collision_mask = 32768 monitoring = false [node name="CollisionShape" type="CollisionShape" parent="building_cursor/Area"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2, 0 ) shape = SubResource( 12 ) [node name="building_rot_cursor" type="Spatial" parent="."] unique_name_in_owner = true visible = false [node name="building_rot_cursor" type="MeshInstance" parent="building_rot_cursor"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -60 ) mesh = SubResource( 13 ) skeleton = NodePath("../..") material/0 = SubResource( 11 ) [node name="Area" type="Area" parent="building_rot_cursor/building_rot_cursor"] collision_layer = 32768 collision_mask = 32768 monitoring = false [node name="CollisionShape" type="CollisionShape" parent="building_rot_cursor/building_rot_cursor/Area"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2, 0 ) shape = SubResource( 12 ) [node name="line_cursor" type="Spatial" parent="."] unique_name_in_owner = true [node name="Area" type="Area" parent="line_cursor"] collision_layer = 32768 collision_mask = 32768 monitoring = false [node name="CollisionShape" type="CollisionShape" parent="line_cursor/Area"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2, 0 ) shape = SubResource( 12 ) [node name="mi" type="MeshInstance" parent="line_cursor"] transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 30, 0 ) mesh = SubResource( 14 ) material/0 = SubResource( 11 )