diff --git a/art/exported/characters/patterns/bengal/head_round_bengal.png b/art/exported/characters/patterns/bengal/head_round_bengal.png index 108bf36..d5326c4 100644 Binary files a/art/exported/characters/patterns/bengal/head_round_bengal.png and b/art/exported/characters/patterns/bengal/head_round_bengal.png differ diff --git a/art/exported/characters/patterns/fox/body_main_fox.png b/art/exported/characters/patterns/fox/body_main_fox.png index b95fbc6..5c87bc5 100644 Binary files a/art/exported/characters/patterns/fox/body_main_fox.png and b/art/exported/characters/patterns/fox/body_main_fox.png differ diff --git a/art/exported/characters/patterns/fox/head_round_fox.png b/art/exported/characters/patterns/fox/head_round_fox.png new file mode 100644 index 0000000..2963975 Binary files /dev/null and b/art/exported/characters/patterns/fox/head_round_fox.png differ diff --git a/art/exported/characters/patterns/fox/head_round_fox.png.import b/art/exported/characters/patterns/fox/head_round_fox.png.import new file mode 100644 index 0000000..6d958dd --- /dev/null +++ b/art/exported/characters/patterns/fox/head_round_fox.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bwiwt76kyyevw" +path="res://.godot/imported/head_round_fox.png-27dc2125a4e5b85a622291762225a303.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/exported/characters/patterns/fox/head_round_fox.png" +dest_files=["res://.godot/imported/head_round_fox.png-27dc2125a4e5b85a622291762225a303.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 diff --git a/art/source/characters/base/netfishing_character_source.blend b/art/source/characters/base/netfishing_character_source.blend index a24bfbb..e75f254 100644 Binary files a/art/source/characters/base/netfishing_character_source.blend and b/art/source/characters/base/netfishing_character_source.blend differ diff --git a/docs/ATTRIBUTION.md b/docs/ATTRIBUTION.md index 804f1c0..321b73d 100644 --- a/docs/ATTRIBUTION.md +++ b/docs/ATTRIBUTION.md @@ -175,10 +175,11 @@ authored `mesh_style.png` filenames. | --- | --- | --- | --- | | Bengal spots, body and arms | `body_arms_bengal.png` | `art/exported/characters/patterns/bengal/body_arms_bengal.png` | `fa90bd4e74b0b770ce97bf69d069676f5d4bd1f5d649f89e09638a66b61a8470` | | Bengal spots, main body | `body_main_bengal.png` | `art/exported/characters/patterns/bengal/body_main_bengal.png` | `8662fa198220cfdbe0aa83bdeeef7b855e20124d74f8481467f750d32b67ee8b` | -| Bengal spots, round head | `head_round_bengal.png` | `art/exported/characters/patterns/bengal/head_round_bengal.png` | `c464b042397f5ffe371c48a711ec3d7257adf794d363f3116cb2bddc23e444f8` | -| Fox, body and arms | `body_arms_fox.png` | `art/exported/characters/patterns/fox/body_arms_fox.png` | `fd2ab31ede371129ca4806480783d57153318a909d6b87c593b6ff82d03d65eb` | -| Fox, main body | `body_main_fox.png` | `art/exported/characters/patterns/fox/body_main_fox.png` | `d2a975cf042728299de4819a023a95e9c1467671a6886f6c6eaf8b44a5a9ca3a` | -| Fox, pointy head | `head_pointy_fox.png` | `art/exported/characters/patterns/fox/head_pointy_fox.png` | `8e74685ef7a9f61b5ae75c16e86898ea80f3996471e2999862479798ce28aa52` | +| Bengal spots, round head | `head_round_bengal.png` | `art/exported/characters/patterns/bengal/head_round_bengal.png` | `f397ed8d152e3fda8181757a2bbd01925b7b8c2c4362f515d91c7f0fbf3ddfb6` | +| Fox, body and arms | `body_arms_fox.png` | `art/exported/characters/patterns/fox/body_arms_fox.png` | `9930808718f31d84b415902f1ba55ac2a508bb2ac127300e793d73a8a013022d` | +| Fox, main body | `body_main_fox.png` | `art/exported/characters/patterns/fox/body_main_fox.png` | `c65e4390173b8c31c9396edd053f940f0f809e47e01d18042cd7babc712dde9d` | +| Fox, pointy head | `head_pointy_fox.png` | `art/exported/characters/patterns/fox/head_pointy_fox.png` | `71a9d2383e62884dbd3981460fcd985b18805fa907f61ffb16dce08ff9418ddf` | +| Fox, round head | `head_round_fox.png` | `art/exported/characters/patterns/fox/head_round_fox.png` | `86dd7af8a2346faf67359ad668a117a74e2408676137d6b0626403cfcf2aba73` | | Fox tail | `tails_fox_fox.png` | `art/exported/characters/patterns/fox/tails_fox_fox.png` | `72da9673f038e2c3bb8aca19ed99932085fa3b162cab95366901c4e97153dd3e` | ### Tekgator shop icon contribution record diff --git a/progression/character_customization_catalog.gd b/progression/character_customization_catalog.gd index 09303cc..609f593 100644 --- a/progression/character_customization_catalog.gd +++ b/progression/character_customization_catalog.gd @@ -152,6 +152,10 @@ const OPTIONS: Dictionary = { "res://art/exported/characters/patterns/" + "fox/head_pointy_fox.png" ), + "head_round": ( + "res://art/exported/characters/patterns/" + + "fox/head_round_fox.png" + ), "tails_fox": ( "res://art/exported/characters/patterns/" + "fox/tails_fox_fox.png" diff --git a/tests/fur_pattern_validation.gd b/tests/fur_pattern_validation.gd index 36a4d93..0bd3eb2 100644 --- a/tests/fur_pattern_validation.gd +++ b/tests/fur_pattern_validation.gd @@ -81,6 +81,14 @@ func _run() -> void: assert(fox_head_texture != null) assert(fox_head_texture.get_width() == 1024) assert(fox_head_texture.get_height() == 1024) + var fox_round_head_texture := ( + CharacterCustomizationCatalog.fur_pattern_texture( + "fox", "head_round" + ) + ) + assert(fox_round_head_texture != null) + assert(fox_round_head_texture.get_width() == 1024) + assert(fox_round_head_texture.get_height() == 1024) var fox_tail_texture := CharacterCustomizationCatalog.fur_pattern_texture( "fox", "tails_fox" ) @@ -153,6 +161,12 @@ func _run() -> void: pointy_head_material.get_shader_parameter("pattern_texture") == fox_head_texture ) + fox_snapshot["species"] = "round" + PlayerVisualPresenter.apply_appearance(visuals, fox_snapshot) + assert( + round_head_material.get_shader_parameter("pattern_texture") + == fox_round_head_texture + ) var fox_tail := skeleton.get_node_or_null("tails_fox") as MeshInstance3D assert(fox_tail != null) var fox_tail_material := fox_tail.material_override as ShaderMaterial