Merge branch 'hub'

This commit is contained in:
Morev_Nikita 2025-09-17 17:08:26 +02:00
commit 58dee236a0
39 changed files with 1319 additions and 0 deletions

139
Nikita/3d_popup.gd Normal file
View file

@ -0,0 +1,139 @@
extends Node3D
## Used for checking if the mouse is inside the Area3D.
var is_mouse_inside := false
## The last processed input touch/mouse event. Used to calculate relative movement.
var last_event_pos2D := Vector2()
## The time of the last event in seconds since engine start.
var last_event_time := -1.0
@onready var node_viewport: SubViewport = $SubViewport
@onready var node_quad: MeshInstance3D = $Quad
@onready var node_area: Area3D = $Quad/Area3D
#var original_scale
func _ready() -> void:
node_area.mouse_entered.connect(_mouse_entered_area)
node_area.mouse_exited.connect(_mouse_exited_area)
node_area.input_event.connect(_mouse_input_event)
#original_scale = $Quad.scale
# If the material is NOT set to use billboard settings, then avoid running billboard specific code
#if node_quad.get_surface_override_material(0).billboard_mode == BaseMaterial3D.BillboardMode.BILLBOARD_DISABLED:
#set_process(false)
func _process(_delta: float) -> void:
pass
# NOTE: Remove this function if you don't plan on using billboard settings.
#rotate_area_to_billboard()
func _mouse_entered_area() -> void:
is_mouse_inside = true
# Notify the viewport that the mouse is now hovering it.
node_viewport.notification(NOTIFICATION_VP_MOUSE_ENTER)
func _mouse_exited_area() -> void:
# Notify the viewport that the mouse is no longer hovering it.
node_viewport.notification(NOTIFICATION_VP_MOUSE_EXIT)
is_mouse_inside = false
func _unhandled_input(event: InputEvent) -> void:
# Check if the event is a non-mouse/non-touch event
for mouse_event in [InputEventMouseButton, InputEventMouseMotion, InputEventScreenDrag, InputEventScreenTouch]:
if is_instance_of(event, mouse_event):
# If the event is a mouse/touch event, then we can ignore it here, because it will be
# handled via Physics Picking.
return
node_viewport.push_input(event)
func _mouse_input_event(_camera: Camera3D, event: InputEvent, event_position: Vector3, _normal: Vector3, _shape_idx: int) -> void:
# Get mesh size to detect edges and make conversions. This code only supports PlaneMesh and QuadMesh.
var quad_mesh_size: Vector2 = node_quad.mesh.size
# Event position in Area3D in world coordinate space.
var event_pos3D := event_position
# Current time in seconds since engine start.
var now := Time.get_ticks_msec() / 1000.0
# Convert position to a coordinate space relative to the Area3D node.
# NOTE: `affine_inverse()` accounts for the Area3D node's scale, rotation, and position in the scene!
event_pos3D = node_quad.global_transform.affine_inverse() * event_pos3D
# TODO: Adapt to bilboard mode or avoid completely.
var event_pos2D := Vector2()
if is_mouse_inside:
# Convert the relative event position from 3D to 2D.
event_pos2D = Vector2(event_pos3D.x, -event_pos3D.y)
# Right now the event position's range is the following: (-quad_size/2) -> (quad_size/2)
# We need to convert it into the following range: -0.5 -> 0.5
event_pos2D.x = event_pos2D.x / quad_mesh_size.x
event_pos2D.y = event_pos2D.y / quad_mesh_size.y
# Then we need to convert it into the following range: 0 -> 1
event_pos2D.x += 0.5
event_pos2D.y += 0.5
# Finally, we convert the position to the following range: 0 -> viewport.size
event_pos2D.x *= node_viewport.size.x
event_pos2D.y *= node_viewport.size.y
# We need to do these conversions so the event's position is in the viewport's coordinate system.
elif last_event_pos2D != null:
# Fall back to the last known event position.
event_pos2D = last_event_pos2D
# Set the event's position and global position.
event.position = event_pos2D
if event is InputEventMouse:
event.global_position = event_pos2D
# Calculate the relative event distance.
if event is InputEventMouseMotion or event is InputEventScreenDrag:
# If there is not a stored previous position, then we'll assume there is no relative motion.
if last_event_pos2D == null:
event.relative = Vector2(0, 0)
# If there is a stored previous position, then we'll calculate the relative position by subtracting
# the previous position from the new position. This will give us the distance the event traveled from prev_pos.
else:
event.relative = event_pos2D - last_event_pos2D
event.velocity = event.relative / (now - last_event_time)
# Update last_event_pos2D with the position we just calculated.
last_event_pos2D = event_pos2D
# Update last_event_time to current time.
last_event_time = now
# Finally, send the processed input event to the viewport.
node_viewport.push_input(event)
func rotate_area_to_billboard() -> void:
var billboard_mode: BaseMaterial3D.BillboardMode = node_quad.get_surface_override_material(0).billboard_mode
# Try to match the area with the material's billboard setting, if enabled.
if billboard_mode > 0:
# Get the camera.
var camera := get_viewport().get_camera_3d()
# Look in the same direction as the camera.
var look := camera.to_global(Vector3(0, 0, -100)) - camera.global_transform.origin
look = node_area.position + look
# Y-Billboard: Lock Y rotation, but gives bad results if the camera is tilted.
if billboard_mode == 2:
look = Vector3(look.x, 0, look.z)
node_area.look_at(look, Vector3.UP)
# Rotate in the Z axis to compensate camera tilt.
node_area.rotate_object_local(Vector3.BACK, camera.rotation.z)

1
Nikita/3d_popup.gd.uid Normal file
View file

@ -0,0 +1 @@
uid://1dr3112amj64

42
Nikita/3d_popup.tscn Normal file
View file

@ -0,0 +1,42 @@
[gd_scene load_steps=7 format=3 uid="uid://bab0m4cvoiouv"]
[ext_resource type="PackedScene" uid="uid://cbva1dnqoaopn" path="res://Nikita/level_popup.tscn" id="1_0h1bi"]
[ext_resource type="Script" uid="uid://1dr3112amj64" path="res://Nikita/3d_popup.gd" id="1_utlwn"]
[sub_resource type="QuadMesh" id="QuadMesh_utlwn"]
size = Vector2(0.6, 0.4)
[sub_resource type="ViewportTexture" id="ViewportTexture_pn6qm"]
viewport_path = NodePath("SubViewport")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_l0c6d"]
resource_local_to_scene = true
no_depth_test = true
shading_mode = 0
disable_ambient_light = true
albedo_texture = SubResource("ViewportTexture_pn6qm")
[sub_resource type="BoxShape3D" id="BoxShape3D_pj2e3"]
size = Vector3(0.605225, 0.401367, 0.109375)
[node name="3DPopup" type="Node3D"]
script = ExtResource("1_utlwn")
[node name="SubViewport" type="SubViewport" parent="."]
gui_embed_subwindows = true
size = Vector2i(600, 400)
render_target_update_mode = 4
[node name="LevelPopup" parent="SubViewport" instance=ExtResource("1_0h1bi")]
[node name="Quad" type="MeshInstance3D" parent="."]
transform = Transform3D(11.8638, 0.822758, -0.25, 0, 11.8638, 0.258819, 3.17889, -3.07057, 0.933013, 0, 0, 0)
mesh = SubResource("QuadMesh_utlwn")
surface_material_override/0 = SubResource("StandardMaterial3D_l0c6d")
[node name="Area3D" type="Area3D" parent="Quad"]
collision_mask = 2
input_capture_on_drag = true
[node name="CollisionShape3D" type="CollisionShape3D" parent="Quad/Area3D"]
shape = SubResource("BoxShape3D_pj2e3")

11
Nikita/camera_hub.tscn Normal file
View file

@ -0,0 +1,11 @@
[gd_scene load_steps=2 format=3 uid="uid://tvwwstaorixw"]
[ext_resource type="Script" uid="uid://co77n1eq661oo" path="res://Nikita/scripts/camera_hub.gd" id="1_1mhol"]
[node name="CameraHub" type="Node3D"]
script = ExtResource("1_1mhol")
[node name="XRotation" type="Node3D" parent="."]
[node name="Camera3D" type="Camera3D" parent="XRotation"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1)

30
Nikita/earth.tscn Normal file
View file

@ -0,0 +1,30 @@
[gd_scene load_steps=8 format=3 uid="uid://cjlojmoyhw2cp"]
[ext_resource type="PackedScene" uid="uid://7fijqcjxggit" path="res://Nikita/source/Earth_Final.fbx" id="1_mnd7v"]
[ext_resource type="Texture2D" uid="uid://cw4gkryn2sl7y" path="res://Nikita/textures/Earth2_Water_BaseColor.png" id="2_v2ft5"]
[ext_resource type="Texture2D" uid="uid://da0uksbt2mkqw" path="res://Nikita/textures/Earth2_Land_BaseColor.png" id="3_drefq"]
[ext_resource type="PackedScene" uid="uid://ccjwh4alvryho" path="res://Nikita/waypoint.tscn" id="4_drefq"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tyl1s"]
albedo_texture = ExtResource("2_v2ft5")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3pxso"]
albedo_texture = ExtResource("3_drefq")
[sub_resource type="SphereShape3D" id="SphereShape3D_drefq"]
[node name="Earth_Final" instance=ExtResource("1_mnd7v")]
[node name="earth4" parent="." index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_tyl1s")
surface_material_override/1 = SubResource("StandardMaterial3D_3pxso")
[node name="Area3D" type="Area3D" parent="earth4" index="0"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="earth4/Area3D" index="0"]
transform = Transform3D(0.17, 0, 0, 0, 0.17, 0, 0, 0, 0.17, 0, 0, 0)
shape = SubResource("SphereShape3D_drefq")
disabled = true
[node name="WaypointTest" parent="." index="1" instance=ExtResource("4_drefq")]
transform = Transform3D(0.01, 0, 0, 0, 0.01, 0, 0, 0, 0.01, 0.00702367, 0.0636012, 0.0580069)

29
Nikita/hub_scene.tscn Normal file
View file

@ -0,0 +1,29 @@
[gd_scene load_steps=7 format=3 uid="uid://b6kb866y3e4aa"]
[ext_resource type="PackedScene" uid="uid://cjlojmoyhw2cp" path="res://Nikita/earth.tscn" id="1_248vy"]
[ext_resource type="Texture2D" uid="uid://cn2wdmm2xiodm" path="res://Nikita/textures/panorama_image.png" id="2_vvf8p"]
[ext_resource type="PackedScene" uid="uid://tvwwstaorixw" path="res://Nikita/camera_hub.tscn" id="3_ur8lc"]
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_ur8lc"]
panorama = ExtResource("2_vvf8p")
[sub_resource type="Sky" id="Sky_fkqbs"]
sky_material = SubResource("PanoramaSkyMaterial_ur8lc")
[sub_resource type="Environment" id="Environment_ur8lc"]
background_mode = 2
sky = SubResource("Sky_fkqbs")
[node name="Hub" type="Node3D"]
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_ur8lc")
[node name="Earth" parent="." instance=ExtResource("1_248vy")]
transform = Transform3D(10, 0, 0, 0, 10, 0, 0, 0, 10, 0, 0, 0)
[node name="CameraHub" parent="." instance=ExtResource("3_ur8lc")]
transform = Transform3D(10, 0, 0, 0, 10, 0, 0, 0, 10, 0, 0, 0)
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(0.0337074, -0.226039, 0.973535, 0.00782163, 0.974118, 0.225904, -0.999401, 0, 0.034603, 15.6131, 3.61956, 0)

42
Nikita/level_popup.tscn Normal file
View file

@ -0,0 +1,42 @@
[gd_scene load_steps=4 format=3 uid="uid://cbva1dnqoaopn"]
[ext_resource type="Script" uid="uid://c1rdbsbip2wvj" path="res://Nikita/scripts/level_popup.gd" id="1_3awpt"]
[ext_resource type="Texture2D" uid="uid://otyci5h617qa" path="res://Nikita/source/playbutton.png" id="1_ay7gq"]
[ext_resource type="Texture2D" uid="uid://hk701pejgl" path="res://Nikita/textures/popup.png" id="1_pk11s"]
[node name="LevelPopup" type="Node2D"]
script = ExtResource("1_3awpt")
[node name="Name" type="Label" parent="."]
offset_left = 50.0
offset_right = 550.0
offset_bottom = 70.0
theme_override_font_sizes/font_size = 48
text = "Place name"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Description" type="Label" parent="."]
offset_left = 50.0
offset_top = 70.0
offset_right = 550.0
offset_bottom = 270.0
theme_override_font_sizes/font_size = 24
text = "Objective:
"
[node name="PlayButton" type="Button" parent="."]
offset_left = 200.0
offset_top = 300.0
offset_right = 400.0
offset_bottom = 350.0
icon = ExtResource("1_ay7gq")
flat = true
[node name="Sprite2D" type="Sprite2D" parent="."]
z_index = -1
position = Vector2(300, 200)
texture = ExtResource("1_pk11s")
metadata/_edit_lock_ = true
[connection signal="pressed" from="PlayButton" to="." method="_on_play_button_pressed"]

View file

@ -0,0 +1,69 @@
extends Node3D
var rotation_speed = PI/2
var min_zoom = 1.5
var max_zoom = 5.0
var zoom_speed = 0.2
var zoom = 2.0
var mouse_grab_sensitivity = 0.006
var grabbed : bool = false
var velocity_y = 0.0
var dampening_y = 0.4
var stop_threashold_y = 0.5
var velocity_x = 0.0
var dampening_x = 0.2
var stop_threashold_x = 0.3
func _process(delta: float) -> void:
$XRotation.rotation.x = clamp($XRotation.rotation.x, -1.3, 1.3)
scale = lerp(scale, Vector3.ONE * zoom, zoom_speed)
# TODO: reset the velocity when mouse doesn't move for more than 1 second
velocity_y = clamp(velocity_y, -100.0, 100.0)
velocity_x = clamp(velocity_x, -10.0, 10.0)
if !grabbed:
rotate_object_local(Vector3.UP, -1 * velocity_y * mouse_grab_sensitivity)
if velocity_y > stop_threashold_y:
velocity_y -= dampening_y
elif velocity_y < -stop_threashold_y:
velocity_y += dampening_y
else:
velocity_y = 0.0
$XRotation.rotate_object_local(Vector3.RIGHT, -1 * velocity_x * mouse_grab_sensitivity)
if velocity_x > stop_threashold_x:
velocity_x -= dampening_x
elif velocity_x < -stop_threashold_x:
velocity_x += dampening_x
else:
velocity_x = 0.0
$XRotation.rotation.x = clamp($XRotation.rotation.x, -1.3, 1.3)
func _unhandled_input(event: InputEvent) -> void:
if event is InputEventMouseButton:
if event.button_index == MOUSE_BUTTON_LEFT:
grabbed = event.pressed
if grabbed:
velocity_x = 0.0
velocity_y = 0.0
elif event.button_index == MOUSE_BUTTON_WHEEL_UP:
zoom -= zoom_speed
elif event.button_index == MOUSE_BUTTON_WHEEL_DOWN:
zoom += zoom_speed
zoom = clamp(zoom, min_zoom, max_zoom)
if event is InputEventMouseMotion and grabbed:
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
if event.relative.x != 0:
var x_rotation = clamp(event.relative.x, -30, 30)
if abs(event.relative.x - x_rotation) > 0:
velocity_y = event.relative.x - x_rotation
rotate_object_local(Vector3.UP, -1 * x_rotation * mouse_grab_sensitivity)
if event.relative.y != 0:
var y_rotation = clamp(event.relative.y, -10, 10)
if abs(event.relative.y - y_rotation) > 0:
velocity_x = event.relative.y - y_rotation
$XRotation.rotate_object_local(Vector3.RIGHT, -1 * y_rotation * mouse_grab_sensitivity)
else:
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
func get_mouse_input(delta: float):
return

View file

@ -0,0 +1 @@
uid://co77n1eq661oo

View file

@ -0,0 +1,5 @@
extends Node2D
func _on_play_button_pressed() -> void:
print("2D Button pressed!")

View file

@ -0,0 +1 @@
uid://c1rdbsbip2wvj

View file

@ -0,0 +1,60 @@
extends Node3D
var to_earth
var toggle_popup : bool = false
func _ready() -> void:
get_node("Popup").visible = toggle_popup
var cam = get_viewport().get_camera_3d()
to_earth = (get_parent().global_position - global_position).normalized()
look_at(cam.global_position, Vector3.UP)
func _process(delta):
var cam = get_viewport().get_camera_3d()
var to_camera = (cam.global_position - global_position).normalized()
var cos_similarity = to_camera.dot(to_earth)
#print(cos_similarity)
if abs(cos_similarity) < 0.75:
# Construct desired basis (local -Z facing camera)
var z_axis = -to_camera
var up_axis = Vector3.UP
var x_axis = up_axis.cross(z_axis).normalized()
var y_axis = z_axis.cross(x_axis).normalized()
var desired_basis = Basis(x_axis, y_axis, z_axis)
# Extract current rotation (normalized) and scale
var current_basis = global_transform.basis
var current_scale = current_basis.get_scale()
var current_q = Quaternion(current_basis.orthonormalized())
var target_q = Quaternion(desired_basis.orthonormalized())
# Interpolate smoothly
var speed = 10.0
var new_q = current_q.slerp(target_q, speed * delta)
# Rebuild basis: pure rotation, then reapply scale
var new_basis = Basis(new_q)
new_basis = new_basis.scaled(current_scale)
global_transform.basis = new_basis
else:
# Build basis: local -Z faces the camera, Y stays up
to_camera.y = 0
var z_axis = -to_camera
var y_axis = Vector3.UP
var x_axis = y_axis.cross(z_axis).normalized()
y_axis = z_axis.cross(x_axis).normalized()
var desired_basis = Basis(x_axis, y_axis, z_axis)
# Extract current rotation (normalized) and scale
var current_basis = global_transform.basis
var current_scale = current_basis.get_scale()
var current_q = Quaternion(current_basis.orthonormalized())
var target_q = Quaternion(desired_basis.orthonormalized())
# Interpolate smoothly
var speed = 20.0
var new_q = current_q.slerp(target_q, speed * delta)
# Rebuild basis: pure rotation, then reapply scale
var new_basis = Basis(new_q)
new_basis = new_basis.scaled(current_scale)
global_transform.basis = new_basis
func _on_area_3d_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:
if event is InputEventMouseButton and event.is_released() and event.button_index == MOUSE_BUTTON_LEFT:
toggle_popup = !toggle_popup
get_node("Popup").visible = toggle_popup

View file

@ -0,0 +1 @@
uid://y2vv2fxj5ils

Binary file not shown.

View file

@ -0,0 +1,38 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://7fijqcjxggit"
path="res://.godot/imported/Earth_Final.fbx-82ce24a36b10df65c736c390f1ab8d63.scn"
[deps]
source_file="res://Nikita/source/Earth_Final.fbx"
dest_files=["res://.godot/imported/Earth_Final.fbx-82ce24a36b10df65c736c390f1ab8d63.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=true
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={}
fbx/importer=0
fbx/allow_geometry_helper_nodes=false
fbx/embedded_image_handling=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 809 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://otyci5h617qa"
path="res://.godot/imported/playbutton.png-49eb8de4f06b6561e6abf48fd1fc7bf6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Nikita/source/playbutton.png"
dest_files=["res://.godot/imported/playbutton.png-49eb8de4f06b6561e6abf48fd1fc7bf6.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -0,0 +1,10 @@
# Exported from Wings 3D 2.3
newmtl default
Ns 19.999999999999996
d 1.0
illum 2
Kd 0.7898538076923077 0.8133333333333334 0.6940444444444445
Ka 0.0 0.0 0.0
Ks 0.1689853807692308 0.17133333333333334 0.15940444444444446
Ke 0.0 0.0 0.0

459
Nikita/source/waypoint.obj Normal file
View file

@ -0,0 +1,459 @@
# Exported from Wings 3D 2.3
mtllib waypoint.mtl
o cone1
#114 vertices, 224 faces
v -0.50000000 0.96635238 2.8556480e-17
v -0.46193977 0.96635238 0.19134172
v -0.35355339 0.96635238 0.35355339
v -0.19134172 0.96635238 0.46193977
v -4.2431612e-17 0.96635238 0.50000000
v 0.19134172 0.96635238 0.46193977
v 0.35355339 0.96635238 0.35355339
v 0.46193977 0.96635238 0.19134172
v 0.50000000 0.96635238 2.8556480e-17
v 0.46193977 0.96635238 -0.19134172
v 0.35355339 0.96635238 -0.35355339
v 0.19134172 0.96635238 -0.46193977
v -3.6710424e-17 0.96635238 -0.50000000
v -0.19134172 0.96635238 -0.46193977
v -0.35355339 0.96635238 -0.35355339
v -0.46193977 0.96635238 -0.19134172
v -1.5963138e-16 6.4705882e-3 -3.2653618e-18
v 0.19134172 1.38817393 -8.5401771e-19
v 0.17677670 1.38817393 7.3223305e-2
v 0.13529903 1.38817393 0.13529903
v 7.3223305e-2 1.38817393 0.17677670
v -1.7080354e-17 1.38817393 0.19134172
v -7.3223305e-2 1.38817393 0.17677670
v -0.13529903 1.38817393 0.13529903
v -0.17677670 1.38817393 7.3223305e-2
v -0.19134172 1.38817393 2.2578584e-17
v -0.17677670 1.38817393 -7.3223305e-2
v -0.13529903 1.38817393 -0.13529903
v -7.3223305e-2 1.38817393 -0.17677670
v -1.7080354e-17 1.38817393 -0.19134172
v 7.3223305e-2 1.38817393 -0.17677670
v 0.13529903 1.38817393 -0.13529903
v 0.17677670 1.38817393 -7.3223305e-2
v 0.35355339 1.27978756 -8.5401771e-19
v 0.32664074 1.27978756 0.13529903
v 0.25000000 1.27978756 0.25000000
v 0.13529903 1.27978756 0.32664074
v -1.7080354e-17 1.27978756 0.35355339
v -0.13529903 1.27978756 0.32664074
v -0.25000000 1.27978756 0.25000000
v -0.32664074 1.27978756 0.13529903
v -0.35355339 1.27978756 4.2443785e-17
v -0.32664074 1.27978756 -0.13529903
v -0.25000000 1.27978756 -0.25000000
v -0.13529903 1.27978756 -0.32664074
v -1.2810266e-16 1.27978756 -0.35355339
v 0.13529903 1.27978756 -0.32664074
v 0.25000000 1.27978756 -0.25000000
v 0.32664074 1.27978756 -0.13529903
v 0.46193977 1.11757588 -8.5401771e-19
v 0.42677670 1.11757588 0.17677670
v 0.32664074 1.11757588 0.32664074
v 0.17677670 1.11757588 0.42677670
v -1.7080354e-17 1.11757588 0.46193977
v -0.17677670 1.11757588 0.42677670
v -0.32664074 1.11757588 0.32664074
v -0.42677670 1.11757588 0.17677670
v -0.46193977 1.11757588 5.5717288e-17
v -0.42677670 1.11757588 -0.17677670
v -0.32664074 1.11757588 -0.32664074
v -0.17677670 1.11757588 -0.42677670
v -1.2810266e-16 1.11757588 -0.46193977
v 0.17677670 1.11757588 -0.42677670
v 0.32664074 1.11757588 -0.32664074
v 0.42677670 1.11757588 -0.17677670
v -1.7080354e-17 1.42623417 -8.5401771e-19
v -0.29250000 0.50647059 -2.7536184e-18
v -0.27023476 0.50647059 0.11193490
v -0.20682873 0.50647059 0.20682873
v -0.11193490 0.50647059 0.27023476
v -1.1888199e-16 0.50647059 0.29250000
v 0.11193490 0.50647059 0.27023476
v 0.20682873 0.50647059 0.20682873
v 0.27023476 0.50647059 0.11193490
v 0.29250000 0.50647059 3.3067300e-17
v 0.27023476 0.50647059 -0.11193490
v 0.20682873 0.50647059 -0.20682873
v 0.11193490 0.50647059 -0.27023476
v -4.7240155e-17 0.50647059 -0.29250000
v -0.11193490 0.50647059 -0.27023476
v -0.20682873 0.50647059 -0.20682873
v -0.27023476 0.50647059 -0.11193490
v -0.46500000 0.83980392 -2.2118745e-18
v -0.38066667 0.67313725 -9.9042506e-19
v -0.42960398 0.83980392 0.17794780
v -0.35169014 0.67313725 0.14567483
v -0.32880465 0.83980392 0.32880465
v -0.26917198 0.67313725 0.26917198
v -0.17794780 0.83980392 0.42960398
v -0.14567483 0.67313725 0.35169014
v -8.7497580e-17 0.83980392 0.46500000
v -1.0350380e-16 0.67313725 0.38066667
v 0.17794780 0.83980392 0.42960398
v 0.14567483 0.67313725 0.35169014
v 0.32880465 0.83980392 0.32880465
v 0.26917198 0.67313725 0.26917198
v 0.42960398 0.83980392 0.17794780
v 0.35169014 0.67313725 0.14567483
v 0.46500000 0.83980392 5.4734202e-17
v 0.38066667 0.67313725 4.5627796e-17
v 0.42960398 0.83980392 -0.17794780
v 0.35169014 0.67313725 -0.14567483
v 0.32880465 0.83980392 -0.32880465
v 0.26917198 0.67313725 -0.26917198
v 0.17794780 0.83980392 -0.42960398
v 0.14567483 0.67313725 -0.35169014
v 2.6394572e-17 0.83980392 -0.46500000
v -1.0267355e-17 0.67313725 -0.38066667
v -0.17794780 0.83980392 -0.42960398
v -0.14567483 0.67313725 -0.35169014
v -0.32880465 0.83980392 -0.32880465
v -0.26917198 0.67313725 -0.26917198
v -0.42960398 0.83980392 -0.17794780
v -0.35169014 0.67313725 -0.14567483
vn -0.99714331 -6.4335488e-2 -3.9574742e-2
vn -0.93402579 2.6033648e-2 0.35625562
vn -0.73307037 -6.4335488e-2 0.67710323
vn -0.40854521 2.6033648e-2 0.91236674
vn -3.9574742e-2 -6.4335488e-2 0.99714331
vn 0.35625562 2.6033648e-2 0.93402579
vn 0.70361200 -9.9299060e-2 0.70361200
vn 0.93402579 2.6033648e-2 0.35625562
vn 0.99714331 -6.4335488e-2 -3.9574742e-2
vn 0.92120253 7.6070595e-2 -0.38157458
vn 0.73307037 -6.4335488e-2 -0.67710323
vn 0.38265741 -1.1662560e-2 -0.92381670
vn -3.9574742e-2 -6.4335488e-2 -0.99714331
vn -0.38157458 7.6070595e-2 -0.92120253
vn -0.67710323 -6.4335488e-2 -0.73307037
vn -0.91236674 2.6033648e-2 -0.40854521
vn 5.5771917e-17 -1.00000000 -1.7080150e-16
vn 0.44254783 0.89674490 1.1580220e-16
vn 0.35310199 0.92408176 0.14625963
vn 0.31292857 0.89674490 0.31292857
vn 0.14625963 0.92408176 0.35310199
vn 7.3262616e-17 0.89674490 0.44254783
vn -0.14625963 0.92408176 0.35310199
vn -0.31292857 0.89674490 0.31292857
vn -0.35310199 0.92408176 0.14625963
vn -0.44254783 0.89674490 2.3633102e-18
vn -0.35310199 0.92408176 -0.14625963
vn -0.31292857 0.89674490 -0.31292857
vn -0.14625963 0.92408176 -0.35310199
vn 5.4356134e-17 0.89674490 -0.44254783
vn 0.14625963 0.92408176 -0.35310199
vn 0.31292857 0.89674490 -0.31292857
vn 0.35310199 0.92408176 -0.14625963
vn 0.70658450 0.70762868 1.0002053e-16
vn 0.65279895 0.70762868 0.27039818
vn 0.49963069 0.70762868 0.49963069
vn 0.27039818 0.70762868 0.65279895
vn -5.7154588e-17 0.70762868 0.70658450
vn -0.27039818 0.70762868 0.65279895
vn -0.49963069 0.70762868 0.49963069
vn -0.65279895 0.70762868 0.27039818
vn -0.70658450 0.70762868 -2.1432970e-17
vn -0.65279895 0.70762868 -0.27039818
vn -0.49963069 0.70762868 -0.49963069
vn -0.27039818 0.70762868 -0.65279895
vn -2.1432970e-17 0.70762868 -0.70658450
vn 0.27039818 0.70762868 -0.65279895
vn 0.49963069 0.70762868 -0.49963069
vn 0.65279895 0.70762868 -0.27039818
vn 0.91381427 0.40613234 -1.6813282e-16
vn 0.84425430 0.40613234 0.34970158
vn 0.64616427 0.40613234 0.64616427
vn 0.34970158 0.40613234 0.84425430
vn -2.5041059e-17 0.40613234 0.91381427
vn -0.34970158 0.40613234 0.84425430
vn -0.64616427 0.40613234 0.64616427
vn -0.84425430 0.40613234 0.34970158
vn -0.91381427 0.40613234 1.0731882e-17
vn -0.84425430 0.40613234 -0.34970158
vn -0.64616427 0.40613234 -0.64616427
vn -0.34970158 0.40613234 -0.84425430
vn -4.6504823e-17 0.40613234 -0.91381427
vn 0.34970158 0.40613234 -0.84425430
vn 0.64616427 0.40613234 -0.64616427
vn 0.84425430 0.40613234 -0.34970158
vn -1.7700400e-17 1.00000000 -9.4697138e-17
vn -0.87527144 -0.48235358 3.5141435e-2
vn -0.79519733 -0.48235358 0.36741833
vn -0.59406163 -0.48235358 0.64375912
vn -0.30248543 -0.48235358 0.82209342
vn 3.5141435e-2 -0.48235358 0.87527144
vn 0.36741833 -0.48235358 0.79519733
vn 0.61782827 -0.48639126 0.61782827
vn 0.79519733 -0.48235358 0.36741833
vn 0.87527144 -0.48235358 3.5141435e-2
vn 0.81041278 -0.48015352 -0.33568396
vn 0.59406163 -0.48235358 -0.64375912
vn 0.33436625 -0.48639126 -0.80723154
vn 3.5141435e-2 -0.48235358 -0.87527144
vn -0.33568396 -0.48015352 -0.81041278
vn -0.64375912 -0.48235358 -0.59406163
vn -0.82209342 -0.48235358 -0.30248543
vn -0.93259256 -0.36092353 2.3049280e-3
vn -0.88814284 -0.45956743 2.6803858e-4
vn -0.86072112 -0.36092353 0.35901720
vn -0.82043442 -0.45956743 0.34012519
vn -0.65781270 -0.36092353 0.66107236
vn -0.62782229 -0.45956743 0.62820136
vn -0.35475825 -0.36092353 0.86248524
vn -0.33962992 -0.45956743 0.82063957
vn 2.3049280e-3 -0.36092353 0.93259256
vn 2.6803858e-4 -0.45956743 0.88814284
vn 0.35901720 -0.36092353 0.86072112
vn 0.34012519 -0.45956743 0.82043442
vn 0.65061382 -0.39166735 0.65061382
vn 0.62702645 -0.46225065 0.62702645
vn 0.86072112 -0.36092353 0.35901720
vn 0.82043442 -0.45956743 0.34012519
vn 0.93259256 -0.36092353 2.3049280e-3
vn 0.88814284 -0.45956743 2.6803858e-4
vn 0.87220297 -0.32975745 -0.36127830
vn 0.82181713 -0.45687979 -0.34040780
vn 0.65781270 -0.36092353 -0.66107236
vn 0.62782229 -0.45956743 -0.62820136
vn 0.35210966 -0.39166735 -0.85006792
vn 0.33934427 -0.46225065 -0.81924954
vn 2.3049280e-3 -0.36092353 -0.93259256
vn 2.6803858e-4 -0.45956743 -0.88814284
vn -0.36127830 -0.32975745 -0.87220297
vn -0.34040780 -0.45687979 -0.82181713
vn -0.66107236 -0.36092353 -0.65781270
vn -0.62820136 -0.45956743 -0.62782229
vn -0.86248524 -0.36092353 -0.35475825
vn -0.82063957 -0.45956743 -0.33962992
g cone1_default
usemtl default
s 1
f 1//1 2//2 58//58
f 1//1 113//113 83//83
f 2//2 83//83 85//85
f 3//3 4//4 56//56
f 3//3 85//85 87//87
f 4//4 87//87 89//89
f 5//5 6//6 54//54
f 5//5 89//89 91//91
f 6//6 91//91 93//93
f 7//7 8//8 52//52
f 7//7 93//93 95//95
f 8//8 7//7 97//97
f 9//9 8//8 99//99
f 9//9 10//10 50//50
f 10//10 9//9 101//101
f 11//11 12//12 64//64
f 11//11 101//101 103//103
f 12//12 103//103 105//105
f 13//13 12//12 107//107
f 13//13 14//14 62//62
f 14//14 13//13 109//109
f 15//15 16//16 60//60
f 15//15 109//109 111//111
f 16//16 111//111 113//113
f 17//17 68//68 67//67
f 17//17 69//69 68//68
f 17//17 70//70 69//69
f 17//17 71//71 70//70
f 17//17 72//72 71//71
f 17//17 73//73 72//72
f 17//17 74//74 73//73
f 17//17 75//75 74//74
f 17//17 76//76 75//75
f 17//17 77//77 76//76
f 17//17 78//78 77//77
f 17//17 79//79 78//78
f 17//17 80//80 79//79
f 17//17 81//81 80//80
f 17//17 82//82 81//81
f 18//18 35//35 34//34
f 18//18 49//49 33//33
f 18//18 66//66 19//19
f 19//19 35//35 18//18
f 19//19 66//66 20//20
f 20//20 35//35 19//19
f 20//20 37//37 36//36
f 20//20 66//66 21//21
f 21//21 37//37 20//20
f 21//21 66//66 22//22
f 22//22 37//37 21//21
f 22//22 39//39 38//38
f 22//22 66//66 23//23
f 23//23 39//39 22//22
f 23//23 66//66 24//24
f 24//24 39//39 23//23
f 24//24 41//41 40//40
f 24//24 66//66 25//25
f 25//25 41//41 24//24
f 25//25 66//66 26//26
f 26//26 41//41 25//25
f 26//26 43//43 42//42
f 26//26 66//66 27//27
f 27//27 43//43 26//26
f 27//27 66//66 28//28
f 28//28 43//43 27//27
f 28//28 45//45 44//44
f 28//28 66//66 29//29
f 29//29 45//45 28//28
f 29//29 66//66 30//30
f 30//30 45//45 29//29
f 30//30 47//47 46//46
f 30//30 66//66 31//31
f 31//31 47//47 30//30
f 31//31 66//66 32//32
f 32//32 47//47 31//31
f 32//32 49//49 48//48
f 32//32 66//66 33//33
f 33//33 49//49 32//32
f 33//33 66//66 18//18
f 34//34 49//49 18//18
f 34//34 50//50 49//49
f 35//35 50//50 34//34
f 35//35 52//52 51//51
f 36//36 35//35 20//20
f 36//36 52//52 35//35
f 37//37 52//52 36//36
f 37//37 54//54 53//53
f 38//38 37//37 22//22
f 38//38 54//54 37//37
f 39//39 54//54 38//38
f 39//39 56//56 55//55
f 40//40 39//39 24//24
f 40//40 56//56 39//39
f 41//41 56//56 40//40
f 41//41 58//58 57//57
f 42//42 41//41 26//26
f 42//42 58//58 41//41
f 43//43 58//58 42//42
f 43//43 60//60 59//59
f 44//44 43//43 28//28
f 44//44 60//60 43//43
f 45//45 60//60 44//44
f 45//45 62//62 61//61
f 46//46 45//45 30//30
f 46//46 62//62 45//45
f 47//47 62//62 46//46
f 47//47 64//64 63//63
f 48//48 47//47 32//32
f 48//48 64//64 47//47
f 49//49 50//50 65//65
f 49//49 64//64 48//48
f 50//50 8//8 9//9
f 50//50 10//10 65//65
f 51//51 8//8 50//50
f 51//51 50//50 35//35
f 52//52 6//6 7//7
f 52//52 8//8 51//51
f 53//53 6//6 52//52
f 53//53 52//52 37//37
f 54//54 4//4 5//5
f 54//54 6//6 53//53
f 55//55 4//4 54//54
f 55//55 54//54 39//39
f 56//56 2//2 3//3
f 56//56 4//4 55//55
f 57//57 2//2 56//56
f 57//57 56//56 41//41
f 58//58 2//2 57//57
f 58//58 16//16 1//1
f 59//59 16//16 58//58
f 59//59 58//58 43//43
f 60//60 14//14 15//15
f 60//60 16//16 59//59
f 61//61 14//14 60//60
f 61//61 60//60 45//45
f 62//62 12//12 13//13
f 62//62 14//14 61//61
f 63//63 12//12 62//62
f 63//63 62//62 47//47
f 64//64 10//10 11//11
f 64//64 12//12 63//63
f 65//65 10//10 64//64
f 65//65 64//64 49//49
f 67//67 82//82 17//17
f 67//67 86//86 84//84
f 68//68 88//88 86//86
f 69//69 90//90 88//88
f 70//70 92//92 90//90
f 71//71 94//94 92//92
f 72//72 96//96 94//94
f 73//73 74//74 96//96
f 74//74 75//75 98//98
f 75//75 76//76 100//100
f 76//76 104//104 102//102
f 77//77 106//106 104//104
f 78//78 79//79 106//106
f 79//79 80//80 108//108
f 80//80 112//112 110//110
f 81//81 114//114 112//112
f 82//82 84//84 114//114
f 83//83 2//2 1//1
f 83//83 114//114 84//84
f 84//84 82//82 67//67
f 84//84 85//85 83//83
f 85//85 3//3 2//2
f 85//85 84//84 86//86
f 86//86 67//67 68//68
f 86//86 87//87 85//85
f 87//87 4//4 3//3
f 87//87 86//86 88//88
f 88//88 68//68 69//69
f 88//88 89//89 87//87
f 89//89 5//5 4//4
f 89//89 88//88 90//90
f 90//90 69//69 70//70
f 90//90 91//91 89//89
f 91//91 6//6 5//5
f 91//91 90//90 92//92
f 92//92 70//70 71//71
f 92//92 93//93 91//91
f 93//93 7//7 6//6
f 93//93 92//92 94//94
f 94//94 71//71 72//72
f 94//94 95//95 93//93
f 95//95 94//94 96//96
f 95//95 97//97 7//7
f 96//96 72//72 73//73
f 96//96 98//98 95//95
f 97//97 95//95 98//98
f 97//97 99//99 8//8
f 98//98 96//96 74//74
f 98//98 100//100 97//97
f 99//99 97//97 100//100
f 99//99 101//101 9//9
f 100//100 98//98 75//75
f 100//100 102//102 99//99
f 101//101 11//11 10//10
f 101//101 99//99 102//102
f 102//102 100//100 76//76
f 102//102 103//103 101//101
f 103//103 12//12 11//11
f 103//103 102//102 104//104
f 104//104 76//76 77//77
f 104//104 105//105 103//103
f 105//105 104//104 106//106
f 105//105 107//107 12//12
f 106//106 77//77 78//78
f 106//106 108//108 105//105
f 107//107 105//105 108//108
f 107//107 109//109 13//13
f 108//108 106//106 79//79
f 108//108 110//110 107//107
f 109//109 15//15 14//14
f 109//109 107//107 110//110
f 110//110 108//108 80//80
f 110//110 111//111 109//109
f 111//111 16//16 15//15
f 111//111 110//110 112//112
f 112//112 80//80 81//81
f 112//112 113//113 111//111
f 113//113 1//1 16//16
f 113//113 112//112 114//114
f 114//114 81//81 82//82
f 114//114 83//83 113//113

View file

@ -0,0 +1,25 @@
[remap]
importer="wavefront_obj"
importer_version=1
type="Mesh"
uid="uid://cxhm1t06r3k56"
path="res://.godot/imported/waypoint.obj-f88fcc7359b77e33cda3b6e61d3e7cdf.mesh"
[deps]
files=["res://.godot/imported/waypoint.obj-f88fcc7359b77e33cda3b6e61d3e7cdf.mesh"]
source_file="res://Nikita/source/waypoint.obj"
dest_files=["res://.godot/imported/waypoint.obj-f88fcc7359b77e33cda3b6e61d3e7cdf.mesh", "res://.godot/imported/waypoint.obj-f88fcc7359b77e33cda3b6e61d3e7cdf.mesh"]
[params]
generate_tangents=true
generate_lods=true
generate_shadow_mesh=true
generate_lightmap_uv2=false
generate_lightmap_uv2_texel_size=0.2
scale_mesh=Vector3(1, 1, 1)
offset_mesh=Vector3(0, 0, 0)
force_disable_mesh_compression=false

View file

@ -0,0 +1,4 @@
extends SubViewportContainer
func _ready() -> void:
$SubViewport.size = get_viewport().size

View file

@ -0,0 +1 @@
uid://b2nb1jajwuv65

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://da0uksbt2mkqw"
path.s3tc="res://.godot/imported/Earth2_Land_BaseColor.png-7ee2f5da2a05aadb931d4316a8113a29.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Nikita/textures/Earth2_Land_BaseColor.png"
dest_files=["res://.godot/imported/Earth2_Land_BaseColor.png-7ee2f5da2a05aadb931d4316a8113a29.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal="uid://bknabbn1h3w2q"
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bknabbn1h3w2q"
path="res://.godot/imported/Earth2_Land_Roughness.png-249e734ef9e5504f2a4e037209f1c48d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Nikita/textures/Earth2_Land_Roughness.png"
dest_files=["res://.godot/imported/Earth2_Land_Roughness.png-249e734ef9e5504f2a4e037209f1c48d.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cw4gkryn2sl7y"
path.s3tc="res://.godot/imported/Earth2_Water_BaseColor.png-6206b41a43a411cb6e46ce8bd7b1b1da.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Nikita/textures/Earth2_Water_BaseColor.png"
dest_files=["res://.godot/imported/Earth2_Water_BaseColor.png-6206b41a43a411cb6e46ce8bd7b1b1da.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal="uid://c85cxc0wihnpt"
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c85cxc0wihnpt"
path="res://.godot/imported/Earth2_Water_Roughness.png-b18c4d0abfc494db36920a42508774ae.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Nikita/textures/Earth2_Water_Roughness.png"
dest_files=["res://.godot/imported/Earth2_Water_Roughness.png-b18c4d0abfc494db36920a42508774ae.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c668unnp6n3xr"
path.s3tc="res://.godot/imported/camera_image.png-49acbbd63d63c6ebbafc0146cb16e14a.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Nikita/textures/camera_image.png"
dest_files=["res://.godot/imported/camera_image.png-49acbbd63d63c6ebbafc0146cb16e14a.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bjn5x4l7si0d8"
path.s3tc="res://.godot/imported/camera_image_2.png-1342512d565e1266f5b2e7fc31c1a575.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Nikita/textures/camera_image_2.png"
dest_files=["res://.godot/imported/camera_image_2.png-1342512d565e1266f5b2e7fc31c1a575.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cn2wdmm2xiodm"
path.s3tc="res://.godot/imported/panorama_image.png-9f73dc15751376ad3428d34ab0c4c787.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Nikita/textures/panorama_image.png"
dest_files=["res://.godot/imported/panorama_image.png-9f73dc15751376ad3428d34ab0c4c787.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

BIN
Nikita/textures/popup.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://hk701pejgl"
path="res://.godot/imported/popup.png-ba4ca2f6afa8e322d690f4c69f29e180.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Nikita/textures/popup.png"
dest_files=["res://.godot/imported/popup.png-ba4ca2f6afa8e322d690f4c69f29e180.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

40
Nikita/waypoint.tscn Normal file
View file

@ -0,0 +1,40 @@
[gd_scene load_steps=7 format=3 uid="uid://ccjwh4alvryho"]
[ext_resource type="ArrayMesh" uid="uid://cxhm1t06r3k56" path="res://Nikita/source/waypoint.obj" id="1_77yrm"]
[ext_resource type="Script" uid="uid://y2vv2fxj5ils" path="res://Nikita/scripts/waypoint.gd" id="1_iiqp4"]
[ext_resource type="Texture2D" uid="uid://c668unnp6n3xr" path="res://Nikita/textures/camera_image.png" id="2_iiqp4"]
[ext_resource type="PackedScene" uid="uid://bab0m4cvoiouv" path="res://Nikita/3d_popup.tscn" id="4_3sm4y"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_77yrm"]
depth_draw_mode = 2
shading_mode = 0
disable_ambient_light = true
albedo_color = Color(1, 0.0705882, 0, 1)
disable_receive_shadows = true
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_iiqp4"]
[node name="Waypoint" type="Node3D"]
script = ExtResource("1_iiqp4")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
material_override = SubResource("StandardMaterial3D_77yrm")
cast_shadow = 0
mesh = ExtResource("1_77yrm")
[node name="Area3D" type="Area3D" parent="MeshInstance3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.755125, -1.49012e-08)
[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/Area3D"]
transform = Transform3D(1.1, 0, 0, 0, 1.1, 0, 0, 0, 1.1, 0, 0, 0)
shape = SubResource("CapsuleShape3D_iiqp4")
[node name="CameraIcon" type="Sprite3D" parent="."]
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, 0, 1, -0.05)
billboard = 1
texture = ExtResource("2_iiqp4")
[node name="Popup" parent="." instance=ExtResource("4_3sm4y")]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, -4.28591, 0.944037, 2.87264e-07)
[connection signal="input_event" from="MeshInstance3D/Area3D" to="." method="_on_area_3d_input_event"]