infinite-agents-public/specs/threejs_url_strategy.json

128 lines
5.0 KiB
JSON

{
"description": "Progressive URL strategy for Three.js web-enhanced learning",
"progression": "foundation → intermediate → advanced → expert",
"url_categories": {
"foundation": {
"description": "Basic Three.js concepts - scene, camera, geometry, materials",
"iteration_range": "1-5",
"urls": [
"https://threejs.org/docs/#manual/en/introduction/Creating-a-scene",
"https://threejs.org/examples/#webgl_geometry_cube",
"https://threejs.org/examples/#webgl_animation_keyframes",
"https://threejs.org/examples/#webgl_materials",
"https://threejs.org/examples/#webgl_lights_hemisphere"
]
},
"intermediate": {
"description": "Textures, controls, particles, groups, advanced geometry",
"iteration_range": "6-12",
"urls": [
"https://threejs.org/examples/#webgl_materials_texture_filters",
"https://threejs.org/examples/#misc_controls_orbit",
"https://threejs.org/examples/#webgl_points_waves",
"https://threejs.org/examples/#webgl_geometries",
"https://threejs.org/examples/#webgl_loader_gltf",
"https://threejs.org/examples/#webgl_postprocessing_unreal_bloom",
"https://threejs.org/examples/#webgl_buffergeometry_custom_attributes_particles"
]
},
"advanced": {
"description": "Custom shaders, GLSL, advanced lighting, physics, procedural",
"iteration_range": "13-18",
"urls": [
"https://threejs.org/examples/#webgl_shader",
"https://threejs.org/examples/#webgl_materials_envmaps",
"https://threejs.org/examples/#webgl_shader_lava",
"https://threejs.org/examples/#webgl_gpgpu_birds",
"https://threejs.org/examples/#webgl_shadowmap",
"https://threejs.org/examples/#webgl_geometry_terrain"
]
},
"expert": {
"description": "WebGPU, ray marching, GPU particles, complex shaders, optimization",
"iteration_range": "19+",
"urls": [
"https://threejs.org/examples/#webgl_shaders_ocean",
"https://threejs.org/examples/#webgpu_ocean",
"https://threejs.org/examples/#webgpu_compute_particles",
"https://threejs.org/examples/#webgl_marchingcubes",
"https://threejs.org/examples/#webgpu_instance_mesh",
"https://threejs.org/examples/#webgl_shader_ocean2",
"https://threejs.org/examples/#webgpu_water",
"https://threejs.org/examples/#webgl_gpgpu_water"
]
}
},
"priming_urls": [
"https://threejs.org/docs/#manual/en/introduction/Creating-a-scene",
"https://threejs.org/manual/#en/fundamentals",
"https://threejs.org/manual/#en/responsive",
"https://threejs.org/manual/#en/scenegraph",
"https://threejs.org/manual/#en/materials"
],
"web_search_templates": [
"three.js {technique} example site:threejs.org",
"three.js {shader_type} shader tutorial",
"three.js webgpu {effect} example",
"three.js performance optimization {technique}",
"GLSL {effect} shader three.js"
],
"learning_focus_by_level": {
"foundation": [
"Scene, camera, renderer setup",
"Basic geometries and materials",
"Simple animations",
"Lighting fundamentals",
"Camera positioning"
],
"intermediate": [
"Texture loading and mapping",
"User controls and interaction",
"Particle systems",
"Geometry manipulation",
"Post-processing effects",
"Advanced materials"
],
"advanced": [
"Custom shader programming",
"Vertex and fragment shaders",
"Advanced lighting techniques",
"Procedural generation",
"Physics simulation",
"Multi-pass rendering"
],
"expert": [
"WebGPU API usage",
"Compute shaders",
"Complex shader effects",
"GPU particle systems",
"Performance optimization",
"Cutting-edge techniques"
]
},
"technique_keywords": {
"geometries": ["BoxGeometry", "SphereGeometry", "PlaneGeometry", "BufferGeometry", "Custom Geometry"],
"materials": ["MeshBasicMaterial", "MeshStandardMaterial", "ShaderMaterial", "MeshPhongMaterial"],
"lighting": ["AmbientLight", "DirectionalLight", "PointLight", "SpotLight", "HemisphereLight"],
"controls": ["OrbitControls", "TrackballControls", "FlyControls", "PointerLockControls"],
"shaders": ["Vertex Shader", "Fragment Shader", "GLSL", "Uniforms", "Varyings"],
"effects": ["Bloom", "Water", "Ocean", "Particles", "Sky", "Fog"],
"advanced": ["WebGPU", "Compute Shader", "Ray Marching", "GPGPU", "Instancing"]
},
"inspiration_sources": {
"ocean_examples": [
"https://threejs.org/examples/#webgl_shaders_ocean",
"https://threejs.org/examples/#webgpu_ocean",
"https://threejs.org/examples/#webgl_shader_ocean2"
],
"shader_examples": [
"https://threejs.org/examples/#webgl_shader",
"https://threejs.org/examples/#webgl_shader_lava"
],
"particle_examples": [
"https://threejs.org/examples/#webgl_points_waves",
"https://threejs.org/examples/#webgpu_compute_particles"
]
}
}