Compare commits
No commits in common. "6d50a76cff8ba96de6d4162de41c330aac2b4f94" and "7893870520873a0e10251c7272342c43feea8eb0" have entirely different histories.
6d50a76cff
...
7893870520
12
NOTES.md
12
NOTES.md
@ -2,12 +2,6 @@
|
||||
|
||||
- 11.2.2024
|
||||
|
||||
## Optat se
|
||||
|
||||
- Udělám pár technických vylepšení a jinak se zaměřím na DX portálů - gizma, guidy, procedural mesh
|
||||
- Téma DP do IS?
|
||||
- Kdy se odevzdává DP?
|
||||
|
||||
## Poznámky k implementaci
|
||||
|
||||
### 5 roomka
|
||||
@ -18,11 +12,6 @@ venkovního úhlu. Protože reálně jsem od něj mega daleko, takže portálov
|
||||
### Island level
|
||||
|
||||
- Dolní collider jsem musel hodně zvětšit aby skrz něj hráč neproletěl během 1 physics framu
|
||||
- Horní jsem musel trochu potočit, jinak se hráč objevil zrcadlově??
|
||||
- Zapnout/Vypnout tadyto *proporční* teleportování? V MC se člověk objeví asi uprostřed nether
|
||||
portálu i když je kde chce
|
||||
- Kdybych chtěl mesh do dveří (oblouk), možná by bylo jednodušší udělat masku než spešl mesh.
|
||||
Viewport je čtveratý tak jako tak.
|
||||
|
||||
### Semafor
|
||||
|
||||
@ -31,4 +20,3 @@ venkovního úhlu. Protože reálně jsem od něj mega daleko, takže portálov
|
||||
- Zkusil jsem vymodelovat vlastní mesh v blenderu. Moc to nefunguje, Godot je asi zmatený z toho
|
||||
že on má Y-up a Blender používá Z-up. V portal repu je k tomu poznámka ale nepochopil jsem to asi.
|
||||
- Divně se na ten mesh pak projektuje ta textura kamery??
|
||||
- Možná by stálo za to udělat procedurální mesh. Nejběžnější tvar portálu bude asi obdélník
|
||||
|
25
hud.gd
25
hud.gd
@ -1,25 +0,0 @@
|
||||
extends VBoxContainer
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
toggle_hud() # This should hide the HUD by default
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
toggle_hud()
|
||||
|
||||
func toggle_hud() -> void:
|
||||
|
||||
var should_show = Input.mouse_mode == Input.MOUSE_MODE_CAPTURED
|
||||
|
||||
if should_show:
|
||||
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
|
||||
show()
|
||||
else:
|
||||
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
||||
hide()
|
||||
|
||||
func _on_menu_button_pressed() -> void:
|
||||
var err = get_tree().change_scene_to_file("res://menu.tscn")
|
||||
if err != OK:
|
||||
print("Failed to switch scenes: ", error_string(err))
|
@ -1 +0,0 @@
|
||||
uid://dys441ih752an
|
13
hud.tscn
13
hud.tscn
@ -1,13 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://b5x7fmpwck335"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dys441ih752an" path="res://hud.gd" id="1_37p78"]
|
||||
|
||||
[node name="HUD" type="VBoxContainer"]
|
||||
script = ExtResource("1_37p78")
|
||||
|
||||
[node name="MenuButton" type="Button" parent="."]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "Back to Menu"
|
||||
|
||||
[connection signal="pressed" from="MenuButton" to="." method="_on_menu_button_pressed"]
|
@ -1,11 +1,10 @@
|
||||
[gd_scene load_steps=11 format=3 uid="uid://27pb62xwsqd8"]
|
||||
[gd_scene load_steps=10 format=3 uid="uid://27pb62xwsqd8"]
|
||||
|
||||
[ext_resource type="MeshLibrary" uid="uid://bedqgubx1g1uf" path="res://prototypes.tres" id="1_mqqdr"]
|
||||
[ext_resource type="Script" uid="uid://d2bvvjsibau8c" path="res://addons/simple-portal-system/scripts/portal.gd" id="2_b14t7"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://bqilnvlfws6xh" path="res://portal-mesh.tres" id="2_cgnft"]
|
||||
[ext_resource type="PackedScene" uid="uid://cgdlowfuuorvi" path="res://player.tscn" id="3_b0o0q"]
|
||||
[ext_resource type="Script" uid="uid://bkv7t4hw21byg" path="res://addons/simple-portal-system/scripts/simple_portal_teleport.gd" id="4_snwvi"]
|
||||
[ext_resource type="PackedScene" uid="uid://b5x7fmpwck335" path="res://hud.tscn" id="6_phjvl"]
|
||||
|
||||
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_b0o0q"]
|
||||
sky_horizon_color = Color(0.662243, 0.671743, 0.686743, 1)
|
||||
@ -24,10 +23,6 @@ size = Vector3(2, 2, 0.5)
|
||||
|
||||
[node name="level_3rooms" type="Node3D"]
|
||||
|
||||
[node name="HUD" parent="." instance=ExtResource("6_phjvl")]
|
||||
offset_right = 137.0
|
||||
offset_bottom = 23.0
|
||||
|
||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||
environment = SubResource("Environment_snwvi")
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
@ -8,7 +8,6 @@
|
||||
[ext_resource type="Script" uid="uid://d2bvvjsibau8c" path="res://addons/simple-portal-system/scripts/portal.gd" id="5_wg85y"]
|
||||
[ext_resource type="Script" uid="uid://bkv7t4hw21byg" path="res://addons/simple-portal-system/scripts/simple_portal_teleport.gd" id="6_3fidx"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://bqilnvlfws6xh" path="res://portal-mesh.tres" id="7_hwdx8"]
|
||||
[ext_resource type="PackedScene" uid="uid://b5x7fmpwck335" path="res://hud.tscn" id="9_2wcgd"]
|
||||
|
||||
[sub_resource type="Environment" id="Environment_7knre"]
|
||||
background_mode = 1
|
||||
@ -21,6 +20,9 @@ size = Vector3(2, 1, 2)
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_2wcgd"]
|
||||
size = Vector3(2, 2.5, 8.79824)
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_hwdx8"]
|
||||
viewport_path = NodePath("SubViewport")
|
||||
|
||||
[node name="Main" type="Node3D"]
|
||||
|
||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
@ -300,4 +302,17 @@ fade_out_color = Color(0.590126, 0.615058, 0.699408, 1)
|
||||
exit_cull_mask = 1048573
|
||||
exit_portal = NodePath("../P_bottom")
|
||||
|
||||
[node name="HUD" parent="." instance=ExtResource("9_2wcgd")]
|
||||
[node name="SubViewport" type="SubViewport" parent="."]
|
||||
size = Vector2i(512, 288)
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="SubViewport"]
|
||||
transform = Transform3D(-0.00436047, 0.491726, -0.870739, 0, 0.870747, 0.491731, 0.999991, 0.00214418, -0.00379687, -34.9621, 17.276, -0.665714)
|
||||
fov = 52.5
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="CanvasLayer"]
|
||||
visible = false
|
||||
offset_right = 512.0
|
||||
offset_bottom = 288.0
|
||||
texture = SubResource("ViewportTexture_hwdx8")
|
||||
|
14
player.gd
14
player.gd
@ -7,12 +7,18 @@ const JUMP_VELOCITY = 4.5
|
||||
const MOUSE_SENSITIVITY = 0.005
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
|
||||
|
||||
func _unhandled_input(event: InputEvent) -> void:
|
||||
if event is InputEventMouseMotion:
|
||||
if Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:
|
||||
rotate_y(-event.screen_relative.x * MOUSE_SENSITIVITY)
|
||||
camera.rotate_x(-event.screen_relative.y * MOUSE_SENSITIVITY)
|
||||
camera.rotation.x = clamp(camera.rotation.x, deg_to_rad(-80), deg_to_rad(80))
|
||||
rotate_y(-event.screen_relative.x * MOUSE_SENSITIVITY)
|
||||
camera.rotate_x(-event.screen_relative.y * MOUSE_SENSITIVITY)
|
||||
camera.rotation.x = clamp(camera.rotation.x, deg_to_rad(-80), deg_to_rad(80))
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
# Add the gravity.
|
||||
|
Loading…
Reference in New Issue
Block a user