From 1753766a5d8049867e8d1f456e2b916af472f653 Mon Sep 17 00:00:00 2001 From: iisaev Date: Sat, 31 Oct 2026 15:28:48 +0300 Subject: [PATCH] Update avatar_layers implementation, assets and documentation --- .gitattributes | 30 ++++ .gitignore | 38 ++++ docs/en.md | 123 +++++++++++++ docs/ru.md | 42 +++++ locale/en.properties | 2 + locale/ru.properties | 2 + manifest.json | 25 +++ mod.jpg | Bin 0 -> 214699 bytes scenes/avatar_layers/view.tscn | 7 + src/AvatarCanvasDefinition.cs | 11 ++ src/AvatarLayerDefinition.cs | 27 +++ src/AvatarLayerImages.cs | 26 +++ src/LayeredAvatarRenderer.cs | 170 ++++++++++++++++++ src/LayeredAvatarRendererFactory.cs | 13 ++ .../contracts/avatar_layers/test/body.png | Bin 0 -> 77 bytes .../contracts/avatar_layers/test/closed.png | Bin 0 -> 77 bytes .../contracts/avatar_layers/test/opened.png | Bin 0 -> 77 bytes test_suites/contracts/avatars/sample.json | 62 +++++++ test_suites/contracts/manifest.json | 12 ++ .../tests/LayeredAvatarRendererTests.cs | 141 +++++++++++++++ tests/AvatarLayerDefinitionTests.cs | 26 +++ 21 files changed, 757 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 docs/en.md create mode 100644 docs/ru.md create mode 100644 locale/en.properties create mode 100644 locale/ru.properties create mode 100644 manifest.json create mode 100644 mod.jpg create mode 100644 scenes/avatar_layers/view.tscn create mode 100644 src/AvatarCanvasDefinition.cs create mode 100644 src/AvatarLayerDefinition.cs create mode 100644 src/AvatarLayerImages.cs create mode 100644 src/LayeredAvatarRenderer.cs create mode 100644 src/LayeredAvatarRendererFactory.cs create mode 100644 test_suites/contracts/avatar_layers/test/body.png create mode 100644 test_suites/contracts/avatar_layers/test/closed.png create mode 100644 test_suites/contracts/avatar_layers/test/opened.png create mode 100644 test_suites/contracts/avatars/sample.json create mode 100644 test_suites/contracts/manifest.json create mode 100644 test_suites/contracts/tests/LayeredAvatarRendererTests.cs create mode 100644 tests/AvatarLayerDefinitionTests.cs diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..3030c1a --- /dev/null +++ b/.gitattributes @@ -0,0 +1,30 @@ +# Line endings: LF everywhere, on every OS, whatever core.autocrlf says. +* text=auto eol=lf + +# cmd.exe misreads labels and goto in LF batch files, so they stay CRLF. +*.bat text eol=crlf +*.cmd text eol=crlf + +# Binaries: never converted, never diffed as text. +*.png binary +*.jpg binary +*.jpeg binary +*.webp binary +*.svg text +*.ogg binary +*.wav binary +*.mp3 binary +*.ttf binary +*.otf binary +*.woff binary +*.woff2 binary +*.dll binary +*.so binary +*.dylib binary +*.pdb binary +*.exe binary +*.zip binary +*.pck binary +*.moc3 binary +*.res binary +*.scn binary diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f79a943 --- /dev/null +++ b/.gitignore @@ -0,0 +1,38 @@ +# Godot 4.x +.godot/ +.idea/ +sdk/ +bin/ +obj/ + +#ai +.omo/ +.opencode/ + +gen/ +obj/ +bin/ +art_sources/ + +*.tres~ +*.tscn~ + +# GDScript LSP +.godot/ + +# Export +*.exe +*.dmg +*.apk +*.aab +*.pck +*.zip +*.log + +# OS +.DS_Store +Thumbs.db + +# Editor +*.import +*.godot.uid diff --git a/docs/en.md b/docs/en.md new file mode 100644 index 0000000..eae74b4 --- /dev/null +++ b/docs/en.md @@ -0,0 +1,123 @@ +# Layered avatar renderer + +`avatar_layers` implements `IAvatarRenderer` from `avatar_base`, registered as `layers` through +`LayeredAvatarRendererFactory`. Content mods depend on `avatar_layers>=1`; no dependency on +`characters_base`, `dialog_base` or Live2D is required. + +This is a working discrete renderer, not a character-art generator. Authors supply aligned PNG +layers and a `Kind: avatar` definition. For preset semantics and save state see +[avatar_base](../../avatar_base/docs/en.md). + +## Files and bindings + +```text +my_content/ + manifest.json depends: ["avatar_layers>=1"] + avatars/marao.json Kind: avatar, Renderer: layers + avatar_layers/marao/body.png + avatar_layers/marao/eyes_opened.png + avatar_layers/marao/eyes_closed.png +``` + +Image paths include `.png` and are relative to `avatar_layers/`. They are resolved through mod +providers, so ZIP mods and dependent content overrides work without direct filesystem loading. +Use a content-specific prefix such as `marao/` to avoid collisions with unrelated content. + +A complete resource: + +```json +{ + "Kind": "avatar", + "Items": [{ + "Id": "my_content/marao", + "Renderer": "layers", + "BaseValues": { + "canvas": {"Width": 512, "Height": 1024}, + "layers/body": {"Image": "marao/body.png", "Order": 0} + }, + "Groups": { + "eyes_state": { + "Default": "opened", + "Presets": { + "opened": {"Values": { + "layers/eyes": {"Image": "marao/eyes_opened.png", "Order": 10} + }}, + "closed": {"Values": { + "layers/eyes": {"Image": "marao/eyes_closed.png", "Order": 10} + }} + } + } + } + }] +} +``` + +Draw eyes onto transparent images aligned to the same logical canvas as the body. To use cropped +images instead, set `X`, `Y`, `Width`, `Height` on the layer. Coordinates are logical canvas pixels, +not normalized viewport coordinates. The host may scale the visual root to fit a portrait slot. +Root layout belongs to `scenes/avatar_layers/view.tscn`; layer children are data-driven. + +Accepted bindings: + +| Binding | Meaning | +| --- | --- | +| `canvas` | Object with positive finite Width and Height; defaults are 512 and 1024 | +| `layers/` as string | Exact PNG path, full-canvas rectangle, Order 0 | +| `layers/` as object | AvatarLayerDefinition settings below | +| `layers/` as null | No layer | + +Layer properties: + +| Property | Default | Meaning | +| --- | --- | --- | +| Image | required when visible | PNG path including extension | +| Order | 0 | Ascending drawing order; ties use ordinal layer binding ID | +| X, Y | 0 | Top-left position in logical pixels | +| Width, Height | 0 | Rectangle dimensions; zero uses the corresponding canvas dimension | +| Visible | true | False omits the layer, without requiring/loading an image | +| Opacity | 1 | Alpha in [0,1] | +| FlipH, FlipV | false | Image mirroring inside its rectangle | + +Unknown bindings and unknown object properties are rejected to expose typos. Coordinates must be +finite, dimensions nonnegative. A preset replaces a binding object whole: when changing an image, +repeat any non-default bounds/order needed by that layer. Logical binding order and compositing +layer order are separate: group Priority resolves competing targets; layer Order controls drawing. + +## Hosting and changing a preset + +```csharp +IAvatar avatar = AvatarCatalog.Create("my_content/marao"); +IAvatarRenderer renderer = AvatarRenderers.Create(avatar); +host.AddChild(renderer.View); +avatar.ApplyPresets(new Dictionary { ["eyes_state"] = "closed" }); +renderer.Apply(avatar.Resolve()); +// Before freeing host or unloading the renderer mod: +renderer.Dispose(); +``` + +Run visual operations on the Godot runtime main thread. Positive transition times are accepted +but images switch immediately: no interpolated anatomy or crossfade is implied. Rendering or image +validation errors leave the previous valid visual target intact. Logical preset state is separate: +if an owner changed it before a rendering error, it must handle that error and choose another target. + +Each renderer owns its node tree and image cache. Unchanged images are reused across Apply calls; +unused textures are disposed after old nodes release them. No shared engine texture cache is +mutated. Dispose is idempotent, detaches the root and frees nodes before textures. Missing bindings +remove previous layers; hidden layers do not load assets. Applying after disposal is an error. + +Not implemented: per-layer motion/tweens, clipping masks, skeletal deformation, automatic blinking, +scenario commands, editor UI, and automatic dialog integration. + +## Tests + +The opt-in `contracts` suite contains synthetic red/green/blue PNG fixtures, a real avatar entity, +and integration tests for image switching, draw order, positioning, invalid targets, resource +ownership and rendered pixel colors. These fixtures do not mount in normal games. + +```text +godot --headless --path . -- --frontend --with-mods=avatar_layers --run-tests --mod=avatar_layers +godot --path . --rendering-method gl_compatibility -- --frontend --with-mods=avatar_layers --itest=avatar_layers_contracts --run-tests --mod=avatar_layers__contracts +``` + +The second command needs an actual rendering window; the headless dummy renderer cannot verify +pixels. In this workspace execute these commands through the shared Windows watcher job bridge. diff --git a/docs/ru.md b/docs/ru.md new file mode 100644 index 0000000..4e38a05 --- /dev/null +++ b/docs/ru.md @@ -0,0 +1,42 @@ +# Аватары из PNG-слоёв + +`avatar_layers` — рабочая реализация `IAvatarRenderer` с идентификатором `layers`. +Контентный мод зависит от `avatar_layers>=1`, объявляет сущность `Kind: avatar` с +`Renderer: layers` и кладёт прозрачные PNG в свою папку `avatar_layers/`. + +[Полный формат и пример ресурса](en.md). + +## Привязки пресетов + +- `canvas`: объект `Width`, `Height`, по умолчанию 512×1024 логических пикселя. +- `layers/`: путь к PNG с расширением, либо объект настройки слоя. +- `null` вместо слоя удаляет его из изображения. + +Объект слоя содержит `Image`, `Order`, `X`, `Y`, `Width`, `Height`, `Visible`, +`Opacity`, `FlipH`, `FlipV`. Нулевые размеры означают размер холста. Для вырезанных +фрагментов задавай прямоугольник явно; для слоёв одинакового холста достаточно пути. +Порядок отрисовки — по `Order`, при равенстве по ID слоя. Более поздний слой выше. +Неизвестные свойства, отсутствующие PNG и неверные размеры отклоняются. + +```csharp +IAvatar avatar = AvatarCatalog.Create("my_content/marao"); +IAvatarRenderer renderer = AvatarRenderers.Create(avatar); +host.AddChild(renderer.View); +avatar.ApplyPresets(new Dictionary { ["eyes_state"] = "closed" }); +renderer.Apply(avatar.Resolve()); +// До уничтожения host или выгрузки мода: +renderer.Dispose(); +``` + +Пресеты переключают картинки дискретно, даже если передано время перехода. +Положение, прозрачность и отражение также задаются целевым состоянием. +Плавные деформации, маски, анимации моргания и интеграция с диалогами пока не реализованы. + +Рендерер переиспользует неизменившиеся PNG и освобождает ненужные текстуры после +удаления старых узлов. Ошибочное визуальное состояние не заменяет предыдущее. +Логическое состояние аватара хранится отдельно. Владелец явно применяет изменения +и освобождает рендерер. Все визуальные операции выполняются на главном потоке Godot. + +Тестовый набор `--itest=avatar_layers_contracts` содержит синтетические PNG и проверяет +настоящую отрисовку по цветам пикселей, переключение пресетов и освобождение ресурсов. +Для пиксельных проверок нужен оконный рендерер. В обычной игре тестовые ресурсы не загружаются. diff --git a/locale/en.properties b/locale/en.properties new file mode 100644 index 0000000..888add3 --- /dev/null +++ b/locale/en.properties @@ -0,0 +1,2 @@ +mod_avatar_layers_name = Layered Avatars +mod_avatar_layers_desc = Display preset-controlled avatars from layered PNG images. diff --git a/locale/ru.properties b/locale/ru.properties new file mode 100644 index 0000000..9e17e76 --- /dev/null +++ b/locale/ru.properties @@ -0,0 +1,2 @@ +mod_avatar_layers_name = Аватары из слоёв +mod_avatar_layers_desc = Отображение аватаров из PNG-слоёв с управлением через пресеты. diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..0a0d79b --- /dev/null +++ b/manifest.json @@ -0,0 +1,25 @@ +{ + "id": "avatar_layers", + "name": "Layered Avatars", + "version": "1.0.0", + "author": "ct", + "description": "Layered PNG avatar renderer: preset-controlled images, ordering, placement, visibility and opacity.", + "category": "engine, visual", + "sources": [ + "src/**/*.cs" + ], + "test_sources": [ + "tests/*.cs" + ], + "depends": [ + "avatar_base>=1" + ], + "test_suites": [ + { + "id": "contracts", + "activate": [ + "--itest=avatar_layers_contracts" + ] + } + ] +} diff --git a/mod.jpg b/mod.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0adea7c40549e8f02c575488d5232d8f5bbcd6d3 GIT binary patch literal 214699 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 canvas size; the host can scale the root to fit its portrait slot. + public sealed class AvatarCanvasDefinition + { + /// Positive finite logical width, defaults to 512 pixels. + public float Width { get; set; } = 512; + /// Positive finite logical height, defaults to 1024 pixels. + public float Height { get; set; } = 1024; + } +} diff --git a/src/AvatarLayerDefinition.cs b/src/AvatarLayerDefinition.cs new file mode 100644 index 0000000..ca49110 --- /dev/null +++ b/src/AvatarLayerDefinition.cs @@ -0,0 +1,27 @@ +namespace Cthangover.Mods.AvatarLayers +{ + /// One composited image in logical canvas pixels. Omitted size fills the canvas. + public sealed class AvatarLayerDefinition + { + /// Exact PNG path relative to a content mod's avatar_layers directory, including extension. + public string Image { get; set; } + /// Ascending draw order; equal orders use ordinal binding IDs. + public int Order { get; set; } + /// Horizontal offset in logical canvas pixels. + public float X { get; set; } + /// Vertical offset in logical canvas pixels. + public float Y { get; set; } + /// Image rectangle width; zero uses the canvas width. + public float Width { get; set; } + /// Image rectangle height; zero uses the canvas height. + public float Height { get; set; } + /// False removes the visual layer without loading its image. + public bool Visible { get; set; } = true; + /// Layer alpha in [0,1]. + public float Opacity { get; set; } = 1; + /// Mirror the image inside its rectangle horizontally. + public bool FlipH { get; set; } + /// Mirror the image inside its rectangle vertically. + public bool FlipV { get; set; } + } +} diff --git a/src/AvatarLayerImages.cs b/src/AvatarLayerImages.cs new file mode 100644 index 0000000..7e1f5e3 --- /dev/null +++ b/src/AvatarLayerImages.cs @@ -0,0 +1,26 @@ +using System; +using Cthangover.Core.Mods; +using Cthangover.Core.Mods.Resolvers; +using Godot; + +namespace Cthangover.Mods.AvatarLayers +{ + /// Loads exact PNG paths through mod providers, so ZIP assets and overrides work alike. + internal static class AvatarLayerImages + { + // The renderer owns the returned texture and must dispose it after detaching all node references. + internal static Texture2D Load(string path) + { + if (!path.EndsWith(".png", StringComparison.Ordinal)) + throw new ArgumentException($"Avatar layer image '{path}' must be an exact .png path."); + if (!Files.Collect("avatar_layers").TryGetValue(path, out var file)) + throw new ArgumentException($"Avatar layer image '{path}' was not found in avatar_layers."); + var bytes = ModManager.Instance.ReadFileBinary(file.ModId, file.FullPath); + if (bytes == null) throw new ArgumentException($"Cannot read avatar layer image '{path}'."); + using var image = new Image(); + if (image.LoadPngFromBuffer(bytes) != Error.Ok) + throw new ArgumentException($"Avatar layer image '{path}' is not a valid PNG."); + return ImageTexture.CreateFromImage(image); + } + } +} diff --git a/src/LayeredAvatarRenderer.cs b/src/LayeredAvatarRenderer.cs new file mode 100644 index 0000000..9c3d169 --- /dev/null +++ b/src/LayeredAvatarRenderer.cs @@ -0,0 +1,170 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.Json; +using System.Text.Json.Serialization; +using Cthangover.Core.Scenes; +using Cthangover.Core.Utils; +using Cthangover.Mods.Avatars; +using Godot; + +namespace Cthangover.Mods.AvatarLayers +{ + /// + /// Renders complete preset targets as ordered TextureRects. Assets switch discretely, including + /// for positive transition times. Each instance owns its root and texture cache; unchanged images + /// are reused, and obsolete images are released only after their nodes have been detached. + /// + public sealed class LayeredAvatarRenderer : IAvatarRenderer + { + private static readonly JsonSerializerOptions Options = new() { UnmappedMemberHandling = JsonUnmappedMemberHandling.Disallow }; + private readonly Control root; + private Dictionary textures = new(StringComparer.Ordinal); + private bool disposed; + + /// Creates the visual root from the mod prefab. Requires the Godot main thread. + public LayeredAvatarRenderer() + { + RequireRuntime(); + root = new ModScenePrefab("scenes/avatar_layers/view.tscn").Instantiate() + ?? throw new InvalidOperationException("Layered avatar view prefab is unavailable."); + } + + /// + public Control View => root; + + /// + /// Validates and prepares an entire target before replacing visible children. Malformed + /// targets or missing images leave the last valid display intact. Only layers/* and canvas + /// bindings are accepted, making content typos actionable instead of silently ignored. + /// + public void Apply(AvatarFrame target, double transitionSeconds = 0) + { + RequireRuntime(); + if (disposed) throw new ObjectDisposedException(nameof(LayeredAvatarRenderer)); + if (target == null) throw new ArgumentNullException(nameof(target)); + if (target.Renderer != "layers") throw new ArgumentException("Layered renderer requires Renderer=layers."); + if (!double.IsFinite(transitionSeconds) || transitionSeconds < 0) + throw new ArgumentOutOfRangeException(nameof(transitionSeconds)); + var canvas = new AvatarCanvasDefinition(); + var layers = new Dictionary(StringComparer.Ordinal); + foreach (var binding in target.Values) + { + if (binding.Key == "canvas") + canvas = binding.Value.Deserialize(Options) + ?? throw new ArgumentException("Avatar canvas cannot be null."); + else if (binding.Key.StartsWith("layers/", StringComparison.Ordinal) && binding.Key.Length > 7) + { + if (binding.Value.ValueKind == JsonValueKind.Null) continue; + var layer = binding.Value.ValueKind == JsonValueKind.String + ? new AvatarLayerDefinition { Image = binding.Value.GetString() } + : binding.Value.Deserialize(Options); + if (layer == null) throw new ArgumentException($"Invalid avatar layer '{binding.Key}'."); + ValidateLayer(binding.Key, layer); + if (layer.Visible) layers.Add(binding.Key, layer); + } + else throw new ArgumentException($"Unknown layered avatar binding '{binding.Key}'."); + } + if (!float.IsFinite(canvas.Width) || !float.IsFinite(canvas.Height) || canvas.Width <= 0 || canvas.Height <= 0) + throw new ArgumentException("Avatar canvas dimensions must be positive and finite."); + + var pending = new List(); + var nextTextures = new Dictionary(StringComparer.Ordinal); + var committed = false; + try + { + foreach (var entry in layers.OrderBy(Order).ThenBy(Name, StringComparer.Ordinal)) + { + var layer = entry.Value; + if (!nextTextures.TryGetValue(layer.Image, out var texture)) + { + if (!textures.TryGetValue(layer.Image, out texture)) texture = AvatarLayerImages.Load(layer.Image); + nextTextures.Add(layer.Image, texture); + } + var node = new TextureRect(); + pending.Add(node); + node.Name = "Layer" + (pending.Count - 1); + node.MouseFilter = Control.MouseFilterEnum.Ignore; + node.ExpandMode = TextureRect.ExpandModeEnum.IgnoreSize; + node.StretchMode = TextureRect.StretchModeEnum.Scale; + node.Texture = texture; + node.Position = new Vector2(layer.X, layer.Y); + node.Size = new Vector2(layer.Width == 0 ? canvas.Width : layer.Width, + layer.Height == 0 ? canvas.Height : layer.Height); + node.FlipH = layer.FlipH; + node.FlipV = layer.FlipV; + node.Modulate = new Color(1, 1, 1, layer.Opacity); + node.SetMeta("avatar_layer", entry.Key.Substring(7)); + } + ClearChildren(); + var canvasSize = new Vector2(canvas.Width, canvas.Height); + root.CustomMinimumSize = canvasSize; + root.Size = canvasSize; + foreach (var node in pending) root.AddChild(node); + foreach (var old in textures) + if (!nextTextures.ContainsKey(old.Key)) old.Value.Dispose(); + textures = nextTextures; + committed = true; + } + finally + { + if (!committed) + { + foreach (var node in pending) + { + node.GetParent()?.RemoveChild(node); + node.Texture = null; + node.Free(); + } + foreach (var texture in nextTextures) + if (!textures.ContainsKey(texture.Key)) texture.Value.Dispose(); + } + } + } + + /// Detaches and frees the owned visual tree before releasing owned textures. Idempotent. + public void Dispose() + { + RequireRuntime(); + if (disposed) return; + disposed = true; + if (GodotObject.IsInstanceValid(root)) + { + ClearChildren(); + root.GetParent()?.RemoveChild(root); + root.Free(); + } + foreach (var texture in textures.Values) texture.Dispose(); + textures.Clear(); + } + + private void ClearChildren() + { + foreach (var child in root.GetChildren()) + { + root.RemoveChild(child); + if (child is TextureRect image) image.Texture = null; + child.Free(); + } + } + + private static void RequireRuntime() + { + if (!GameEnvironment.IsRuntime || !GameEnvironment.IsMainThread) + throw new InvalidOperationException("Avatar visuals require the Godot runtime main thread."); + } + + private static void ValidateLayer(string id, AvatarLayerDefinition layer) + { + if (layer.Visible && string.IsNullOrWhiteSpace(layer.Image)) + throw new ArgumentException($"Avatar layer '{id}' requires Image."); + if (!float.IsFinite(layer.X) || !float.IsFinite(layer.Y) || + !float.IsFinite(layer.Width) || !float.IsFinite(layer.Height) || layer.Width < 0 || layer.Height < 0 || + !float.IsFinite(layer.Opacity) || layer.Opacity < 0 || layer.Opacity > 1) + throw new ArgumentException($"Avatar layer '{id}' has invalid bounds or opacity."); + } + + private static int Order(KeyValuePair layer) => layer.Value.Order; + private static string Name(KeyValuePair layer) => layer.Key; + } +} diff --git a/src/LayeredAvatarRendererFactory.cs b/src/LayeredAvatarRendererFactory.cs new file mode 100644 index 0000000..5649454 --- /dev/null +++ b/src/LayeredAvatarRendererFactory.cs @@ -0,0 +1,13 @@ +using Cthangover.Mods.Avatars; + +namespace Cthangover.Mods.AvatarLayers +{ + /// Discovered by avatar_base through the normal mod assembly consumer lifecycle. + public sealed class LayeredAvatarRendererFactory : IAvatarRendererFactory + { + /// + public string Id => "layers"; + /// + public IAvatarRenderer Create() => new LayeredAvatarRenderer(); + } +} diff --git a/test_suites/contracts/avatar_layers/test/body.png b/test_suites/contracts/avatar_layers/test/body.png new file mode 100644 index 0000000000000000000000000000000000000000..0ae370e84744e0fa49cd80102ae86b22ba7cd747 GIT binary patch literal 77 zcmeAS@N?(olHy`uVBq!ia0vp^Od!m`1|*BN@u~nR5lACnBNElos3)z YauQ5T?=SQ|1Ijaay85}Sb4q9e0Ax%PrT_o{ literal 0 HcmV?d00001 diff --git a/test_suites/contracts/avatars/sample.json b/test_suites/contracts/avatars/sample.json new file mode 100644 index 0000000..555fe30 --- /dev/null +++ b/test_suites/contracts/avatars/sample.json @@ -0,0 +1,62 @@ +{ + "Kind": "avatar", + "Items": [ + { + "Id": "avatar_layers_contracts/sample", + "Renderer": "layers", + "BaseValues": { + "canvas": { + "Width": 4, + "Height": 4 + }, + "layers/body": { + "Image": "test/body.png", + "Order": 0 + } + }, + "Groups": { + "eyes_state": { + "Default": "opened", + "Presets": { + "opened": { + "Values": { + "layers/eyes": { + "Image": "test/opened.png", + "Order": 10, + "X": 1, + "Y": 1, + "Width": 2, + "Height": 2 + } + } + }, + "closed": { + "Values": { + "layers/eyes": { + "Image": "test/closed.png", + "Order": 10, + "X": 1, + "Y": 1, + "Width": 2, + "Height": 2 + } + } + }, + "absent": { + "Values": { + "layers/eyes": null + } + }, + "hidden": { + "Values": { + "layers/eyes": { + "Visible": false + } + } + } + } + } + } + } + ] +} diff --git a/test_suites/contracts/manifest.json b/test_suites/contracts/manifest.json new file mode 100644 index 0000000..ede361c --- /dev/null +++ b/test_suites/contracts/manifest.json @@ -0,0 +1,12 @@ +{ + "id": "avatar_layers__contracts", + "name": "Layered avatar rendering contracts", + "version": "1.0.0", + "author": "ct", + "depends": [ + "avatar_layers>=1" + ], + "test_sources": [ + "tests/*.cs" + ] +} diff --git a/test_suites/contracts/tests/LayeredAvatarRendererTests.cs b/test_suites/contracts/tests/LayeredAvatarRendererTests.cs new file mode 100644 index 0000000..207e9be --- /dev/null +++ b/test_suites/contracts/tests/LayeredAvatarRendererTests.cs @@ -0,0 +1,141 @@ +using System; +using System.Collections.Generic; +using System.Text.Json; +using System.Threading.Tasks; +using Cthangover.Core.Mods.Testing; +using Cthangover.Mods.Avatars; +using Godot; + +namespace Cthangover.Mods.AvatarLayers.Contracts +{ + /// Real mod image loading and node composition, including a rendered pixel comparison. + public sealed class LayeredAvatarRendererTests + { + [ModTest("avatar_layers/discovery_presets_order_and_removal")] + public static void Composition(ModTestContext ctx) + { + var avatar = AvatarCatalog.Create("avatar_layers_contracts/sample"); + using var renderer = AvatarRenderers.Create(avatar); + var view = renderer.View; + ModAssert.CloseTo(4, view.Size.X); ModAssert.CloseTo(4, view.Size.Y); + ModAssert.Equal(2, view.GetChildCount()); + var body = view.GetChild(0); var eyes = view.GetChild(1); + ModAssert.Equal("body", body.GetMeta("avatar_layer").AsString()); + ModAssert.Equal("eyes", eyes.GetMeta("avatar_layer").AsString()); + ModAssert.CloseTo(1, eyes.Position.X); ModAssert.CloseTo(1, eyes.Position.Y); + ModAssert.CloseTo(2, eyes.Size.X); + var bodyTexture = body.Texture; + avatar.ApplyPresets(new Dictionary { ["eyes_state"] = "closed" }); + renderer.Apply(avatar.Resolve(), 0.15); + ModAssert.True(ReferenceEquals(bodyTexture, view.GetChild(0).Texture), "unchanged images reused"); + using (var image = view.GetChild(1).Texture.GetImage()) + ModAssert.CloseTo(1, image.GetPixel(0, 0).B, what: "closed preset selects blue PNG"); + avatar.ApplyPresets(new Dictionary { ["eyes_state"] = "absent" }); + renderer.Apply(avatar.Resolve()); + ModAssert.Equal(1, view.GetChildCount(), "null binding removes prior layer"); + avatar.ApplyPresets(new Dictionary { ["eyes_state"] = "hidden" }); + renderer.Apply(avatar.Resolve()); + ModAssert.Equal(1, view.GetChildCount(), "invisible layer needs no image"); + } + + [ModTest("avatar_layers/rejects_invalid_targets_without_changing_view")] + public static void InvalidTargets(ModTestContext ctx) + { + using var renderer = AvatarRenderers.Create(AvatarCatalog.Create("avatar_layers_contracts/sample")); + var texture = renderer.View.GetChild(0).Texture; + Reject(renderer, "{\"canvas\":{\"Width\":0,\"Height\":4}}"); + Reject(renderer, "{\"layers/eyes\":{\"Image\":\"test/opened.png\",\"Opacity\":2}}"); + Reject(renderer, "{\"layers/eyes\":{\"Image\":\"test/opened.png\",\"Width\":-1}}"); + Reject(renderer, "{\"layers/eyes\":{\"Image\":\"test/opened.png\",\"Visble\":false}}"); + Reject(renderer, "{\"layers/eyes\":{}}"); + Reject(renderer, "{\"layer/eyes\":\"test/opened.png\"}"); + Reject(renderer, "{\"layers/eyes\":\"test/missing.png\"}"); + Reject(renderer, "{\"layers/body\":\"test/body.png\",\"layers/eyes\":\"test/missing.png\"}"); + var invalidTime = false; + try { renderer.Apply(AvatarCatalog.Create("avatar_layers_contracts/sample").Resolve(), double.NaN); } + catch (ArgumentOutOfRangeException) { invalidTime = true; } + ModAssert.True(invalidTime); + ModAssert.Equal(2, renderer.View.GetChildCount()); + ModAssert.True(ReferenceEquals(texture, renderer.View.GetChild(0).Texture)); + } + + [ModTest("avatar_layers/canvas_can_shrink_after_a_larger_target")] + public static void Resize(ModTestContext ctx) + { + using var renderer = AvatarRenderers.Create(AvatarCatalog.Create("avatar_layers_contracts/sample")); + var definition = new AvatarDefinition { ID = "test/resize", Renderer = "layers", + BaseValues = JsonSerializer.Deserialize>( + "{\"canvas\":{\"Width\":2,\"Height\":3},\"layers/body\":\"test/body.png\"}") }; + renderer.Apply(new AvatarInstance(definition).Resolve()); + ModAssert.CloseTo(2, renderer.View.Size.X); + ModAssert.CloseTo(3, renderer.View.Size.Y); + ModAssert.CloseTo(2, renderer.View.CustomMinimumSize.X); + ModAssert.CloseTo(2, renderer.View.GetChild(0).Size.X); + ModAssert.CloseTo(3, renderer.View.GetChild(0).Size.Y); + } + + [ModTest("avatar_layers/dispose_detaches_root_and_releases_owned_resources")] + public static void Ownership(ModTestContext ctx) + { + var host = new Control(); + var renderer = AvatarRenderers.Create(AvatarCatalog.Create("avatar_layers_contracts/sample")); + var view = renderer.View; + try + { + host.AddChild(view); + var texture = view.GetChild(0).Texture; + renderer.Dispose(); renderer.Dispose(); + ModAssert.Equal(0, host.GetChildCount()); + ModAssert.False(GodotObject.IsInstanceValid(view)); + ModAssert.False(GodotObject.IsInstanceValid(texture)); + var rejected = false; + try { renderer.Apply(AvatarCatalog.Create("avatar_layers_contracts/sample").Resolve()); } + catch (ObjectDisposedException) { rejected = true; } + ModAssert.True(rejected); + } + finally { renderer.Dispose(); host.Free(); } + } + + [ModTest("avatar_layers/rendered_pixels_follow_preset", TimeoutSeconds = 15)] + public static async Task Pixels(ModTestContext ctx) + { + var tree = (SceneTree)Engine.GetMainLoop(); + var viewport = new SubViewport { Size = new Vector2I(4, 4), TransparentBg = true, + Disable3D = true, RenderTargetUpdateMode = SubViewport.UpdateMode.Always }; + var avatar = AvatarCatalog.Create("avatar_layers_contracts/sample"); + using var renderer = AvatarRenderers.Create(avatar); + try + { + tree.Root.AddChild(viewport); + viewport.AddChild(renderer.View); + await tree.ToSignal(RenderingServer.Singleton, RenderingServer.SignalName.FramePostDraw); + using (var image = viewport.GetTexture().GetImage()) + { + ModAssert.CloseTo(1, image.GetPixel(0, 0).R, epsilon: 0.01, what: "red base remains visible"); + ModAssert.CloseTo(1, image.GetPixel(1, 1).G, epsilon: 0.01, what: "green eyes draw above base"); + } + avatar.ApplyPresets(new Dictionary { ["eyes_state"] = "closed" }); + renderer.Apply(avatar.Resolve()); + await tree.ToSignal(RenderingServer.Singleton, RenderingServer.SignalName.FramePostDraw); + using var changed = viewport.GetTexture().GetImage(); + ModAssert.CloseTo(1, changed.GetPixel(1, 1).B, epsilon: 0.01, what: "blue eyes replace green eyes"); + } + finally + { + renderer.Dispose(); + viewport.GetParent()?.RemoveChild(viewport); viewport.Free(); + } + } + + private static void Reject(IAvatarRenderer renderer, string values) + { + var definition = new AvatarDefinition { ID = "test/bad", Renderer = "layers", + BaseValues = JsonSerializer.Deserialize>(values) }; + var rejected = false; + try { renderer.Apply(new AvatarInstance(definition).Resolve()); } + catch (ArgumentException) { rejected = true; } + catch (JsonException) { rejected = true; } + ModAssert.True(rejected, "invalid layered target must fail"); + } + } +} diff --git a/tests/AvatarLayerDefinitionTests.cs b/tests/AvatarLayerDefinitionTests.cs new file mode 100644 index 0000000..bd9f338 --- /dev/null +++ b/tests/AvatarLayerDefinitionTests.cs @@ -0,0 +1,26 @@ +using System.Text.Json; +using Cthangover.Core.Mods.Testing; + +namespace Cthangover.Mods.AvatarLayers.Tests +{ + /// Layer and canvas authoring DTOs preserve every visual property through JSON. + public sealed class AvatarLayerDefinitionTests + { + [ModTest("avatar_layers/layer_and_canvas_json_roundtrip")] + public static void RoundTrip(ModTestContext ctx) + { + var layer = new AvatarLayerDefinition { Image = "sample/eyes.png", Order = -2, X = 3, Y = -4, + Width = 12, Height = 16, Visible = false, Opacity = 0.25f, FlipH = true, FlipV = true }; + var copy = JsonSerializer.Deserialize(JsonSerializer.Serialize(layer)); + ModAssert.Equal(layer.Image, copy.Image); ModAssert.Equal(layer.Order, copy.Order); + ModAssert.CloseTo(layer.X, copy.X); ModAssert.CloseTo(layer.Y, copy.Y); + ModAssert.CloseTo(layer.Width, copy.Width); ModAssert.CloseTo(layer.Height, copy.Height); + ModAssert.False(copy.Visible); ModAssert.CloseTo(layer.Opacity, copy.Opacity); + ModAssert.True(copy.FlipH); ModAssert.True(copy.FlipV); + var canvas = JsonSerializer.Deserialize(JsonSerializer.Serialize(new AvatarCanvasDefinition { Width = 640, Height = 960 })); + ModAssert.CloseTo(640, canvas.Width); ModAssert.CloseTo(960, canvas.Height); + ModAssert.True(new AvatarLayerDefinition().Visible); + ModAssert.CloseTo(1, new AvatarLayerDefinition().Opacity); + } + } +}