Winter Tales Update

This commit is contained in:
Josef 2025-12-10 15:18:09 +01:00
parent 1264ef7b97
commit 1df3c17c4c
144 changed files with 9501 additions and 1553 deletions

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://0ws120darbw0"
path="res://.godot/imported/WinterTales - New Bells.ogg-7a8b10c7af2502ec76b477b9c14f68a0.oggvorbisstr"
[deps]
source_file="res://Audio/Music/WinterTales - New Bells.ogg"
dest_files=["res://.godot/imported/WinterTales - New Bells.ogg-7a8b10c7af2502ec76b477b9c14f68a0.oggvorbisstr"]
[params]
loop=true
loop_offset=0.0
bpm=0.0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://b5uyb53maa0t1"
path="res://.godot/imported/WinterTales - Collect SFX.ogg-0678164699725c097f1754618ddac23f.oggvorbisstr"
[deps]
source_file="res://Audio/Sounds/Collecting/WinterTales - Collect SFX.ogg"
dest_files=["res://.godot/imported/WinterTales - Collect SFX.ogg-0678164699725c097f1754618ddac23f.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dltk1xw3s35qw"
path="res://.godot/imported/WinterTales - FootSteps.ogg-c4ecd935fabcc4eddab8a70484ffd435.oggvorbisstr"
[deps]
source_file="res://Audio/Sounds/Foot Steps/WinterTales - FootSteps.ogg"
dest_files=["res://.godot/imported/WinterTales - FootSteps.ogg-c4ecd935fabcc4eddab8a70484ffd435.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

View File

@ -0,0 +1,67 @@
shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_disabled, diffuse_burley, specular_schlick_ggx, sss_mode_skin;
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Light.gdshaderinc"
uniform vec4 albedo : source_color;
uniform sampler2D texture_albedo : source_color, filter_linear_mipmap, repeat_enable;
uniform float roughness : hint_range(0.0, 1.0);
uniform sampler2D texture_roughness : hint_roughness_r, filter_linear_mipmap, repeat_enable;
uniform float metallic : hint_range(0.0, 1.0, 0.01);
uniform sampler2D texture_metallic : hint_default_white, filter_linear_mipmap, repeat_enable;
uniform float specular : hint_range(0.0, 1.0, 0.01);
uniform vec3 uv1_scale;
uniform vec3 uv1_offset;
uniform float scatter:hint_range( 0.0, 1.0 ) = 0.5;
uniform float scatterBoost:hint_range( 0.0, 1.0 ) = 0.5;
uniform float scatterDepth:hint_range( 0.0, 1.0 ) = 0.5;
// [ FRESNEL ]
group_uniforms fresnel;
uniform float fresnelZOffset;
uniform float fresnelPowerAmount;
uniform float fresnelPostScale;
uniform float fresnelPostOffset;
uniform float fresnelColorAmount:hint_range( 0.0, 1.0 );
uniform vec3 fresnelColor:source_color;
uniform vec3 fresnelEmission:source_color;
uniform float fresnelRoughnessAmount:hint_range( 0.0, 1.0 );
uniform float fresnelRoughness;
void vertex()
{
UV = UV * uv1_scale.xy + uv1_offset.xy;
}
void fragment()
{
float fresnel = fresnelNormalizedFromViewAdvanced( NORMAL, fresnelPowerAmount, fresnelPostScale, fresnelPostScale, fresnelPostOffset );
fresnel = clamp01( fresnel );
vec4 albedo_tex = texture( texture_albedo, UV );
ALBEDO = albedo.rgb * albedo_tex.rgb;
ALBEDO = mix( ALBEDO, fresnelColor, fresnel * fresnelColorAmount );
EMISSION = fresnel * fresnelEmission;
float metallic_tex = texture( texture_metallic, UV ).b;
METALLIC = metallic_tex * metallic;
SPECULAR = specular;
float roughness_tex = texture( texture_roughness, UV ).g;
ROUGHNESS = roughness_tex * roughness;
ROUGHNESS = mix( ROUGHNESS, fresnelRoughness, fresnel * fresnelRoughnessAmount );
SSS_STRENGTH = max( 0.00001, scatter * 2.0 );
SSS_TRANSMITTANCE_COLOR = vec4( 1.0 );
SSS_TRANSMITTANCE_DEPTH = max( 0.00001, scatterDepth * 8.0 );
SSS_TRANSMITTANCE_BOOST = max( 0.00001, scatterBoost * 4.0 );
}

View File

@ -0,0 +1 @@
uid://33kpp8mnxfgv

Binary file not shown.

View File

@ -0,0 +1,69 @@
using Godot;
using Rokojori;
[Tool, GlobalClass]
public partial class FootSteps: Action
{
[Export]
public Node3D decalTransform;
[Export]
public float offset = 0.1f;
[Export]
public Decal leftStep;
[Export]
public Decal rightStep;
[Export]
public int maxPairs = 10;
[Export]
public Node footStepsContainer;
int counter = 0;
protected override void _OnTrigger()
{
while ( footStepsContainer.GetChildCount() <= counter )
{
var index = footStepsContainer.GetChildCount();
var isLeft = index % 2 == 0;
footStepsContainer.CreateChildFromDuplicate( isLeft ? leftStep : rightStep );
}
var decal = (Decal)footStepsContainer.GetChild( counter );
var isCurrentLeft = counter % 2 == 0;
var offsetDirection = isCurrentLeft ? -1 : 1;
decal.Modulate = Colors.White;
decal.GlobalPosition = decalTransform.GlobalPosition + decalTransform.GlobalRight() * offsetDirection * offset;
decal.SetGlobalYaw( decalTransform.GlobalYawRadians() );
for ( int i = 0; i < maxPairs * 2; i++ )
{
var index = counter - i;
index = MathX.Repeat( index, footStepsContainer.GetChildCount() );
if ( index >= footStepsContainer.GetChildCount() )
{
break;
}
var t = 1.0f - i / ( maxPairs * 2f );
var childDecal = (Decal)footStepsContainer.GetChild( index );
childDecal.Modulate = new Color( 1, 1, 1, t );
// this.LogInfo( i, ">>", t._FFF() );
}
counter = ( counter + 1 ) % ( maxPairs * 2 );
}
}

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://gcffm2ofbvw4"
path="res://.godot/imported/foot-step-albedo-l.png-220619b3fde87e3371e157b4ea375421.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-albedo-l.png"
dest_files=["res://.godot/imported/foot-step-albedo-l.png-220619b3fde87e3371e157b4ea375421.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://xr1eic8t8v71"
path="res://.godot/imported/foot-step-albedo-r.png-ec95123394301a7a68bcf7a61b39ff08.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-albedo-r.png"
dest_files=["res://.godot/imported/foot-step-albedo-r.png-ec95123394301a7a68bcf7a61b39ff08.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 758 B

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ubp0dblu6q21"
path="res://.godot/imported/foot-step-albedo.jpg-a3c56e06384c5f4c87951f2fdabb5c20.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-albedo.jpg"
dest_files=["res://.godot/imported/foot-step-albedo.jpg-a3c56e06384c5f4c87951f2fdabb5c20.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bjih5o0et5l1a"
path="res://.godot/imported/foot-step-normal-l.png-2403512c27e2d2f25184d2982a846033.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-normal-l.png"
dest_files=["res://.godot/imported/foot-step-normal-l.png-2403512c27e2d2f25184d2982a846033.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://du3nk2ko48qq6"
path="res://.godot/imported/foot-step-normal-r.png-37cbfff60f363a522c0116553f419b42.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-normal-r.png"
dest_files=["res://.godot/imported/foot-step-normal-r.png-37cbfff60f363a522c0116553f419b42.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dftbsh64tcyjh"
path="res://.godot/imported/foot-step-normal.jpg-09a100e1d19e88e7cc1018348c45529a.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-normal.jpg"
dest_files=["res://.godot/imported/foot-step-normal.jpg-09a100e1d19e88e7cc1018348c45529a.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 758 B

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://di5um2lvjbdl0"
path="res://.godot/imported/foot-step-occlusion.jpg-492a9ec536bae56ab7f1c3e327c118a8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step-occlusion.jpg"
dest_files=["res://.godot/imported/foot-step-occlusion.jpg-492a9ec536bae56ab7f1c3e327c118a8.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c3egosm4gh0wb"
path="res://.godot/imported/foot-step.jpg-533fd6aa7e35e7ee5d00ebe4d644cd0d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step.jpg"
dest_files=["res://.godot/imported/foot-step.jpg-533fd6aa7e35e7ee5d00ebe4d644cd0d.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

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="128"
height="128"
viewBox="0 0 128 128"
version="1.1"
id="svg5"
inkscape:version="1.2.2 (732a01da63, 2022-12-09)"
sodipodi:docname="foot-step.svg"
xml:space="preserve"
inkscape:export-filename="foot-step.jpg"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview7"
pagecolor="#333333"
bordercolor="#404040"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#333333"
inkscape:document-units="px"
showgrid="false"
inkscape:zoom="3.3424804"
inkscape:cx="-1.6454846"
inkscape:cy="80.778335"
inkscape:window-width="1920"
inkscape:window-height="1017"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg5" /><defs
id="defs2"><clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath7940"><rect
style="fill:#333333;fill-opacity:1;stroke:none;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect7942"
width="1440"
height="810"
x="0"
y="0" /></clipPath><filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter11588"
x="-0.087458381"
y="-0.040996316"
width="1.1749168"
height="1.0819926"><feGaussianBlur
inkscape:collect="always"
stdDeviation="1.7774961"
id="feGaussianBlur11590" /></filter></defs><rect
style="opacity:0.694989;fill:#000000;stroke-width:4;stroke-linecap:square;stroke-dasharray:8, 16;stroke-dashoffset:3.6;paint-order:fill markers stroke;fill-opacity:1"
id="rect11115"
width="128"
height="128"
x="0"
y="0" /><rect
style="display:inline;opacity:0;fill:#ffffff;fill-opacity:0;stroke:none;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect10123"
width="3840"
height="2160"
x="0"
y="0"
inkscape:label="default" /><g
inkscape:label="Content"
inkscape:groupmode="layer"
id="layer1"
style="fill:#ffffff;fill-opacity:1" /><path
style="opacity:1;fill:#ffffff;stroke-width:1.59586;stroke-linecap:square;stroke-dasharray:3.19172, 6.38344;stroke-dashoffset:1.43628;paint-order:fill markers stroke;filter:url(#filter11588)"
d="m 50.158138,79.6143 c -0.874247,-4.293931 -1.646834,-8.621094 -2.869655,-12.829046 -1.251616,-4.30704 -3.401389,-8.326639 -4.55769,-12.660241 -1.326009,-4.969635 -3.004896,-10.057784 -2.700848,-15.192288 0.229384,-3.873649 1.65832,-7.661483 3.376064,-11.141013 2.177414,-4.410657 4.717446,-8.976523 8.608963,-11.985031 2.719846,-2.102697 6.207532,-3.31144 9.621782,-3.713671 2.932038,-0.345421 6.106665,-0.0759 8.777768,1.181626 3.674568,1.729946 6.648735,4.922457 8.946571,8.271354 2.500592,3.644396 3.995468,7.995408 4.895294,12.322635 1.07737,5.18103 1.320951,10.638707 0.506411,15.867504 -0.56978,3.657602 -2.486677,6.973352 -3.713673,10.465799 -0.454179,1.292747 -1.236732,2.516991 -1.350424,3.882475 -0.222588,2.673369 0.764488,5.315902 1.350424,7.93375 0.778257,3.477099 1.712517,6.926994 2.869654,10.296999 1.10624,3.221775 3.202298,6.115172 3.882474,9.45298 0.910128,4.466244 1.551565,9.329828 0.168802,13.673058 -0.9287,2.91703 -2.875771,5.69783 -5.4017,7.42734 -3.265806,2.23611 -7.552054,3.5362 -11.47862,3.03846 -4.223629,-0.53539 -8.202593,-3.16491 -11.141013,-6.24572 C 56.475191,106.01942 54.79237,100.93006 53.196593,96.157012 51.418895,90.839832 51.276672,85.108069 50.158138,79.6143 Z"
id="path11113"
sodipodi:nodetypes="aaaaaaaaaaaaaaaaaaaaaa" /></svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://eil5f1dlp5dm"
path="res://.godot/imported/foot-step.svg-1d37f6f108bf00760fcdbe9146e1e5a8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Foot Steps/foot-step.svg"
dest_files=["res://.godot/imported/foot-step.svg-1d37f6f108bf00760fcdbe9146e1e5a8.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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://1u5uhrctxlih"
path="res://.godot/imported/heart-fill-shape.png-2af62ef35111d056056ccf6f969c3ecd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Hearts/heart-fill-shape.png"
dest_files=["res://.godot/imported/heart-fill-shape.png-2af62ef35111d056056ccf6f969c3ecd.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bvbq8a0j2ou85"
path="res://.godot/imported/heart-outline-shape.png-bac1469b40f222ab212c47ce1bf54572.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Hearts/heart-outline-shape.png"
dest_files=["res://.godot/imported/heart-outline-shape.png-bac1469b40f222ab212c47ce1bf54572.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

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64"
height="64"
viewBox="0 0 64 64"
version="1.1"
id="svg5"
inkscape:version="1.2.2 (732a01da63, 2022-12-09)"
sodipodi:docname="heart-shapes.svg"
xml:space="preserve"
inkscape:export-filename="heart-fill-shape.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview7"
pagecolor="#333333"
bordercolor="#404040"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#333333"
inkscape:document-units="px"
showgrid="false"
inkscape:zoom="1.6712402"
inkscape:cx="143.30675"
inkscape:cy="76.589828"
inkscape:window-width="1920"
inkscape:window-height="1017"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg5" /><defs
id="defs2"><linearGradient
inkscape:collect="never"
id="linearGradient534480"><stop
style="stop-color:#404363;stop-opacity:1;"
offset="0"
id="stop534478" /><stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop534476" /></linearGradient><clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath7940"><rect
style="fill:#333333;fill-opacity:1;stroke:none;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect7942"
width="1440"
height="810"
x="0"
y="0" /></clipPath><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient534480"
id="linearGradient534482"
x1="32.076096"
y1="10.054717"
x2="32.076096"
y2="38.741745"
gradientUnits="userSpaceOnUse" /></defs><g
inkscape:label="Content"
inkscape:groupmode="layer"
id="layer1"
style="fill:#ffffff;fill-opacity:1" /><path
id="path525618"
style="display:none;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 20.577006,8.2099077 c -8.222089,9.8e-4 -14.88659,6.6671603 -14.88549,14.8892503 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.729141,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.784253,-14.94432 24.514166,-25.15433 1.175552,-2.09468 1.756248,-4.9674 1.784902,-6.98145 0.0011,-8.22356 -6.665691,-14.8903503 -14.889248,-14.8892503 -4.40789,0.007 -8.58626,1.9661103 -11.40982,5.3509403 -2.82863,-3.39089 -7.01662,-5.3510803 -11.43241,-5.3509403 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline"
inkscape:export-filename="heart-outline-shape.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" /><path
id="path534088"
style="display:inline;fill:url(#linearGradient534482);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 20.577006,8.2099077 c -8.222089,9.8e-4 -14.88659,6.6671603 -14.88549,14.8892503 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.729141,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.784253,-14.94432 24.514166,-25.15433 1.175552,-2.09468 1.756248,-4.9674 1.784902,-6.98145 0.0011,-8.22356 -6.665691,-14.8903503 -14.889248,-14.8892503 -4.40789,0.007 -8.58626,1.9661103 -11.40982,5.3509403 -2.82863,-3.39089 -7.01662,-5.3510803 -11.43241,-5.3509403 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Fill"
inkscape:export-filename="heart-fill-shape.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96" /></svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dpdvnl4e5y7oo"
path="res://.godot/imported/heart-shapes.svg-114a4f8174cf9937502d69f10310c1c9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Hearts/heart-shapes.svg"
dest_files=["res://.godot/imported/heart-shapes.svg-114a4f8174cf9937502d69f10310c1c9.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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

507
Character/Hearts/hearts.svg Normal file
View File

@ -0,0 +1,507 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="256"
height="256"
viewBox="0 0 256 256"
version="1.1"
id="svg5"
inkscape:version="1.2.2 (732a01da63, 2022-12-09)"
sodipodi:docname="hearts.svg"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview7"
pagecolor="#333333"
bordercolor="#404040"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#333333"
inkscape:document-units="px"
showgrid="false"
inkscape:zoom="1.5076931"
inkscape:cx="29.846924"
inkscape:cy="110.10198"
inkscape:window-width="1920"
inkscape:window-height="1017"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg5"
showguides="false" /><defs
id="defs2"><linearGradient
inkscape:collect="never"
id="linearGradient530949"><stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop530945" /><stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop530947" /></linearGradient><linearGradient
inkscape:collect="never"
id="linearGradient530916"><stop
style="stop-color:#8600c0;stop-opacity:1;"
offset="0"
id="stop530912" /><stop
style="stop-color:#ff5cb4;stop-opacity:1;"
offset="1"
id="stop530914" /></linearGradient><linearGradient
inkscape:collect="never"
id="linearGradient530095"><stop
style="stop-color:#c05f00;stop-opacity:1;"
offset="0"
id="stop530091" /><stop
style="stop-color:#ffd53d;stop-opacity:1;"
offset="1"
id="stop530093" /></linearGradient><linearGradient
inkscape:collect="never"
id="linearGradient530087"><stop
style="stop-color:#7a0012;stop-opacity:1;"
offset="0"
id="stop530083" /><stop
style="stop-color:#00da4f;stop-opacity:1;"
offset="1"
id="stop530085" /></linearGradient><linearGradient
inkscape:collect="never"
id="linearGradient524137"><stop
style="stop-color:#7a0012;stop-opacity:1;"
offset="0"
id="stop524133" /><stop
style="stop-color:#da0000;stop-opacity:1;"
offset="1"
id="stop524135" /></linearGradient><clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath7940"><rect
style="fill:#333333;fill-opacity:1;stroke:none;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
id="rect7942"
width="1440"
height="810"
x="0"
y="0" /></clipPath><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient524139"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658"
gradientUnits="userSpaceOnUse" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient524880"
gradientUnits="userSpaceOnUse"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658"
gradientTransform="translate(65.247781)" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient528546"
gradientUnits="userSpaceOnUse"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658"
gradientTransform="translate(64.487384)" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient528562"
gradientUnits="userSpaceOnUse"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658"
gradientTransform="translate(129.26617)" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient528573"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(193.98805)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
xlink:href="#linearGradient530095"
id="linearGradient528594"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(193.98805,64.252884)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient528596"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(129.26617,64.252884)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
xlink:href="#linearGradient530095"
id="linearGradient528598"
gradientUnits="userSpaceOnUse"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658"
gradientTransform="translate(65.247781,64.252884)" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient530095"
id="linearGradient528600"
gradientUnits="userSpaceOnUse"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658"
gradientTransform="translate(0,64.252884)" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient530089"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(129.26617,64.252884)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient524137"
id="linearGradient530884"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(129.26617,64.252884)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
xlink:href="#linearGradient530095"
id="linearGradient530886"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(129.26617,64.252884)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient530916"
id="linearGradient530904"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-0.19426583,126.58811)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
xlink:href="#linearGradient530916"
id="linearGradient530906"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(193.79378,126.58811)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
xlink:href="#linearGradient530916"
id="linearGradient530908"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(129.0719,126.58811)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
xlink:href="#linearGradient530916"
id="linearGradient530910"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(65.053515,126.58811)"
x1="29.836718"
y1="13.956862"
x2="31.568512"
y2="54.747658" /><linearGradient
inkscape:collect="never"
xlink:href="#linearGradient530949"
id="linearGradient530951"
x1="96.209717"
y1="244.51744"
x2="96.209717"
y2="244.32298"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-0.24901873,0.81333014)" /></defs><g
inkscape:label="Content"
inkscape:groupmode="layer"
id="layer1"
style="fill:#ffffff;fill-opacity:1" /><g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="Rects"
style="display:none"><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect523695"
width="64"
height="64"
x="0"
y="0" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524076"
width="64"
height="64"
x="0"
y="128" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524060"
width="64"
height="64"
x="64"
y="0" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524062"
width="64"
height="64"
x="128"
y="0" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524064"
width="64"
height="64"
x="192"
y="0" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524066"
width="64"
height="64"
x="64"
y="64" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524068"
width="64"
height="64"
x="128"
y="64" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524070"
width="64"
height="64"
x="192"
y="64" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524072"
width="64"
height="64"
x="0"
y="64" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524078"
width="64"
height="64"
x="64"
y="128" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524080"
width="64"
height="64"
x="128"
y="128" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524082"
width="64"
height="64"
x="192"
y="128" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524084"
width="64"
height="64"
x="64"
y="192" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524086"
width="64"
height="64"
x="128"
y="192" /><rect
style="opacity:0.088795;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524088"
width="64"
height="64"
x="192"
y="192" /><rect
style="opacity:0.0380549;fill:#ffffff;stroke-width:0.125;stroke-linecap:square;stroke-linejoin:round;paint-order:fill markers stroke"
id="rect524090"
width="64"
height="64"
x="0"
y="192" /></g><g
id="g531112"
transform="translate(0.8828449,-0.64006829)"><path
id="path523560"
style="display:inline;fill:url(#linearGradient524139);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="M 19.694161,8.8499781 C 11.472072,8.8509611 4.8075712,15.517138 4.8086712,23.739228 c 0.20688,2.564082 0.59064,4.852391 1.7547799,6.9325 5.7291409,10.236888 24.5631199,25.203276 24.5631199,25.203276 0,0 18.784253,-14.94432 24.514166,-25.154322 1.175552,-2.094685 1.756248,-4.967404 1.784902,-6.981454 0.0011,-8.223559 -6.665691,-14.8903429 -14.889248,-14.8892499 -4.40789,0.0066 -8.58626,1.9661119 -11.40982,5.3509429 -2.82863,-3.390892 -7.01662,-5.3510819 -11.43241,-5.3509429 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Fill" /><path
id="path524867"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="M 19.694161,8.8499781 C 11.472072,8.8509611 4.8075712,15.517138 4.8086712,23.739228 c 0.20688,2.564082 0.59064,4.852391 1.7547799,6.9325 5.7291409,10.236888 24.5631199,25.203276 24.5631199,25.203276 0,0 18.784253,-14.94432 24.514166,-25.154322 1.175552,-2.094685 1.756248,-4.967404 1.784902,-6.981454 0.0011,-8.223559 -6.665691,-14.8903429 -14.889248,-14.8892499 -4.40789,0.0066 -8.58626,1.9661119 -11.40982,5.3509429 -2.82863,-3.390892 -7.01662,-5.3510819 -11.43241,-5.3509429 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531886"
transform="translate(-0.36493599,-0.64006836)"><path
id="path524874"
style="display:inline;fill:url(#linearGradient524880);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 84.941406,8.8496094 c -8.222081,9.83e-4 -14.885865,6.6665896 -14.884765,14.8886716 0.206879,2.56408 0.589767,4.853487 1.753906,6.933594 C 77.539682,40.908753 96.375,55.875 96.375,55.875 c 0,0 18.62747,-14.820855 24.43945,-25.027344 H 96.330078 V 14.150391 C 93.502116,10.791512 89.334541,8.8494711 84.941406,8.8496094 Z M 121.90625,19.023438 v 9.269531 c 0.49448,-1.581818 0.749,-3.248714 0.76758,-4.554688 2.2e-4,-1.648667 -0.27298,-3.232502 -0.76758,-4.714843 z" /><path
id="path524876"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 84.941942,8.8499781 c -8.222089,9.83e-4 -14.88659,6.6671599 -14.88549,14.8892499 0.20688,2.564082 0.59064,4.852391 1.75478,6.9325 5.729141,10.236888 24.56312,25.203276 24.56312,25.203276 0,0 18.784248,-14.94432 24.514168,-25.154322 1.17555,-2.094685 1.75625,-4.967404 1.7849,-6.981454 0.001,-8.223559 -6.66569,-14.8903429 -14.88925,-14.8892499 -4.40789,0.0066 -8.586258,1.9661119 -11.409818,5.3509429 -2.82863,-3.390892 -7.01662,-5.3510819 -11.43241,-5.3509429 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><path
id="path525618"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 20.577006,200.20991 c -8.222089,9.8e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.729141,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.784253,-14.94432 24.514166,-25.15433 1.175552,-2.09468 1.756248,-4.9674 1.784902,-6.98145 0.0011,-8.22356 -6.665691,-14.89035 -14.889248,-14.88925 -4.40789,0.007 -8.58626,1.96611 -11.40982,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /><g
id="g531890"
transform="translate(-0.38331999,-0.64006832)"><path
id="path528558"
style="display:inline;fill:url(#linearGradient528562);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 148.95898,8.8496094 c -8.22207,9.83e-4 -14.88586,6.6665976 -14.88476,14.8886716 0.20688,2.564078 0.58977,4.853489 1.7539,6.933594 5.69142,10.169479 24.27651,24.97307 24.52149,25.167969 V 30.847656 h -0.002 V 14.150391 c -2.82791,-3.358876 -6.9955,-5.3009199 -11.38863,-5.3007816 z m 36.96485,10.1738286 v 9.269531 c 0.49448,-1.581817 0.749,-3.248715 0.76758,-4.554688 2.2e-4,-1.648665 -0.27298,-3.232504 -0.76758,-4.714843 z" /><path
id="path528560"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 148.96033,8.8499781 c -8.22209,9.83e-4 -14.88659,6.6671599 -14.88549,14.8892499 0.20688,2.564082 0.59064,4.852391 1.75478,6.9325 5.72914,10.236888 24.56312,25.203276 24.56312,25.203276 0,0 18.78425,-14.94432 24.51416,-25.154322 1.17555,-2.094685 1.75625,-4.967404 1.7849,-6.981454 0.001,-8.223559 -6.66569,-14.8903429 -14.88924,-14.8892499 -4.40789,0.0066 -8.58626,1.9661119 -11.40982,5.3509429 -2.82863,-3.390892 -7.01662,-5.3510819 -11.43241,-5.3509429 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531894"
transform="translate(-1.1052,-0.64006832)"><path
id="path528569"
style="display:inline;fill:url(#linearGradient528573);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 213.68164,8.8496094 c -8.22207,9.83e-4 -14.88587,6.6666056 -14.88477,14.8886716 0.20688,2.564076 0.58977,4.853491 1.75391,6.933594 0.0323,0.05776 0.0704,0.11773 0.10352,0.175781 h 24.41601 V 14.150391 C 222.2424,10.791518 218.07477,8.8494711 213.68164,8.8496094 Z m 11.38867,21.9980466 v 24.990235 c 8e-5,6.1e-5 0.002,0.0019 0.002,0.002 V 30.847656 Z m 25.57617,-11.824218 v 9.269531 c 0.49448,-1.581816 0.749,-3.248716 0.76758,-4.554688 2.2e-4,-1.648663 -0.27298,-3.232506 -0.76758,-4.714843 z" /><path
id="path528571"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 213.68221,8.8499781 c -8.22209,9.83e-4 -14.88659,6.6671599 -14.88549,14.8892499 0.20688,2.564082 0.59064,4.852391 1.75478,6.9325 5.72914,10.236888 24.56312,25.203276 24.56312,25.203276 0,0 18.78425,-14.94432 24.51416,-25.154322 1.17555,-2.094685 1.75625,-4.967404 1.7849,-6.981454 0.001,-8.223559 -6.66569,-14.8903429 -14.88924,-14.8892499 -4.40789,0.0066 -8.58626,1.9661119 -11.40982,5.3509429 -2.82863,-3.390892 -7.01662,-5.3510819 -11.43241,-5.3509429 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531906"
transform="translate(-0.36493599,-0.89295321)"><path
id="path528582"
style="display:inline;fill:url(#linearGradient528598);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 84.941406,73.102494 c -8.222081,9.83e-4 -14.885865,6.666589 -14.884765,14.888671 0.206879,2.56408 0.589767,4.853487 1.753906,6.933594 C 77.539682,105.16164 96.375,120.12788 96.375,120.12788 c 0,0 18.62747,-14.82085 24.43945,-25.02734 H 96.330078 V 78.403275 c -2.827962,-3.358879 -6.995537,-5.30092 -11.388672,-5.300781 z m 36.964844,10.173828 v 9.269531 c 0.49448,-1.581818 0.749,-3.248714 0.76758,-4.554688 2.2e-4,-1.648667 -0.27298,-3.232502 -0.76758,-4.714843 z" /><path
id="path528584"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 84.941942,73.102862 c -8.222089,9.83e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.564082 0.59064,4.852391 1.75478,6.9325 5.729141,10.236888 24.56312,25.203278 24.56312,25.203278 0,0 18.784258,-14.94432 24.514168,-25.154324 1.17555,-2.094685 1.75625,-4.967404 1.7849,-6.981454 0.001,-8.223559 -6.66569,-14.890343 -14.88925,-14.88925 -4.40789,0.0066 -8.586258,1.966112 -11.409818,5.350943 -2.82863,-3.390892 -7.01662,-5.351082 -11.43241,-5.350943 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531902"
transform="translate(-0.38331999,-0.8929533)"><path
id="path528586"
style="display:inline;fill:url(#linearGradient530886);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 148.95898,73.102494 c -8.22207,9.83e-4 -14.88586,6.666597 -14.88476,14.888671 0.20688,2.564078 0.58977,4.853489 1.7539,6.933594 5.69142,10.169481 24.27651,24.973071 24.52149,25.167971 V 95.10054 h -0.002 V 78.403275 c -2.82796,-3.358876 -6.99554,-5.30092 -11.38867,-5.300781 z m 36.96485,10.173828 v 9.269531 c 0.49448,-1.581817 0.749,-3.248715 0.76758,-4.554688 2.2e-4,-1.648665 -0.27298,-3.232504 -0.76758,-4.714843 z" /><path
id="path528588"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 148.96033,73.102862 c -8.22209,9.83e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.564082 0.59064,4.852391 1.75478,6.9325 5.72914,10.236888 24.56312,25.203278 24.56312,25.203278 0,0 18.78425,-14.94432 24.51416,-25.154324 1.17555,-2.094685 1.75625,-4.967404 1.7849,-6.981454 0.001,-8.223559 -6.66569,-14.890343 -14.88924,-14.88925 -4.40789,0.0066 -8.58626,1.966112 -11.40982,5.350943 -2.82863,-3.390892 -7.01662,-5.351082 -11.43241,-5.350943 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531898"
transform="translate(-1.1052,-0.8929533)"><path
id="path528590"
style="display:inline;fill:url(#linearGradient528594);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 213.68164,73.102494 c -8.22207,9.83e-4 -14.88587,6.666605 -14.88477,14.888671 0.20688,2.564076 0.58977,4.853491 1.75391,6.933594 0.0323,0.05776 0.0704,0.11773 0.10352,0.175781 h 24.41601 V 78.403275 c -2.82791,-3.358873 -6.99554,-5.30092 -11.38867,-5.300781 z m 11.38867,21.998046 v 24.99024 c 8e-5,6e-5 0.002,0.002 0.002,0.002 V 95.10054 Z m 25.57617,-11.824218 v 9.269531 c 0.49448,-1.581816 0.749,-3.248716 0.76758,-4.554688 2.2e-4,-1.648663 -0.27298,-3.232506 -0.76758,-4.714843 z" /><path
id="path528592"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 213.68221,73.102862 c -8.22209,9.83e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.564082 0.59064,4.852391 1.75478,6.9325 5.72914,10.236888 24.56312,25.203278 24.56312,25.203278 0,0 18.78425,-14.94432 24.51416,-25.154324 1.17555,-2.094685 1.75625,-4.967404 1.7849,-6.981454 0.001,-8.223559 -6.66569,-14.890343 -14.88924,-14.88925 -4.40789,0.0066 -8.58626,1.966112 -11.40982,5.350943 -2.82863,-3.390892 -7.01662,-5.351082 -11.43241,-5.350943 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531910"
transform="translate(0.8828449,-0.89295328)"><path
id="path528576"
style="display:inline;fill:url(#linearGradient528600);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 19.694161,73.102862 c -8.222089,9.83e-4 -14.8865898,6.66716 -14.8854898,14.88925 0.20688,2.564082 0.59064,4.852391 1.7547799,6.9325 5.7291409,10.236888 24.5631199,25.203278 24.5631199,25.203278 0,0 18.784253,-14.94432 24.514166,-25.154324 1.175552,-2.094685 1.756248,-4.967404 1.784902,-6.981454 0.0011,-8.223559 -6.665691,-14.890343 -14.889248,-14.88925 -4.40789,0.0066 -8.58626,1.966112 -11.40982,5.350943 -2.82863,-3.390892 -7.01662,-5.351082 -11.43241,-5.350943 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Fill" /><path
id="path528578"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 19.694161,73.102862 c -8.222089,9.83e-4 -14.8865898,6.66716 -14.8854898,14.88925 0.20688,2.564082 0.59064,4.852391 1.7547799,6.9325 5.7291409,10.236888 24.5631199,25.203278 24.5631199,25.203278 0,0 18.784253,-14.94432 24.514166,-25.154324 1.175552,-2.094685 1.756248,-4.967404 1.784902,-6.981454 0.0011,-8.223559 -6.665691,-14.890343 -14.889248,-14.88925 -4.40789,0.0066 -8.58626,1.966112 -11.40982,5.350943 -2.82863,-3.390892 -7.01662,-5.351082 -11.43241,-5.350943 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531926"
transform="translate(-0.17066799,0.77181774)"><path
id="path530888"
style="display:inline;fill:url(#linearGradient530910);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 84.74714,135.43772 c -8.222081,9.9e-4 -14.885865,6.66659 -14.884765,14.88867 0.206879,2.56408 0.589767,4.85349 1.753906,6.9336 5.729135,10.23688 24.564453,25.20312 24.564453,25.20312 0,0 18.627466,-14.82085 24.439446,-25.02734 H 96.135812 V 140.7385 c -2.827962,-3.35887 -6.995537,-5.30092 -11.388672,-5.30078 z m 36.96484,10.17383 v 9.26953 c 0.49448,-1.58182 0.749,-3.24871 0.76758,-4.55469 2.2e-4,-1.64866 -0.27298,-3.2325 -0.76758,-4.71484 z" /><path
id="path530890"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 84.747676,135.43809 c -8.222089,9.8e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.729141,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.784254,-14.94432 24.514164,-25.15432 1.17555,-2.09469 1.75625,-4.96741 1.7849,-6.98146 10e-4,-8.22356 -6.66569,-14.89034 -14.88925,-14.88925 -4.40789,0.007 -8.586258,1.96611 -11.409814,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531922"
transform="translate(-0.18904999,0.7718177)"><path
id="path530892"
style="display:inline;fill:url(#linearGradient530908);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 148.76471,135.43772 c -8.22207,9.9e-4 -14.88586,6.6666 -14.88476,14.88867 0.20688,2.56408 0.58977,4.85349 1.7539,6.9336 5.69142,10.16948 24.27651,24.97307 24.52149,25.16797 v -24.99219 h -0.002 V 140.7385 c -2.82796,-3.35887 -6.99554,-5.30092 -11.38867,-5.30078 z m 36.96485,10.17383 v 9.26953 c 0.49448,-1.58181 0.749,-3.24871 0.76758,-4.55469 2.2e-4,-1.64866 -0.27298,-3.2325 -0.76758,-4.71484 z" /><path
id="path530894"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 148.76606,135.43809 c -8.22209,9.8e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.72914,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.78425,-14.94432 24.51416,-25.15432 1.17555,-2.09469 1.75625,-4.96741 1.7849,-6.98146 10e-4,-8.22356 -6.66569,-14.89034 -14.88924,-14.88925 -4.40789,0.007 -8.58626,1.96611 -11.40982,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531918"
transform="translate(-0.91092999,0.7718177)"><path
id="path530896"
style="display:inline;fill:url(#linearGradient530906);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:label="Fill"
inkscape:transform-center-y="1.6148259"
d="m 213.48737,135.43772 c -8.22207,9.9e-4 -14.88587,6.66661 -14.88477,14.88867 0.20688,2.56408 0.58977,4.8535 1.75391,6.9336 0.0323,0.0578 0.0704,0.11773 0.10352,0.17578 h 24.41601 V 140.7385 c -2.82791,-3.35887 -6.99554,-5.30092 -11.38867,-5.30078 z m 11.38867,21.99805 v 24.99024 c 8e-5,6e-5 0.002,0.002 0.002,0.002 v -24.99224 z m 25.57617,-11.82422 v 9.26953 c 0.49448,-1.58181 0.749,-3.24871 0.76758,-4.55469 2.2e-4,-1.64866 -0.27298,-3.2325 -0.76758,-4.71484 z" /><path
id="path530898"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 213.48794,135.43809 c -8.22209,9.8e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.72914,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.78425,-14.94432 24.51416,-25.15432 1.17555,-2.09469 1.75625,-4.96741 1.7849,-6.98146 10e-4,-8.22356 -6.66569,-14.89034 -14.88924,-14.88925 -4.40789,0.007 -8.58626,1.96611 -11.40982,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><g
id="g531914"
transform="translate(1.0771108,0.77181772)"><path
id="path530900"
style="display:inline;fill:url(#linearGradient530904);fill-opacity:1;stroke:none;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 19.499895,135.43809 c -8.222089,9.8e-4 -14.8865896,6.66716 -14.8854896,14.88925 0.20688,2.56408 0.59064,4.85239 1.7547799,6.9325 5.7291407,10.23689 24.5631197,25.20328 24.5631197,25.20328 0,0 18.784253,-14.94432 24.514166,-25.15432 1.175552,-2.09469 1.756248,-4.96741 1.784902,-6.98146 0.0011,-8.22356 -6.665691,-14.89034 -14.889248,-14.88925 -4.40789,0.007 -8.58626,1.96611 -11.40982,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Fill" /><path
id="path530902"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 19.499895,135.43809 c -8.222089,9.8e-4 -14.8865896,6.66716 -14.8854896,14.88925 0.20688,2.56408 0.59064,4.85239 1.7547799,6.9325 5.7291407,10.23689 24.5631197,25.20328 24.5631197,25.20328 0,0 18.784253,-14.94432 24.514166,-25.15432 1.175552,-2.09469 1.756248,-4.96741 1.784902,-6.98146 0.0011,-8.22356 -6.665691,-14.89034 -14.889248,-14.88925 -4.40789,0.007 -8.58626,1.96611 -11.40982,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></g><path
id="path531007"
style="display:inline;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:4;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:8, 16;stroke-dashoffset:3.6;stroke-opacity:1;paint-order:fill markers stroke"
inkscape:transform-center-y="1.6148259"
d="m 85.231471,200.86868 c -8.22209,9.8e-4 -14.88659,6.66716 -14.88549,14.88925 0.20688,2.56408 0.59064,4.85239 1.75478,6.9325 5.72914,10.23689 24.56312,25.20328 24.56312,25.20328 0,0 18.784249,-14.94432 24.514169,-25.15433 1.17555,-2.09468 1.75625,-4.9674 1.7849,-6.98145 10e-4,-8.22356 -6.66569,-14.89035 -14.88925,-14.88925 -4.40789,0.007 -8.586259,1.96611 -11.409819,5.35094 -2.82863,-3.39089 -7.01662,-5.35108 -11.43241,-5.35094 z"
sodipodi:nodetypes="ccacacccc"
inkscape:label="Outline" /></svg>

After

Width:  |  Height:  |  Size: 33 KiB

View File

@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d2fdva5fce87k"
path="res://.godot/imported/hearts.svg-bd1e4b4e7548bb81699837ac7803d950.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Character/Hearts/hearts.svg"
dest_files=["res://.godot/imported/hearts.svg-bd1e4b4e7548bb81699837ac7803d950.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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@ -0,0 +1,8 @@
[gd_resource type="Resource" script_class="Vector3PropertyName" load_steps=2 format=3 uid="uid://d1ubyl1qt3nng"]
[ext_resource type="Script" uid="uid://rukdqg1uo30" path="res://addons/rokojori_action_library/Runtime/Shading/Properties/Vector3PropertyName.cs" id="1_7uf55"]
[resource]
script = ExtResource("1_7uf55")
propertyName = "playerPosition"
metadata/_custom_type_script = "uid://rukdqg1uo30"

View File

@ -0,0 +1,7 @@
[gd_resource type="Resource" script_class="CollectorTypeFlag" load_steps=2 format=3 uid="uid://dfqc5ainuim21"]
[ext_resource type="Script" uid="uid://dkd063lgqobog" path="res://addons/rokojori_action_library/Runtime/Interactions/Collecting/CollectorTypeFlag.cs" id="1_kthrk"]
[resource]
script = ExtResource("1_kthrk")
metadata/_custom_type_script = "uid://dkd063lgqobog"

View File

@ -0,0 +1,8 @@
[gd_resource type="Resource" script_class="Vector3PropertyName" load_steps=2 format=3 uid="uid://b5gc2rsdvb8x1"]
[ext_resource type="Script" uid="uid://rukdqg1uo30" path="res://addons/rokojori_action_library/Runtime/Shading/Properties/Vector3PropertyName.cs" id="1_jp03s"]
[resource]
script = ExtResource("1_jp03s")
propertyName = "smoothedPlayerPosition"
metadata/_custom_type_script = "uid://rukdqg1uo30"

View File

@ -0,0 +1,35 @@
using Godot;
using Rokojori;
[Tool, GlobalClass]
public partial class CollectItem : Action
{
[Export]
public Collector collector;
[Export]
public PackedScene packedLabel;
protected override void _OnTrigger()
{
var lastItem = collector.lastItemData;
if ( lastItem == null )
{
return;
}
var name = lastItem.collectableType.collectableName;
var collectablesContainer = Unique<GameUI>.Get().collectablesContainer;
var labelRegion = collectablesContainer.CreateChild<UIRegion>( packedLabel );
var label = labelRegion.Get<CollectableLabel>();
label.text.locale = name;
label.image.Texture = lastItem.collectableType.collectableIcon;
}
}

View File

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

View File

@ -0,0 +1,13 @@
using Godot;
using Rokojori;
[Tool, GlobalClass]
public partial class CollectableLabel: Node
{
[Export]
public UIText text;
[Export]
public UIImage image;
}

View File

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

View File

@ -0,0 +1,9 @@
[gd_resource type="Resource" script_class="IntVariableClass" load_steps=2 format=3 uid="uid://be5fa1myu3tqs"]
[ext_resource type="Script" uid="uid://djyqj3dds85d6" path="res://addons/rokojori_action_library/Runtime/GameObjects/Variables/Int/IntVariableClass.cs" id="1_r33d6"]
[resource]
script = ExtResource("1_r33d6")
min = 0
max = 99
metadata/_custom_type_script = "uid://djyqj3dds85d6"

View File

@ -0,0 +1,9 @@
[gd_resource type="Resource" script_class="IntVariableClass" load_steps=2 format=3 uid="uid://cgus4plqjqrb6"]
[ext_resource type="Script" uid="uid://djyqj3dds85d6" path="res://addons/rokojori_action_library/Runtime/GameObjects/Variables/Int/IntVariableClass.cs" id="1_qasj0"]
[resource]
script = ExtResource("1_qasj0")
min = 0
max = 99
metadata/_custom_type_script = "uid://djyqj3dds85d6"

View File

@ -0,0 +1,7 @@
[gd_resource type="Resource" script_class="CollisionFlag" load_steps=2 format=3 uid="uid://daivy2l77st5v"]
[ext_resource type="Script" uid="uid://crk6vntm10let" path="res://addons/rokojori_action_library/Runtime/Interactions/CollisionFlag.cs" id="1_xsxwh"]
[resource]
script = ExtResource("1_xsxwh")
metadata/_custom_type_script = "uid://crk6vntm10let"

View File

@ -0,0 +1,26 @@
[gd_scene load_steps=4 format=3 uid="uid://dbymw68tg0w2g"]
[ext_resource type="PackedScene" uid="uid://bqnu853bay13i" path="res://GameObjects/Pole/Pole.gltf" id="1_7badw"]
[sub_resource type="BoxShape3D" id="BoxShape3D_2750v"]
size = Vector3(0.25, 1.6241, 0.25)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_jdant"]
resource_name = "Material"
albedo_color = Color(0.24431226, 0.18323681, 0.18323681, 1)
metallic = 0.34
metallic_specular = 1.0
roughness = 0.33
[node name="Pole" type="StaticBody3D"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5135, 0)
shape = SubResource("BoxShape3D_2750v")
[node name="Pole" parent="." instance=ExtResource("1_7badw")]
[node name="Pole" parent="Pole" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_jdant")
[editable path="Pole"]

View File

@ -0,0 +1,39 @@
[gd_scene load_steps=6 format=3 uid="uid://dfqfl8iqjfb2h"]
[sub_resource type="BoxShape3D" id="BoxShape3D_txdr1"]
size = Vector3(1, 1, 0.1)
[sub_resource type="QuadMesh" id="QuadMesh_goqji"]
[sub_resource type="Gradient" id="Gradient_gwq84"]
offsets = PackedFloat32Array(0.06610169, 0.13461539, 0.13782051, 0.19491525, 0.5016949, 0.5169492, 0.5559322, 0.5762712, 0.8423729, 0.8898305, 0.8942308, 0.9440678)
colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0.9419355, 1, 1, 1, 0.22524545, 1, 1, 1, 0.26860976, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.2806828, 1, 1, 1, 0.3193657, 1, 1, 1, 0.9709677, 1, 1, 1, 1, 1, 1, 1, 0)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_46hce"]
gradient = SubResource("Gradient_gwq84")
fill_from = Vector2(0, 1)
fill_to = Vector2(0, 0)
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_hq3bi"]
resource_name = "Material"
transparency = 2
alpha_scissor_threshold = 0.5
alpha_antialiasing_mode = 0
cull_mode = 2
albedo_color = Color(0.24431226, 0.18323681, 0.18323681, 1)
albedo_texture = SubResource("GradientTexture2D_46hce")
metallic = 0.34
metallic_specular = 1.0
roughness = 0.33
[node name="Segment" type="StaticBody3D"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, -2.9802322e-08, 0, 0.99999994, 0, 2.9802322e-08, 0, 1, 0, 0, 0)
shape = SubResource("BoxShape3D_txdr1")
[node name="Connection" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, -2.9802322e-08, 0, 0.9, 0, 2.9802322e-08, 0, 1, -4.7683716e-07, 0, 0)
mesh = SubResource("QuadMesh_goqji")
skeleton = NodePath("../..")
surface_material_override/0 = SubResource("StandardMaterial3D_hq3bi")

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,35 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://dplmpayvtx62x"]
[ext_resource type="Shader" uid="uid://b734lcqo4dptn" path="res://GameObjects/Fir/FirShader.gdshader" id="1_27ek3"]
[ext_resource type="Texture2D" uid="uid://bniw13xtlvdln" path="res://GameObjects/Fir/fir-side.jpg" id="2_bjaxi"]
[resource]
resource_name = "Fir"
render_priority = 0
shader = ExtResource("1_27ek3")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/albedoTexture = ExtResource("2_bjaxi")
shader_parameter/hslVariance = Vector3(0, 0, 0)
shader_parameter/hslOffset = Vector3(0, 0, 0)
shader_parameter/localYMapping = Vector2(0, 0)
shader_parameter/localYHSLOffset = Vector3(0, 0, 0)
shader_parameter/localYOcclusionAmount = 0.0
shader_parameter/localYOcclusionPower = 0.0
shader_parameter/localYOcclusionValues = Vector2(0, 1)
shader_parameter/noiseScale = 1.0
shader_parameter/noiseOffset = Vector2(0, 0)
shader_parameter/windOcclusionAmount = 0.0
shader_parameter/windMaxStrength = 0.0
shader_parameter/windMaxRotation = 0.0
shader_parameter/windStrengthCurve = 0.0
shader_parameter/windStart = 0.0
shader_parameter/windEnd = 0.0
shader_parameter/windWeightCurve = 0.0
shader_parameter/windHeightCompensation = 0.0
shader_parameter/windNormalBending = 0.0
shader_parameter/worldCameraLineDistanceFadeInnerRadius = 0.0
shader_parameter/worldCameraLineDistanceFadeOuterRadius = 1.5
shader_parameter/worldLineFadeMin = 0.0
shader_parameter/roughness = 0.5
shader_parameter/albedoToRoughness = Vector3(0, 0, 0)
shader_parameter/specular = 0.5

View File

@ -0,0 +1,52 @@
[gd_resource type="ShaderMaterial" load_steps=4 format=3 uid="uid://bukxgehx43byh"]
[ext_resource type="Shader" uid="uid://b734lcqo4dptn" path="res://GameObjects/Fir/FirShader.gdshader" id="1_6wdmi"]
[ext_resource type="Texture2D" uid="uid://bw1bmbr0wb445" path="res://GameObjects/Fir/fir-side-ice.jpg" id="2_6wdmi"]
[ext_resource type="Texture2D" uid="uid://c30nul6romace" path="res://addons/rokojori_action_library/Runtime/Procedural/Noise/RGB 3D Noise.png" id="3_dv1pj"]
[resource]
resource_name = "Fir"
render_priority = 0
shader = ExtResource("1_6wdmi")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/albedoTexture = ExtResource("2_6wdmi")
shader_parameter/hslVariance = Vector3(0.01, -0.06, 0.1)
shader_parameter/hslOffset = Vector3(0, 0.0876, -0.0266)
shader_parameter/localYMapping = Vector2(0, 2.2)
shader_parameter/localYHSLOffset = Vector3(-0.009, -0.0685, 0.018)
shader_parameter/localYOcclusionAmount = 0.57600002736
shader_parameter/localYOcclusionPower = -1.41199992457
shader_parameter/localYOcclusionValues = Vector2(0.2, 1)
shader_parameter/noise = ExtResource("3_dv1pj")
shader_parameter/noiseScale = 10.0
shader_parameter/noiseOffset = Vector2(0.7413, 0)
shader_parameter/playerDeformRange = 0.125
shader_parameter/playerDeformAmount = 0.1
shader_parameter/playerDeformPower = 1.0
shader_parameter/playerDeformYStart = 1.0
shader_parameter/playerDeformYMax = 0.0
shader_parameter/windWeights = Vector2(0.05, 0.95)
shader_parameter/windSeedSize = 25.0
shader_parameter/windMaxStrength = 8.0
shader_parameter/windMaxRotation = 2.0
shader_parameter/windStrengthCurve = 0.596
shader_parameter/windStart = 0.0
shader_parameter/windEnd = 5.0
shader_parameter/windWeightCurve = 0.5
shader_parameter/windHeightCompensation = 0.02
shader_parameter/windNormalBending = 0.0
shader_parameter/windOcclusionAmount = 0.0
shader_parameter/worldCameraLineDistanceFadeInnerRadius = 0.2
shader_parameter/worldCameraLineDistanceFadeOuterRadius = 2.5
shader_parameter/worldLineFadeMin = 0.2
shader_parameter/roughness = 0.582000027645
shader_parameter/albedoToRoughness = Vector3(0, -0.8165, 0.337)
shader_parameter/specular = 1.0
shader_parameter/snowFadeLocalYStart = 1.3
shader_parameter/snowFadeLocalYEnd = 1.8
shader_parameter/snowFadeNoise = -0.5
shader_parameter/snowFadePower = 0.25
shader_parameter/snowOpacity = 0.8
shader_parameter/snowRoughness = 1.0
shader_parameter/snowSpecular = 0.0
shader_parameter/snowLightMix = 0.5

View File

@ -0,0 +1,53 @@
[gd_resource type="ShaderMaterial" load_steps=4 format=3 uid="uid://c5gv2ud526j04"]
[ext_resource type="Shader" uid="uid://b734lcqo4dptn" path="res://GameObjects/Fir/FirShader.gdshader" id="1_t54fj"]
[ext_resource type="Texture2D" uid="uid://bniw13xtlvdln" path="res://GameObjects/Fir/fir-side.jpg" id="2_yvg8l"]
[ext_resource type="Texture2D" uid="uid://c30nul6romace" path="res://addons/rokojori_action_library/Runtime/Procedural/Noise/RGB 3D Noise.png" id="3_yvg8l"]
[resource]
resource_name = "Fir"
render_priority = 0
shader = ExtResource("1_t54fj")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/albedoTexture = ExtResource("2_yvg8l")
shader_parameter/hslVariance = Vector3(0.0608, 0.0111, -0.0459)
shader_parameter/hslOffset = Vector3(0, 0, 0.0515)
shader_parameter/localYMapping = Vector2(0.2275, 2.2)
shader_parameter/localYHSLOffset = Vector3(0, -0.2775, 0.178)
shader_parameter/localYOcclusionAmount = 0.3170000150575
shader_parameter/localYOcclusionPower = -0.2119998675699999
shader_parameter/localYOcclusionValues = Vector2(0.2, 2.2)
shader_parameter/noise = ExtResource("3_yvg8l")
shader_parameter/noiseScale = 22.0
shader_parameter/noiseOffset = Vector2(0.3635, 0)
shader_parameter/playerDeformRange = 0.125
shader_parameter/playerDeformAmount = 0.1
shader_parameter/playerDeformPower = 1.0
shader_parameter/playerDeformYStart = 1.0
shader_parameter/playerDeformYMax = 0.0
shader_parameter/windWeights = Vector2(0.05, 0.95)
shader_parameter/windSeedSize = 25.0
shader_parameter/windMaxStrength = 8.0
shader_parameter/windMaxRotation = 2.0
shader_parameter/windStrengthCurve = 0.596
shader_parameter/windStart = 0.0
shader_parameter/windEnd = 5.0
shader_parameter/windWeightCurve = 0.5
shader_parameter/windHeightCompensation = 0.02
shader_parameter/windNormalBending = 0.0
shader_parameter/windOcclusionAmount = 0.0
shader_parameter/worldCameraLineDistanceFadeInnerRadius = 0.2
shader_parameter/worldCameraLineDistanceFadeOuterRadius = 2.5
shader_parameter/worldLineFadeMin = 0.2
shader_parameter/roughness = 0.1750000083125
shader_parameter/albedoToRoughness = Vector3(0, 0, -0.5)
shader_parameter/specular = 1.0
shader_parameter/snowFadeLocalYStart = 1.3
shader_parameter/snowFadeLocalYEnd = 1.8
shader_parameter/snowFadeNoise = -0.5
shader_parameter/snowFadePower = 0.25
shader_parameter/snowOpacity = 0.8
shader_parameter/snowAlbedo = 1.3
shader_parameter/snowRoughness = 1.0
shader_parameter/snowSpecular = 0.0
shader_parameter/snowLightMix = 0.5

View File

@ -0,0 +1,49 @@
[gd_resource type="ShaderMaterial" load_steps=2 format=3 uid="uid://w7gdgytbe1d1"]
[ext_resource type="Shader" uid="uid://b734lcqo4dptn" path="res://GameObjects/Fir/FirShader.gdshader" id="1_lbd55"]
[resource]
resource_name = "Fir"
render_priority = 0
shader = ExtResource("1_lbd55")
shader_parameter/albedo = Color(0.7919124, 0.7133407, 0.48449263, 1)
shader_parameter/hslVariance = Vector3(0, 0, 0)
shader_parameter/hslOffset = Vector3(0, 0, 0)
shader_parameter/localYMapping = Vector2(-0.5, 0.5)
shader_parameter/localYHSLOffset = Vector3(0, 0, 0)
shader_parameter/localYOcclusionAmount = 0.0
shader_parameter/localYOcclusionPower = 1.424999998000942e-07
shader_parameter/localYOcclusionValues = Vector2(1, 1)
shader_parameter/noiseScale = 1.0
shader_parameter/noiseOffset = Vector2(0, 0)
shader_parameter/playerDeformRange = 2.0
shader_parameter/playerDeformAmount = 0.5
shader_parameter/playerDeformPower = 1.0
shader_parameter/playerDeformYStart = 0.2
shader_parameter/playerDeformYMax = 1.0
shader_parameter/windWeights = Vector2(0.5, 0.5)
shader_parameter/windSeedSize = 1.0
shader_parameter/windMaxStrength = 0.2
shader_parameter/windMaxRotation = 0.1
shader_parameter/windStrengthCurve = 0.0
shader_parameter/windStart = 0.1
shader_parameter/windEnd = 2.0
shader_parameter/windWeightCurve = 0.5
shader_parameter/windHeightCompensation = 0.0
shader_parameter/windNormalBending = 0.0
shader_parameter/windOcclusionAmount = 0.0
shader_parameter/worldCameraLineDistanceFadeInnerRadius = 0.2
shader_parameter/worldCameraLineDistanceFadeOuterRadius = 2.5
shader_parameter/worldLineFadeMin = 0.2
shader_parameter/roughness = 0.92400004389
shader_parameter/albedoToRoughness = Vector3(0, 0, 0)
shader_parameter/specular = 0.67600003211
shader_parameter/snowFadeLocalYStart = 0.5
shader_parameter/snowFadeLocalYEnd = 1.5
shader_parameter/snowFadeNoise = 0.3
shader_parameter/snowFadePower = 1.0
shader_parameter/snowOpacity = 0.8
shader_parameter/snowAlbedo = 1.3
shader_parameter/snowRoughness = 0.1
shader_parameter/snowSpecular = 1.0
shader_parameter/snowLightMix = 0.5

Binary file not shown.

View File

@ -87,7 +87,7 @@
{
"bufferView":0,
"componentType":5126,
"count":72,
"count":134,
"max":[
0.9999999403953552,
2.1936826705932617,
@ -103,19 +103,19 @@
{
"bufferView":1,
"componentType":5126,
"count":72,
"count":134,
"type":"VEC3"
},
{
"bufferView":2,
"componentType":5126,
"count":72,
"count":134,
"type":"VEC2"
},
{
"bufferView":3,
"componentType":5123,
"count":72,
"count":291,
"type":"SCALAR"
},
{
@ -156,50 +156,50 @@
"bufferViews":[
{
"buffer":0,
"byteLength":864,
"byteLength":1608,
"byteOffset":0,
"target":34962
},
{
"buffer":0,
"byteLength":864,
"byteOffset":864,
"byteLength":1608,
"byteOffset":1608,
"target":34962
},
{
"buffer":0,
"byteLength":576,
"byteOffset":1728,
"byteLength":1072,
"byteOffset":3216,
"target":34962
},
{
"buffer":0,
"byteLength":144,
"byteOffset":2304,
"byteLength":582,
"byteOffset":4288,
"target":34963
},
{
"buffer":0,
"byteLength":120,
"byteOffset":2448,
"byteOffset":4872,
"target":34962
},
{
"buffer":0,
"byteLength":120,
"byteOffset":2568,
"byteOffset":4992,
"target":34962
},
{
"buffer":0,
"byteLength":80,
"byteOffset":2688,
"byteOffset":5112,
"target":34962
},
{
"buffer":0,
"byteLength":48,
"byteOffset":2768,
"byteOffset":5192,
"target":34963
}
],
@ -211,7 +211,7 @@
],
"buffers":[
{
"byteLength":2816,
"byteLength":5240,
"uri":"Fir-Tree.bin"
}
]

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,274 @@
shader_type spatial;
// Rokojori Shader @alb.382-fad.255-geo.20-met.376-nor.278-occ.376-rou.390-sha.391-spa.20-spa.24-spe.376-tra.402-tra.402-uvm.19:
/*
[ Rokojori.TransparencyModule ] { "alphaScissorTreshold":0.009999999776482582, "blendMode":{"__class__": "Godot.BaseMaterial3D+BlendModeEnum","value__": 0}, "cullMode":{"__class__": "Godot.BaseMaterial3D+CullModeEnum","value__": 0}, "depthDraw":{"__class__": "Godot.BaseMaterial3D+DepthDrawModeEnum","value__": 0}, "noDepthTest":false, "transparency":{"__class__": "Godot.BaseMaterial3D+TransparencyEnum","value__": 0} }
[ Rokojori.ShadingModule ] { "diffuseMode":{"__class__": "Godot.BaseMaterial3D+DiffuseModeEnum","value__": 0}, "disableAmbientLight":false, "disableFog":false, "disableReceivingShadows":false, "shadingMode":{"__class__": "Godot.BaseMaterial3D+ShadingModeEnum","value__": 1}, "shadowToOpacity":false, "specularMode":{"__class__": "Godot.BaseMaterial3D+SpecularModeEnum","value__": 0}, "wireFrameMode":false }
[ Rokojori.UVModule ] { "channels":[] }
[ Rokojori.GeometryModule ] { "modifiers":[] }
[ Rokojori.SpatialVarying ] { "variables":[] }
[ Rokojori.SpatialMasksModule ] { "maskVariables":[] }
[ Rokojori.AlbedoModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 2}, "overlayLayers":[], "repeat":true, "srgb":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "tintVarying":"", "useTint":true, "uvChannel":"UV", "writeAlpha":false }
[ Rokojori.TransparencyModule ] { "alphaScissorTreshold":0.009999999776482582, "blendMode":{"__class__": "Godot.BaseMaterial3D+BlendModeEnum","value__": 0}, "cullMode":{"__class__": "Godot.BaseMaterial3D+CullModeEnum","value__": 0}, "depthDraw":{"__class__": "Godot.BaseMaterial3D+DepthDrawModeEnum","value__": 0}, "noDepthTest":false, "transparency":{"__class__": "Godot.BaseMaterial3D+TransparencyEnum","value__": 0} }
[ Rokojori.FadingModule ] { "alphaFadeMode":{"__class__": "Rokojori.AlphaFadeMode","value__": 2}, "fadingModifiers":[{ "__class__": "Rokojori.LineFading", "mode": 1, "alphaFadeMode": 0, "createUniformGroup": false, "sortableCode": true, "uniformGroup": null}] }
[ Rokojori.NormalMapModule ] { "allowNegativeStrength":false, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "maximumStrength":5, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "useStrength":true, "uvChannel":"UV" }
[ Rokojori.OcclusionModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 3}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" }
[ Rokojori.RoughnessModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "clamp":true, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 3}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" }
[ Rokojori.MetallicModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 3}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" }
[ Rokojori.SpecularModule ] { "assignmentType":{"__class__": "Rokojori.TextureModule+AssignmentType","value__": 0}, "domainMode":{"__class__": "Rokojori.TextureModule+DomainMode","value__": 0}, "filter":{"__class__": "Rokojori.TextureModule+TextureFilter","value__": 5}, "repeat":true, "textureDefault":{"__class__": "Rokojori.TextureModule+TextureDefault","value__": 0}, "uvChannel":"UV" }
*/
render_mode blend_mix, cull_back, depth_draw_opaque, diffuse_burley, specular_schlick_ggx;
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Noise.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Line3.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/SDF.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Colors.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Wind.gdshaderinc"
// [ A L B E D O ]
group_uniforms albedo;
uniform vec4 albedo:source_color = vec4( 1.0, 1.0, 1.0, 1.0);
uniform sampler2D albedoTexture:source_color, hint_default_white, repeat_enable, filter_nearest_mipmap_anisotropic;
uniform vec3 hslVariance = vec3( 0, 0, 0 );
uniform vec3 hslOffset = vec3( 0, 0, 0 );
uniform vec2 localYMapping = vec2( 0, 0 );
varying float localYMappingAmount;
uniform vec3 localYHSLOffset = vec3( 0, 0, 0 );
uniform float localYOcclusionAmount:hint_range( 0.0, 1.0 ) = 0;
uniform float localYOcclusionPower:hint_range( -3.0, 3.0 ) = 0;
uniform vec2 localYOcclusionValues = vec2( 0, 1 );
uniform sampler2D noise: hint_default_white, repeat_enable, filter_linear_mipmap_anisotropic;
uniform float noiseScale = 1;
uniform vec2 noiseOffset = vec2( 0, 0 );
// [ PLAYER DEFROM ]
group_uniforms playerDeform;
uniform float playerDeformRange = 2.0;
uniform float playerDeformAmount = 0.5;
uniform float playerDeformPower:hint_range( 0.25, 4 ) = 1;
uniform float playerDeformYStart = 0.2;
uniform float playerDeformYMax = 1;
// [ WIND ]
group_uniforms wind;
// Texture for close wind: grass/foliage
global uniform sampler2D rj_GlobalWindNoiseTextureClose;
// Texture for far wind: trees
global uniform sampler2D rj_GlobalWindNoiseTextureFar;
// Windposition close
global uniform vec2 rj_GlobalWindPositionClose;
// Windposition far
global uniform vec2 rj_GlobalWindPositionFar;
// Wind direction for both
global uniform vec2 rj_GlobalWindDirection;
// Wind speed for both
global uniform float rj_GlobalWindSpeed;
// Weights for x: close and y: far
uniform vec2 windWeights = vec2( 0.5, 0.5 );
// Scales the world-vertex based variance
uniform float windSeedSize = 1.0;
// Max xz bending
uniform float windMaxStrength = 0.2;
// Max yaw rotation
uniform float windMaxRotation = 0.1;
// Linear/Inv-Quadratic mapping for the strength
uniform float windStrengthCurve:hint_range( 0.0, 1.0 );
// Influence start in local Y
uniform float windStart = 0.1;
// Influence max in local Y
uniform float windEnd = 2.0;
// Influence mapping over local Y
uniform float windWeightCurve:hint_range( 0.0,1.0 ) = 0.5;
// Ducking in y for amount, strong wind => vertices lower
uniform float windHeightCompensation;
// Normal incluence
uniform float windNormalBending;
// AO influence
uniform float windOcclusionAmount;
varying float vertexWindAO;
// [ F A D I N G ]
group_uniforms Fading;
global uniform vec3 playerPosition = vec3( 0.0, 0.0, 0.0);
varying vec3 worldCameraLineDistanceFadeViewPosition;
uniform float worldCameraLineDistanceFadeInnerRadius = 0.10000000149011612;
uniform float worldCameraLineDistanceFadeOuterRadius = 0.15000000596046448;
uniform float worldLineFadeMin = 0.0;
// // [ N O R M A L ]
// group_uniforms normal;
// uniform float normalStrength:hint_range( 0.0, 5.0) = 1.0;
// uniform sampler2D normalTexture:hint_normal, repeat_enable, filter_linear_mipmap_anisotropic;
// [ R O U G H N E S S ]
group_uniforms roughness;
uniform float roughness:hint_range( 0.0, 1.0 ) = 1.0;
uniform vec3 albedoToRoughness = vec3( 0, 0, 0 );
// [ S P E C U L A R ]
group_uniforms specular;
uniform float specular:hint_range( 0.0, 1.0) = 0.5;
varying vec4 noiseValue;
// [ S N O W ]
group_uniforms snow;
global uniform float globalSnowAmount;
uniform float snowFadeLocalYStart = 0.5;
uniform float snowFadeLocalYEnd = 1.5;
uniform float snowFadeNoise = 0.3;
uniform float snowFadePower = 1;
uniform float snowOpacity = 0.8;
uniform float snowAlbedo = 1.3;
uniform float snowRoughness = 0.1;
uniform float snowSpecular = 1.0;
uniform float snowLightMix = 0.5;
varying float snowAmount;
void vertex()
{
vec3 worldVertex = localToWorld( VERTEX, MODEL_MATRIX );
vec2 worldUV = ( worldVertex.xz ) / ( 1000.0 * noiseScale ) + noiseOffset;
noiseValue = textureLod( noise, worldUV, 0 );
worldCameraLineDistanceFadeViewPosition = worldToView( playerPosition, VIEW_MATRIX );
float maxSnowAmount = mapClamped( VERTEX.y, snowFadeLocalYStart + snowFadeNoise * noiseValue.r, snowFadeLocalYEnd + snowFadeNoise * noiseValue.r, 0.0, snowOpacity );
maxSnowAmount = clamp01( pow( maxSnowAmount, snowFadePower ) );
snowAmount = maxSnowAmount * globalSnowAmount;
localYMappingAmount = map( VERTEX.y, localYMapping.x, localYMapping.y, 0.0, 1.0 );
// PLAYER DEFORM
vec3 localPlayerPosition = worldToLocal( playerPosition, MODEL_MATRIX ) - VERTEX;
localPlayerPosition.y = 0.0;
float length = length( localPlayerPosition );
if ( length == 0.0 )
{
localPlayerPosition = vec3( 0.0001, 0, 0 );
}
vec3 dir = normalize( localPlayerPosition );
float amount = mapClamped( length, 0.0, playerDeformRange, playerDeformAmount, 0 );
amount = clamp01( pow( amount, playerDeformPower ) );
float yAmount = mapClamped( VERTEX.y, playerDeformYStart, playerDeformYMax, 0.0, 1.0 );
VERTEX += dir * - amount * yAmount;
// WIND
float windAO = 0.0;
applyGlobalWind(
MODEL_MATRIX,
VERTEX,
NORMAL,
windAO,
windOcclusionAmount,
rj_GlobalWindNoiseTextureClose,
rj_GlobalWindNoiseTextureFar,
rj_GlobalWindPositionClose,
rj_GlobalWindPositionFar,
rj_GlobalWindDirection,
rj_GlobalWindSpeed,
windWeights,
windSeedSize,
windMaxStrength,
windMaxRotation,
windStrengthCurve,
windStart,
windEnd,
windWeightCurve,
windHeightCompensation,
windNormalBending
);
vertexWindAO = windAO;
}
void fragment()
{
float worldLineDistanceFadeDistance =
sdRoundCone( VERTEX, vec3( 0.0, 0.0, 0.0),
worldCameraLineDistanceFadeViewPosition, 0,
worldCameraLineDistanceFadeInnerRadius
);
float worldRadius = worldCameraLineDistanceFadeOuterRadius - worldCameraLineDistanceFadeInnerRadius;
float worldLineDistanceFadeAmount = smoothstep( 0, worldRadius, worldLineDistanceFadeDistance );
worldLineDistanceFadeAmount = clamp( worldLineDistanceFadeAmount, worldLineFadeMin, 1.0 );
vec3 objectNormal = normalize( worldCameraLineDistanceFadeViewPosition - VERTEX );
vec3 cameraNormal = NORMAL;
float worldLineDistanceDot = dot( cameraNormal, objectNormal );
worldLineDistanceDot = max( 0, sign( worldLineDistanceDot ) );
if ( worldLineDistanceDot == 0.0 && ditherDiscard( worldLineDistanceFadeAmount, FRAGCOORD ) )
{
discard;
}
vec4 sampledAlbedo = texture( albedoTexture, UV );
ALBEDO = sampledAlbedo.rgb * albedo.rgb;
vec3 hslAmount = ( noiseValue.rgb - 0.5 ) * 2.0;
vec3 localYHSL = localYMappingAmount * localYHSLOffset;
ALBEDO = adjustHSL( ALBEDO, hslAmount * hslVariance + hslOffset + localYHSL );
ALBEDO = mix( ALBEDO, vec3( snowAlbedo ), snowAmount );
float localYocclusion = pow( max( 0.0, localYMappingAmount ), pow( 2.0, localYOcclusionPower ) );
AO = mix( 1.0, mix( localYOcclusionValues.x, localYOcclusionValues.y, localYocclusion ), localYOcclusionAmount );
AO *= vertexWindAO;
vec3 albedoRoughnessRGB = sampledAlbedo.rgb * albedoToRoughness;
float albedoRoughness = albedoRoughnessRGB.r + albedoRoughnessRGB.g + albedoRoughnessRGB.b;
ROUGHNESS = roughness + albedoRoughness;
SPECULAR = specular;
ROUGHNESS = mix( ROUGHNESS, snowRoughness, snowLightMix * snowAmount );
SPECULAR = mix( SPECULAR, snowSpecular, snowLightMix * snowAmount );
}

View File

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

View File

@ -0,0 +1,49 @@
[gd_resource type="ShaderMaterial" load_steps=5 format=3 uid="uid://1h5s2dr4bpx6"]
[ext_resource type="Shader" uid="uid://n0tejd04fnib" path="res://GameObjects/Foliage/Foliage-Shader.gdshader" id="1_cj42g"]
[ext_resource type="Texture2D" uid="uid://cmcm5evl0ifj3" path="res://assets/rokojori-houses/bush.png" id="2_fyrw4"]
[sub_resource type="Gradient" id="Gradient_xa56p"]
colors = PackedColorArray(0.33707213, 0.33707213, 0.33707213, 1, 1, 1, 1, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_getpf"]
gradient = SubResource("Gradient_xa56p")
fill_from = Vector2(0, 0.93048126)
fill_to = Vector2(0, 0.44385028)
[resource]
render_priority = 0
shader = ExtResource("1_cj42g")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/texture_albedo = ExtResource("2_fyrw4")
shader_parameter/alpha_scissor_threshold = 0.50000002375
shader_parameter/albedo_texture_size = Vector2i(8, 8)
shader_parameter/point_size = 1.0
shader_parameter/roughness = 1.0
shader_parameter/metallic_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/specular = 0.5
shader_parameter/metallic = 0.0
shader_parameter/texture_ambient_occlusion = SubResource("GradientTexture2D_getpf")
shader_parameter/ao_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/ao_light_affect = 1.0
shader_parameter/subsurface_scattering_strength = 1.0
shader_parameter/transmittance_color = Color(1, 1, 1, 1)
shader_parameter/transmittance_depth = 4.656
shader_parameter/transmittance_boost = 0.999999977648
shader_parameter/backlight = Color(0.73081446, 0.72161514, 0.6009116, 1)
shader_parameter/uv1_scale = Vector3(1, 1, 1)
shader_parameter/uv1_offset = Vector3(0, 0, 0)
shader_parameter/maxSnowV = 0.8
shader_parameter/topSnowOpacity = 1.0
shader_parameter/bottomSnowOpacity = 0.0
shader_parameter/snowWaveFrequency = 10.0
shader_parameter/snowWaveFrequencySeedAmount = 5.0
shader_parameter/snowWaveAmount = 0.0295
shader_parameter/snowWaveSeedStrength = 321.0
shader_parameter/rotationZ = 0.0
shader_parameter/rotationZSeed = 5.0
shader_parameter/playerDeformRange = 1.0
shader_parameter/playerDeformAmount = 0.5
shader_parameter/playerDeformPower = 1.0
shader_parameter/playerDeformYStart = 0.1
shader_parameter/playerDeformYMax = 0.3

View File

@ -0,0 +1,40 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://cankc44hv7xty"]
[ext_resource type="Shader" uid="uid://n0tejd04fnib" path="res://GameObjects/Foliage/Foliage-Shader.gdshader" id="1_5fitk"]
[ext_resource type="Texture2D" uid="uid://bs28luuyuhx3n" path="res://assets/rokojori-houses/flower-bush.png" id="2_5fitk"]
[resource]
render_priority = 0
shader = ExtResource("1_5fitk")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/texture_albedo = ExtResource("2_5fitk")
shader_parameter/alpha_scissor_threshold = 0.50000002375
shader_parameter/albedo_texture_size = Vector2i(0, 0)
shader_parameter/point_size = 0.0
shader_parameter/roughness = 0.56400002679
shader_parameter/metallic_texture_channel = Vector4(0, 0, 1, 0)
shader_parameter/specular = 0.72999998368304
shader_parameter/metallic = 0.45999998971808
shader_parameter/ao_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/ao_light_affect = 0.999999977648
shader_parameter/subsurface_scattering_strength = 0.999999977648
shader_parameter/transmittance_color = Color(1, 1, 1, 1)
shader_parameter/transmittance_depth = 8.0
shader_parameter/transmittance_boost = 0.999999977648
shader_parameter/backlight = Color(0.7579691, 0.576351, 0.015094581, 1)
shader_parameter/uv1_scale = Vector3(1, 1, 0)
shader_parameter/uv1_offset = Vector3(0, 0, 0)
shader_parameter/maxSnowV = 0.8
shader_parameter/topSnowOpacity = 1.0
shader_parameter/bottomSnowOpacity = 0.0
shader_parameter/snowWaveFrequency = 6.0
shader_parameter/snowWaveFrequencySeedAmount = 4.0
shader_parameter/snowWaveAmount = 0.086
shader_parameter/snowWaveSeedStrength = 346.0
shader_parameter/rotationZ = 0.0
shader_parameter/rotationZSeed = 0.0
shader_parameter/playerDeformRange = 2.0
shader_parameter/playerDeformAmount = 0.5
shader_parameter/playerDeformPower = 1.0
shader_parameter/playerDeformYStart = 0.2
shader_parameter/playerDeformYMax = 1.0

View File

@ -0,0 +1,168 @@
shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_disabled, diffuse_burley, specular_schlick_ggx, sss_mode_skin;
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc"
uniform vec4 albedo : source_color;
uniform sampler2D texture_albedo : source_color, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform float alpha_scissor_threshold : hint_range(0.0, 1.0, 0.001);
uniform ivec2 albedo_texture_size;
uniform float point_size : hint_range(0.1, 128.0, 0.1);
uniform float roughness : hint_range(0.0, 1.0);
uniform sampler2D texture_metallic : hint_default_white, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec4 metallic_texture_channel;
uniform sampler2D texture_roughness : hint_roughness_r, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform float specular : hint_range(0.0, 1.0, 0.01);
uniform float metallic : hint_range(0.0, 1.0, 0.01);
uniform sampler2D texture_ambient_occlusion : hint_default_white, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec4 ao_texture_channel;
uniform float ao_light_affect : hint_range(0.0, 1.0, 0.01);
uniform float subsurface_scattering_strength : hint_range(0.0, 1.0, 0.01);
uniform sampler2D texture_subsurface_scattering : hint_default_white, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec4 transmittance_color : source_color;
uniform float transmittance_depth : hint_range(0.001, 8.0, 0.001);
uniform sampler2D texture_subsurface_transmittance : hint_default_white, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform float transmittance_boost : hint_range(0.0, 1.0, 0.01);
uniform vec4 backlight : source_color;
uniform sampler2D texture_backlight : hint_default_black, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec3 uv1_scale;
uniform vec3 uv1_offset;
// [ SNOW ]
group_uniforms snow;
uniform float maxSnowV = 0.8;
uniform float topSnowOpacity = 1;
uniform float bottomSnowOpacity = 0;
uniform float snowWaveFrequency = 2;
uniform float snowWaveFrequencySeedAmount = 7;
uniform float snowWaveAmount = 0;
uniform float snowWaveSeedStrength = 1;
global uniform float globalSnowAmount;
// [ VARIANCE ]
group_uniforms variance;
varying float worldSeedXZ;
uniform float rotationZ = 0;
uniform float rotationZSeed = 0;
varying float combinedRotationZ;
// [ PLAYER DEFROM ]
group_uniforms playerDeform;
global uniform vec3 playerPosition;
uniform float playerDeformRange = 2.0;
uniform float playerDeformAmount = 0.5;
uniform float playerDeformPower:hint_range( 0.25, 4 ) = 1;
uniform float playerDeformYStart = 0.2;
uniform float playerDeformYMax = 1;
void vertex()
{
UV = UV * uv1_scale.xy + uv1_offset.xy;
worldSeedXZ = fract( 123.94444 * fract( NODE_POSITION_WORLD.x * 42130.323 ) + 3.35 * fract( NODE_POSITION_WORLD.z * 13435.124 ) );
// PLAYER DEFORM
vec3 localPlayerPosition = worldToLocal( playerPosition, MODEL_MATRIX );
localPlayerPosition.y = 0.0;
float positionLength = length( localPlayerPosition );
if ( positionLength == 0.0 )
{
localPlayerPosition = vec3( 0.0001, 0, 0 );
}
vec3 dir = normalize( localPlayerPosition );
float amount = mapClamped( positionLength, 0.0, playerDeformRange, playerDeformAmount, 0 );
amount = clamp01( pow( amount, playerDeformPower ) );
float yAmount = mapClamped( VERTEX.y, playerDeformYStart, playerDeformYMax, 0.0, 1.0 );
VERTEX += dir * - amount * yAmount;
// Billboard Mode: Enabled
MODELVIEW_MATRIX = VIEW_MATRIX * mat4(
MAIN_CAM_INV_VIEW_MATRIX[0],
MAIN_CAM_INV_VIEW_MATRIX[1],
MAIN_CAM_INV_VIEW_MATRIX[2],
MODEL_MATRIX[3]);
// Billboard Keep Scale: Enabled
MODELVIEW_MATRIX = MODELVIEW_MATRIX * mat4(
vec4(
length(MODEL_MATRIX[0].xyz), 0.0, 0.0, 0.0
),
vec4(0.0, length(MODEL_MATRIX[1].xyz), 0.0, 0.0),
vec4(0.0, 0.0, length(MODEL_MATRIX[2].xyz), 0.0),
vec4(0.0, 0.0, 0.0, 1.0)
);
combinedRotationZ = rotationZ + ( worldSeedXZ * 2.0 - 1.0 ) * rotationZSeed;
combinedRotationZ = combinedRotationZ / 180.0 * PI;
MODELVIEW_MATRIX = MODELVIEW_MATRIX * rotationZ_m4( combinedRotationZ );
MODELVIEW_NORMAL_MATRIX = mat3(MODELVIEW_MATRIX);
}
void fragment()
{
vec2 tSize = vec2( textureSize( texture_albedo, 0 ) );
vec2 quantizedUV = round( rotateAround_v2( UV, -combinedRotationZ, vec2( 0.5, 0.5 ) ) * tSize ) / tSize;
float snowV = mix( 0.0, maxSnowV, globalSnowAmount );
//float vOffset = sin( quantizedUV.x * snowWaveFrequency + worldSeedXZ * snowWaveSeedStrength ) * snowWaveAmount;
float vOffset = sin( quantizedUV.x * ( snowWaveFrequency + ( worldSeedXZ * 2.0 - 1.0 ) * snowWaveFrequencySeedAmount ) + worldSeedXZ * snowWaveSeedStrength ) * snowWaveAmount;
float inSnow = mapClamped( quantizedUV.y + vOffset, 0.0, snowV, 1.0, 0.0 );
float snowCoverage = mix( bottomSnowOpacity, topSnowOpacity, inSnow );
snowCoverage = clamp01( snowCoverage );
snowCoverage *= mapClamped( globalSnowAmount, 0, 0.4, 0, 1.0 );
vec2 base_uv = UV;
vec4 albedo_tex = texture(texture_albedo, base_uv);
ALBEDO = albedo.rgb * albedo_tex.rgb;
ALBEDO = mix( ALBEDO, vec3( 1.0 ), snowCoverage );
float metallic_tex = dot(texture(texture_metallic, base_uv), metallic_texture_channel);
METALLIC = metallic_tex * metallic;
SPECULAR = specular;
vec4 roughness_texture_channel = vec4(1.0, 0.0, 0.0, 0.0);
float roughness_tex = dot(texture(texture_roughness, base_uv), roughness_texture_channel);
ROUGHNESS = roughness_tex * roughness;
ALPHA *= albedo.a * albedo_tex.a;
ALPHA_SCISSOR_THRESHOLD = alpha_scissor_threshold;
// Ambient Occlusion: Enabled
AO = dot(texture(texture_ambient_occlusion, base_uv), ao_texture_channel);
AO_LIGHT_AFFECT = ao_light_affect;
// Subsurface Scattering: Enabled
float sss_tex = texture(texture_subsurface_scattering, base_uv).r;
SSS_STRENGTH = subsurface_scattering_strength * sss_tex;
// Subsurface Scattering Transmittance: Enabled
vec4 trans_color_tex = texture(texture_subsurface_transmittance, base_uv);
SSS_TRANSMITTANCE_COLOR = transmittance_color * trans_color_tex;
SSS_TRANSMITTANCE_DEPTH = transmittance_depth;
SSS_TRANSMITTANCE_BOOST = transmittance_boost;
// Backlight: Enabled
vec3 backlight_tex = texture(texture_backlight, base_uv).rgb;
BACKLIGHT = (backlight.rgb + backlight_tex);
}

View File

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

View File

@ -0,0 +1,43 @@
[gd_resource type="ShaderMaterial" load_steps=5 format=3 uid="uid://2ki3b6e0p6uq"]
[ext_resource type="Shader" uid="uid://n0tejd04fnib" path="res://GameObjects/Foliage/Foliage-Shader.gdshader" id="1_ajbl0"]
[ext_resource type="Texture2D" uid="uid://dm43hafifngr5" path="res://assets/rokojori-houses/pink-bush.png" id="2_tkla7"]
[sub_resource type="Gradient" id="Gradient_yhip2"]
colors = PackedColorArray(0.33707213, 0.33707213, 0.33707213, 1, 1, 1, 1, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_2ejjq"]
gradient = SubResource("Gradient_yhip2")
fill_from = Vector2(0, 0.93048126)
fill_to = Vector2(0, 0.44385028)
[resource]
render_priority = 0
shader = ExtResource("1_ajbl0")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/texture_albedo = ExtResource("2_tkla7")
shader_parameter/alpha_scissor_threshold = 0.5
shader_parameter/albedo_texture_size = Vector2i(8, 8)
shader_parameter/point_size = 1.0
shader_parameter/roughness = 1.0
shader_parameter/metallic_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/specular = 0.5
shader_parameter/metallic = 0.0
shader_parameter/texture_ambient_occlusion = SubResource("GradientTexture2D_2ejjq")
shader_parameter/ao_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/ao_light_affect = 0.0
shader_parameter/subsurface_scattering_strength = 1.0
shader_parameter/transmittance_color = Color(1, 1, 1, 1)
shader_parameter/transmittance_depth = 4.656
shader_parameter/transmittance_boost = 1.0
shader_parameter/backlight = Color(0.73081446, 0.72161514, 0.6009116, 1)
shader_parameter/uv1_scale = Vector3(1, 1, 1)
shader_parameter/uv1_offset = Vector3(0, 0, 0)
shader_parameter/maxSnowV = 0.8
shader_parameter/topSnowOpacity = 0.8
shader_parameter/bottomSnowOpacity = 0.0
shader_parameter/snowWaveFrequency = 10.4515
shader_parameter/snowWaveAmount = 0.0565
shader_parameter/snowWaveSeedStrength = 200.0
shader_parameter/rotationZ = 0.0
shader_parameter/rotationZSeed = 0.0

Binary file not shown.

View File

@ -0,0 +1,40 @@
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://oe6d0lu68ia2"]
[ext_resource type="Shader" uid="uid://n0tejd04fnib" path="res://GameObjects/Foliage/Foliage-Shader.gdshader" id="1_ivy6j"]
[ext_resource type="Texture2D" uid="uid://dm43hafifngr5" path="res://assets/rokojori-houses/pink-bush.png" id="2_ivy6j"]
[resource]
render_priority = 0
shader = ExtResource("1_ivy6j")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/texture_albedo = ExtResource("2_ivy6j")
shader_parameter/alpha_scissor_threshold = 0.50000002375
shader_parameter/albedo_texture_size = Vector2i(0, 0)
shader_parameter/point_size = 0.0
shader_parameter/roughness = 1.0
shader_parameter/metallic_texture_channel = Vector4(0, 0, 0, 0)
shader_parameter/specular = 0.499999988824
shader_parameter/metallic = 0.0
shader_parameter/ao_texture_channel = Vector4(0, 0, 1, 0)
shader_parameter/ao_light_affect = 0.999999977648
shader_parameter/subsurface_scattering_strength = 0.999999977648
shader_parameter/transmittance_color = Color(1, 1, 1, 1)
shader_parameter/transmittance_depth = 8.0
shader_parameter/transmittance_boost = 0.0
shader_parameter/backlight = Color(0.6900825, 0.18473934, 0.15443109, 1)
shader_parameter/uv1_scale = Vector3(1, 1, 0)
shader_parameter/uv1_offset = Vector3(0, 0, 0)
shader_parameter/maxSnowV = 0.8
shader_parameter/topSnowOpacity = 1.0
shader_parameter/bottomSnowOpacity = 0.0
shader_parameter/snowWaveFrequency = 5.757
shader_parameter/snowWaveFrequencySeedAmount = 3.0
shader_parameter/snowWaveAmount = 0.178
shader_parameter/snowWaveSeedStrength = 34534.0
shader_parameter/rotationZ = 0.0
shader_parameter/rotationZSeed = 0.0
shader_parameter/playerDeformRange = 2.0
shader_parameter/playerDeformAmount = 0.5
shader_parameter/playerDeformPower = 1.0
shader_parameter/playerDeformYStart = 0.2
shader_parameter/playerDeformYMax = 1.0

Binary file not shown.

View File

@ -1,10 +1,23 @@
[gd_scene load_steps=3 format=3 uid="uid://bg8ypdl6k85ri"]
[gd_scene load_steps=6 format=3 uid="uid://bg8ypdl6k85ri"]
[ext_resource type="PackedScene" uid="uid://d3brugocci17o" path="res://GameObjects/Fir-Group/Fir Group Ice.tscn" id="1_8q2ot"]
[ext_resource type="PackedScene" uid="uid://dawxe3jm1j1ei" path="res://GameObjects/Present/Present.tscn" id="1_44yth"]
[ext_resource type="PackedScene" uid="uid://cysnvy387qi38" path="res://GameObjects/Fir-Group/Fir Group.tscn" id="2_4qffx"]
[ext_resource type="Material" uid="uid://dbqr1iev2b5t4" path="res://UI/Map/Map Vegetation Circle.tres" id="3_4qffx"]
[sub_resource type="PlaneMesh" id="PlaneMesh_44yth"]
[node name="Forest Group" type="Node3D"]
[node name="Present" parent="." instance=ExtResource("1_44yth")]
transform = Transform3D(0.4108638, 0, -0.91169673, 0, 1, 0, 0.91169673, 0, 0.4108638, 2.5577374, 0, -2.2148113)
[node name="Present2" parent="." instance=ExtResource("1_44yth")]
transform = Transform3D(0.4108638, 0, -0.91169673, 0, 1, 0, 0.91169673, 0, 0.4108638, 22.174994, 0, -12.391151)
[node name="Present3" parent="." instance=ExtResource("1_44yth")]
transform = Transform3D(-0.5215799, 0, -0.85320234, 0, 1, 0, 0.85320234, 0, -0.5215799, 28.674747, 0, -32.675495)
[node name="Fir-Group-Ice" parent="." instance=ExtResource("1_8q2ot")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.040007, 0, -29.891865)
@ -28,6 +41,24 @@ transform = Transform3D(0.84413, 0, -1.8254168, 0, 2.0111442, 0, 1.8254168, 0, 0
[node name="Fir-Group" parent="." instance=ExtResource("2_4qffx")]
[node name="Map Geometry 4" type="MeshInstance3D" parent="Fir-Group"]
transform = Transform3D(27.44629, 0, 0, 0, 1, 0, 0, 0, 34.13384, 25.866308, -2.8980765, -20.222918)
layers = 8
mesh = SubResource("PlaneMesh_44yth")
surface_material_override/0 = ExtResource("3_4qffx")
[node name="Map Geometry 5" type="MeshInstance3D" parent="Fir-Group"]
transform = Transform3D(6.809019, 0, 2.7083173, 0, 1, 0, -2.0247078, 0, 9.107973, -1.8502192, -2.8980765, -3.199451)
layers = 8
mesh = SubResource("PlaneMesh_44yth")
surface_material_override/0 = ExtResource("3_4qffx")
[node name="Map Geometry 6" type="MeshInstance3D" parent="Fir-Group"]
transform = Transform3D(13.654733, 0, 4.101728, 0, 1, 0, -4.060327, 0, 13.793963, -0.67935324, -2.8980765, -37.652992)
layers = 8
mesh = SubResource("PlaneMesh_44yth")
surface_material_override/0 = ExtResource("3_4qffx")
[node name="Fir-Group2" parent="." instance=ExtResource("2_4qffx")]
transform = Transform3D(0.5618113, 0, 0.47460607, 0, 0.7354474, 0, -0.47460607, 0, 0.5618113, 0.88123584, 0, -4.286784)

View File

@ -0,0 +1,53 @@
[gd_resource type="ShaderMaterial" load_steps=6 format=3 uid="uid://675ynr6grow8"]
[ext_resource type="Shader" uid="uid://b3upbrj3uyf4j" path="res://GameObjects/Grass/Grass.gdshader" id="1_pok7a"]
[sub_resource type="Gradient" id="Gradient_n270a"]
offsets = PackedFloat32Array(0, 0.3968254, 0.8249158)
colors = PackedColorArray(0.793656, 0.89374226, 0.8721277, 1, 0.48921365, 0.7511804, 0.6489605, 1, 0.73337173, 0.8258557, 0.79009736, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_ru2n6"]
gradient = SubResource("Gradient_n270a")
fill_from = Vector2(0, 0.74358976)
fill_to = Vector2(0, 0)
[sub_resource type="Gradient" id="Gradient_s8tmj"]
colors = PackedColorArray(0.6561392, 0.6561392, 0.6561392, 1, 1, 1, 1, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_aqryr"]
gradient = SubResource("Gradient_s8tmj")
fill_from = Vector2(0, 1)
fill_to = Vector2(0, 0)
[resource]
render_priority = 0
shader = ExtResource("1_pok7a")
shader_parameter/albedo = Color(1, 1, 1, 1)
shader_parameter/texture_albedo = SubResource("GradientTexture2D_ru2n6")
shader_parameter/albedoToBacklight = 1.0
shader_parameter/albedoToEmission = 0.06000000285
shader_parameter/roughness = 1.0
shader_parameter/metallic_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/specular = 0.58999998681232
shader_parameter/metallic = 0.0
shader_parameter/texture_ambient_occlusion = SubResource("GradientTexture2D_aqryr")
shader_parameter/ao_texture_channel = Vector4(1, 0, 0, 0)
shader_parameter/ao_light_affect = 0.999999977648
shader_parameter/uv1_scale = Vector3(1, 1, 1)
shader_parameter/uv1_offset = Vector3(0, 0, 0)
shader_parameter/playerDeformRange = 1.0
shader_parameter/playerDeformAmount = 0.1
shader_parameter/playerDeformPower = 0.500000011875
shader_parameter/playerDeformYStart = 0.1
shader_parameter/playerDeformYMax = 0.5
shader_parameter/windWeights = Vector2(1, 0)
shader_parameter/windSeedSize = 0.5
shader_parameter/windMaxStrength = 1.0
shader_parameter/windMaxRotation = 1.0
shader_parameter/windStrengthCurve = 0.0
shader_parameter/windStart = 0.0654
shader_parameter/windEnd = 0.5805
shader_parameter/windWeightCurve = 0.5
shader_parameter/windHeightCompensation = 0.2088
shader_parameter/windNormalBending = 0.573
shader_parameter/windOcclusionAmount = 0.2

View File

@ -0,0 +1,207 @@
shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_back, diffuse_burley, specular_schlick_ggx;
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Wind.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Line3.gdshaderinc"
uniform vec4 albedo : source_color;
uniform sampler2D texture_albedo : source_color, filter_linear_mipmap, repeat_enable;
uniform float albedoToBacklight:hint_range( 0.0, 1.0 ) = 0.2;
uniform float albedoToEmission:hint_range( 0.0, 1.0 ) = 0.2;
uniform float roughness : hint_range(0.0, 1.0);
uniform sampler2D texture_metallic : hint_default_white, filter_linear_mipmap, repeat_enable;
uniform vec4 metallic_texture_channel;
uniform sampler2D texture_roughness : hint_roughness_r, filter_linear_mipmap, repeat_enable;
uniform float specular : hint_range(0.0, 1.0, 0.01);
uniform float metallic : hint_range(0.0, 1.0, 0.01);
uniform sampler2D texture_ambient_occlusion : hint_default_white, filter_linear_mipmap, repeat_enable;
uniform vec4 ao_texture_channel;
uniform float ao_light_affect : hint_range(0.0, 1.0, 0.01);
uniform vec3 uv1_scale;
uniform vec3 uv1_offset;
// [ PLAYER DEFROM ]
group_uniforms playerDeform;
global uniform vec3 playerPosition;
global uniform vec3 smoothedPlayerPosition;
uniform float playerDeformRange = 2.0;
uniform float playerDeformAmount = 0.5;
uniform float playerDeformPower:hint_range( 0.25, 4 ) = 1;
uniform float playerDeformYStart = 0.2;
uniform float playerDeformYMax = 1;
// [ WIND ]
group_uniforms wind;
// Texture for close wind: grass/foliage
global uniform sampler2D rj_GlobalWindNoiseTextureClose;
// Texture for far wind: trees
global uniform sampler2D rj_GlobalWindNoiseTextureFar;
// Windposition close
global uniform vec2 rj_GlobalWindPositionClose;
// Windposition far
global uniform vec2 rj_GlobalWindPositionFar;
// Wind direction for both
global uniform vec2 rj_GlobalWindDirection;
// Wind speed for both
global uniform float rj_GlobalWindSpeed;
// Weights for x: close and y: far
uniform vec2 windWeights = vec2( 0.5, 0.5 );
// Scales the world-vertex based variance
uniform float windSeedSize = 1.0;
// Max xz bending
uniform float windMaxStrength = 0.2;
// Max yaw rotation
uniform float windMaxRotation = 0.1;
// Linear/Inv-Quadratic mapping for the strength
uniform float windStrengthCurve:hint_range( 0.0, 1.0 );
// Influence start in local Y
uniform float windStart = 0.1;
// Influence max in local Y
uniform float windEnd = 2.0;
// Influence mapping over local Y
uniform float windWeightCurve:hint_range( 0.0,1.0 ) = 0.5;
// Ducking in y for amount, strong wind => vertices lower
uniform float windHeightCompensation;
// Normal incluence
uniform float windNormalBending;
// AO influence
uniform float windOcclusionAmount;
varying float vertexWindAO;
//
void vertex()
{
UV = UV * uv1_scale.xy + uv1_offset.xy;
// PLAYER DEFORM
vec3 playerPositionLocal = worldToLocal( playerPosition, MODEL_MATRIX );
vec3 smoothedPlayerPositionLocal = worldToLocal( smoothedPlayerPosition, MODEL_MATRIX );
playerPositionLocal.y = 0.0;
smoothedPlayerPositionLocal.y = 0.0;
vec3 flatVertex = VERTEX; flatVertex.y = 0.0;
Line3 line;
line.start = playerPositionLocal;
line.end = smoothedPlayerPositionLocal;
float distance = Line3_getDistance( line, flatVertex );
vec3 dir = vec3( 1.0, 0, 0 );
if ( distance != 0.0 )
{
dir = playerPositionLocal - VERTEX;
dir.y = 0.0;
// vec3 closestPoint = Line3_closestPointToPoint( line, flatVertex );
// dir = closestPoint - flatVertex;
}
dir = normalize( dir );
// vec3 localPlayerPosition = worldToLocal( playerPosition, MODEL_MATRIX ) - VERTEX;
// localPlayerPosition.y = 0.0;
// float distance = length( localPlayerPosition );
// if ( distance == 0.0 )
// {
// localPlayerPosition = vec3( 0.0001, 0, 0 );
// }
// vec3 dir = normalize( localPlayerPosition );
float amount = mapClamped( distance, 0.0, playerDeformRange, playerDeformAmount, 0 );
amount = clamp01( pow( amount, playerDeformPower ) );
float yAmount = mapClamped( VERTEX.y, playerDeformYStart, playerDeformYMax, 0.0, 1.0 );
// vec3 worldDir = localToWorldDirection( dir, MODEL_MATRIX );
// worldDir = normalize( worldDir );
// vec3 worldVertex = localToWorld( VERTEX, MODEL_MATRIX );
// worldVertex += worldDir * - amount * yAmount;
// VERTEX = worldToLocal( worldVertex, MODEL_MATRIX );
VERTEX += dir * - amount * yAmount;
// WIND
float windAO = 0.0;
applyGlobalWind(
MODEL_MATRIX,
VERTEX,
NORMAL,
windAO,
windOcclusionAmount,
rj_GlobalWindNoiseTextureClose,
rj_GlobalWindNoiseTextureFar,
rj_GlobalWindPositionClose,
rj_GlobalWindPositionFar,
rj_GlobalWindDirection,
rj_GlobalWindSpeed,
windWeights,
windSeedSize,
windMaxStrength,
windMaxRotation,
windStrengthCurve,
windStart,
windEnd,
windWeightCurve,
windHeightCompensation,
windNormalBending
);
vertexWindAO = windAO;
}
void fragment() {
vec2 base_uv = UV;
vec4 albedo_tex = texture(texture_albedo, base_uv);
ALBEDO = albedo.rgb * albedo_tex.rgb;
float metallic_tex = dot(texture(texture_metallic, base_uv), metallic_texture_channel);
METALLIC = metallic_tex * metallic;
SPECULAR = specular;
vec4 roughness_texture_channel = vec4(1.0, 0.0, 0.0, 0.0);
float roughness_tex = dot(texture(texture_roughness, base_uv), roughness_texture_channel);
ROUGHNESS = roughness_tex * roughness;
// Ambient Occlusion: Enabled
AO = dot(texture(texture_ambient_occlusion, base_uv), ao_texture_channel) * vertexWindAO;
AO_LIGHT_AFFECT = ao_light_affect;
BACKLIGHT = ALBEDO * albedoToBacklight;
EMISSION = ALBEDO * albedoToEmission;
}

View File

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

Binary file not shown.

View File

@ -0,0 +1,107 @@
// NOTE: Shader automatically converted from Godot Engine 4.5.stable.mono's StandardMaterial3D.
shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_back, diffuse_burley, specular_schlick_ggx;
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Normals.gdshaderinc"
uniform vec4 albedo : source_color;
uniform sampler2D texture_albedo : source_color, filter_linear_mipmap, repeat_enable;
uniform ivec2 albedo_texture_size;
uniform float point_size : hint_range(0.1, 128.0, 0.1);
uniform float roughness : hint_range(0.0, 1.0);
uniform sampler2D texture_metallic : hint_default_white, filter_linear_mipmap, repeat_enable;
uniform vec4 metallic_texture_channel;
uniform sampler2D texture_roughness : hint_roughness_r, filter_linear_mipmap, repeat_enable;
uniform float specular : hint_range(0.0, 1.0, 0.01);
uniform float metallic : hint_range(0.0, 1.0, 0.01);
uniform sampler2D texture_normal : hint_roughness_normal, filter_linear_mipmap, repeat_enable;
uniform float normal_scale : hint_range(-16.0, 16.0);
uniform sampler2D texture_ambient_occlusion : hint_default_white, filter_linear_mipmap, repeat_enable;
uniform vec4 ao_texture_channel;
uniform float ao_light_affect : hint_range(0.0, 1.0, 0.01);
uniform vec3 uv1_scale;
uniform vec3 uv1_offset;
global uniform float globalSnowAmount;
uniform float snowFadeIn = 0;
uniform float snowMax = 0.5;
uniform float snowTestOffset = 0;
uniform float snowLayerMax = 0.2;
uniform float snowLayerMin = -0.1;
uniform float snowLayerUVScale = 1.0;
uniform float snowOcclusionAmount = 1.0;
uniform float snowNormalSize = 1.0;
uniform float snowNormalStrength = 1.0;
uniform float snowNormalAmount:hint_range( 0.0, 1.0 ) = 1.0;
varying vec3 snowNormal;
varying float snowOcclusion;
uniform sampler2D noiseTexture;
uniform float noiseScale;
uniform vec2 noiseOffset;
uniform float noiseAmount;
varying vec2 noiseUV;
void vertex()
{
UV = UV * uv1_scale.xy + uv1_offset.xy;
vec3 worldVertex = localToWorld( VERTEX, MODEL_MATRIX );
noiseUV = worldVertex.xz / noiseScale + noiseOffset;
vec2 snowLayerUV = worldVertex.xz / snowLayerUVScale;
float snowLayerNoise = textureLod( noiseTexture, snowLayerUV, 0 ).r;
VERTEX.y += mix( snowLayerMin, snowLayerMax, snowLayerNoise ) * globalSnowAmount;
snowNormal = computeNormalFromHeightMap( noiseTexture, snowLayerUV, snowNormalSize, snowNormalStrength );
snowOcclusion = clamp01( mix( 1.0, snowLayerNoise, snowOcclusionAmount * globalSnowAmount ) );
}
void fragment()
{
vec2 base_uv = UV;
float snowCoverage = mapClamped( globalSnowAmount + snowTestOffset, snowFadeIn, snowMax, 0.0, 1.0 );
vec4 noise = texture( noiseTexture, noiseUV );
vec4 albedo_tex = texture(texture_albedo, base_uv);
ALBEDO = albedo.rgb * albedo_tex.rgb;
float nAmount = noiseAmount * mapClamped( globalSnowAmount, 0.0, 0.2, 0.0, 1.0 ) ;
ALBEDO = mix( ALBEDO, vec3( 1.0 ), clamp01( snowCoverage + noise.r * nAmount ) );
float metallic_tex = dot(texture(texture_metallic, base_uv), metallic_texture_channel);
METALLIC = metallic_tex * metallic;
SPECULAR = specular;
vec4 roughness_texture_channel = vec4(1.0, 0.0, 0.0, 0.0);
float roughness_tex = dot(texture(texture_roughness, base_uv), roughness_texture_channel);
ROUGHNESS = roughness_tex * roughness;
// Normal Map: Enabled
NORMAL_MAP = mix( texture(texture_normal, base_uv).rgb, snowNormal, snowNormalAmount );
NORMAL_MAP_DEPTH = normal_scale;
// Ambient Occlusion: Enabled
AO = dot(texture(texture_ambient_occlusion, base_uv), ao_texture_channel);
AO *= snowOcclusion;
AO_LIGHT_AFFECT = ao_light_affect;
}

View File

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

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,102 @@
// NOTE: Shader automatically converted from Godot Engine 4.5.stable.mono's StandardMaterial3D.
shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_disabled, diffuse_burley, specular_schlick_ggx;
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Math.gdshaderinc"
#include "res://addons/rokojori_action_library/Runtime/Shading/Library/Transform.gdshaderinc"
uniform vec4 albedo : source_color;
uniform sampler2D texture_albedo : source_color, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform float alpha_scissor_threshold : hint_range(0.0, 1.0, 0.001);
uniform ivec2 albedo_texture_size;
uniform float point_size : hint_range(0.1, 128.0, 0.1);
uniform float roughness : hint_range(0.0, 1.0);
uniform sampler2D texture_metallic : hint_default_white, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec4 metallic_texture_channel;
uniform sampler2D texture_roughness : hint_roughness_r, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform float specular : hint_range(0.0, 1.0, 0.01);
uniform float metallic : hint_range(0.0, 1.0, 0.01);
uniform sampler2D texture_emission : source_color, hint_default_black, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec4 emission : source_color;
uniform float emission_energy : hint_range(0.0, 100.0, 0.01);
uniform sampler2D texture_normal : hint_roughness_normal, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform float normal_scale : hint_range(-16.0, 16.0);
uniform vec4 backlight : source_color;
uniform sampler2D texture_backlight : hint_default_black, filter_nearest_mipmap_anisotropic, repeat_enable;
uniform vec3 uv1_scale;
uniform vec3 uv1_offset;
group_uniforms snow;
uniform float maxSnowV = 0.8;
uniform float topSnowOpacity = 1;
uniform float bottomSnowOpacity = 0;
uniform float snowWaveFrequency = 2;
uniform float snowWaveFrequencySeedAmount = 7;
uniform float snowWaveAmount = 0;
uniform float snowWaveSeedStrength = 1;
uniform float snowUVFadeOut = 1.0;
uniform float snowUVFadeIn = 0.0;
varying float worldSeedXZ;
global uniform float globalSnowAmount;
varying vec2 snowUV;
void vertex()
{
UV = UV * uv1_scale.xy + uv1_offset.xy;
worldSeedXZ = fract( 123.94444 * fract( NODE_POSITION_WORLD.x * 42130.323 ) + 3.35 * fract( NODE_POSITION_WORLD.z * 13435.124 ) );
vec3 worldPosition = localToWorld( VERTEX, MODEL_MATRIX );
snowUV = vec2( UV.x, mapClamped( worldPosition.y, snowUVFadeIn, snowUVFadeOut, 0.0, 1.0 ) );
}
void fragment()
{
vec2 tSize = vec2( textureSize( texture_albedo, 0 ) );
vec2 quantizedUV = round( snowUV * tSize ) / tSize;
float snowV = mix( 0.0, maxSnowV, globalSnowAmount );
float vOffset = sin( quantizedUV.x * ( snowWaveFrequency + ( worldSeedXZ * 2.0 - 1.0 ) * snowWaveFrequencySeedAmount ) + worldSeedXZ * snowWaveSeedStrength ) * snowWaveAmount;
float inSnow = mapClamped( quantizedUV.y + vOffset, 0.0, snowV, 1.0, 0.0 );
float snowCoverage = mix( bottomSnowOpacity, topSnowOpacity, inSnow );
// snowCoverage = max( snowCoverage, worldNormalAmount );
snowCoverage *= mapClamped( globalSnowAmount, 0, 0.4, 0, 1.0 );
vec2 base_uv = UV;
vec4 albedo_tex = texture(texture_albedo, base_uv);
ALBEDO = albedo.rgb * albedo_tex.rgb;
ALBEDO = mix( ALBEDO, vec3( 1 ), snowCoverage );
float metallic_tex = dot(texture(texture_metallic, base_uv), metallic_texture_channel);
METALLIC = metallic_tex * metallic;
SPECULAR = specular;
vec4 roughness_texture_channel = vec4(1.0, 0.0, 0.0, 0.0);
float roughness_tex = dot(texture(texture_roughness, base_uv), roughness_texture_channel);
ROUGHNESS = roughness_tex * roughness;
// Normal Map: Enabled
NORMAL_MAP = texture(texture_normal, base_uv).rgb;
NORMAL_MAP_DEPTH = normal_scale;
// Emission: Enabled
vec3 emission_tex = texture(texture_emission, base_uv).rgb;
// Emission Operator: Add
EMISSION = (emission.rgb + emission_tex) * emission_energy;
ALPHA *= albedo.a * albedo_tex.a;
ALPHA_SCISSOR_THRESHOLD = alpha_scissor_threshold;
// Backlight: Enabled
vec3 backlight_tex = texture(texture_backlight, base_uv).rgb;
BACKLIGHT = (backlight.rgb + backlight_tex);
}

View File

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

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,58 @@
[gd_scene load_steps=5 format=3 uid="uid://beh68ly34coau"]
[ext_resource type="Material" uid="uid://oe6d0lu68ia2" path="res://GameObjects/Foliage/Pink Bush Material.tres" id="1_eo20v"]
[ext_resource type="Material" uid="uid://dxabe6g13cxfy" path="res://GameObjects/Foliage/Leave.material" id="2_tlsnn"]
[sub_resource type="SphereShape3D" id="SphereShape3D_i3v8b"]
radius = 0.43
[sub_resource type="QuadMesh" id="QuadMesh_uqrk0"]
[node name="Pink Bush" type="RigidBody3D"]
transform = Transform3D(0.652943, 0, 0.9098152, 0, 1.1198653, 0, -0.9098152, 0, 0.652943, 0, 0, 0)
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(0.99999994, 0, 0, 0, 1.0000001, 0, 0, 0, 0.99999994, 0, 0.15148893, 0)
shape = SubResource("SphereShape3D_i3v8b")
[node name="Pink Bush" type="MeshInstance3D" parent="."]
transform = Transform3D(0.99999994, 0, 0, 0, 1.0000001, 0, 0, 0, 0.99999994, 7.1525574e-07, 0.33457842, 1.1368684e-13)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../..")
surface_material_override/0 = ExtResource("1_eo20v")
[node name="Leave" type="MeshInstance3D" parent="Pink Bush"]
transform = Transform3D(0.4209132, 0, -7.450581e-09, 0, 0.4209132, 0, 7.450581e-09, 0, 0.4209132, -0.5514574, -0.25912705, -0.112205505)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../../..")
surface_material_override/0 = ExtResource("2_tlsnn")
[node name="Leave2" type="MeshInstance3D" parent="Pink Bush"]
transform = Transform3D(0.5892416, 0, 2.9802322e-08, 0, 0.5892416, 0, -2.9802322e-08, 0, 0.5892416, -0.12290502, -0.25912702, -0.40677547)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../../..")
surface_material_override/0 = ExtResource("2_tlsnn")
[node name="Leave3" type="MeshInstance3D" parent="Pink Bush"]
transform = Transform3D(0.4113829, 0, 1.4901161e-08, 0, 0.4113829, 0, -1.4901161e-08, 0, 0.4113829, -0.42022324, -0.25912702, 0.28161144)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../../..")
surface_material_override/0 = ExtResource("2_tlsnn")
[node name="Leave4" type="MeshInstance3D" parent="Pink Bush"]
transform = Transform3D(0.5031539, 1.4901161e-08, 2.9802322e-08, -7.953029e-09, 0.43969527, 0.2446056, -1.4901161e-08, -0.24460566, 0.4396953, -0.012327656, -0.25912702, 0.45400715)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../../..")
surface_material_override/0 = ExtResource("2_tlsnn")
[node name="Leave5" type="MeshInstance3D" parent="Pink Bush"]
transform = Transform3D(0.42091322, 2.2351742e-08, 4.4703484e-08, -6.6531034e-09, 0.3678269, 0.20462473, -2.9802322e-08, -0.20462474, 0.36782688, 0.3821206, -0.2710159, -0.2581148)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../../..")
surface_material_override/0 = ExtResource("2_tlsnn")
[node name="Leave6" type="MeshInstance3D" parent="Pink Bush"]
transform = Transform3D(0.32817093, 1.4901161e-08, 2.9802322e-08, -5.187186e-09, 0.28678143, 0.15953855, -4.4703484e-08, -0.15953855, 0.28678143, 0.32683218, -0.26701188, 0.32003498)
mesh = SubResource("QuadMesh_uqrk0")
skeleton = NodePath("../../../..")
surface_material_override/0 = ExtResource("2_tlsnn")

BIN
GameObjects/Pole/Pole.bin Normal file

Binary file not shown.

BIN
GameObjects/Pole/Pole.blend Normal file

Binary file not shown.

View File

@ -0,0 +1,59 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dnlmp7hjlmg3d"
path="res://.godot/imported/Pole.blend-333460871946389228a094c223745eaa.scn"
[deps]
source_file="res://GameObjects/Pole/Pole.blend"
dest_files=["res://.godot/imported/Pole.blend-333460871946389228a094c223745eaa.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/root_script=null
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true
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=false
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
materials/extract=0
materials/extract_format=0
materials/extract_path=""
_subresources={}
blender/nodes/visible=0
blender/nodes/active_collection_only=false
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/export_geometry_nodes_instances=false
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true
gltf/naming_version=2

Binary file not shown.

137
GameObjects/Pole/Pole.gltf Normal file
View File

@ -0,0 +1,137 @@
{
"asset":{
"generator":"Khronos glTF Blender I/O v4.0.44",
"version":"2.0"
},
"extensionsUsed":[
"KHR_materials_specular",
"KHR_materials_ior"
],
"scene":0,
"scenes":[
{
"name":"Scene",
"nodes":[
0
]
}
],
"nodes":[
{
"mesh":0,
"name":"Pole"
}
],
"materials":[
{
"doubleSided":true,
"extensions":{
"KHR_materials_specular":{
"specularColorFactor":[
2.0,
2.0,
2.0
]
},
"KHR_materials_ior":{
"ior":1.4500000476837158
}
},
"name":"Material",
"pbrMetallicRoughness":{
"baseColorFactor":[
0.04862872138619423,
0.028119998052716255,
0.028119998052716255,
1
],
"metallicFactor":0.484375,
"roughnessFactor":0.671875
}
}
],
"meshes":[
{
"name":"Cube.008",
"primitives":[
{
"attributes":{
"POSITION":0,
"NORMAL":1,
"TEXCOORD_0":2
},
"indices":3,
"material":0
}
]
}
],
"accessors":[
{
"bufferView":0,
"componentType":5126,
"count":136,
"max":[
0.1384594440460205,
1.3861937522888184,
0.1384594440460205
],
"min":[
-0.1384594440460205,
-0.12018048763275146,
-0.1384594440460205
],
"type":"VEC3"
},
{
"bufferView":1,
"componentType":5126,
"count":136,
"type":"VEC3"
},
{
"bufferView":2,
"componentType":5126,
"count":136,
"type":"VEC2"
},
{
"bufferView":3,
"componentType":5123,
"count":192,
"type":"SCALAR"
}
],
"bufferViews":[
{
"buffer":0,
"byteLength":1632,
"byteOffset":0,
"target":34962
},
{
"buffer":0,
"byteLength":1632,
"byteOffset":1632,
"target":34962
},
{
"buffer":0,
"byteLength":1088,
"byteOffset":3264,
"target":34962
},
{
"buffer":0,
"byteLength":384,
"byteOffset":4352,
"target":34963
}
],
"buffers":[
{
"byteLength":4736,
"uri":"Pole.bin"
}
]
}

View File

@ -0,0 +1,42 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bqnu853bay13i"
path="res://.godot/imported/Pole.gltf-14ba61d4497b8e1add5361f2ca3b6808.scn"
[deps]
source_file="res://GameObjects/Pole/Pole.gltf"
dest_files=["res://.godot/imported/Pole.gltf-14ba61d4497b8e1add5361f2ca3b6808.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/root_script=null
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true
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=false
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
materials/extract=0
materials/extract_format=0
materials/extract_path=""
_subresources={}
gltf/naming_version=2
gltf/embedded_image_handling=1

View File

@ -0,0 +1,24 @@
[gd_resource type="Resource" script_class="CollectableType" load_steps=7 format=3 uid="uid://d0k8ig2sum1fk"]
[ext_resource type="Script" uid="uid://b584767duemqk" path="res://addons/rokojori_action_library/Runtime/Localization/LocaleTextEntry.cs" id="1_1g5pm"]
[ext_resource type="Script" uid="uid://doocg3kjxesop" path="res://addons/rokojori_action_library/Runtime/Interactions/Collecting/CollectableType.cs" id="1_fv5mj"]
[ext_resource type="Texture2D" uid="uid://crn8xn3skwu1i" path="res://GameObjects/Present/present-thumbnail.png" id="1_q2gfj"]
[ext_resource type="Script" uid="uid://bvj322mokkq63" path="res://addons/rokojori_action_library/Runtime/Localization/LocaleText.cs" id="2_q2gfj"]
[sub_resource type="Resource" id="Resource_wic72"]
script = ExtResource("1_1g5pm")
code = 12
content = "Geschenk"
metadata/_custom_type_script = "uid://b584767duemqk"
[sub_resource type="Resource" id="Resource_d8sh4"]
script = ExtResource("2_q2gfj")
en = "Present"
entries = [SubResource("Resource_wic72")]
metadata/_custom_type_script = "uid://bvj322mokkq63"
[resource]
script = ExtResource("1_fv5mj")
collectableName = SubResource("Resource_d8sh4")
collectableIcon = ExtResource("1_q2gfj")
metadata/_custom_type_script = "uid://doocg3kjxesop"

View File

@ -0,0 +1,7 @@
[gd_resource type="Resource" script_class="SelectorFlag" load_steps=2 format=3 uid="uid://difpg5cx7w8ou"]
[ext_resource type="Script" uid="uid://dqb1n0314wgdn" path="res://addons/rokojori_action_library/Runtime/Selectors/SelectorFlag.cs" id="1_h6qfl"]
[resource]
script = ExtResource("1_h6qfl")
metadata/_custom_type_script = "uid://dqb1n0314wgdn"

View File

@ -0,0 +1,191 @@
[gd_scene load_steps=39 format=3 uid="uid://dawxe3jm1j1ei"]
[ext_resource type="Script" uid="uid://bq56bfytlbxq7" path="res://addons/rokojori_action_library/Runtime/GameObjects/GameObject3D.cs" id="1_cei5k"]
[ext_resource type="PackedScene" uid="uid://bbyo1043h1g2w" path="res://assets/kenney_holiday-kit/Models/GLB format/present-a-rectangle.glb" id="2_ierrr"]
[ext_resource type="Script" uid="uid://dbgwebayabwd5" path="res://addons/rokojori_action_library/Runtime/Interactions/Collidable.cs" id="3_kcumc"]
[ext_resource type="Resource" uid="uid://daivy2l77st5v" path="res://GameObjects/Collectable-Collisions.tres" id="4_ku4jk"]
[ext_resource type="Script" uid="uid://b4yjsis2fh64c" path="res://addons/rokojori_action_library/Runtime/Actions/ActionList.cs" id="5_wng1k"]
[ext_resource type="Script" uid="uid://dxra6jao22it4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionReference.cs" id="6_r3hib"]
[ext_resource type="Script" uid="uid://ceaglilesxsi4" path="res://addons/rokojori_action_library/Runtime/Actions/ActionSequence.cs" id="7_wura7"]
[ext_resource type="Script" uid="uid://drak08lej40jc" path="res://addons/rokojori_action_library/Runtime/Actions/Node/SetPhysicsState.cs" id="8_kcumc"]
[ext_resource type="Script" uid="uid://dy65lu5p2yf3j" path="res://addons/rokojori_action_library/Runtime/Actions/Sequence/Parallel.cs" id="9_hxn60"]
[ext_resource type="Script" uid="uid://dnwqkymbre3vb" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/Flash.cs" id="12_ytqhh"]
[ext_resource type="Script" uid="uid://cbtqgliarexam" path="res://addons/rokojori_action_library/Runtime/Animation/Transform/AnimateTransform.cs" id="14_psn5b"]
[ext_resource type="Script" uid="uid://be4oc7tgr55vu" path="res://addons/rokojori_action_library/Runtime/Animation/Transform/TransformCurve.cs" id="15_eo1om"]
[ext_resource type="Script" uid="uid://dncqth3uf3tb3" path="res://addons/rokojori_action_library/Runtime/Animation/HDRColor.cs" id="15_ku4jk"]
[ext_resource type="Script" uid="uid://bqpiwp16h7614" path="res://addons/rokojori_action_library/Runtime/Animation/Transform/TransformAnimations.cs" id="16_s32gq"]
[ext_resource type="Script" uid="uid://c5tm02yj1bhhx" path="res://addons/rokojori_action_library/Runtime/Animation/AnimationCurve.cs" id="16_wng1k"]
[ext_resource type="Resource" uid="uid://ch5nsa6yafs5l" path="res://addons/rokojori_action_library/Runtime/Time/TimeLines/GameTime.tres" id="17_aekgg"]
[ext_resource type="Script" uid="uid://cupnq55n3nimc" path="res://addons/rokojori_action_library/Runtime/Animation/Flash/FlashEffect.cs" id="17_r3hib"]
[ext_resource type="Script" uid="uid://b2g7rycr0ouu4" path="res://addons/rokojori_action_library/Runtime/Actions/Time/Delay.cs" id="18_ntrp1"]
[ext_resource type="Script" uid="uid://dq5kae8x62gre" path="res://addons/rokojori_action_library/Runtime/Actions/RemoveNode.cs" id="19_pvpan"]
[ext_resource type="Script" uid="uid://dla1wn2mlw2d0" path="res://addons/rokojori_action_library/Runtime/Interactions/Pointable.cs" id="20_crydw"]
[ext_resource type="Script" uid="uid://qwprrym288gb" path="res://addons/rokojori_action_library/Runtime/Interactions/Collecting/Collectable.cs" id="21_mhwle"]
[ext_resource type="Resource" uid="uid://dfqc5ainuim21" path="res://Character/Player-Collector.tres" id="22_4h623"]
[ext_resource type="Resource" uid="uid://d0k8ig2sum1fk" path="res://GameObjects/Present/Present-Collectable.tres" id="23_nvl46"]
[ext_resource type="Script" uid="uid://dutnxjwc8dhx7" path="res://addons/rokojori_action_library/Runtime/Interactions/Collecting/CollectableData.cs" id="24_3otbe"]
[ext_resource type="Script" uid="uid://cnp3xr8gawyi6" path="res://addons/rokojori_action_library/Runtime/Actions/Node3D/SetTransform.cs" id="25_ierrr"]
[ext_resource type="Script" uid="uid://dyf6ee3ov3ran" path="res://addons/rokojori_action_library/Runtime/Actions/OnReady.cs" id="25_kcumc"]
[sub_resource type="BoxShape3D" id="BoxShape3D_u7xow"]
size = Vector3(1.1638184, 0.4765625, 0.8429718)
[sub_resource type="Curve" id="Curve_y6wps"]
_data = [Vector2(0, 1), 0.0, -0.1246964, 0, 0, Vector2(1, 0), -3.3578954, 0.0, 0, 0]
point_count = 2
[sub_resource type="Resource" id="Resource_celbq"]
script = ExtResource("15_eo1om")
transformTarget = 4
duration = 0.5
xCurve = SubResource("Curve_y6wps")
yCurve = SubResource("Curve_y6wps")
zCurve = SubResource("Curve_y6wps")
metadata/_custom_type_script = "uid://be4oc7tgr55vu"
[sub_resource type="Curve" id="Curve_cei5k"]
_limits = [-1.0, 1.0, 0.0, 1.0]
_data = [Vector2(0, 0), 0.0, 0.0, 0, 1, Vector2(1, 0), 0.0, 0.0, 1, 0]
point_count = 2
[sub_resource type="Curve" id="Curve_ierrr"]
_limits = [0.0, 2.0, 0.0, 1.0]
_data = [Vector2(0, 0), 0.0, 2.8544617, 0, 0, Vector2(1, 0.9263158), 0.4559212, 0.0, 0, 0]
point_count = 2
[sub_resource type="Resource" id="Resource_kcumc"]
script = ExtResource("15_eo1om")
transformTarget = 2
duration = 0.3
xCurve = SubResource("Curve_cei5k")
yCurve = SubResource("Curve_ierrr")
zCurve = SubResource("Curve_cei5k")
metadata/_custom_type_script = "uid://be4oc7tgr55vu"
[sub_resource type="Resource" id="Resource_6q7o7"]
script = ExtResource("16_s32gq")
curves = [SubResource("Resource_celbq"), SubResource("Resource_kcumc")]
timeline = ExtResource("17_aekgg")
metadata/_custom_type_script = "uid://bqpiwp16h7614"
[sub_resource type="Resource" id="Resource_kfhag"]
script = ExtResource("15_ku4jk")
color = Color(1, 1, 1, 1)
rgbMultiply = 2.0
[sub_resource type="Curve" id="Curve_hxn60"]
_data = [Vector2(0, 1), 0.0, 0.0775112, 0, 0, Vector2(0.0779661, 0), 0.0, 0.0, 0, 0, Vector2(0.227119, 0), 0.113556, 0.113556, 0, 0, Vector2(0.244068, 0.913564), 0.0, 0.0, 0, 0, Vector2(0.308475, 0), 0.0, 0.0, 0, 0, Vector2(0.505085, 0), 0.0, 0.0, 0, 0, Vector2(0.518644, 0.697473), 0.0, 0.0, 0, 0, Vector2(0.60339, 0), 0.0, 0.0, 0, 0, Vector2(0.742794, 0), 0.0, 0.0, 0, 0, Vector2(0.749153, 0.438165), 0.0, 0.0, 0, 0, Vector2(0.80678, 0), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0442571, 0.0, 0, 0]
point_count = 12
[sub_resource type="Resource" id="Resource_h50g7"]
script = ExtResource("16_wng1k")
duration = 0.7
curve = SubResource("Curve_hxn60")
[sub_resource type="Resource" id="Resource_ytqhh"]
script = ExtResource("17_r3hib")
flashCurve = SubResource("Resource_h50g7")
timeline = ExtResource("17_aekgg")
color = SubResource("Resource_kfhag")
lightMode = 1
lightRange = 3.0
lightFlashCurveScale = 0.1
[sub_resource type="Resource" id="Resource_3o18d"]
script = ExtResource("24_3otbe")
collectableType = ExtResource("23_nvl46")
metadata/_custom_type_script = "uid://dutnxjwc8dhx7"
[node name="Present" type="Node3D" node_paths=PackedStringArray("body", "origin")]
transform = Transform3D(0.4108638, 0, -0.91169673, 0, 1, 0, 0.91169673, 0, 0.4108638, 0, 0, 0)
script = ExtResource("1_cei5k")
body = NodePath("RigidBody3D")
origin = NodePath("RigidBody3D")
metadata/_custom_type_script = "uid://bq56bfytlbxq7"
[node name="RigidBody3D" type="RigidBody3D" parent="."]
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.01036644, 0.21136475, 0.0071907043)
shape = SubResource("BoxShape3D_u7xow")
[node name="Animation Container" type="Node3D" parent="RigidBody3D"]
[node name="present-a-rectangle2" parent="RigidBody3D/Animation Container" instance=ExtResource("2_ierrr")]
transform = Transform3D(1.7903701, 0, 0, 0, 1.7903696, 0, 0, 0, 1.7903701, 0, 0, 0)
[node name="Collectable Collidable" type="Node3D" parent="RigidBody3D" node_paths=PackedStringArray("onEntered")]
script = ExtResource("3_kcumc")
collisionTypes = [ExtResource("4_ku4jk")]
onEntered = NodePath("On Collected")
metadata/_custom_type_script = "uid://dbgwebayabwd5"
[node name="On Collected" type="Node" parent="RigidBody3D/Collectable Collidable"]
script = ExtResource("5_wng1k")
metadata/_custom_type_script = "uid://b4yjsis2fh64c"
[node name="Collectable" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected" node_paths=PackedStringArray("referencedAction")]
script = ExtResource("6_r3hib")
referencedAction = NodePath("../../../Collectable")
metadata/_custom_type_script = "uid://dxra6jao22it4"
[node name="ActionSequence" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected"]
script = ExtResource("7_wura7")
metadata/_custom_type_script = "uid://ceaglilesxsi4"
[node name="SetPhysicsState" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected/ActionSequence" node_paths=PackedStringArray("physicsBody")]
script = ExtResource("8_kcumc")
physicsBody = NodePath("../../../..")
setCollisions = true
metadata/_custom_type_script = "uid://drak08lej40jc"
[node name="Parallel" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected/ActionSequence"]
script = ExtResource("9_hxn60")
metadata/_custom_type_script = "uid://dy65lu5p2yf3j"
[node name="AnimateTransform" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected/ActionSequence/Parallel" node_paths=PackedStringArray("target")]
script = ExtResource("14_psn5b")
animations = SubResource("Resource_6q7o7")
target = NodePath("../../../../../Animation Container")
metadata/_custom_type_script = "uid://cbtqgliarexam"
[node name="Flash" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected/ActionSequence/Parallel" node_paths=PackedStringArray("targets")]
script = ExtResource("12_ytqhh")
flashEffect = SubResource("Resource_ytqhh")
targets = [NodePath("../../../../../Animation Container/present-a-rectangle2")]
includeChildren = true
metadata/_custom_type_script = "uid://dnwqkymbre3vb"
[node name="Delay" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected/ActionSequence/Parallel"]
script = ExtResource("18_ntrp1")
duration = 1.0
timeLine = ExtResource("17_aekgg")
metadata/_custom_type_script = "uid://b2g7rycr0ouu4"
[node name="RemoveNode" type="Node" parent="RigidBody3D/Collectable Collidable/On Collected/ActionSequence" node_paths=PackedStringArray("target")]
script = ExtResource("19_pvpan")
target = NodePath("../../../../..")
metadata/_custom_type_script = "uid://dq5kae8x62gre"
[node name="Pointable" type="Node3D" parent="RigidBody3D" node_paths=PackedStringArray("highlightTargets")]
script = ExtResource("20_crydw")
highlightTargets = [null]
metadata/_custom_type_script = "uid://dla1wn2mlw2d0"
[node name="Collectable" type="Node" parent="RigidBody3D" node_paths=PackedStringArray("collidable")]
script = ExtResource("21_mhwle")
collectorTypeFlags = [ExtResource("22_4h623")]
collidable = NodePath("../Collectable Collidable")
collectableData = SubResource("Resource_3o18d")
metadata/_custom_type_script = "uid://qwprrym288gb"
[node name="OnReady" type="Node" parent="."]
script = ExtResource("25_kcumc")
metadata/_custom_type_script = "uid://dyf6ee3ov3ran"
[node name="Reset Transform" type="Node" parent="OnReady" node_paths=PackedStringArray("target")]
script = ExtResource("25_ierrr")
target = NodePath("../../RigidBody3D/Animation Container")
positionMode = 2
scaleMode = 1
metadata/_custom_type_script = "uid://cnp3xr8gawyi6"

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://crn8xn3skwu1i"
path="res://.godot/imported/present-thumbnail.png-7963ef45d7d46371a27405eb0387ecd8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://GameObjects/Present/present-thumbnail.png"
dest_files=["res://.godot/imported/present-thumbnail.png-7963ef45d7d46371a27405eb0387ecd8.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

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More