refined parallax layers

This commit is contained in:
Adam Burns 2025-10-18 23:15:03 -04:00
parent 47b0cc91ca
commit 8b0acaef2b
6 changed files with 98 additions and 44 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://pxewmkom3js8"
path="res://.godot/imported/25-10-18-godot-course-Terrain (32x32).png-bf2dc5051539e425b866c73584052a02.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://25-10-18-godot-course-Terrain (32x32).png"
dest_files=["res://.godot/imported/25-10-18-godot-course-Terrain (32x32).png-bf2dc5051539e425b866c73584052a02.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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

@ -18,8 +18,8 @@ config/icon="res://icon.svg"
[display]
window/size/viewport_width=320
window/size/viewport_height=180
window/size/viewport_width=640
window/size/viewport_height=360
window/size/window_width_override=1280
window/size/window_height_override=720
window/stretch/mode="viewport"

View File

@ -0,0 +1,4 @@
[gd_resource type="ColorPalette" format=3 uid="uid://c5vmfphmld7ef"]
[resource]
colors = PackedColorArray(0.5176471, 0.85490197, 0.91764706, 1, 0.37254903, 0.78431374, 0.9019608, 1, 0.37254903, 0.627451, 0.9019608, 1, 0.37254903, 0.43137255, 0.9019608, 1, 0.29803923, 0.37254903, 0.6627451, 1, 0.2627451, 0.27450982, 0.4509804, 1, 0.19215687, 0.1882353, 0.22745098, 1, 0.27058825, 0.23529412, 0.36862746, 1, 0.3647059, 0.27450982, 0.45882353, 1, 0.5176471, 0.32156864, 0.58431375, 1, 0.6666667, 0.34509805, 0.654902, 1, 0.7882353, 0.37254903, 0.6784314, 1, 0.9529412, 0.6509804, 0.5254902, 1, 0.9607843, 0.85490197, 0.6509804, 1, 0.54901963, 0.84705883, 0.5803922, 1, 0.3647059, 0.7529412, 0.5647059, 1, 0.2901961, 0.7254902, 0.63529414, 1, 0.26666668, 0.5764706, 0.6431373, 1, 0.36862746, 0.99215686, 0.96862745, 1, 1, 0.3647059, 0.79607844, 1, 0.99215686, 0.99607843, 0.53333336, 1, 1, 1, 1, 1)

View File

@ -1,13 +1,38 @@
[gd_scene load_steps=11 format=3 uid="uid://cueixogtk70go"]
[gd_scene load_steps=14 format=3 uid="uid://cueixogtk70go"]
[ext_resource type="Script" uid="uid://d0ca3jbhe8le3" path="res://scripts/game_controller.gd" id="1_lbhrr"]
[ext_resource type="PackedScene" uid="uid://dnarbab7jjqmk" path="res://scenes/crate.tscn" id="1_uwrxv"]
[ext_resource type="Script" uid="uid://b84pdw14l6gb6" path="res://scripts/scene_manager.gd" id="2_iywne"]
[ext_resource type="PackedScene" uid="uid://2pp1gtlflav8" path="res://scenes/trigger.tscn" id="2_yqjtg"]
[ext_resource type="PackedScene" uid="uid://d3y1iqmpknpyo" path="res://scenes/player.tscn" id="3_lnu2h"]
[ext_resource type="Texture2D" uid="uid://bxx6s82ck7kch" path="res://graphics/backgrounds/forestbackground.png" id="3_p57ef"]
[ext_resource type="Texture2D" uid="uid://cxhbqd7yunb5o" path="res://graphics/backgrounds/25-10-17-sky-background-godot-course-.png" id="4_gee14"]
[ext_resource type="Texture2D" uid="uid://kos0kjk46ooe" path="res://graphics/backgrounds/25-10-17-trees-background-godot-course-v1.png" id="4_u5sy4"]
[sub_resource type="Gradient" id="Gradient_iywne"]
offsets = PackedFloat32Array(0.20666666, 0.66, 0.96666664)
colors = PackedColorArray(0, 0, 0, 1, 0.19215687, 0.1882353, 0.22745098, 1, 0.27058825, 0.23529412, 0.36862746, 1)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_p57ef"]
noise_type = 2
cellular_return_type = 0
domain_warp_enabled = true
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_u5sy4"]
noise = SubResource("FastNoiseLite_p57ef")
color_ramp = SubResource("Gradient_iywne")
seamless = true
in_3d_space = true
[sub_resource type="Gradient" id="Gradient_p57ef"]
offsets = PackedFloat32Array(0.5133333, 0.8466667, 0.9266667)
colors = PackedColorArray(0, 0, 0, 0, 0.5525, 0.85, 0.58224994, 0.36078432, 0.99233335, 1, 0.53999996, 0.27058825)
[sub_resource type="FastNoiseLite" id="FastNoiseLite_u5sy4"]
noise_type = 5
frequency = 0.02
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_iywne"]
noise = SubResource("FastNoiseLite_u5sy4")
color_ramp = SubResource("Gradient_p57ef")
seamless = true
[sub_resource type="RectangleShape2D" id="RectangleShape2D_8cj0n"]
size = Vector2(273, 101)
@ -23,39 +48,28 @@ script = ExtResource("2_iywne")
[node name="Background" type="Parallax2D" parent="."]
scroll_scale = Vector2(0.5, 0.5)
repeat_size = Vector2(320, 0)
repeat_size = Vector2(512, 512)
repeat_times = 100
metadata/_edit_lock_ = true
metadata/_edit_group_ = true
[node name="ForestBackground" type="Sprite2D" parent="Background"]
texture = ExtResource("3_p57ef")
centered = false
[node name="ForestSky" type="Sprite2D" parent="Background"]
position = Vector2(0, -160)
scale = Vector2(1, 4)
texture = ExtResource("4_gee14")
centered = false
[node name="BackgroundSprite" type="Sprite2D" parent="Background"]
texture = SubResource("NoiseTexture2D_u5sy4")
[node name="Midground" type="Parallax2D" parent="."]
repeat_size = Vector2(320, 0)
repeat_size = Vector2(512, 512)
autoscroll = Vector2(-20, 0)
repeat_times = 100
metadata/_edit_group_ = true
[node name="Sprite2D" type="Sprite2D" parent="Midground"]
texture = ExtResource("4_u5sy4")
centered = false
[node name="MidgroundSprite" type="Sprite2D" parent="Midground"]
texture = SubResource("NoiseTexture2D_iywne")
[node name="Player" parent="." instance=ExtResource("3_lnu2h")]
position = Vector2(-54, 87)
BUMP_POWER = null
SHOVE_POWER = 400
ACCELERATION = 10
HARD_GRAVITY = 2
position = Vector2(-201, 84)
[node name="Block" type="StaticBody2D" parent="."]
position = Vector2(-46.999985, 183)
position = Vector2(-133, 124.999985)
scale = Vector2(0.7200012, 0.39999938)
metadata/_edit_group_ = true
@ -64,7 +78,7 @@ shape = SubResource("RectangleShape2D_8cj0n")
debug_color = Color(0.48, 0.48, 0.48, 1)
[node name="Block2" type="StaticBody2D" parent="."]
position = Vector2(215.00003, 190.00003)
position = Vector2(111.00002, 123)
scale = Vector2(0.877356, 0.36431184)
metadata/_edit_group_ = true
@ -73,7 +87,7 @@ shape = SubResource("RectangleShape2D_8cj0n")
debug_color = Color(0.48, 0.48, 0.48, 1)
[node name="Block3" type="StaticBody2D" parent="."]
position = Vector2(433, 191.00003)
position = Vector2(306.99997, 114.00001)
scale = Vector2(0.39041698, 0.5632845)
metadata/_edit_group_ = true
@ -82,7 +96,7 @@ shape = SubResource("RectangleShape2D_8cj0n")
debug_color = Color(0.48, 0.48, 0.48, 1)
[node name="Block4" type="StaticBody2D" parent="."]
position = Vector2(731, 190.99998)
position = Vector2(573.00006, 123.99999)
rotation = -1.5707964
scale = Vector2(0.39041698, 1.1232846)
metadata/_edit_group_ = true
@ -92,8 +106,7 @@ shape = SubResource("RectangleShape2D_8cj0n")
debug_color = Color(0.48, 0.48, 0.48, 1)
[node name="Block5" type="StaticBody2D" parent="."]
position = Vector2(571, 160)
rotation = -0.5235988
position = Vector2(429, 144)
scale = Vector2(0.36505565, 0.38472003)
metadata/_edit_group_ = true
@ -102,7 +115,7 @@ shape = SubResource("RectangleShape2D_8cj0n")
debug_color = Color(0.48, 0.48, 0.48, 1)
[node name="Boundary" type="StaticBody2D" parent="."]
position = Vector2(58, 301)
position = Vector2(0, 180)
metadata/_edit_group_ = true
[node name="CollisionShape2D" type="CollisionShape2D" parent="Boundary"]
@ -110,7 +123,7 @@ shape = SubResource("WorldBoundaryShape2D_8cj0n")
debug_color = Color(0, 0.50980395, 0.003921569, 1)
[node name="Trigger" parent="." instance=ExtResource("2_yqjtg")]
position = Vector2(177, 105)
position = Vector2(104, 47)
scale = Vector2(0.48551935, 0.33269948)
[node name="Trigger2" parent="." instance=ExtResource("2_yqjtg")]
@ -119,16 +132,13 @@ scale = Vector2(0.5942757, 0.5465749)
intent = "powerup"
[node name="Crate" parent="." groups=["explodable", "pushable"] instance=ExtResource("1_uwrxv")]
position = Vector2(298, 98.00001)
rotation = -0.5457037
position = Vector2(-75, 78)
[node name="Crate2" parent="." groups=["explodable", "pushable"] instance=ExtResource("1_uwrxv")]
position = Vector2(729, -44.99998)
rotation = 0.45025483
position = Vector2(574, 24.000027)
[node name="Crate3" parent="." groups=["explodable", "pushable"] instance=ExtResource("1_uwrxv")]
position = Vector2(424, 64.999985)
rotation = 0.62928104
position = Vector2(293, 56)
[connection signal="trigger_fired" from="Trigger" to="." method="_on_trigger_fired"]
[connection signal="trigger_fired" from="Trigger2" to="." method="_on_trigger_fired"]

View File

@ -2,16 +2,16 @@ class_name Player extends CharacterBody2D
## Character controller.
## TODO: fix bullet cooldown timer
const SPEED = 300.0
const JUMP_VELOCITY = -600.0
const SPEED = 200.0
const JUMP_VELOCITY = -350.0
enum FaceDirection{LEFT, RIGHT}
enum State{IDLE, WALK, JUMP, FALLING, SHOOT_STILL, SHOOT_RUN}
@export var BUMP_POWER := 50
@export var SHOVE_POWER := 200
@export var ACCELERATION := 5
@export var HARD_GRAVITY := 100
@export var SHOVE_POWER := 300
@export var ACCELERATION := 4
@export var HARD_GRAVITY := 2
var current_state: State = State.IDLE
var facing : FaceDirection = FaceDirection.RIGHT