fs-gg-visibility

Compute continuous visibility polygons and discrete visible cells in a 2D grid.

Updated Jul 6, 2026
One-click install
npx skills add https://github.com/FS-GG/FS.GG.Game --skill fs-gg-visibility
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fs-gg-visibility
Source: https://github.com/FS-GG/FS.GG.Game/tree/main/template/product-skills/fs-gg-visibility
Command: npx skills add https://github.com/FS-GG/FS.GG.Game --skill fs-gg-visibility

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This skill provides accurate and deterministic answers to the questions of what can be seen from a certain point and how tiles in a grid are visible in the FS.GG.game environment.

Core Features & Use Cases

  • Continuous Angular-Sweep Visibility: Computes the angular-sweep visibility polygon for occluders at Points in continuous space.
  • Discrete Symmetric-Shadowcasting FOV: Calculates the visible tiles (Cells) within a radius for tile-based fog-of-war or sight applications.
  • Use Case: Utilize fs-gg-visibility to determine the field of view of a character or entity within a game scene and to implement smart lighting or to control the visibility of hidden areas for the player.

Quick Start

Compute the visibility polygon from point (0.0, 0.0) around occluders provided in the walls variable and with a radius of 200.0 using Visibility.polygon.

Frequently Asked Questions about fs-gg-visibility

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I calculate 2D visibility polygons for line-of-sight in a game environment?

To compute 2D visibility polygons for line-of-sight, you can use continuous angular-sweep calculations against occluders to determine exactly what continuous space is visible from a specific point within a set radius.

What is the best way to implement fog-of-war using discrete grid cell visibility?

Discrete symmetric shadowcasting calculates visible tiles or cells within a specified radius in a 2D grid, providing deterministic results ideal for tile-based fog-of-war and sight applications.

How does occlusion detection work for entities in continuous 2D space?

Occlusion detection in continuous 2D space works by applying geometric calculations and spatial partitioning to efficiently query and construct an angular-sweep visibility polygon around blocking points.

Can I use this 2D visibility approach for both continuous points and discrete grid tiles?

Yes, this approach supports both continuous points for precise polygon visibility and discrete grid cells for symmetric shadowcasting, allowing you to handle occluders and tile-based sight simultaneously.

Do I need any external dependencies to perform these geometric visibility calculations?

No external dependencies are required to perform these geometric visibility calculations, as the implementation handles spatial partitioning and angular sweeps entirely within its own scripts.

When should I use continuous visibility polygons over discrete cell shadowcasting?

Use continuous visibility polygons for precise occlusion and smart lighting around points in continuous space, and use discrete cell shadowcasting for tile-based fog-of-war visibility within a grid radius.