Skip to content

Environment Generator

Skill ID: ivx-environment-generator


name: ivx-environment-generator description: >- AI-powered game environment and world asset generation: scene backgrounds, parallax layers, tilesets, skyboxes, world composition, and Unity/Unreal export. Use when the user says "generate environment", "create background", "parallax layers", "scene background", "tileset generation", "skybox", "world building", "level art", "terrain generation", "environment art", or needs AI-generated environments for any game engine. version: "1.0.0" author: "IntelliVerse-X team@intelli-verse-x.ai" allowed-tools: - Read - Write - Edit - Glob - Grep - Shell


Overview

The Environment Generator creates game-ready backgrounds, parallax layers, tilesets, skyboxes, and composed world scenes from text descriptions. Outputs follow the IntelliVerseX asset standard and include engine-specific import metadata for Unity, Unreal, Godot, and more.

Scene Description + Art Style
┌── Content-Factory ────────────────────────────────────┐
│  LLM Scene Planning → Image Gen (Fal/Stability)      │
│  → Layer Separation → Parallax Config → Tileset Cut   │
│  → World Composition → IVX Export → S3 Upload         │
└──────────────────────┬────────────────────────────────┘
           ┌───────────┼───────────┐
           ▼           ▼           ▼
      2D Parallax  Tilesets    3D Skybox
      Backgrounds  & Tiles     & HDRI

Content-Factory API

Trigger via REST

curl -X POST http://localhost:8001/pipelines/environment \
  -H "Content-Type: application/json" \
  -d '{
    "game_id": "my-platformer",
    "scenes": [
      {
        "name": "enchanted_forest",
        "description": "A mystical forest with glowing mushrooms, ancient trees, and firefly particles",
        "style": "pixel_art",
        "mode": "parallax",
        "layers": 5
      },
      {
        "name": "crystal_cave",
        "description": "Underground cave with luminescent crystals and an underground river",
        "style": "pixel_art",
        "mode": "parallax",
        "layers": 4
      }
    ],
    "ivx_export": true
  }'

Generated Output

Parallax Background

environments/enchanted_forest/
├── layers/
│   ├── layer_0_sky.png           # Furthest (slowest scroll)
│   ├── layer_1_mountains.png
│   ├── layer_2_trees_far.png
│   ├── layer_3_trees_mid.png
│   └── layer_4_foreground.png    # Nearest (fastest scroll)
├── composed/
│   └── preview.png               # Full scene preview
└── ivx/
    ├── scene.json                # Scene metadata
    └── parallax_config.json      # Layer scroll speeds + offsets

Tileset

environments/dungeon/
├── tileset.png                   # Sprite atlas (16×16 or 32×32 cells)
├── tile_rules.json               # Auto-tile rules (Wang tiles / bitmask)
├── composed/
│   └── sample_map.png
└── ivx/
    ├── tileset_spec.json         # Cell size, columns, rows, categories
    └── tile_rules.json           # Engine-importable auto-tile rules

3D Skybox / HDRI

environments/space_station/
├── skybox/
│   ├── skybox_front.png
│   ├── skybox_back.png
│   ├── skybox_left.png
│   ├── skybox_right.png
│   ├── skybox_top.png
│   └── skybox_bottom.png
├── hdri/
│   └── environment.hdr           # For PBR lighting
└── ivx/
    └── skybox_spec.json          # Face map, resolution, format

Scene Metadata (scene.json)

{
  "id": "enchanted_forest",
  "name": "Enchanted Forest",
  "description": "A mystical forest with glowing mushrooms",
  "style": "pixel_art",
  "mode": "parallax",
  "resolution": { "width": 1920, "height": 1080 },
  "layers": [
    { "name": "sky",            "file": "layers/layer_0_sky.png",           "scroll_speed": 0.1, "z_order": 0, "tiled_x": true },
    { "name": "mountains",      "file": "layers/layer_1_mountains.png",     "scroll_speed": 0.3, "z_order": 1, "tiled_x": true },
    { "name": "trees_far",      "file": "layers/layer_2_trees_far.png",     "scroll_speed": 0.5, "z_order": 2, "tiled_x": true },
    { "name": "trees_mid",      "file": "layers/layer_3_trees_mid.png",     "scroll_speed": 0.7, "z_order": 3, "tiled_x": true },
    { "name": "foreground",     "file": "layers/layer_4_foreground.png",    "scroll_speed": 1.0, "z_order": 4, "tiled_x": true }
  ],
  "lighting": {
    "ambient_color": "#1a2b3c",
    "light_sources": [
      { "type": "point", "color": "#44ff88", "intensity": 0.6, "position": [300, 400] }
    ]
  },
  "particles": [
    { "type": "fireflies", "density": 30, "color": "#88ffaa", "layer": 3 }
  ]
}

Environment Modes

Mode Description Output
parallax Multi-layer scrolling backgrounds 3-7 PNG layers + scroll config
tileset Tiling sprite atlas with auto-tile rules Sprite atlas + Wang tile rules
skybox 6-face cubemap for 3D games 6 PNGs or 1 HDR
panorama Wide panoramic background Single wide image
world Full composed world scene Multiple backgrounds + object placements

Supported Styles

Style Best For
pixel_art Platformers, retro games
painterly RPGs, adventure games
flat_vector Casual, puzzle games
realistic Simulation, racing
cartoon Kids games, platformers
dark_gothic Horror, dark fantasy
sci_fi Space games, cyberpunk
low_poly 3D games, mobile-friendly

Engine Import

Engine Parallax Tileset Skybox
Unity SpriteRenderer layers + scroll script Tilemap + Rule Tile Skybox material + 6-face cubemap
Unreal PaperSprite layers + Blueprint scroll TileMap UMG Skybox sphere + material
Godot ParallaxBackground + ParallaxLayer TileMap + TileSet resource WorldEnvironment + PanoramaSky
Defold Parallax collection + go.animate Tilemap component Cubemap texture
Roblox SurfaceGui layers on Parts Terrain Skybox Lighting properties

Platform Notes

VR

  • Skybox/HDRI mode strongly recommended for 360-degree immersion
  • Generate at 4096×4096 per face for VR clarity
  • Include reflection probes metadata for PBR

Console

  • 4K textures for PS5/Xbox, 1080p for Switch
  • Pre-compose layers into single texture for Switch performance

WebGL

  • JPEG for backgrounds (smaller than PNG for photo-realistic)
  • Limit parallax to 3 layers for mobile WebGL

Mobile

  • Max 1080p per layer for mid-range devices
  • ASTC compression for Android, PVRTC for iOS
  • Combine distant layers to reduce draw calls

Checklist

  • Content-Factory API accessible
  • Scene descriptions provided with style and mode
  • Pipeline triggered with ivx_export: true
  • scene.json metadata generated
  • All layer images have correct resolution
  • Parallax scroll speeds create convincing depth
  • Tilesets tile seamlessly (no visible seams)
  • Skybox faces align at edges
  • Assets imported into target engine
  • Parallax scrolling working in-engine
  • Lighting/particle hints applied
  • VR: 4K+ skybox, stereo parallax if needed
  • Console: texture budget verified
  • WebGL: file sizes optimized
  • Mobile: compression applied