{
  "chapters": [
    {
      "title": "Introduction",
      "description": "Overview of the three.js manual and documentation.",
      "pages": [
        0,
        1
      ]
    },
    {
      "title": "Getting Started",
      "description": "Prerequisites, installation, setup, and creating your first scenes with text and lines.",
      "pages": [
        21,
        2,
        22,
        3,
        4,
        5
      ]
    },
    {
      "title": "Fundamentals",
      "description": "Core three.js concepts: fundamentals, matrix transformations, scene graph, primitives, and the animation system.",
      "pages": [
        19,
        18,
        24,
        23,
        12
      ]
    },
    {
      "title": "Core Features",
      "description": "Essential rendering features including color management, materials, textures, lights, cameras, shadows, fog, backgrounds, transparency, and canvas textures.",
      "pages": [
        13,
        25,
        26,
        27,
        28,
        29,
        30,
        42,
        43,
        50
      ]
    },
    {
      "title": "Loading 3D Models",
      "description": "How to load 3D models into your three.js scenes, including OBJ and GLTF formats.",
      "pages": [
        8,
        40,
        41
      ]
    },
    {
      "title": "Advanced Rendering",
      "description": "Advanced rendering techniques: post-processing, render targets, custom BufferGeometry, and Shadertoy integration.",
      "pages": [
        17,
        46,
        31,
        32,
        47
      ]
    },
    {
      "title": "Physics, Games & Interaction",
      "description": "Building interactive experiences with picking, physics, games, voxel geometry, and HTML-to-3D alignment.",
      "pages": [
        45,
        49,
        33,
        54,
        53,
        48
      ]
    },
    {
      "title": "WebGPU",
      "description": "Using the WebGPURenderer and post-processing effects with WebGPU.",
      "pages": [
        55,
        56
      ]
    },
    {
      "title": "Virtual Reality",
      "description": "Creating VR content with three.js, including look-to-select and 3DOF point-to-select interactions.",
      "pages": [
        14,
        57,
        58,
        59
      ]
    },
    {
      "title": "Optimization & Performance",
      "description": "Techniques for optimizing three.js applications: rendering on demand, general tips, managing many objects, animated objects, and OffscreenCanvas.",
      "pages": [
        34,
        36,
        37,
        38,
        39
      ]
    },
    {
      "title": "UX & UI Integration",
      "description": "Responsive design, multiple canvases and scenes, and billboard techniques.",
      "pages": [
        20,
        44,
        51
      ]
    },
    {
      "title": "Maintenance & Debugging",
      "description": "Object disposal, updating things, cleanup routines, and debugging GLSL shaders.",
      "pages": [
        15,
        16,
        52,
        35
      ]
    },
    {
      "title": "Compatibility & FAQ",
      "description": "WebGL compatibility checks and answers to frequently asked questions.",
      "pages": [
        11,
        6
      ]
    },
    {
      "title": "Reference",
      "description": "Reference materials: libraries and plugins, uniform types, useful links, and the material feature table.",
      "pages": [
        7,
        9,
        10,
        60
      ]
    }
  ],
  "signature": "a40f75158da91fa6f12f9ff92c4b220f"
}