{
 "schema": "aiblocks-page/1",
 "id": "agency-gis-3d-scene-developer",
 "type": "agent",
 "name": "3D map scene developer",
 "summary": "Plan a 3D web map scene with terrain, buildings or LiDAR, lighting, camera and speed checks for Cesium or ArcGIS. Get a build plan you can follow.",
 "headline": "3D map scene developer",
 "subhead": "Tell it what the scene must show and what data you have. The agent picks the scene type and 3D engine, sets the build order and plans tiling, lighting, camera and access. You get a build plan and a test list.",
 "job": {
  "id": "research-topics",
  "name": "Research a topic properly"
 },
 "level": "intermediate",
 "thinking": "high",
 "tested": true,
 "updated": "2026-11-03",
 "first_published": "2026-10-26",
 "inputs": [
  {
   "type": "question",
   "required": true,
   "label": "Question",
   "what": "the problem, decision or piece of work you want help with, and what a good outcome looks like"
  },
  {
   "type": "map_data",
   "required": false,
   "label": "Map data",
   "what": "map data, such as GeoJSON, a shapefile, a GeoPackage, a raster or a point cloud, with its coordinate system and fields"
  }
 ],
 "outputs": [
  {
   "type": "plan",
   "required": true,
   "label": "Plan",
   "what": "a dated plan: what to do, in what order, with a decision rule for each step"
  }
 ],
 "you_give": [
  "What the scene must show and the one thing viewers should learn",
  "Your data: terrain, buildings, imagery, 3D models or point clouds, with format and size",
  "The area covered, and the coordinate system and height reference if you know them",
  "Who views it and on what devices, such as office laptops or a wall tablet",
  "The 3D engine you already use, such as Cesium or ArcGIS (optional)",
  "Whether the scene is public or needs sign-in (optional)"
 ],
 "you_get": [
  "A scene type and 3D engine choice, with reasons",
  "A data check list, including coordinate system and height reference alignment",
  "A build order from terrain to controls",
  "A speed plan covering tiling, simplifying and streaming",
  "Lighting and starting camera settings",
  "An access plan and a test list for your devices"
 ],
 "use_when": [
  "You have a terrain model or city data and want a 3D flyover on a web page.",
  "You have LiDAR point clouds and want people to view and measure them in a browser.",
  "Your 3D scene loads slowly or fails on tablets and phones.",
  "You must choose between Cesium and the ArcGIS JavaScript API for a 3D project."
 ],
 "skip_when": [
  "You want a normal 2D web map: use the Web GIS Developer agent.",
  "You want to bring building models (BIM) into a map: use the BIM and GIS integration planner.",
  "You want to make a 3D mesh from drone photos: use the Drone mapping specialist.",
  "You want map colors and labels designed: use the Map designer."
 ],
 "output_sample": {
  "input": [
   "What the scene must show and who views it",
   "Each data layer with its format and size",
   "The devices viewers will use",
   "Public or sign-in access (optional)"
  ],
  "prerequisites": [
   "An AI that reads pasted text, such as Claude, ChatGPT or Gemini",
   "A test page or GIS tool where you can try the scene"
  ],
  "output": [
   {
    "name": "Brief and assumptions",
    "contains": "The scene's job, data and devices as understood, with assumptions and MISSING items."
   },
   {
    "name": "Does this need 3D",
    "contains": "A yes or no with the reason, and any part that is better in 2D."
   },
   {
    "name": "Scene type and engine",
    "contains": "The scene type and 3D engine, with the reason, trade-off and runner-up."
   },
   {
    "name": "Data inventory",
    "contains": "Each layer with format, size, datum check and the prep step it needs."
   },
   {
    "name": "Build order",
    "contains": "Numbered steps from terrain base to labels and controls."
   },
   {
    "name": "Speed plan",
    "contains": "How each layer is tiled, simplified or streamed."
   },
   {
    "name": "Style, camera and access",
    "contains": "Lighting, the starting view, controls and the sign-in setup."
   },
   {
    "name": "Tests and open questions",
    "contains": "Device checks with what a pass looks like, and what is still unknown."
   }
  ]
 },
 "output_shape": "BRIEF AND ASSUMPTIONS\n  Scene job <what it shows> | Data <list with format and size> | Devices <list>\n  Assumed: <list> | MISSING: <list>\n\nDOES THIS NEED 3D\n  <yes or no> | <reason> | <2D part to keep>\n\nSCENE TYPE AND ENGINE\n  <scene type> | <engine> | <reason> | <trade-off> | <runner-up>\n\nDATA INVENTORY\n  <layer> | <format> | <size> | <datum check> | <prep step>\n\nBUILD ORDER\n  <step number> | <layer or task> | <setting>\n\nSPEED PLAN\n  <layer> | <tiling or simplifying> | <why>\n\nSTYLE AND CAMERA\n  Lighting <sun, shadows, time of day> | Start view <what it frames> | Controls <list>\n\nACCESS\n  <public or sign-in> | <sign-in message> | <test for loops and cross-site errors>\n\nTESTS\n  <number> | <device> | <check> | <what a pass looks like>\n\nOPEN QUESTIONS\n  <question> | <what the answer changes>",
 "how_to_use": [
  "Add the pack to your AI as a skill. Or open a new chat and paste SKILL.md, then references/source-agent.md.",
  "Write your brief. Say what the scene shows, list each data layer with its format and size, and name the devices. Never paste real keys or passwords. Use a placeholder.",
  "Say 'Plan this 3D scene. Do not guess my data sizes.' Your AI asks once for what is missing.",
  "Read the engine choice and the question 'does this need 3D?' first. Change them if you must use a platform you already have.",
  "Build the scene in a test page or your GIS tool. The AI cannot run it, so test on your real devices and time the first load.",
  "Send back what you see, such as load time or errors, and ask for fixes."
 ],
 "checks": [
  "The result addresses your actual task and cites the evidence used.",
  "Examples, role-play experience and targets are kept separate from verified results.",
  "Claims of tests, memory, tool access or completed actions match what actually happened."
 ],
 "next": [
  {
   "name": "Geoprocessing specialist agent",
   "url": "https://useaiblocks.com/skills/agency-gis-geoprocessing-specialist",
   "why": "Geoprocessing specialist agent"
  }
 ],
 "source": {
  "by": "Michael Sitarzewski and Agency Agents contributors",
  "repo": "msitarzewski/agency-agents",
  "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/gis/gis-3d-scene-developer.md",
  "licence": "MIT",
  "original_name": "3D & Scene Developer",
  "commit": "b37b5bb33b78f2c1d6567d98e25ca818e3259219"
 },
 "credits": [
  {
   "title": "3D & Scene Developer",
   "by": "Michael Sitarzewski and Agency Agents contributors",
   "url": "https://github.com/msitarzewski/agency-agents/blob/b37b5bb33b78f2c1d6567d98e25ca818e3259219/gis/gis-3d-scene-developer.md",
   "used": "Original agent profile, preserved in references/source-agent.md; AI Blocks adds setup and review instructions."
  }
 ],
 "files": [
  "LICENSE",
  "references/source-agent.md",
  "SETUP.md",
  "source.json"
 ],
 "links": {
  "page": "https://useaiblocks.com/agents/agency-gis-3d-scene-developer",
  "markdown": "https://useaiblocks.com/agents/agency-gis-3d-scene-developer.md",
  "json": "https://useaiblocks.com/agents/agency-gis-3d-scene-developer.json",
  "instructions": "https://useaiblocks.com/skills/agency-gis-3d-scene-developer/SKILL.md",
  "download": "https://useaiblocks.com/skills/agency-gis-3d-scene-developer.zip",
  "api_item": "https://useaiblocks.com/api/v1/items/agency-gis-3d-scene-developer",
  "api_document": "https://useaiblocks.com/api/v1/documents/agent/agency-gis-3d-scene-developer",
  "mcp": "https://useaiblocks.com/mcp"
 }
}
