Winter Tales Update
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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 );
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://33kpp8mnxfgv
|
||||
|
|
@ -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 );
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://de0te7x7feran
|
||||
|
After Width: | Height: | Size: 6.7 KiB |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 4.8 KiB |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 758 B |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 6.1 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 9.9 KiB |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 758 B |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
|
|
@ -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
|
||||
|
|
@ -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 |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
|
|
@ -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
|
||||
|
|
@ -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 |
|
|
@ -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
|
||||
|
|
@ -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 |
|
|
@ -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
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
|
|
@ -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;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://ctgt20fqo2wqg
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
using Godot;
|
||||
using Rokojori;
|
||||
|
||||
[Tool, GlobalClass]
|
||||
public partial class CollectableLabel: Node
|
||||
{
|
||||
[Export]
|
||||
public UIText text;
|
||||
|
||||
[Export]
|
||||
public UIImage image;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://cjlsn08m0vf3k
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"]
|
||||
|
|
@ -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")
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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"
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -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 );
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://b734lcqo4dptn
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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);
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://n0tejd04fnib
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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)
|
||||
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
@ -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;
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://b3upbrj3uyf4j
|
||||
|
|
@ -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;
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://ck6k3e47rfj83
|
||||
|
|
@ -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);
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://db2t105b157ko
|
||||
|
|
@ -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")
|
||||
|
|
@ -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
|
||||
|
|
@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -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
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
|
|
@ -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"
|
||||
|
After Width: | Height: | Size: 78 KiB |
|
|
@ -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
|
||||