Skip to content
Development
Skill

/sprite-segment-3x3grid

Segments a Sprite texture into a 3x3 grid and outputs a pattern of cells matching the center cell's color. Use when the user asks to analyze or document a sprite's structure or color distribution.

BOOST
From plugin
unity-technologies-skills
1.1k34 skills
Install
$ npx -y skills add unity-technologies/skills --skill sprite-segment-3x3grid --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/sprite-segment-3x3grid

Context preview

The summary Claude sees to decide when to auto-load this skill.

Segments a Sprite texture into a 3x3 grid and outputs a pattern of cells matching the center cell's color. Use when the user asks to analyze or document a sprite's structure or color distribution.

SKILL.md

sprite-segment-3x3grid.SKILL.md
name: sprite-segment-3x3grid
description: Segments a Sprite texture into a 3x3 grid and outputs a pattern of cells matching the center cell's color. Use when the user asks to analyze or document a sprite's structure or color distribution.

Sprite Color Grid Analysis

Purpose

This skill analyzes Sprite textures by segmenting them into a 3x3 grid and outputting a text representation based on color matching with the center cell.

Parameters

Match Threshold

The **match threshold** determines what percentage of pixels in a non-center cell must match the center's majority color for that cell to be considered a "match" (`.`).

| Threshold | Description | Use Case | |-----------|-------------|----------| | **50%** | At least half the cell's pixels match center color | Lenient matching for sprites with mixed regions | | **75%** | At least three-quarters match center color | Moderate matching for mostly solid regions | | **90%** | Nearly all pixels must match center color | Strict matching for very uniform sprites |

**Default**: 75%

Algorithm

1. **Segment the Sprite**: Divide the Sprite's texture region into a 3x3 grid (9 cells total) 2. **Identify Center Color**: Calculate the majority (most frequent) color in the center cell (position [1,1]) 3. **Compare Each Cell**: For each of the 8 surrounding cells, calculate what percentage of pixels match the center's majority color. If the percentage meets or exceeds the **match threshold**, the cell is a match (`.`); otherwise it is not (`X`) 4. **Generate Output**: Create a text representation using the legend below

Output Legend

| Symbol | Meaning | |--------|---------| | `X` | Cell does NOT meet the match threshold (insufficient pixels match center color) | | `.` | Cell MEETS the match threshold (enough pixels match center color) | | `*` | The center cell itself (always position [1,1] in the grid) |

Output Format

The output is a single line with three groups of three characters, separated by ` / `. Each group represents one row of the grid.

**Order**: Top to Bottom rows, Left to Right within each row.

**Format**: `[TopRow] / [MiddleRow] / [BottomRow]`

Each row contains 3 characters separated by spaces: `[Left] [Center] [Right]`

Grid Position Mapping

Grid Layout:        Output Order:
[0,0] [1,0] [2,0]   1  2  3   -> First group
[0,1] [1,1] [2,1]   4  5  6   -> Second group (5 is always *)
[0,2] [1,2] [2,2]   7  8  9   -> Third group

Examples

**Example 1**: Center matches top-left and bottom-right only

. X X / X * X / X X .

Grid interpretation:

.  X  X
X  *  X
X  X  .

**Example 2**: Center matches all surrounding cells

. . . / . * . / . . .

**Example 3**: Center matches none of the surrounding cells

X X X / X * X / X X X

**Example 4**: Center matches bottom row only

X X X / X * X / . . .

Implementation Guidance

Calculating Center's Majority Color

For the center cell: 1. Sample all pixels within the cell's bounds 2. Group pixels by color (consider using a color tolerance threshold for similar colors) 3. The majority color is the color with the highest pixel count 4. For tie-breaking, use the first color encountered

Matching Non-Center Cells

For each of the 8 surrounding cells: 1. Count the total number of pixels in the cell 2. Count how many pixels match the center's majority color (using color tolerance) 3. Calculate the match percentage: `matchingPixels / totalPixels` 4. If match percentage >= threshold, cell is a match (`.`); otherwise (`X`)

Color Tolerance

When comparing pixel colors:

  • Consider using a tolerance threshold (e.g., RGB distance < 10) for "matching"
  • Alternatively, for sprites with limited palettes, exact matching may be appropriate
  • Account for alpha channel if relevant to the use case

Sprite Bounds

Use the Sprite's `rect` property to determine the pixel region to analyze:

  • `sprite.rect.x`, `sprite.rect.y` for the origin
  • `sprite.rect.width`, `sprite.rect.height` for dimensions
  • Divide width and height by 3 to get cell dimensions

References

Code Template: "scripts/SpriteGridAnalysis.cs"

Use Cases

  • **Documentation**: Describe sprite patterns in a compact text format
  • **Testing**: Verify expected sprite structure in automated tests
  • **Analysis**: Quickly identify sprites with similar color distributions
  • **Debugging**: Understand why sprites look different than expected
  • **Asset Cataloging**: Generate searchable metadata for sprite assets

Notes

  • This analysis works best with sprites that have distinct color regions
  • For sprites with gradients or many colors, consider increasing color tolerance
  • The Y-axis is flipped from Unity's texture coordinates to produce top-to-bottom output
  • Transparent pixels can be treated as a distinct "color" or ignored based on use case
Read more
Ships withunity-technologies-skills

A collection of reusable AI agent skills for Unity workflows. Compatible with Claude Code, GitHub Copilot, Cursor, Cline, and 50+ other agents.

Get the whole plugin

Other skills on unity-technologies-skills.