使い方
- インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
- 必要なツール、認証情報、対応環境を原文で確認します。
- 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/ewrogers/megadev-skills --skill megadev-effects開始前の確認
- 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
- スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。
Megadev effects
Effects add feedback to the game's existing mechanics and art direction. Adapt these techniques to the user's brief; the Lab's lantern, weather, colors, sound and controls are illustrative.
- Read Pools and simulation for finite lifetimes,
deterministic timing, burst admission, pause and decorative degradation.
- Read Rendering and performance for resident tiles,
SAT/scanline budgets, presentation-only shake and one VBlank publisher.
- Read Validation for behavior tests, original-68000
execution, ARM64/AMD64 comparison, regional checks and measurement limits.
Use ewrogers/megadev:latest and inspect the selected image's source. Megadev exposes VDP and BIOS facilities; this skill's fx_* functions are application code, not a particle engine supplied by the SDK. Do not introduce SGDK's sprite, DMA queue, resource compiler or task APIs as Megadev calls.
Essential choices:
- Reserve room for gameplay and important impacts before decorative weather.
Bound particles, emission per update, simulation catch-up, submitted sprites, per-scanline work and bytes published. A finite pool alone is not a frame budget.
- Keep transient effects allocation-free when a fixed pool fits. Define the
full-pool behavior explicitly: reject, replace a less important effect, or reduce emission. Never evict gameplay entities to show decoration.
- Use the game's existing clock and input edge handling. Pause and slow motion
are deliberate policies; do not multiply speeds by the measured render FPS.
- Keep effect art resident where useful. Animate by choosing existing tiles;
account for remaining VRAM, palette and SAT costs even if no tiles are uploaded.
- Build an immutable frame snapshot outside interrupts. Submit through the
existing VDP owner, in a measured safe interval. Avoid active-display palette writes and unbounded work in a callback.
- Apply shake to camera presentation, not simulation positions or collision.
Keep HUD panels stable and restore scroll offsets when the envelope ends.
The standalone Effects Lab demonstrates these choices. scripts/create_project.py creates a fresh project without replacing files. Its separate burst/trail/weather pools and conservative H40 renderer are one policy, not mandatory capacities or an all-purpose sprite scheduler.
Reuse megadev-graphics for renderer integration and palette ownership, megadev-animation for gameplay animation events, megadev-gameplay for game rules, megadev-audio for the sound owner, and megadev-performance for broader profiling. Effects must not install competing VDP, drive, clock or audio owners.


