Compare commits
1 Commits
Projectile
...
5fe0a716ce
| Author | SHA1 | Date | |
|---|---|---|---|
| 5fe0a716ce |
BIN
block/Assets/GameplayArt/Black.png
Normal file
BIN
block/Assets/GameplayArt/Black.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
40
block/Assets/GameplayArt/Black.png.import
Normal file
40
block/Assets/GameplayArt/Black.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://djar02rjgqabs"
|
||||
path="res://.godot/imported/Black.png-1613e05a6d554bb6d40131c1c2f5f072.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/GameplayArt/Black.png"
|
||||
dest_files=["res://.godot/imported/Black.png-1613e05a6d554bb6d40131c1c2f5f072.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
|
||||
BIN
block/Assets/GameplayArt/PallateV1.png
Normal file
BIN
block/Assets/GameplayArt/PallateV1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 125 B |
40
block/Assets/GameplayArt/PallateV1.png.import
Normal file
40
block/Assets/GameplayArt/PallateV1.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b4xxaewt8vfbl"
|
||||
path="res://.godot/imported/PallateV1.png-34e6e0012a0cedbe20615ffb3ccf5822.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/GameplayArt/PallateV1.png"
|
||||
dest_files=["res://.godot/imported/PallateV1.png-34e6e0012a0cedbe20615ffb3ccf5822.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
|
||||
BIN
block/Assets/GameplayArt/wizard_1.png
Normal file
BIN
block/Assets/GameplayArt/wizard_1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 79 KiB |
40
block/Assets/GameplayArt/wizard_1.png.import
Normal file
40
block/Assets/GameplayArt/wizard_1.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dk7eufhisqp25"
|
||||
path="res://.godot/imported/wizard_1.png-f69e6649a354bdd2df6db43b36f207c1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/GameplayArt/wizard_1.png"
|
||||
dest_files=["res://.godot/imported/wizard_1.png-f69e6649a354bdd2df6db43b36f207c1.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
|
||||
BIN
block/Assets/PlaceHolders/PlaceholderPallate.png
Normal file
BIN
block/Assets/PlaceHolders/PlaceholderPallate.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 34 KiB |
40
block/Assets/PlaceHolders/PlaceholderPallate.png.import
Normal file
40
block/Assets/PlaceHolders/PlaceholderPallate.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b5gvrcwfqtubf"
|
||||
path="res://.godot/imported/PlaceholderPallate.png-81deac43f0fca2626c9303de8fa9ae37.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/PlaceHolders/PlaceholderPallate.png"
|
||||
dest_files=["res://.godot/imported/PlaceholderPallate.png-81deac43f0fca2626c9303de8fa9ae37.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
|
||||
24
block/Assets/Shaders/PosterizerTest.gdshader
Normal file
24
block/Assets/Shaders/PosterizerTest.gdshader
Normal file
@@ -0,0 +1,24 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
uniform sampler2D palette_texture : filter_nearest;
|
||||
uniform int palette_size = 16;
|
||||
uniform sampler2D screen_texture : hint_screen_texture, filter_nearest;
|
||||
uniform float pixel_size = 256.0; // This now represents the "Height" resolution
|
||||
uniform float color_levels : hint_range(2.0, 256.0) = 2.0;
|
||||
|
||||
uniform float PXwidth = 640;
|
||||
uniform float PXheight = 360;
|
||||
|
||||
void fragment() {
|
||||
float aspect_ratio = SCREEN_PIXEL_SIZE.y / SCREEN_PIXEL_SIZE.x;
|
||||
vec2 uv = SCREEN_UV;
|
||||
uv.x = round(uv.x * pixel_size * aspect_ratio) / (pixel_size * aspect_ratio);
|
||||
uv.y = round(uv.y * pixel_size) / pixel_size;
|
||||
|
||||
// 3. Sample and Posterize
|
||||
vec4 rgba = texture(screen_texture, uv);
|
||||
|
||||
vec3 crushed_color = floor(rgba.rgb * color_levels) / (color_levels - 1.0);
|
||||
|
||||
COLOR = vec4(crushed_color, rgba.a);
|
||||
}
|
||||
1
block/Assets/Shaders/PosterizerTest.gdshader.uid
Normal file
1
block/Assets/Shaders/PosterizerTest.gdshader.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://sek5p4kfxpli
|
||||
65
block/Assets/Shaders/ShaderTest.gdshader
Normal file
65
block/Assets/Shaders/ShaderTest.gdshader
Normal file
@@ -0,0 +1,65 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
// This grabs the screen texture automatically in Godot 4
|
||||
uniform sampler2D screen_texture : hint_screen_texture, filter_nearest;
|
||||
uniform sampler2D palette_texture : filter_nearest;
|
||||
uniform int palette_size = 16;
|
||||
uniform float pixel_size = 256.0; // This now represents the "Height" resolution
|
||||
uniform float color_levels : hint_range(2.0, 256.0) = 2.0;
|
||||
|
||||
uniform float PXwidth = 640;
|
||||
uniform float PXheight = 360;
|
||||
|
||||
void fragment() {
|
||||
float aspect_ratio = SCREEN_PIXEL_SIZE.y / SCREEN_PIXEL_SIZE.x;
|
||||
vec2 uv = SCREEN_UV;
|
||||
uv.x = round(uv.x * pixel_size * aspect_ratio) / (pixel_size * aspect_ratio);
|
||||
uv.y = round(uv.y * pixel_size) / pixel_size;
|
||||
|
||||
// 3. Sample and Posterize
|
||||
vec4 rgba = texture(screen_texture, uv);
|
||||
|
||||
|
||||
float best_dist = 10.0;
|
||||
vec3 best_color = rgba.rgb;
|
||||
///*
|
||||
// test posteriser instead of the for loop:
|
||||
float levels = 8.0; // Number of color steps per channel
|
||||
rgba.rgb = floor(rgba.rgb * levels) / levels;
|
||||
COLOR = vec4(rgba.rgb, 1.0);
|
||||
//*/
|
||||
|
||||
//*
|
||||
// Palette snapping logic
|
||||
for (int i = 0; i < palette_size; i++) {
|
||||
float x_coord = (float(i) + 0.5) / float(palette_size);
|
||||
vec3 p_color = texture(palette_texture, vec2(x_coord, 0.5)).rgb;
|
||||
|
||||
float dist = distance(rgba.rgb, p_color);
|
||||
|
||||
if (dist < best_dist) {
|
||||
best_dist = dist;
|
||||
best_color = p_color;
|
||||
}
|
||||
}
|
||||
//*/
|
||||
COLOR = vec4(best_color, 1.0);
|
||||
}
|
||||
|
||||
void vertex() {
|
||||
// Called for every vertex the material is visible on.
|
||||
}
|
||||
|
||||
//void light() {
|
||||
// // Called for every pixel for every light affecting the CanvasItem.
|
||||
// // Uncomment to replace the default light processing function with this one.
|
||||
//}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
// test posteriser instead of the for loop:
|
||||
float levels = 8.0; // Number of color steps per channel
|
||||
rgba.rgb = floor(rgba.rgb * levels) / levels;
|
||||
COLOR = vec4(rgba.rgb, 1.0);
|
||||
*/
|
||||
1
block/Assets/Shaders/ShaderTest.gdshader.uid
Normal file
1
block/Assets/Shaders/ShaderTest.gdshader.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://dyr1qs8xwscgm
|
||||
37
block/Scenes/ShaderTest.tscn
Normal file
37
block/Scenes/ShaderTest.tscn
Normal file
@@ -0,0 +1,37 @@
|
||||
[gd_scene format=3 uid="uid://3xfnj6mipd2w"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du7hapc7kscm6" path="res://Scenes/game.tscn" id="1_i0wgn"]
|
||||
[ext_resource type="Shader" uid="uid://dyr1qs8xwscgm" path="res://Assets/Shaders/ShaderTest.gdshader" id="2_exucn"]
|
||||
[ext_resource type="Texture2D" uid="uid://djar02rjgqabs" path="res://Assets/GameplayArt/Black.png" id="2_ipaa6"]
|
||||
[ext_resource type="Texture2D" uid="uid://b4xxaewt8vfbl" path="res://Assets/GameplayArt/PallateV1.png" id="4_vet50"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_exucn"]
|
||||
shader = ExtResource("2_exucn")
|
||||
shader_parameter/palette_texture = ExtResource("4_vet50")
|
||||
shader_parameter/palette_size = 16
|
||||
shader_parameter/pixel_size = 256.0
|
||||
shader_parameter/color_levels = 8.0
|
||||
shader_parameter/PXwidth = 640.0
|
||||
shader_parameter/PXheight = 360.0
|
||||
|
||||
[node name="ShaderTest" type="Node2D" unique_id=1126703629]
|
||||
|
||||
[node name="Game" parent="." unique_id=850692785 instance=ExtResource("1_i0wgn")]
|
||||
|
||||
[node name="Sprite2D" parent="Game/ArenaGameManager/MapArena/Parallax2D" parent_id_path=PackedInt32Array(850692785, 1024187604, 194007747, 598922861) index="0" unique_id=1318408175]
|
||||
texture = ExtResource("2_ipaa6")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=298300130]
|
||||
layer = 10
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer" unique_id=570744568]
|
||||
material = SubResource("ShaderMaterial_exucn")
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[editable path="Game"]
|
||||
[editable path="Game/ArenaGameManager"]
|
||||
[editable path="Game/ArenaGameManager/MapArena"]
|
||||
@@ -1,7 +1,7 @@
|
||||
[gd_scene format=3 uid="uid://cjrgnm28xwju7"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bah031ailk0ha" path="res://Scenes/player.gd" id="1_cvnsp"]
|
||||
[ext_resource type="Texture2D" uid="uid://g0m835iol4mp" path="res://Assets/PlaceHolders/Screenshot 2024-11-24 210808.png" id="1_v0iea"]
|
||||
[ext_resource type="Texture2D" uid="uid://dk7eufhisqp25" path="res://Assets/GameplayArt/wizard_1.png" id="2_vgqql"]
|
||||
[ext_resource type="Texture2D" uid="uid://bcmuqd6p3jhdw" path="res://Assets/PlaceHolders/Elmo.png" id="3_6t5aa"]
|
||||
[ext_resource type="Script" uid="uid://b7vgyn15fioeu" path="res://Scenes/shield_hitbox.gd" id="4_vgqql"]
|
||||
|
||||
@@ -13,8 +13,9 @@
|
||||
script = ExtResource("1_cvnsp")
|
||||
|
||||
[node name="Body" type="Sprite2D" parent="." unique_id=719417979]
|
||||
rotation = -1.5707964
|
||||
scale = Vector2(0.114894986, 0.11449075)
|
||||
texture = ExtResource("1_v0iea")
|
||||
texture = ExtResource("2_vgqql")
|
||||
|
||||
[node name="BodyColision" type="CollisionShape2D" parent="." unique_id=1477808378]
|
||||
scale = Vector2(4.2653956, 4.2653956)
|
||||
|
||||
@@ -15,6 +15,14 @@ run/main_scene="uid://du7hapc7kscm6"
|
||||
config/features=PackedStringArray("4.6", "Forward Plus")
|
||||
config/icon="res://icon.svg"
|
||||
|
||||
[display]
|
||||
|
||||
window/size/viewport_width=1920
|
||||
window/size/viewport_height=1080
|
||||
window/stretch/mode="canvas_items"
|
||||
window/stretch/aspect="expand"
|
||||
window/stretch/scale=2.0
|
||||
|
||||
[global_group]
|
||||
|
||||
player="Making this for an easy reference to the player in the enemies code"
|
||||
|
||||
Reference in New Issue
Block a user